# Credential Requests

The following endpoints allow you to manage credential requests for connections and keys. You can create requests, list them, view details, and manage individual credentials within requests.

## List Credential Requests

> Retrieves a list of Credential Requests.

```json
{"openapi":"3.0.0","info":{"title":"Web API v2 - Public ","version":"1.0.0"},"tags":[{"name":"Credential Requests","description":"The following endpoints allow you to manage credential requests for connections and keys. You can create requests, list them, view details, and manage individual credentials within requests."}],"servers":[{"url":"https://eu1.make.com/api/v2","description":"EU1 production zone"},{"url":"https://eu2.make.com/api/v2","description":"EU2 production zone"},{"url":"https://us1.make.com/api/v2","description":"US1 production zone"},{"url":"https://us2.make.com/api/v2","description":"US2 production zone"},{"url":"https://eu1.make.celonis.com/api/v2","description":"Celonis EU1 production zone"},{"url":"https://us1.make.celonis.com/api/v2","description":"Celonis US1 production zone"}],"security":[{"token":["credential-requests:read"]}],"components":{"securitySchemes":{"token":{"type":"apiKey","name":"Authorization","in":"header","description":"Authorize the API call with your API token in the `Authorization` header with the value: `Token your-api-token`.\n\nIf you don't have an API token yet, please refer to the [\"Authentication\" section](/api-documentation/authentication) to learn how to create one.\n"}}},"paths":{"/credential-requests/requests":{"get":{"tags":["Credential Requests"],"summary":"List Credential Requests","description":"Retrieves a list of Credential Requests.","parameters":[{"name":"teamId","in":"query","required":true,"description":"Team ID to filter credential requests.","schema":{"type":"integer"}},{"name":"cols","in":"query","required":false,"description":"Not all properties of the Entity may be returned by default, for example because of their size. Using the Column Filter parameter, you can ask the Server to provide additional properties when needed.","style":"form","explode":true,"schema":{"type":"array","items":{"type":"string","enum":["id","organizationId","teamId","name","description","externalProviderId","createdAt","updatedAt","expiresAt","status","shouldSendEmail","emailSentAt","appNames","makeProvider","userId","makeProviderId"]}}},{"name":"userId","in":"query","required":false,"description":"User ID to filter credential requests.","schema":{"type":"number"}},{"name":"makeProviderId","in":"query","required":false,"description":"Make Provider ID to filter credential requests.","schema":{"type":"number"}},{"name":"status","in":"query","required":false,"description":"Status to filter credential requests.","schema":{"type":"string","enum":["authorized","declined","incomplete","invalid","partially_authorized","pending"]}},{"name":"name","in":"query","required":false,"description":"Name to filter credential requests.","schema":{"type":"string","minLength":0,"maxLength":255}}],"responses":{"200":{"description":"List of Credential Requests.","content":{"application/json":{"schema":{"type":"object","properties":{"requests":{"type":"array","items":{"type":"object","description":"A credential request list item with optional provider information.","allOf":[{"type":"object","description":"A credential request object.","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the credential request."},"organizationId":{"type":"integer","description":"ID of the organization the request belongs to."},"teamId":{"type":"integer","description":"ID of the team the request belongs to."},"userId":{"type":"integer","description":"ID of the user who created the request."},"name":{"type":"string","description":"Name of the credential request."},"description":{"type":"string","description":"Description of the credential request."},"externalProviderId":{"type":"number","nullable":true,"description":"External provider identifier."},"makeProviderId":{"type":"number","nullable":true,"description":"Make provider identifier."},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the request was created."},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the request was last updated."},"expiresAt":{"type":"string","format":"date-time","description":"Timestamp when the request expires."},"status":{"type":"string","description":"Status of the credential request.","enum":["authorized","declined","incomplete","invalid","partially_authorized","pending"]},"shouldSendEmail":{"type":"boolean","description":"Whether an email should be sent for this request."},"emailSentAt":{"type":"string","format":"date-time","nullable":true,"description":"Timestamp when the email was sent."}}},{"type":"object","properties":{"appNames":{"type":"array","items":{"type":"string"},"description":"Names of apps associated with this request."},"makeProvider":{"type":"object","nullable":true,"description":"Make provider information.","properties":{"id":{"type":"integer","description":"Provider user ID."},"email":{"type":"string","description":"Provider email address."},"name":{"type":"string","description":"Provider name."}}}}}]}}}}}}}}}}}}
```

## Create new Credential Request - deprecated

> Creates a new request for Credentials. Supports two flows: 1) Flow for new Make users, 2) Flow for existing Make users.

