Skip to content
For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Primary navigation

Create Webhook Endpoint

POST/webhook_endpoints

Creates a webhook endpoint for the authenticated project.

Body ParametersJSONExpand Collapse
event_types: array of "batch.completed" or "batch.failed" or "batch.expired" or 15 more

The event types that trigger deliveries to this endpoint.

One of the following:
"batch.completed"
"batch.failed"
"batch.expired"
"batch.cancelled"
"response.completed"
"response.failed"
"response.cancelled"
"response.incomplete"
"eval.run.succeeded"
"eval.run.failed"
"eval.run.canceled"
"fine_tuning.job.succeeded"
"fine_tuning.job.failed"
"fine_tuning.job.cancelled"
"realtime.call.incoming"
"video.completed"
"video.failed"
"safety.alert.created"
name: string

A human-readable name for the webhook endpoint.

minLength1
maxLength256
url: string

The HTTPS URL that receives webhook deliveries.

maxLength2048
ReturnsExpand Collapse
WebhookEndpointWithSecret object { id, created_at, event_types, 6 more }
id: string

The unique ID of the webhook endpoint.

created_at: number

The Unix timestamp when the endpoint was created.

formatunixtime
event_types: array of string

The event types that trigger deliveries to this endpoint.

name: string

The human-readable name of the endpoint.

object: "webhook_endpoint"

The object type, which is always webhook_endpoint.

signing_secret: string

The endpoint’s signing secret. This is returned only when the endpoint is created or the secret is rotated.

signing_secret_hint: string or null

A masked hint for the endpoint’s signing secret.

url: string

The HTTPS URL that receives webhook deliveries.

updated_at: optional number

The Unix timestamp of the last endpoint configuration or signing-secret change. Initialized at creation; tests and unchanged updates do not advance it.

formatunixtime

Create Webhook Endpoint

curl https://api.openai.com/v1/webhook_endpoints \
    -H 'Content-Type: application/json' \
    -H "Authorization: Bearer $OPENAI_API_KEY" \
    -d '{
          "event_types": [
            "batch.completed"
          ],
          "name": "x",
          "url": "https://"
        }'
{
  "id": "id",
  "created_at": 0,
  "event_types": [
    "string"
  ],
  "name": "name",
  "object": "webhook_endpoint",
  "signing_secret": "signing_secret",
  "signing_secret_hint": "signing_secret_hint",
  "url": "url",
  "updated_at": 0
}
Returns Examples
{
  "id": "id",
  "created_at": 0,
  "event_types": [
    "string"
  ],
  "name": "name",
  "object": "webhook_endpoint",
  "signing_secret": "signing_secret",
  "signing_secret_hint": "signing_secret_hint",
  "url": "url",
  "updated_at": 0
}