Auth
OAuth flows and app auth connection management.
Authorization
oauth openid, profile, emailIn: header
Scope: openid, profile, email
Path Parameters
Response Body
application/json
application/json
application/json
application/json
curl -X GET "https://mcp.getdrio.com/api/v1/apps/string/auth"{
"auth": [
{
"id": "auth_123",
"appId": "app_123",
"providerId": "provider_oauth",
"providerKey": "custom-oauth",
"providerName": "OAuth",
"key": "primary-auth",
"name": "Primary Auth",
"status": "valid",
"config": {
"type": "oauth",
"authorizationEndpoint": "https://accounts.example.com/oauth/authorize",
"tokenEndpoint": "https://accounts.example.com/oauth/token",
"clientId": "client_123",
"scopes": [
"contacts:read"
]
},
"secretRef": null,
"grants": [
"contacts:read"
],
"lastValidatedAt": "2026-03-15T12:00:00.000Z",
"lastError": null
}
],
"providers": [
{
"id": "provider_oauth",
"key": "custom-oauth",
"name": "OAuth",
"kind": "oauth",
"ownership": "customer_managed",
"provisioningMode": "manual",
"docsUrl": "https://docs.example.com/oauth",
"configSchema": {
"scopes": [
"contacts:read"
],
"requiresAuthorizationEndpoint": true,
"requiresTokenEndpoint": true
}
}
]
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}Authorization
oauth openid, profile, emailIn: header
Scope: openid, profile, email
Path Parameters
Request Body
application/json
Auth connection payload
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
curl -X POST "https://mcp.getdrio.com/api/v1/apps/string/auth" \ -H "Content-Type: application/json" \ -d '{ "providerKey": "custom-oauth", "name": "Primary Auth", "status": "valid", "config": { "type": "oauth", "authorizationEndpoint": "https://accounts.example.com/oauth/authorize", "tokenEndpoint": "https://accounts.example.com/oauth/token", "clientId": "client_123", "scopes": [ "contacts:read" ] }, "grants": [ "contacts:read" ] }'{
"auth": {
"id": "auth_123",
"appId": "app_123",
"providerId": "provider_oauth",
"providerKey": "custom-oauth",
"providerName": "OAuth",
"key": "primary-auth",
"name": "Primary Auth",
"status": "valid",
"config": {
"type": "oauth",
"authorizationEndpoint": "https://accounts.example.com/oauth/authorize",
"tokenEndpoint": "https://accounts.example.com/oauth/token",
"clientId": "client_123",
"scopes": [
"contacts:read"
]
},
"secretRef": null,
"grants": [
"contacts:read"
],
"lastValidatedAt": "2026-03-15T12:00:00.000Z",
"lastError": null
}
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}Authorization
oauth openid, profile, emailIn: header
Scope: openid, profile, email
Path Parameters
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://mcp.getdrio.com/api/v1/apps/string/auth/string"{
"auth": {
"id": "string",
"appId": "string",
"providerId": "string",
"providerKey": "string",
"providerName": "string",
"key": "string",
"name": "string",
"status": "draft",
"config": {
"type": "oauth",
"authorizationEndpoint": "string",
"tokenEndpoint": "string",
"registrationEndpoint": "string",
"registrationAuthMode": "none",
"registrationInitialAccessToken": "string",
"registrationAccessToken": "string",
"registrationClientUri": "string",
"lastRegisteredAt": "string",
"clientId": "string",
"clientSecret": "string",
"headerName": "string",
"apiKey": "string",
"queryParamName": "string",
"headerPrefix": "string",
"accessToken": "string",
"username": "string",
"password": "string",
"scopes": [
"string"
],
"audience": "string",
"enabled": true,
"isDefault": true
},
"secretRef": "string",
"grants": [
"string"
],
"lastValidatedAt": "string",
"lastError": "string"
}
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}Authorization
oauth openid, profile, emailIn: header
Scope: openid, profile, email
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X PATCH "https://mcp.getdrio.com/api/v1/apps/string/auth/string" \ -H "Content-Type: application/json" \ -d '{}'{
"auth": {
"id": "string",
"appId": "string",
"providerId": "string",
"providerKey": "string",
"providerName": "string",
"key": "string",
"name": "string",
"status": "draft",
"config": {
"type": "oauth",
"authorizationEndpoint": "string",
"tokenEndpoint": "string",
"registrationEndpoint": "string",
"registrationAuthMode": "none",
"registrationInitialAccessToken": "string",
"registrationAccessToken": "string",
"registrationClientUri": "string",
"lastRegisteredAt": "string",
"clientId": "string",
"clientSecret": "string",
"headerName": "string",
"apiKey": "string",
"queryParamName": "string",
"headerPrefix": "string",
"accessToken": "string",
"username": "string",
"password": "string",
"scopes": [
"string"
],
"audience": "string",
"enabled": true,
"isDefault": true
},
"secretRef": "string",
"grants": [
"string"
],
"lastValidatedAt": "string",
"lastError": "string"
}
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}Authorization
oauth openid, profile, emailIn: header
Scope: openid, profile, email
Path Parameters
Response Body
application/json
application/json
application/json
application/json
curl -X DELETE "https://mcp.getdrio.com/api/v1/apps/string/auth/string"{
"deleted": true
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}{
"error": {
"code": "string",
"message": "string",
"details": null,
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6"
}
}Request Body
application/json
Dynamic client registration payload
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
curl -X POST "https://mcp.getdrio.com/api/v1/auth/register" \ -H "Content-Type: application/json" \ -d '{ "client_name": "ChatGPT", "grant_types": [ "authorization_code", "refresh_token" ], "redirect_uris": [ "https://chat.openai.com/aip/oauth/callback" ], "response_types": [ "code" ] }'{
"client_id": "client_123",
"client_name": "ChatGPT",
"grant_types": [
"authorization_code",
"refresh_token"
],
"redirect_uris": [
"https://chat.openai.com/aip/oauth/callback"
],
"response_types": [
"code"
],
"token_endpoint_auth_method": "none"
}{
"error": "invalid_client_metadata",
"error_description": "redirect_uris is required"
}Query Parameters
uriResponse Body
curl -X GET "https://mcp.getdrio.com/api/v1/auth/authorize?client_id=string&redirect_uri=http%3A%2F%2Fexample.com"Authorization code or refresh token exchange payload
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
curl -X POST "https://mcp.getdrio.com/api/v1/auth/token" \ -H "Content-Type: application/json" \ -d '{ "client_id": "client_123", "code": "auth_code_123", "code_verifier": "verifier_123", "grant_type": "authorization_code", "redirect_uri": "https://chat.openai.com/aip/oauth/callback" }'{
"access_token": "access_token_123",
"refresh_token": "refresh_token_123",
"expires_in": 3600,
"token_type": "Bearer"
}{
"error": "invalid_request",
"error_description": "Missing required fields: client_id, code, code_verifier"
}Refresh token exchange payload
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
curl -X POST "https://mcp.getdrio.com/api/v1/auth/refresh" \ -H "Content-Type: application/json" \ -d '{ "client_id": "client_123", "refresh_token": "refresh_token_123", "redirect_uri": "https://chat.openai.com/aip/oauth/callback" }'{
"access_token": "access_token_123",
"refresh_token": "refresh_token_456",
"expires_in": 3600,
"token_type": "Bearer"
}{
"error": "invalid_request",
"error_description": "Missing required field: refresh_token"
}Authorization
oauth openid, profile, emailIn: header
Scope: openid, profile, email
Response Body
application/json
application/json
curl -X GET "https://mcp.getdrio.com/api/v1/me"{
"user": {
"workosUserId": "user_123",
"email": "nicolai@getdrio.com",
"image": "https://images.getdrio.com/avatar.png",
"name": "Nicolai",
"scopes": [
"openid",
"profile",
"email"
]
}
}{
"error": {
"code": "unauthorized",
"message": "Missing or invalid Bearer access token",
"details": null,
"requestId": "4c9b58ff-69a7-4ccf-840d-a0f1ec9f9d77"
}
}