```json
{"openapi":"3.0.0","info":{"title":"Web API v2 - Public ","version":"1.0.0"},"tags":[{"name":"Credential Requests","description":"The following endpoints allow you to manage credential requests for connections and keys. You can create requests, list them, view details, and manage individual credentials within requests."}],"servers":[{"url":"https://eu1.make.com/api/v2","description":"EU1 production zone"},{"url":"https://eu2.make.com/api/v2","description":"EU2 production zone"},{"url":"https://us1.make.com/api/v2","description":"US1 production zone"},{"url":"https://us2.make.com/api/v2","description":"US2 production zone"},{"url":"https://eu1.make.celonis.com/api/v2","description":"Celonis EU1 production zone"},{"url":"https://us1.make.celonis.com/api/v2","description":"Celonis US1 production zone"}],"security":[{"token":["credential-requests:write"]}],"components":{"securitySchemes":{"token":{"type":"apiKey","name":"Authorization","in":"header","description":"Authorize the API call with your API token in the `Authorization` header with the value: `Token your-api-token`.\n\nIf you don't have an API token yet, please refer to the [\"Authentication\" section](/api-documentation/authentication) to learn how to create one.\n"}}},"paths":{"/credential-requests/requests":{"post":{"tags":["Credential Requests"],"summary":"Create new Credential Request - deprecated","deprecated":true,"description":"Creates a new request for Credentials. Supports two flows: 1) Flow for new Make users, 2) Flow for existing Make users.","requestBody":{"required":true,"description":"Request body for creating a new Credential Request. Supports two provider flows - inviting a new user or referencing an existing Make user.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"description":"Request body for creating a new Credential Request. Supports two provider flows - inviting a new user or referencing an existing Make user.","required":["name","teamId","provider"],"properties":{"name":{"type":"string","maxLength":255,"description":"Name of the Request which will be displayed to the End Users who open it."},"teamId":{"type":"number","description":"ID of the Team the Credential Request should be bound to."},"description":{"type":"string","maxLength":512,"description":"Description of the Request which will be displayed to the End Users who open it."},"connections":{"type":"array","maxItems":32,"description":"Array of connections to include in the request.","items":{"type":"object","additionalProperties":false,"required":["type","appName","appModules","appVersion"],"properties":{"type":{"type":"string","maxLength":64,"description":"Type of the Connection to be included in the Request."},"label":{"type":"string","maxLength":128,"description":"Label of the Connection to be used instead of the default generated one."},"description":{"type":"string","maxLength":512,"description":"Description of the particular Connection to be displayed in the Request view."},"scope":{"type":"array","items":{"type":"string","maxLength":128},"description":"Array of Scopes that the Connection should ask for."},"nameOverride":{"type":"string","maxLength":255,"minLength":1,"description":"An optional name to use for the credential when created in the platform, overriding the default generated name."},"appName":{"type":"string","maxLength":255,"description":"Name of the application that this credential is associated with."},"appModules":{"type":"array","items":{"type":"string","maxLength":255},"description":"Array of modules/components within the application that will use this credential."},"appVersion":{"type":"string","maxLength":64,"description":"Version of the application at the time the credential was created."}}}},"keys":{"type":"array","maxItems":32,"description":"Array of keys to include in the request.","items":{"type":"object","additionalProperties":false,"required":["type","appName","appModules","appVersion"],"properties":{"type":{"type":"string","maxLength":64,"description":"Type of the Key to be included in the Request."},"label":{"type":"string","maxLength":128,"description":"Label of the Key to be used instead of the default generated one."},"description":{"type":"string","maxLength":512,"description":"Description of the particular Key to be displayed in the Request view."},"nameOverride":{"type":"string","maxLength":255,"minLength":1,"description":"An optional name to use for the credential when created in the platform, overriding the default generated name."},"appName":{"type":"string","maxLength":255,"description":"Name of the application that this credential is associated with."},"appModules":{"type":"array","items":{"type":"string","maxLength":255},"description":"Array of modules/components within the application that will use this credential."},"appVersion":{"type":"string","maxLength":64,"description":"Version of the application at the time the credential was created."}}}},"provider":{"description":"Provider information. Either an existing Make user ID or a new user to invite (name & email).","oneOf":[{"type":"object","additionalProperties":false,"required":["providerMakeUserId"],"description":"Existing Make user as provider. The user will be added to the team if not already a member.","properties":{"providerMakeUserId":{"type":"number","description":"ID of the Provider's Make User. The user will be added to the team that owns the credential request."}}},{"type":"object","required":["newUser"],"description":"New user to invite to the organization and add to the team.","properties":{"newUser":{"type":"object","additionalProperties":false,"description":"New user to invite to the organization and add to the team.","required":["name","email"],"properties":{"name":{"type":"string","maxLength":255,"description":"Name of the new user to invite."},"email":{"type":"string","maxLength":256,"description":"Email address of the new user to invite."}}}}}]}}}}}},"responses":{"200":{"description":"Credential Request has been created successfully.","content":{"application/json":{"schema":{"type":"object","required":["request","publicUri"],"properties":{"request":{"type":"object","description":"A credential request object.","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the credential request."},"organizationId":{"type":"integer","description":"ID of the organization the request belongs to."},"teamId":{"type":"integer","description":"ID of the team the request belongs to."},"userId":{"type":"integer","description":"ID of the user who created the request."},"name":{"type":"string","description":"Name of the credential request."},"description":{"type":"string","description":"Description of the credential request."},"externalProviderId":{"type":"number","nullable":true,"description":"External provider identifier."},"makeProviderId":{"type":"number","nullable":true,"description":"Make provider identifier."},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the request was created."},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the request was last updated."},"expiresAt":{"type":"string","format":"date-time","description":"Timestamp when the request expires."},"status":{"type":"string","description":"Status of the credential request.","enum":["authorized","declined","incomplete","invalid","partially_authorized","pending"]},"shouldSendEmail":{"type":"boolean","description":"Whether an email should be sent for this request."},"emailSentAt":{"type":"string","format":"date-time","nullable":true,"description":"Timestamp when the email was sent."}}},"publicUri":{"type":"string","format":"uri","description":"Public URI where the provider can access the credential request."}}}}}}}}}}}
```

## Create new Credential Request (V2)

> Creates a new request for Credentials using app and module selections.\
> Credentials (connections/keys) are automatically derived from the selected modules using the modules-with-credentials API.\
> \
> Supports two provider flows:\
> 1\. \*\*Existing Make user\*\* - Reference an existing Make user by their ID. The user will be added to the team if not already a member.\
> 2\. \*\*New user invitation\*\* - Invite a new user by providing their name and email.<br>

```json
{"openapi":"3.0.0","info":{"title":"Web API v2 - Public ","version":"1.0.0"},"tags":[{"name":"Credential Requests","description":"The following endpoints allow you to manage credential requests for connections and keys. You can create requests, list them, view details, and manage individual credentials within requests."}],"servers":[{"url":"https://eu1.make.com/api/v2","description":"EU1 production zone"},{"url":"https://eu2.make.com/api/v2","description":"EU2 production zone"},{"url":"https://us1.make.com/api/v2","description":"US1 production zone"},{"url":"https://us2.make.com/api/v2","description":"US2 production zone"},{"url":"https://eu1.make.celonis.com/api/v2","description":"Celonis EU1 production zone"},{"url":"https://us1.make.celonis.com/api/v2","description":"Celonis US1 production zone"}],"security":[{"token":["credential-requests:write"]}],"components":{"securitySchemes":{"token":{"type":"apiKey","name":"Authorization","in":"header","description":"Authorize the API call with your API token in the `Authorization` header with the value: `Token your-api-token`.\n\nIf you don't have an API token yet, please refer to the [\"Authentication\" section](/api-documentation/authentication) to learn how to create one.\n"}}},"paths":{"/credential-requests/requests/v2":{"post":{"tags":["Credential Requests"],"summary":"Create new Credential Request (V2)","description":"Creates a new request for Credentials using app and module selections.\nCredentials (connections/keys) are automatically derived from the selected modules using the modules-with-credentials API.\n\nSupports two provider flows:\n1. **Existing Make user** - Reference an existing Make user by their ID. The user will be added to the team if not already a member.\n2. **New user invitation** - Invite a new user by providing their name and email.\n","requestBody":{"required":true,"description":"V2 Request body for creating a Credential Request. Credentials are derived from app and module selections.","content":{"application/json":{"schema":{"type":"object","description":"V2 Request body for creating a Credential Request. Credentials are derived from app and module selections.","additionalProperties":false,"required":["name","teamId","credentials","provider"],"properties":{"name":{"type":"string","maxLength":255,"description":"Name of the Request which will be displayed to the End Users who open it."},"teamId":{"type":"integer","minimum":1,"description":"ID of the Team the Credential Request should be bound to."},"description":{"type":"string","maxLength":512,"description":"Description of the Request which will be displayed to the End Users who open it."},"credentials":{"type":"array","minItems":1,"maxItems":64,"description":"Array of app/module selections to derive credentials from.","items":{"type":"object","description":"App and module selection for credential derivation.","additionalProperties":false,"required":["appName","appModules"],"properties":{"appName":{"type":"string","maxLength":255,"description":"Name of the application to request credentials for."},"appModules":{"type":"array","minItems":1,"description":"Array of module IDs to include. Use [\"*\"] to select all modules with credentials.","items":{"type":"string","maxLength":255,"description":"Module ID within the application. Use \"*\" to select all modules."}},"appVersion":{"type":"integer","minimum":0,"description":"Version of the application. If not provided, it defaults to the latest available version."},"nameOverride":{"type":"string","minLength":1,"maxLength":255,"description":"An optional name to use for the credential when created in the platform, overriding the default generated name."},"description":{"type":"string","maxLength":512,"description":"Description for this credential to be displayed in the Request view."}}}},"provider":{"description":"Provider information. Either an existing Make user ID or a new user to invite (name & email).","oneOf":[{"type":"object","additionalProperties":false,"required":["providerMakeUserId"],"description":"Existing Make user as provider. The user will be added to the team if not already a member.","properties":{"providerMakeUserId":{"type":"number","description":"ID of the Provider's Make User. The user will be added to the team that owns the credential request."}}},{"type":"object","required":["newUser"],"description":"New user to invite to the organization and add to the team.","properties":{"newUser":{"type":"object","additionalProperties":false,"description":"New user to invite to the organization and add to the team.","required":["name","email"],"properties":{"name":{"type":"string","maxLength":255,"description":"Name of the new user to invite."},"email":{"type":"string","maxLength":256,"description":"Email address of the new user to invite."}}}}}]}}}}}},"responses":{"200":{"description":"Credential Request has been created successfully.","content":{"application/json":{"schema":{"type":"object","description":"Response for V2 Credential Request creation.","required":["request","publicUri"],"properties":{"request":{"type":"object","description":"A credential request object.","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the credential request."},"organizationId":{"type":"integer","description":"ID of the organization the request belongs to."},"teamId":{"type":"integer","description":"ID of the team the request belongs to."},"userId":{"type":"integer","description":"ID of the user who created the request."},"name":{"type":"string","description":"Name of the credential request."},"description":{"type":"string","description":"Description of the credential request."},"externalProviderId":{"type":"number","nullable":true,"description":"External provider identifier."},"makeProviderId":{"type":"number","nullable":true,"description":"Make provider identifier."},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the request was created."},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the request was last updated."},"expiresAt":{"type":"string","format":"date-time","description":"Timestamp when the request expires."},"status":{"type":"string","description":"Status of the credential request.","enum":["authorized","declined","incomplete","invalid","partially_authorized","pending"]},"shouldSendEmail":{"type":"boolean","description":"Whether an email should be sent for this request."},"emailSentAt":{"type":"string","format":"date-time","nullable":true,"description":"Timestamp when the email was sent."}}},"publicUri":{"type":"string","format":"uri","description":"Public URI for accessing the credential request."}}}}}}}}}}}
```

## Get Credential Request

> Retrieves a single Credential Request.

