{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/telnyx/main/json-schema/telnyx-oauth-dynamic-registration-request-schema.json",
  "title": "OAuthDynamicRegistrationRequest",
  "x-generated": "2026-10-08",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/telnyx-oauth-protocol-api-openapi.yml#/components/schemas/OAuthDynamicRegistrationRequest",
  "additionalProperties": false,
  "properties": {
    "client_name": {
      "description": "Human-readable string name of the client to be presented to the end-user",
      "type": "string"
    },
    "grant_types": {
      "default": [
        "authorization_code"
      ],
      "description": "Array of OAuth 2.0 grant type strings that the client may use",
      "items": {
        "enum": [
          "authorization_code",
          "client_credentials",
          "refresh_token"
        ],
        "type": "string"
      },
      "type": "array"
    },
    "logo_uri": {
      "description": "URL of the client logo",
      "format": "uri",
      "type": "string"
    },
    "policy_uri": {
      "description": "URL of the client's privacy policy",
      "format": "uri",
      "type": "string"
    },
    "redirect_uris": {
      "description": "Array of redirection URI strings for use in redirect-based flows",
      "items": {
        "format": "uri",
        "type": "string"
      },
      "type": "array"
    },
    "response_types": {
      "default": [
        "code"
      ],
      "description": "Array of the OAuth 2.0 response type strings that the client may use",
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "scope": {
      "description": "Space-separated string of scope values that the client may use",
      "type": "string"
    },
    "token_endpoint_auth_method": {
      "default": "client_secret_basic",
      "description": "Authentication method for the token endpoint",
      "enum": [
        "none",
        "client_secret_basic",
        "client_secret_post"
      ],
      "type": "string"
    },
    "tos_uri": {
      "description": "URL of the client's terms of service",
      "format": "uri",
      "type": "string"
    }
  },
  "type": "object"
}