Destination Types#

Defines what destination types exist (http, and any custom types a self-hosted worker registers), which queue each consumes from, and the config_schema used to validate a destination’s config field.

Destination types are read-only via the management API — they’re registered by workers themselves. See System .

Authenticated with a management token.

List destination types#

GET /v0/destination-types

Response 200

{
  "data": [
    {
      "id": "...",
      "name": "http",
      "queue": "junction.destinations.http",
      "description": "Delivers payload via HTTP POST",
      "config_schema": {
        "url": { "required": true, "rules": ["string"] },
        "auth_header": { "required": false, "rules": ["string"] },
        "auth_token": { "required": false, "rules": ["string"] }
      },
      "created_at": "2026-06-19T00:33:46.000+00:00",
      "updated_at": "2026-06-19T00:33:46.000+00:00"
    }
  ]
}

Not paginated — the number of destination types is bounded by the number of worker types deployed, not by traffic.

Get a destination type#

GET /v0/destination-types/{id}

Response 200 — same shape as an item in the list response above.

Errors: 404 if the destination type doesn’t exist.

config_schema format#

Each key is a config field name; the value declares whether it’s required and which validation rules apply:

{
  "<field>": {
    "required": true,
    "rules": ["string"]
  }
}

This is what a destination’s config is validated against on create/update — see Destinations .