```json
{"openapi":"3.0.0","info":{"title":"Web API v2 - Public ","version":"1.0.0"},"tags":[{"name":"Credential Requests","description":"The following endpoints allow you to manage credential requests for connections and keys. You can create requests, list them, view details, and manage individual credentials within requests."}],"servers":[{"url":"https://eu1.make.com/api/v2","description":"EU1 production zone"},{"url":"https://eu2.make.com/api/v2","description":"EU2 production zone"},{"url":"https://us1.make.com/api/v2","description":"US1 production zone"},{"url":"https://us2.make.com/api/v2","description":"US2 production zone"},{"url":"https://eu1.make.celonis.com/api/v2","description":"Celonis EU1 production zone"},{"url":"https://us1.make.celonis.com/api/v2","description":"Celonis US1 production zone"}],"security":[{"token":["credential-requests:read"]}],"components":{"securitySchemes":{"token":{"type":"apiKey","name":"Authorization","in":"header","description":"Authorize the API call with your API token in the `Authorization` header with the value: `Token your-api-token`.\n\nIf you don't have an API token yet, please refer to the [\"Authentication\" section](/api-documentation/authentication) to learn how to create one.\n"}}},"paths":{"/credential-requests/requests/{requestId}":{"get":{"tags":["Credential Requests"],"summary":"Get Credential Request","description":"Retrieves a single Credential Request.","parameters":[{"name":"requestId","in":"path","required":true,"description":"ID of the Credential Request.","schema":{"type":"string","format":"uuid"}},{"name":"cols","in":"query","required":false,"description":"Not all properties of the Entity may be returned by default, for example because of their size. Using the Column Filter parameter, you can ask the Server to provide additional properties when needed.","style":"form","explode":true,"schema":{"type":"array","items":{"type":"string","enum":["id","organizationId","teamId","name","description","externalProviderId","createdAt","updatedAt","expiresAt","status","shouldSendEmail","emailSentAt","appNames","makeProvider","userId","makeProviderId"]}}}],"responses":{"200":{"description":"Credential Request.","content":{"application/json":{"schema":{"type":"object","properties":{"request":{"type":"object","description":"A credential request with detailed provider information.","allOf":[{"type":"object","description":"A credential request object.","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the credential request."},"organizationId":{"type":"integer","description":"ID of the organization the request belongs to."},"teamId":{"type":"integer","description":"ID of the team the request belongs to."},"userId":{"type":"integer","description":"ID of the user who created the request."},"name":{"type":"string","description":"Name of the credential request."},"description":{"type":"string","description":"Description of the credential request."},"externalProviderId":{"type":"number","nullable":true,"description":"External provider identifier."},"makeProviderId":{"type":"number","nullable":true,"description":"Make provider identifier."},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the request was created."},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the request was last updated."},"expiresAt":{"type":"string","format":"date-time","description":"Timestamp when the request expires."},"status":{"type":"string","description":"Status of the credential request.","enum":["authorized","declined","incomplete","invalid","partially_authorized","pending"]},"shouldSendEmail":{"type":"boolean","description":"Whether an email should be sent for this request."},"emailSentAt":{"type":"string","format":"date-time","nullable":true,"description":"Timestamp when the email was sent."}}},{"type":"object","properties":{"makeProvider":{"type":"object","nullable":true,"description":"Make provider information.","properties":{"id":{"type":"integer"},"email":{"type":"string"},"name":{"type":"string"}}}}}]}}}}}}}}}}}
```

## Delete Credential Request

> Deletes the given Credential Request.

```json
{"openapi":"3.0.0","info":{"title":"Web API v2 - Public ","version":"1.0.0"},"tags":[{"name":"Credential Requests","description":"The following endpoints allow you to manage credential requests for connections and keys. You can create requests, list them, view details, and manage individual credentials within requests."}],"servers":[{"url":"https://eu1.make.com/api/v2","description":"EU1 production zone"},{"url":"https://eu2.make.com/api/v2","description":"EU2 production zone"},{"url":"https://us1.make.com/api/v2","description":"US1 production zone"},{"url":"https://us2.make.com/api/v2","description":"US2 production zone"},{"url":"https://eu1.make.celonis.com/api/v2","description":"Celonis EU1 production zone"},{"url":"https://us1.make.celonis.com/api/v2","description":"Celonis US1 production zone"}],"security":[{"token":["credential-requests:write"]}],"components":{"securitySchemes":{"token":{"type":"apiKey","name":"Authorization","in":"header","description":"Authorize the API call with your API token in the `Authorization` header with the value: `Token your-api-token`.\n\nIf you don't have an API token yet, please refer to the [\"Authentication\" section](/api-documentation/authentication) to learn how to create one.\n"}}},"paths":{"/credential-requests/requests/{requestId}":{"delete":{"tags":["Credential Requests"],"summary":"Delete Credential Request","description":"Deletes the given Credential Request.","parameters":[{"name":"requestId","in":"path","required":true,"description":"ID of the Credential Request.","schema":{"type":"string","format":"uuid"}},{"name":"confirmed","in":"query","required":false,"description":"When true, also deletes credentials (connections and keys) associated with the credential request. When false or omitted the API will return an error if there are any associated credentials, preventing accidental deletion of credentials.","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Credential Request has been deleted successfully.","content":{"application/json":{"schema":{"type":"object","properties":{"deleted":{"type":"boolean","description":"Indicates if the request was deleted."}}}}}}}}}}}
```

## Get Credential Request Detail

> Retrieves detail of a single Credential Request with associated credentials.\
> This endpoint has been enhanced to include all credentials associated with the request in a single response,\
> eliminating the need for additional API calls.<br>

