OAuth 2.0

Register a Client

Registers an OAuth client from the client metadata in the request body and returns a client information response. The endpoint is unauthenticated.

The client_secret appears in this response only. Proof sets grant_types, response_types and scope, and sets token_endpoint_auth_method to client_secret_post unless the request asks for private_key_jwt with a jwks or jwks_uri, in which case no client_secret is issued.

post/oauth/v2/register

Request

  • Base URL
    https://api.proof.com
  • URL
    https://api.proof.com/oauth/v2/register
  • Auth
    none declared

Request body

redirect_urisstring[] required

Redirect URIs for the authorization endpoint. At least one is required.

client_namestring

Name shown to the User on the authorization page. Proof generates one when this is absent.

client_uristring

URL of the client home page.

logo_uristring

URL of a logo for the client.

contactsstring[]

Email addresses of people responsible for the client.

tos_uristring

URL of the terms of service of the client.

policy_uristring

URL of the privacy policy of the client.

jwks_uristring

URL of the JWK Set of the client. Supply either jwks_uri or jwks.

jwksobject

The JWK Set of the client, by value. Supply either jwks or jwks_uri.

software_idstring

Identifier the client developer assigns to the client software.

software_versionstring

Version of the client software.

token_endpoint_auth_method'client_secret_post' | 'private_key_jwt'

Requested client authentication method. private_key_jwt requires jwks or jwks_uri and issues no client_secret; any other value results in client_secret_post.

Example request

{
  "client_name": "Example App",
  "redirect_uris": [
    "https://example.com/oauth/callback"
  ],
  "client_uri": "https://example.com",
  "contacts": [
    "support@example.com"
  ]
}

Response

Created

client_idstring

The client_id issued to the client.

client_secretstring

The client secret issued to the client. Returned in this response only.

client_id_issued_atinteger

Issue time of the client_id, as a Unix timestamp in seconds.

client_secret_expires_atinteger

Expiry of the client_secret, as a Unix timestamp in seconds. 0 marks a secret that lasts indefinitely.

token_endpoint_auth_methodstring

The client authentication method the client uses at the token endpoint.

grant_typesstring[]

Grant types the client may use.

response_typesstring[]

Response types the client may use.

scopestring

Space-separated scope values the client may request.

client_namestring

Name of the registered client.

redirect_urisstring[]

Redirect URIs registered for the client.

client_uristring

Echoed from the registration request.

logo_uristring

Echoed from the registration request.

contactsstring[]

Echoed from the registration request.

tos_uristring

Echoed from the registration request.

policy_uristring

Echoed from the registration request.

jwks_uristring

Echoed from the registration request.

jwksobject

Echoed from the registration request.

software_idstring

Echoed from the registration request.

software_versionstring

Echoed from the registration request.

Changes

No recorded changes to this operation across all 1 revision of this API.