Skip to main content
curl -X POST https://api.dronebundle.com/v1/webhooks \
  -H "Authorization: Bearer v1_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Project notifications",
    "url": "https://hooks.example.com/dronebundle",
    "event_types": ["project.created", "project.updated", "job.created"]
  }'
{
  "id": "019d5221-b413-71a9-a56b-f70bc91efe63",
  "name": "Project notifications",
  "url": "https://hooks.example.com/dronebundle",
  "event_types": ["project.created", "project.updated", "job.created"],
  "status": "active",
  "secret": "dbwhsec_f6c24a58cf36be393959ab854bc766942ed0bf5f830ca01eeecfe70c6bc0815e",
  "created": 1743400000000,
  "message": "Webhook created. This is the only time you will see the secret. Store it safely."
}
Requires an API key with full_access scope. Creates a webhook that will receive HTTP POST requests whenever the specified events occur in your workspace. The response includes a secret that you should store safely for verifying webhook signatures. The secret is only shown once.

Body

name
string
required
Webhook name. 2 to 100 characters.
url
string
required
The HTTPS endpoint that will receive webhook deliveries. Must start with https://.
event_types
string[]
required
List of event types to subscribe to. Must include at least one of:project.created, project.updated, project.deleted, job.created, job.updated, job.deleted, job_type.created, job_type.deleted

Response

id
string
The unique identifier of the newly created webhook.
name
string
Webhook name.
url
string
The delivery URL.
event_types
string[]
Subscribed event types.
status
string
Webhook status. Always active for new webhooks.
secret
string
The webhook signing secret, prefixed with dbwhsec_. Use this to verify delivery signatures.
This is the only time the secret will be returned. Store it securely.
created
number
Unix timestamp (milliseconds) when the webhook was created.
curl -X POST https://api.dronebundle.com/v1/webhooks \
  -H "Authorization: Bearer v1_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Project notifications",
    "url": "https://hooks.example.com/dronebundle",
    "event_types": ["project.created", "project.updated", "job.created"]
  }'
{
  "id": "019d5221-b413-71a9-a56b-f70bc91efe63",
  "name": "Project notifications",
  "url": "https://hooks.example.com/dronebundle",
  "event_types": ["project.created", "project.updated", "job.created"],
  "status": "active",
  "secret": "dbwhsec_f6c24a58cf36be393959ab854bc766942ed0bf5f830ca01eeecfe70c6bc0815e",
  "created": 1743400000000,
  "message": "Webhook created. This is the only time you will see the secret. Store it safely."
}

Errors

400 Bad Request - Validation failed.
{
  "message": "name is required"
}
Other validation messages include:
  • name must be between 2 and 100 characters
  • url is required
  • url must start with https://
  • event_types is required and must include at least one of: project.created, ...
  • Invalid event type: {type}