```json
{"openapi":"3.0.0","info":{"title":"Web API v2 - Public ","version":"1.0.0"},"tags":[{"name":"Credential Requests","description":"The following endpoints allow you to manage credential requests for connections and keys. You can create requests, list them, view details, and manage individual credentials within requests."}],"servers":[{"url":"https://eu1.make.com/api/v2","description":"EU1 production zone"},{"url":"https://eu2.make.com/api/v2","description":"EU2 production zone"},{"url":"https://us1.make.com/api/v2","description":"US1 production zone"},{"url":"https://us2.make.com/api/v2","description":"US2 production zone"},{"url":"https://eu1.make.celonis.com/api/v2","description":"Celonis EU1 production zone"},{"url":"https://us1.make.celonis.com/api/v2","description":"Celonis US1 production zone"}],"security":[{"token":["credential-requests:read"]}],"components":{"securitySchemes":{"token":{"type":"apiKey","name":"Authorization","in":"header","description":"Authorize the API call with your API token in the `Authorization` header with the value: `Token your-api-token`.\n\nIf you don't have an API token yet, please refer to the [\"Authentication\" section](/api-documentation/authentication) to learn how to create one.\n"}}},"paths":{"/credential-requests/requests/{requestId}/detail":{"get":{"tags":["Credential Requests"],"summary":"Get Credential Request Detail","description":"Retrieves detail of a single Credential Request with associated credentials.\nThis endpoint has been enhanced to include all credentials associated with the request in a single response,\neliminating the need for additional API calls.\n","parameters":[{"name":"requestId","in":"path","required":true,"description":"ID of the Credential Request.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Detail of the Credential Request with associated credentials.","content":{"application/json":{"schema":{"type":"object","properties":{"requestDetail":{"type":"object","description":"Detailed credential request including associated credentials, provider, and requester information.","allOf":[{"type":"object","description":"A credential request object.","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the credential request."},"organizationId":{"type":"integer","description":"ID of the organization the request belongs to."},"teamId":{"type":"integer","description":"ID of the team the request belongs to."},"userId":{"type":"integer","description":"ID of the user who created the request."},"name":{"type":"string","description":"Name of the credential request."},"description":{"type":"string","description":"Description of the credential request."},"externalProviderId":{"type":"number","nullable":true,"description":"External provider identifier."},"makeProviderId":{"type":"number","nullable":true,"description":"Make provider identifier."},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the request was created."},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the request was last updated."},"expiresAt":{"type":"string","format":"date-time","description":"Timestamp when the request expires."},"status":{"type":"string","description":"Status of the credential request.","enum":["authorized","declined","incomplete","invalid","partially_authorized","pending"]},"shouldSendEmail":{"type":"boolean","description":"Whether an email should be sent for this request."},"emailSentAt":{"type":"string","format":"date-time","nullable":true,"description":"Timestamp when the email was sent."}}},{"type":"object","properties":{"makeProvider":{"type":"object","nullable":true,"description":"Make provider information.","properties":{"id":{"type":"integer","description":"Provider user ID."},"email":{"type":"string","description":"Provider email address."},"name":{"type":"string","description":"Provider name."}}},"user":{"type":"object","description":"User who created the request.","properties":{"id":{"type":"integer","description":"User ID."},"email":{"type":"string","description":"User email address."},"name":{"type":"string","description":"User name."}}},"credentials":{"type":"array","description":"List of credentials associated with this request.","items":{"type":"object","description":"A credential object (connection or key).","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the credential."},"requestId":{"type":"string","format":"uuid","description":"ID of the parent credential request."},"component":{"type":"string","description":"Component type of the credential.","enum":["account","keychain"]},"type":{"type":"string","description":"Type of the credential.","enum":["oauth","basic","key"]},"name":{"type":"string","description":"Internal name of the credential."},"label":{"type":"string","description":"Display label for the credential."},"description":{"type":"string","description":"Description of the credential."},"scope":{"type":"array","items":{"type":"string"},"description":"Requested scopes for the credential."},"remoteId":{"type":"string","description":"Remote identifier after creation."},"remoteScope":{"type":"array","items":{"type":"string"},"description":"Scopes granted by the remote service."},"tokenId":{"type":"string","format":"uuid","description":"Associated token ID."},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the credential was created."},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the credential was last updated."},"state":{"type":"string","description":"State of an individual credential.","enum":["authorized","declined","incomplete","invalid","pending","reauthorizing"]},"declineReason":{"type":"string","description":"Reason for declining the credential."},"appName":{"type":"string","description":"Name of the application associated with this credential."},"appModules":{"type":"array","items":{"type":"string"},"description":"Modules within the application that use this credential."},"appVersion":{"type":"string","description":"Version of the application."},"nameOverride":{"type":"string","description":"Custom name override for the credential."}}}}}}]}}}}}}}}}}}
```

## Decline Credential

> Declines a credential by setting its state to declined and recording the reason. This endpoint is idempotent and can be used to update the decline reason of an already declined credential.

```json
{"openapi":"3.0.0","info":{"title":"Web API v2 - Public ","version":"1.0.0"},"tags":[{"name":"Credential Requests","description":"The following endpoints allow you to manage credential requests for connections and keys. You can create requests, list them, view details, and manage individual credentials within requests."}],"servers":[{"url":"https://eu1.make.com/api/v2","description":"EU1 production zone"},{"url":"https://eu2.make.com/api/v2","description":"EU2 production zone"},{"url":"https://us1.make.com/api/v2","description":"US1 production zone"},{"url":"https://us2.make.com/api/v2","description":"US2 production zone"},{"url":"https://eu1.make.celonis.com/api/v2","description":"Celonis EU1 production zone"},{"url":"https://us1.make.celonis.com/api/v2","description":"Celonis US1 production zone"}],"security":[{"token":["credential-requests:write"]}],"components":{"securitySchemes":{"token":{"type":"apiKey","name":"Authorization","in":"header","description":"Authorize the API call with your API token in the `Authorization` header with the value: `Token your-api-token`.\n\nIf you don't have an API token yet, please refer to the [\"Authentication\" section](/api-documentation/authentication) to learn how to create one.\n"}}},"paths":{"/credential-requests/credentials/{credentialId}/decline":{"post":{"tags":["Credential Requests"],"summary":"Decline Credential","description":"Declines a credential by setting its state to declined and recording the reason. This endpoint is idempotent and can be used to update the decline reason of an already declined credential.","parameters":[{"name":"credentialId","in":"path","required":true,"description":"ID of the Credential.","schema":{"type":"string","format":"uuid"}},{"name":"cols","in":"query","required":false,"description":"Not all properties of the Entity may be returned by default, for example because of their size. Using the Column Filter parameter, you can ask the Server to provide additional properties when needed.","style":"form","explode":true,"schema":{"type":"array","items":{"type":"string","enum":["id","requestId","component","type","name","label","description","scope","remoteId","remoteScope","tokenId","createdAt","updatedAt","state","declineReason","appName","appModules","appVersion"]}}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"reason":{"type":"string","minLength":1,"maxLength":2048,"description":"The reason why the credential was declined. This will be visible to support teams and helps with troubleshooting."}}}}}},"responses":{"200":{"description":"Credential has been declined successfully.","content":{"application/json":{"schema":{"type":"object","properties":{"credential":{"type":"object","description":"A credential object (connection or key).","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the credential."},"requestId":{"type":"string","format":"uuid","description":"ID of the parent credential request."},"component":{"type":"string","description":"Component type of the credential.","enum":["account","keychain"]},"type":{"type":"string","description":"Type of the credential.","enum":["oauth","basic","key"]},"name":{"type":"string","description":"Internal name of the credential."},"label":{"type":"string","description":"Display label for the credential."},"description":{"type":"string","description":"Description of the credential."},"scope":{"type":"array","items":{"type":"string"},"description":"Requested scopes for the credential."},"remoteId":{"type":"string","description":"Remote identifier after creation."},"remoteScope":{"type":"array","items":{"type":"string"},"description":"Scopes granted by the remote service."},"tokenId":{"type":"string","format":"uuid","description":"Associated token ID."},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the credential was created."},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the credential was last updated."},"state":{"type":"string","description":"State of an individual credential.","enum":["authorized","declined","incomplete","invalid","pending","reauthorizing"]},"declineReason":{"type":"string","description":"Reason for declining the credential."},"appName":{"type":"string","description":"Name of the application associated with this credential."},"appModules":{"type":"array","items":{"type":"string"},"description":"Modules within the application that use this credential."},"appVersion":{"type":"string","description":"Version of the application."},"nameOverride":{"type":"string","description":"Custom name override for the credential."}}}}}}}}}}}}}
```

