Realtime

Create client secret

Create a Realtime client secret with an associated session configuration.

Client secrets are short-lived tokens that can be passed to a client app, such as a web frontend or mobile client, which grants access to the Realtime API without leaking your main API key. You can configure a custom TTL for each client secret.

You can also attach session configuration options to the client secret, which will be applied to any sessions created using that client secret, but these can also be overridden by the client connection.

Learn more about authentication with client secrets over WebRTC.

Returns the created client secret and the effective session object. The client secret is a string that looks like ek_1234.

post/realtime/client_secrets

Request body

Example request

{
  "session": {
    "audio": {
      "output": {
        "voice": {
          "id": "voice_1234"
        }
      }
    }
  }
}

Response

Client secret created successfully.

valuestring required

The generated client secret value.

expires_atinteger required

Expiration timestamp for the client secret, in seconds since epoch.

Changes

Changed in 5 of the 163 revisions of this API.730

    • ○

      added the non-success response with the status

      response-non-success-status-added

    • ○

      added the non-success response with the status

      response-non-success-status-added

    • ○

      added the non-success response with the status

      response-non-success-status-added

    • ○

      added realtime transcription discriminator mapping keys to the response property for the response status

      response-property-discriminator-mapping-added

    • ○

      request property ///// deprecated

      request-property-deprecated

    • ○

      response property session/oneOf[subschema #1: Realtime session configuration object]/tools/items/oneOf[subschema #2: MCP tool]/connector_id deprecated

      response-property-deprecated

  • ab0c5306e390723See the full diff
    • ●

      added the new auto enum value to the //////// response property for the response status

      response-property-enum-value-added

    • ●

      added the new gpt-live-transcribe enum value to the ////// response property for the response status

      response-property-enum-value-added

    • ●

      added the new gpt-live-transcribe enum value to the ////// response property for the response status

      response-property-enum-value-added

    • ●

      added the new gpt-realtime-2.1 enum value to the /// response property for the response status

      response-property-enum-value-added

    • ●

      added the new gpt-realtime-2.1-mini enum value to the /// response property for the response status

      response-property-enum-value-added

    • ●

      added the new gpt-transcribe enum value to the ////// response property for the response status

      response-property-enum-value-added

    • ●

      added the new gpt-transcribe enum value to the ////// response property for the response status

      response-property-enum-value-added

    • ○

      added the new optional request property /////

      new-optional-request-property

    • ○

      added the new optional request property /////

      new-optional-request-property

    • ○

      added the new optional request property ////////

      new-optional-request-property

    • ○

      added the new optional request property ////////

      new-optional-request-property

    • ○

      added the new optional request property ////////

      new-optional-request-property

    • ○

      added the new optional request property /////

      new-optional-request-property

    • ○

      added the new optional request property /////

      new-optional-request-property

    • ○

      added the new optional request property /////

      new-optional-request-property

    • ○

      added the new optional request property /////

      new-optional-request-property

    • ○

      added the new auto enum value to the request property ////////

      request-property-enum-value-added

    • ○

      added the new gpt-live-transcribe enum value to the request property //////

      request-property-enum-value-added

    • ○

      added the new gpt-live-transcribe enum value to the request property //////

      request-property-enum-value-added

    • ○

      added the new gpt-realtime-2.1 enum value to the request property ///

      request-property-enum-value-added

    • ○

      added the new gpt-realtime-2.1-mini enum value to the request property ///

      request-property-enum-value-added

    • ○

      added the new gpt-transcribe enum value to the request property //////

      request-property-enum-value-added

    • ○

      added the new gpt-transcribe enum value to the request property //////

      request-property-enum-value-added

    • ○

      added the optional property ///// to the response with the status

      response-optional-property-added

    • ○

      added the optional property //////// to the response with the status

      response-optional-property-added

    • ○

      added the optional property //////// to the response with the status

      response-optional-property-added

    • ○

      added the optional property //////// to the response with the status

      response-optional-property-added

    • ○

      added the optional property ///// to the response with the status

      response-optional-property-added

    • ○

      added the optional property ///// to the response with the status

      response-optional-property-added

    • ○

      added the optional property ///// to the response with the status

      response-optional-property-added

    This revision also has 2 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

    • ○

      endpoint added

      endpoint-added

    This revision also has 40 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog