Incoming Destinations

Create destination

Creates a new forwarding destination for the incoming source

post/api/v1/projects/{projectId}/incoming-sources/{sourceId}/destinations

Request

  • Base URL: http://localhost:8080
  • URL: http://localhost:8080/api/v1/projects/{projectId}/incoming-sources/{sourceId}/destinations
  • Auth: one of:
    • HTTP bearer
    • API key in header X-API-Key

Path parameters

projectIdstring uuid required
sourceIdstring uuid required

Request body

urlstring required

Destination URL to forward webhooks to

authType'NONE' | 'BASIC' | 'BEARER' | 'CUSTOM_HEADER'

Authentication type for the destination

authConfigstring

JSON auth config (encrypted at rest). Keys depend on authType: BEARER={token}, BASIC={username,password}, CUSTOM_HEADER={headerName,headerValue}

customHeadersJsonstring

Custom HTTP headers as JSON object

enabledboolean

Whether the destination is active

maxAttemptsinteger

Maximum delivery attempts before moving to DLQ

timeoutSecondsinteger

HTTP request timeout in seconds

retryDelaysstring

Comma-separated retry delays in seconds

retryableStatusesstring

Which HTTP statuses are worth another attempt. Comma-separated terms: an exact status, a range (500-599), a 5xx shorthand, or a comparison (>=500). Prefix a term with ! to exclude it; exclusions win wherever they are written.

payloadTransformstring

JSONPath expression to transform payload before forwarding (null = forward as-is)

transformationIdstring uuid

ID of a reusable transformation template to apply (overrides payloadTransform if set). Empty string detaches the destination from its template.

Example request

{
  "url": "https://api.example.com/webhooks",
  "enabled": true,
  "maxAttempts": 5,
  "timeoutSeconds": 30,
  "retryDelays": "60,300,900,3600,21600",
  "retryableStatuses": "408,429,500-599",
  "payloadTransform": "$.data"
}

Response

Destination created

Changes

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