## Delete Remote Credential

> Deletes a credential from the remote platform (Make Web API) and resets its state to pending. The credential can then be re-created through the normal creation flow.

```json
{"openapi":"3.0.0","info":{"title":"Web API v2 - Public ","version":"1.0.0"},"tags":[{"name":"Credential Requests","description":"The following endpoints allow you to manage credential requests for connections and keys. You can create requests, list them, view details, and manage individual credentials within requests."}],"servers":[{"url":"https://eu1.make.com/api/v2","description":"EU1 production zone"},{"url":"https://eu2.make.com/api/v2","description":"EU2 production zone"},{"url":"https://us1.make.com/api/v2","description":"US1 production zone"},{"url":"https://us2.make.com/api/v2","description":"US2 production zone"},{"url":"https://eu1.make.celonis.com/api/v2","description":"Celonis EU1 production zone"},{"url":"https://us1.make.celonis.com/api/v2","description":"Celonis US1 production zone"}],"security":[{"token":["credential-requests:write"]}],"components":{"securitySchemes":{"token":{"type":"apiKey","name":"Authorization","in":"header","description":"Authorize the API call with your API token in the `Authorization` header with the value: `Token your-api-token`.\n\nIf you don't have an API token yet, please refer to the [\"Authentication\" section](/api-documentation/authentication) to learn how to create one.\n"}}},"paths":{"/credential-requests/credentials/{credentialId}/delete-remote":{"post":{"tags":["Credential Requests"],"summary":"Delete Remote Credential","description":"Deletes a credential from the remote platform (Make Web API) and resets its state to pending. The credential can then be re-created through the normal creation flow.","parameters":[{"name":"credentialId","in":"path","required":true,"description":"ID of the Credential.","schema":{"type":"string","format":"uuid"}},{"name":"cols","in":"query","required":false,"description":"Not all properties of the Entity may be returned by default, for example because of their size. Using the Column Filter parameter, you can ask the Server to provide additional properties when needed.","style":"form","explode":true,"schema":{"type":"array","items":{"type":"string","enum":["id","requestId","component","type","name","label","description","scope","remoteId","remoteScope","tokenId","createdAt","updatedAt","state","declineReason","appName","appModules","appVersion"]}}}],"responses":{"200":{"description":"Credential has been deleted from remote and reset to pending.","content":{"application/json":{"schema":{"type":"object","properties":{"credential":{"type":"object","description":"A credential object (connection or key).","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the credential."},"requestId":{"type":"string","format":"uuid","description":"ID of the parent credential request."},"component":{"type":"string","description":"Component type of the credential.","enum":["account","keychain"]},"type":{"type":"string","description":"Type of the credential.","enum":["oauth","basic","key"]},"name":{"type":"string","description":"Internal name of the credential."},"label":{"type":"string","description":"Display label for the credential."},"description":{"type":"string","description":"Description of the credential."},"scope":{"type":"array","items":{"type":"string"},"description":"Requested scopes for the credential."},"remoteId":{"type":"string","description":"Remote identifier after creation."},"remoteScope":{"type":"array","items":{"type":"string"},"description":"Scopes granted by the remote service."},"tokenId":{"type":"string","format":"uuid","description":"Associated token ID."},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the credential was created."},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the credential was last updated."},"state":{"type":"string","description":"State of an individual credential.","enum":["authorized","declined","incomplete","invalid","pending","reauthorizing"]},"declineReason":{"type":"string","description":"Reason for declining the credential."},"appName":{"type":"string","description":"Name of the application associated with this credential."},"appModules":{"type":"array","items":{"type":"string"},"description":"Modules within the application that use this credential."},"appVersion":{"type":"string","description":"Version of the application."},"nameOverride":{"type":"string","description":"Custom name override for the credential."}}}}}}}}}}}}}
```

## Request Credential Reauthorization

> Tests the OAuth connection and transitions to reauthorizing state if invalid. Returns an error if the connection is still valid.

