OAuth Clients

Get OAuth client

Changed on

Get an OAuth client by its internal ID.

get/admin/oauth-clients/{id}

Request

  • Base URL: / (relative, and the document was published on a file host, not at the API’s origin)
  • URL: /admin/oauth-clients/{id}
  • Auth: one of:
    • HTTP bearer
    • OAuth 2 (authorization code, authorization URL /authorize, token URL /oauth/token)

Path parameters

idstring required

Record ID of the OAuth client (oac_…), not its public client_id.

Example:oac_6968b39840a935d9f7e2714b

Response

Successful Response

activeboolean required

Whether the client is enabled; false for disabled, pending or denied clients.

active_grant_countinteger

Number of active consent→agent grants for this client. Computed on the read endpoints (list/get); write-path responses report 0.

allowed_scopesstring[] nullable required

Scopes this client may request. Null means unrestricted.

approval_statusstring required

Admin approval lifecycle: pending, approved, or denied. Only approved clients may enter OAuth flows; active remains the independent kill switch.

client_idstring required

Public client identifier used in OAuth flows.

consent_modelstring required

What a user's consent grants for this client: user or agent.

created_atstring date-time required

When the client was created (RFC 3339).

created_bystring nullable required

ID of the actor that created the client; null if not recorded.

descriptionstring nullable required

Description of the client; null if none.

idstring required

Record ID of the OAuth client (oac_…), not its public client_id.

namestring required

Human-readable name for the client.

redirect_urisstring[] required

Allowed OAuth callback URLs.

registration_sourcestring required

How the client entered the registry: admin or dcr.

require_consentboolean required

Whether a consent screen is shown during authorization.

software_idstring nullable required

RFC 7591 software identifier claimed at registration, if any.

token_endpoint_auth_methodstring required

Client authentication method at the token endpoint: client_secret_basic (confidential) or none (public, PKCE-only).

updated_atstring date-time nullable required

When the client was last updated (RFC 3339); null if never updated.

Example response

{
  "active": true,
  "active_grant_count": 0,
  "allowed_scopes": [
    "agents:read",
    "credentials:read"
  ],
  "approval_status": "approved",
  "client_id": "oc_abc123...",
  "consent_model": "user",
  "created_at": "2026-08-18T12:00:00Z",
  "created_by": "usr_abc123",
  "description": "My application production deployment",
  "id": "oac_2NxYz...",
  "name": "my-app-production",
  "redirect_uris": [
    "https://app.example.com/auth/callback"
  ],
  "registration_source": "admin",
  "require_consent": true,
  "software_id": "com.example.my-app",
  "token_endpoint_auth_method": "client_secret_basic",
  "updated_at": "2026-08-18T12:00:00Z"
}

Changes