{
"opencollection": "1.0.0",
"info": {
"name": "Logto API references Account center Applications API",
"version": "Cloud"
},
"request": {
"auth": {
"type": "oauth2",
"flow": "client_credentials",
"accessTokenUrl": "/oidc/token",
"credentials": {
"clientId": "{{clientId}}",
"clientSecret": "{{clientSecret}}"
}
}
},
"items": [
{
"info": {
"name": "Applications",
"type": "folder"
},
"items": [
{
"info": {
"name": "Get applications",
"type": "http"
},
"http": {
"method": "GET",
"url": "https://[tenant_id].logto.app/api/applications",
"params": [
{
"name": "types",
"value": "",
"type": "query",
"description": "An array of application types to filter applications."
},
{
"name": "excludeRoleId",
"value": "",
"type": "query"
},
{
"name": "excludeOrganizationId",
"value": "",
"type": "query"
},
{
"name": "isThirdParty",
"value": "",
"type": "query"
},
{
"name": "page",
"value": "",
"type": "query",
"description": "Page number (starts from 1)."
},
{
"name": "page_size",
"value": "",
"type": "query",
"description": "Entries per page."
},
{
"name": "search_params",
"value": "",
"type": "query",
"description": "Search query parameters."
}
]
},
"docs": "Get applications that match the given query with pagination."
},
{
"info": {
"name": "Create an application",
"type": "http"
},
"http": {
"method": "POST",
"url": "https://[tenant_id].logto.app/api/applications",
"body": {
"type": "json",
"data": "{}"
}
},
"docs": "Create a new application with the given data."
},
{
"info": {
"name": "Get application",
"type": "http"
},
"http": {
"method": "GET",
"url": "https://[tenant_id].logto.app/api/applications/:id",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
}
]
},
"docs": "Get application details by ID."
},
{
"info": {
"name": "Update application",
"type": "http"
},
"http": {
"method": "PATCH",
"url": "https://[tenant_id].logto.app/api/applications/:id",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
}
],
"body": {
"type": "json",
"data": "{}"
}
},
"docs": "Update application details by ID with the given data."
},
{
"info": {
"name": "Delete application",
"type": "http"
},
"http": {
"method": "DELETE",
"url": "https://[tenant_id].logto.app/api/applications/:id",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
}
]
},
"docs": "Delete application by ID."
},
{
"info": {
"name": "Update application custom data",
"type": "http"
},
"http": {
"method": "PATCH",
"url": "https://[tenant_id].logto.app/api/applications/:applicationId/custom-data",
"params": [
{
"name": "applicationId",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
}
],
"body": {
"type": "json",
"data": "{}"
}
},
"docs": "Update the custom data of an application."
},
{
"info": {
"name": "Get application API resource roles",
"type": "http"
},
"http": {
"method": "GET",
"url": "https://[tenant_id].logto.app/api/applications/:applicationId/roles",
"params": [
{
"name": "applicationId",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
},
{
"name": "page",
"value": "",
"type": "query",
"description": "Page number (starts from 1)."
},
{
"name": "page_size",
"value": "",
"type": "query",
"description": "Entries per page."
},
{
"name": "search_params",
"value": "",
"type": "query",
"description": "Search query parameters."
}
]
},
"docs": "Get API resource roles assigned to the specified application with pagination."
},
{
"info": {
"name": "Assign API resource roles to application",
"type": "http"
},
"http": {
"method": "POST",
"url": "https://[tenant_id].logto.app/api/applications/:applicationId/roles",
"params": [
{
"name": "applicationId",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
}
],
"body": {
"type": "json",
"data": "{}"
}
},
"docs": "Assign API resource roles to the specified application. The API resource roles will be added to the existing API resource roles."
},
{
"info": {
"name": "Update API resource roles for application",
"type": "http"
},
"http": {
"method": "PUT",
"url": "https://[tenant_id].logto.app/api/applications/:applicationId/roles",
"params": [
{
"name": "applicationId",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
}
],
"body": {
"type": "json",
"data": "{}"
}
},
"docs": "Update API resource roles assigned to the specified application. This will replace the existing API resource roles."
},
{
"info": {
"name": "Remove a API resource role from application",
"type": "http"
},
"http": {
"method": "DELETE",
"url": "https://[tenant_id].logto.app/api/applications/:applicationId/roles/:roleId",
"params": [
{
"name": "applicationId",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
},
{
"name": "roleId",
"value": "",
"type": "path",
"description": "The unique identifier of the role."
}
]
},
"docs": "Remove a API resource role from the specified application."
},
{
"info": {
"name": "Get application custom domains.",
"type": "http"
},
"http": {
"method": "GET",
"url": "https://[tenant_id].logto.app/api/applications/:id/protected-app-metadata/custom-domains",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
}
]
},
"docs": "Get custom domains of the specified application, the application type should be protected app."
},
{
"info": {
"name": "Add a custom domain to the application.",
"type": "http"
},
"http": {
"method": "POST",
"url": "https://[tenant_id].logto.app/api/applications/:id/protected-app-metadata/custom-domains",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
}
],
"body": {
"type": "json",
"data": "{}"
}
},
"docs": "Add a custom domain to the application. You'll need to setup DNS record later."
},
{
"info": {
"name": "Remove custom domain.",
"type": "http"
},
"http": {
"method": "DELETE",
"url": "https://[tenant_id].logto.app/api/applications/:id/protected-app-metadata/custom-domains/:domain",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
},
{
"name": "domain",
"value": "",
"type": "path"
}
]
},
"docs": "Remove custom domain from the specified application."
},
{
"info": {
"name": "Get application organizations",
"type": "http"
},
"http": {
"method": "GET",
"url": "https://[tenant_id].logto.app/api/applications/:id/organizations",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
},
{
"name": "page",
"value": "",
"type": "query",
"description": "Page number (starts from 1)."
},
{
"name": "page_size",
"value": "",
"type": "query",
"description": "Entries per page."
}
]
},
"docs": "Get the list of organizations that an application is associated with."
},
{
"info": {
"name": "Delete application legacy secret",
"type": "http"
},
"http": {
"method": "DELETE",
"url": "https://[tenant_id].logto.app/api/applications/:id/legacy-secret",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
}
]
},
"docs": "Delete the legacy secret for the application and replace it with a new internal secret.\n\nNote: This operation does not \"really\" delete the legacy secret because it is still needed for internal validation. We may remove the display of the legacy secret (the `secret` field in the application response) in the future."
},
{
"info": {
"name": "Get application secrets",
"type": "http"
},
"http": {
"method": "GET",
"url": "https://[tenant_id].logto.app/api/applications/:id/secrets",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
}
]
},
"docs": "Get all the secrets for the application."
},
{
"info": {
"name": "Add application secret",
"type": "http"
},
"http": {
"method": "POST",
"url": "https://[tenant_id].logto.app/api/applications/:id/secrets",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
}
],
"body": {
"type": "json",
"data": "{}"
}
},
"docs": "Add a new secret for the application."
},
{
"info": {
"name": "Update application secret",
"type": "http"
},
"http": {
"method": "PATCH",
"url": "https://[tenant_id].logto.app/api/applications/:id/secrets/:name",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
},
{
"name": "name",
"value": "",
"type": "path",
"description": "The name of the secret."
}
],
"body": {
"type": "json",
"data": "{}"
}
},
"docs": "Update a secret for the application by name."
},
{
"info": {
"name": "Delete application secret",
"type": "http"
},
"http": {
"method": "DELETE",
"url": "https://[tenant_id].logto.app/api/applications/:id/secrets/:name",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
},
{
"name": "name",
"value": "",
"type": "path",
"description": "The name of the secret."
}
]
},
"docs": "Delete a secret for the application by name."
},
{
"info": {
"name": "List all the user consent scopes of an application.",
"type": "http"
},
"http": {
"method": "GET",
"url": "https://[tenant_id].logto.app/api/applications/:applicationId/user-consent-scopes",
"params": [
{
"name": "applicationId",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
}
]
},
"docs": "List all the user consent scopes of an application by application id"
},
{
"info": {
"name": "Assign user consent scopes to application.",
"type": "http"
},
"http": {
"method": "POST",
"url": "https://[tenant_id].logto.app/api/applications/:applicationId/user-consent-scopes",
"params": [
{
"name": "applicationId",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
}
],
"body": {
"type": "json",
"data": "{}"
}
},
"docs": "Assign the user consent scopes to an application by application id"
},
{
"info": {
"name": "Remove user consent scope from application.",
"type": "http"
},
"http": {
"method": "DELETE",
"url": "https://[tenant_id].logto.app/api/applications/:applicationId/user-consent-scopes/:scopeType/:scopeId",
"params": [
{
"name": "applicationId",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
},
{
"name": "scopeType",
"value": "",
"type": "path"
},
{
"name": "scopeId",
"value": "",
"type": "path",
"description": "The unique identifier of the scope."
}
]
},
"docs": "Remove the user consent scope from an application by application id, scope type and scope id"
},
{
"info": {
"name": "Get the application level sign-in experience",
"type": "http"
},
"http": {
"method": "GET",
"url": "https://[tenant_id].logto.app/api/applications/:applicationId/sign-in-experience",
"params": [
{
"name": "applicationId",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
}
]
},
"docs": "Get application level sign-in experience for a given application. \n - Only branding properties and terms links customization is supported for now. \n\n - Only third-party applications can have the sign-in experience customization for now."
},
{
"info": {
"name": "Update application level sign-in experience",
"type": "http"
},
"http": {
"method": "PUT",
"url": "https://[tenant_id].logto.app/api/applications/:applicationId/sign-in-experience",
"params": [
{
"name": "applicationId",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
}
],
"body": {
"type": "json",
"data": "{}"
}
},
"docs": "Update application level sign-in experience for the specified application. Create a new sign-in experience if it does not exist. \n - Only branding properties and terms links customization is supported for now. \n\n - Only third-party applications can be customized for now. \n\n - Application level sign-in experience customization is optional, if provided, it will override the default branding and terms links."
},
{
"info": {
"name": "List all the user consented organizations of a application.",
"type": "http"
},
"http": {
"method": "GET",
"url": "https://[tenant_id].logto.app/api/applications/:id/users/:userId/consent-organizations",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
},
{
"name": "userId",
"value": "",
"type": "path",
"description": "The unique identifier of the user."
},
{
"name": "page",
"value": "",
"type": "query",
"description": "Page number (starts from 1)."
},
{
"name": "page_size",
"value": "",
"type": "query",
"description": "Entries per page."
}
]
},
"docs": "List all the user consented organizations for a application by application id and user id."
},
{
"info": {
"name": "Grant a list of organization access of a user for a application.",
"type": "http"
},
"http": {
"method": "POST",
"url": "https://[tenant_id].logto.app/api/applications/:id/users/:userId/consent-organizations",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
},
{
"name": "userId",
"value": "",
"type": "path",
"description": "The unique identifier of the user."
}
],
"body": {
"type": "json",
"data": "{}"
}
},
"docs": "Grant a list of organization access of a user for a application by application id and user id.
The user must be a member of all the organizations.
Only third-party application needs to be granted access to organizations, all the other applications can request for all the organizations' access by default."
},
{
"info": {
"name": "Grant a list of organization access of a user for a application.",
"type": "http"
},
"http": {
"method": "PUT",
"url": "https://[tenant_id].logto.app/api/applications/:id/users/:userId/consent-organizations",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
},
{
"name": "userId",
"value": "",
"type": "path",
"description": "The unique identifier of the user."
}
],
"body": {
"type": "json",
"data": "{}"
}
},
"docs": "Grant a list of organization access of a user for a application by application id and user id.
The user must be a member of all the organizations.
Only third-party application needs to be granted access to organizations, all the other applications can request for all the organizations' access by default."
},
{
"info": {
"name": "Revoke a user's access to an organization for a application.",
"type": "http"
},
"http": {
"method": "DELETE",
"url": "https://[tenant_id].logto.app/api/applications/:id/users/:userId/consent-organizations/:organizationId",
"params": [
{
"name": "id",
"value": "",
"type": "path",
"description": "The unique identifier of the application."
},
{
"name": "userId",
"value": "",
"type": "path",
"description": "The unique identifier of the user."
},
{
"name": "organizationId",
"value": "",
"type": "path",
"description": "The unique identifier of the organization."
}
]
},
"docs": "Revoke a user's access to an organization for a application by application id, user id and organization id."
}
]
}
],
"bundled": true
}