```json
{"openapi":"3.0.0","info":{"title":"Web API v2 - Public ","version":"1.0.0"},"tags":[{"name":"Credential Requests","description":"The following endpoints allow you to manage credential requests for connections and keys. You can create requests, list them, view details, and manage individual credentials within requests."}],"servers":[{"url":"https://eu1.make.com/api/v2","description":"EU1 production zone"},{"url":"https://eu2.make.com/api/v2","description":"EU2 production zone"},{"url":"https://us1.make.com/api/v2","description":"US1 production zone"},{"url":"https://us2.make.com/api/v2","description":"US2 production zone"},{"url":"https://eu1.make.celonis.com/api/v2","description":"Celonis EU1 production zone"},{"url":"https://us1.make.celonis.com/api/v2","description":"Celonis US1 production zone"}],"security":[{"token":["credential-requests:write"]}],"components":{"securitySchemes":{"token":{"type":"apiKey","name":"Authorization","in":"header","description":"Authorize the API call with your API token in the `Authorization` header with the value: `Token your-api-token`.\n\nIf you don't have an API token yet, please refer to the [\"Authentication\" section](/api-documentation/authentication) to learn how to create one.\n"}}},"paths":{"/credential-requests/credentials/{credentialId}/request-reauthorize":{"post":{"tags":["Credential Requests"],"summary":"Request Credential Reauthorization","description":"Tests the OAuth connection and transitions to reauthorizing state if invalid. Returns an error if the connection is still valid.","parameters":[{"name":"credentialId","in":"path","required":true,"description":"ID of the Credential.","schema":{"type":"string","format":"uuid"}},{"name":"cols","in":"query","required":false,"description":"Not all properties of the Entity may be returned by default, for example because of their size. Using the Column Filter parameter, you can ask the Server to provide additional properties when needed.","style":"form","explode":true,"schema":{"type":"array","items":{"type":"string","enum":["id","requestId","component","type","name","label","description","scope","remoteId","remoteScope","tokenId","createdAt","updatedAt","state","declineReason","appName","appModules","appVersion"]}}}],"responses":{"200":{"description":"Credential transitioned to reauthorizing state.","content":{"application/json":{"schema":{"type":"object","properties":{"credential":{"type":"object","description":"A credential object (connection or key).","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the credential."},"requestId":{"type":"string","format":"uuid","description":"ID of the parent credential request."},"component":{"type":"string","description":"Component type of the credential.","enum":["account","keychain"]},"type":{"type":"string","description":"Type of the credential.","enum":["oauth","basic","key"]},"name":{"type":"string","description":"Internal name of the credential."},"label":{"type":"string","description":"Display label for the credential."},"description":{"type":"string","description":"Description of the credential."},"scope":{"type":"array","items":{"type":"string"},"description":"Requested scopes for the credential."},"remoteId":{"type":"string","description":"Remote identifier after creation."},"remoteScope":{"type":"array","items":{"type":"string"},"description":"Scopes granted by the remote service."},"tokenId":{"type":"string","format":"uuid","description":"Associated token ID."},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the credential was created."},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the credential was last updated."},"state":{"type":"string","description":"State of an individual credential.","enum":["authorized","declined","incomplete","invalid","pending","reauthorizing"]},"declineReason":{"type":"string","description":"Reason for declining the credential."},"appName":{"type":"string","description":"Name of the application associated with this credential."},"appModules":{"type":"array","items":{"type":"string"},"description":"Modules within the application that use this credential."},"appVersion":{"type":"string","description":"Version of the application."},"nameOverride":{"type":"string","description":"Custom name override for the credential."}}}}}}}}}}}}}
```

## Create Action

> Creates a new Action for a Credential Creation. Either 'connection' or 'key' must be provided in the request body, but not both.

```json
{"openapi":"3.0.0","info":{"title":"Web API v2 - Public ","version":"1.0.0"},"tags":[{"name":"Credential Requests","description":"The following endpoints allow you to manage credential requests for connections and keys. You can create requests, list them, view details, and manage individual credentials within requests."}],"servers":[{"url":"https://eu1.make.com/api/v2","description":"EU1 production zone"},{"url":"https://eu2.make.com/api/v2","description":"EU2 production zone"},{"url":"https://us1.make.com/api/v2","description":"US1 production zone"},{"url":"https://us2.make.com/api/v2","description":"US2 production zone"},{"url":"https://eu1.make.celonis.com/api/v2","description":"Celonis EU1 production zone"},{"url":"https://us1.make.celonis.com/api/v2","description":"Celonis US1 production zone"}],"security":[{"token":["credential-requests:write"]}],"components":{"securitySchemes":{"token":{"type":"apiKey","name":"Authorization","in":"header","description":"Authorize the API call with your API token in the `Authorization` header with the value: `Token your-api-token`.\n\nIf you don't have an API token yet, please refer to the [\"Authentication\" section](/api-documentation/authentication) to learn how to create one.\n"}}},"paths":{"/credential-requests/actions/create":{"post":{"tags":["Credential Requests"],"summary":"Create Action","description":"Creates a new Action for a Credential Creation. Either 'connection' or 'key' must be provided in the request body, but not both.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","description":"Request body for creating a new action for credential creation.","properties":{"name":{"type":"string","maxLength":255,"description":"Name of the Request which will be displayed to the End Users who open it."},"description":{"type":"string","maxLength":512,"description":"Description of the Request which will be displayed to the End Users who open it."},"connection":{"type":"object","required":["teamId","accountName"],"description":"Connection creation parameters for action.","properties":{"teamId":{"type":"integer","minimum":1,"description":"ID of the Team to which the Connection will belong."},"accountName":{"type":"string","minLength":1,"description":"Name of the Connection account type to be created via the Action."},"name":{"type":"string","minLength":1,"description":"Human-readable name for the Connection to be created via the Action."},"scopes":{"type":"array","minItems":1,"items":{"type":"string","maxLength":128},"description":"Array of Scopes to be added."},"appName":{"type":"string","maxLength":255,"description":"Name of the application that this credential is associated with."},"appModules":{"type":"array","items":{"type":"string","maxLength":255},"description":"Array of modules/components within the application that will use this credential."},"appVersion":{"type":"string","maxLength":64,"description":"Version of the application at the time the credential was created."}}},"key":{"type":"object","required":["teamId","type"],"description":"Key creation parameters for action.","properties":{"teamId":{"type":"integer","minimum":1,"description":"ID of the Team to which the Key will belong."},"type":{"type":"string","minLength":1,"description":"Type identifier for the Key to be created via the Action."},"name":{"type":"string","minLength":1,"description":"Human-readable name for the Key to be created via the Action."},"appName":{"type":"string","maxLength":255,"description":"Name of the application that this credential is associated with."},"appModules":{"type":"array","items":{"type":"string","maxLength":255},"description":"Array of modules/components within the application that will use this credential."},"appVersion":{"type":"string","maxLength":64,"description":"Version of the application at the time the credential was created."}}}}}}}},"responses":{"200":{"description":"Credential Request to be used for completing the Action.","content":{"application/json":{"schema":{"type":"object","required":["request","publicUri"],"properties":{"request":{"type":"object","description":"A credential request object.","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the credential request."},"organizationId":{"type":"integer","description":"ID of the organization the request belongs to."},"teamId":{"type":"integer","description":"ID of the team the request belongs to."},"userId":{"type":"integer","description":"ID of the user who created the request."},"name":{"type":"string","description":"Name of the credential request."},"description":{"type":"string","description":"Description of the credential request."},"externalProviderId":{"type":"number","nullable":true,"description":"External provider identifier."},"makeProviderId":{"type":"number","nullable":true,"description":"Make provider identifier."},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the request was created."},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the request was last updated."},"expiresAt":{"type":"string","format":"date-time","description":"Timestamp when the request expires."},"status":{"type":"string","description":"Status of the credential request.","enum":["authorized","declined","incomplete","invalid","partially_authorized","pending"]},"shouldSendEmail":{"type":"boolean","description":"Whether an email should be sent for this request."},"emailSentAt":{"type":"string","format":"date-time","nullable":true,"description":"Timestamp when the email was sent."}}},"publicUri":{"type":"string","format":"uri","description":"Public URI for completing the action."}}}}}}}}}}}
```

