OAuth Client

Create an OAuth client

Changed on

Creates a new OAuth client for a service account in the specified organization. Set tokenEndpointAuthMethod to private_key_jwt and supply publicKeys to authenticate using a signed JWT. Private Key JWT must be enabled for your organization. The response contains clientId and, when available, the supplied keyId; clientSecret is null for private_key_jwt clients.

An active admin session with org management permissions is supported. API access requires OAuth client creation to be enabled for your organization.

Scopes

OAuth 2.0 scopes required: write:service-accounts-tokens:admin

post/orgs/{orgId}/oauth-clients

Request

  • Base URL
    https://api.atlassian.com/admin/api-access/v1
  • URL
    https://api.atlassian.com/admin/api-access/v1/orgs/{orgId}/oauth-clients
  • Auth
    none declared

Path parameters

orgIdstring required

Your organization is identified by a Unique ID. You get your organization ID and organization API key simultaneously.

Request body

namestring required

The display name of the OAuth client.

serviceAccountIdstring required

The Atlassian account ID of the service account to associate with this OAuth client.

scopesstring[] required

The OAuth scopes to grant to the client.

tokenEndpointAuthMethod'basic' | 'post' | 'basic_pkce' | 'post_pkce' | 'private_key_jwt'

Token endpoint authentication method. Set to private_key_jwt to authenticate with a signed JWT and supply publicKeys. Omit to use the default client profile. Client-secret methods include basic, post, basic_pkce, and post_pkce.

Example request

{
  "tokenEndpointAuthMethod": "private_key_jwt",
  "publicKeys": [
    {
      "value": "https://auth.example.com/.well-known/jwks.json",
      "kid": "client-key-2026-01"
    }
  ]
}

Response

Returned if the OAuth client is successfully created.

clientIdstring required

The unique identifier of the OAuth client.

clientSecretstring nullable

The client secret for client-secret authentication. Null for private_key_jwt clients.

keyIdstring nullable

The first available key ID returned by the OAuth service, or null if unavailable. Not returned by GET endpoints.

Example response

{
  "clientId": "oauth-client-id",
  "clientSecret": null,
  "keyId": "client-key-2026-01"
}

Changes

    • breaking

      added the new required request property

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status