## List App Modules with Credentials

> Retrieves all modules with credential requirements for a specific app and version.\
> \
> For each module, this endpoint returns:\
> \- Module identification (\`id\`, \`name\`, \`label\`)\
> \- Required credential type (e.g., \`account:slack2\`)\
> \- OAuth scopes required by the module\
> \- Whether the module is a hook-based trigger\
> \
> \*\*Custom/SDK Apps\*\*: To query custom (SDK) apps, prefix the app name with \`app#\` (URL-encoded as \`app%23\`).\
> For example: \`/credential-requests/apps/app%23my-custom-app/1/modules-with-credentials\`<br>

```json
{"openapi":"3.0.0","info":{"title":"Web API v2 - Public ","version":"1.0.0"},"tags":[{"name":"Credential Requests","description":"The following endpoints allow you to manage credential requests for connections and keys. You can create requests, list them, view details, and manage individual credentials within requests."}],"servers":[{"url":"https://eu1.make.com/api/v2","description":"EU1 production zone"},{"url":"https://eu2.make.com/api/v2","description":"EU2 production zone"},{"url":"https://us1.make.com/api/v2","description":"US1 production zone"},{"url":"https://us2.make.com/api/v2","description":"US2 production zone"},{"url":"https://eu1.make.celonis.com/api/v2","description":"Celonis EU1 production zone"},{"url":"https://us1.make.celonis.com/api/v2","description":"Celonis US1 production zone"}],"security":[{"token":["apps:read"]}],"components":{"securitySchemes":{"token":{"type":"apiKey","name":"Authorization","in":"header","description":"Authorize the API call with your API token in the `Authorization` header with the value: `Token your-api-token`.\n\nIf you don't have an API token yet, please refer to the [\"Authentication\" section](/api-documentation/authentication) to learn how to create one.\n"}}},"paths":{"/credential-requests/apps/{name}/{version}/modules-with-credentials":{"get":{"tags":["Credential Requests"],"summary":"List App Modules with Credentials","description":"Retrieves all modules with credential requirements for a specific app and version.\n\nFor each module, this endpoint returns:\n- Module identification (`id`, `name`, `label`)\n- Required credential type (e.g., `account:slack2`)\n- OAuth scopes required by the module\n- Whether the module is a hook-based trigger\n\n**Custom/SDK Apps**: To query custom (SDK) apps, prefix the app name with `app#` (URL-encoded as `app%23`).\nFor example: `/credential-requests/apps/app%23my-custom-app/1/modules-with-credentials`\n","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","pattern":"^(app#)?[a-z][0-9a-z-]+[0-9a-z]$","minLength":3,"maxLength":135},"description":"The name of the app. Must start with a lowercase letter, contain only lowercase letters, numbers, and hyphens, and end with a letter or number. Minimum 3 characters (e.g., `a-b`, `abc`).\n\nFor SDK/custom apps, use the `app#` prefix (URL-encoded as `app%23`).\n"},{"name":"version","in":"path","required":true,"schema":{"oneOf":[{"type":"integer","minimum":1},{"type":"string","enum":["latest"]}]},"description":"The major version of the app. Use a specific version number (e.g., `1`, `2`, `4`) or `latest` to get the most recent version.\n"}],"responses":{"200":{"description":"Successful response with list of app modules and their credential requirements.","headers":{},"content":{"application/json":{"schema":{"type":"object","properties":{"appModules":{"type":"array","description":"List of modules with their credential requirements.","items":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier for the module credential configuration.\nFor modules with a single credential, this matches the module name.\nFor modules with multiple credentials, includes additional context (e.g., `moduleName:paramName`).\n"},"name":{"type":"string","description":"The technical name of the module."},"label":{"type":"string","description":"Human-readable display name of the module."},"type":{"type":"string","description":"The credential type required by the module.\nFormat is typically `account:<app-name>` or `keychain:<app-name>`.\nMultiple types may be comma-separated (e.g., `account:slack2,slack3`).\n"},"scope":{"type":"array","description":"List of OAuth scopes required by this module.","items":{"type":"string"}},"hook":{"type":"boolean","description":"Indicates whether this module is a hook-based trigger."}}}}}}}}},"404":{"description":"App or package not found.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","description":"Error code."},"message":{"type":"string","description":"Error message."}}}}}}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developers.make.com/api-documentation/api-reference/credential-requests.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
