---
title: "List Destination Type Schemas"
method: GET
path: "/destination-types"
tags: ["Schemas"]
---

# List Destination Type Schemas

`GET /destination-types`

Returns a list of JSON-based input schemas for each available destination type.

## Response `200`

A list of destination type schemas.

- DestinationTypeSchema[]
  - `type` string
  - `label` string
  - `description` string
  - `icon` string — SVG icon string.
  - `instructions` string — Markdown instructions.
  - `remote_setup_url` string, url — Some destinations may have Oauth flow or other managed-setup flow that can be triggered with a link. If a `remote_setup_url` is set then the user should be prompted to follow the link to configure the destination. See the [building your own UI guide](https://outpost.hookdeck.com/guides/building-your-own-ui.mdx) for recommended UI patterns and wireframes for implementation in your own app.
  - `config_fields` DestinationSchemaField[] — Config fields are non-secret values that can be stored and displayed to the user in plain text.
    - `type` 'text' | 'checkbox', required
    - `label` string
    - `description` string
    - `required` boolean, required
    - `sensitive` boolean — Indicates if the field contains sensitive information.
    - `default` string — Default value for the field.
    - `minlength` integer — Minimum length for a text input.
    - `maxlength` integer — Maximum length for a text input.
    - `pattern` string — Regex pattern for validation (compatible with HTML5 pattern attribute).
  - `credential_fields` DestinationSchemaField[] — Credential fields are secret values that will be AES encrypted and obfuscated to the user. Some credentials may not be obfuscated; the destination type dictates the obfuscation logic.
    - `type` 'text' | 'checkbox', required
    - `label` string
    - `description` string
    - `required` boolean, required
    - `sensitive` boolean — Indicates if the field contains sensitive information.
    - `default` string — Default value for the field.
    - `minlength` integer — Minimum length for a text input.
    - `maxlength` integer — Maximum length for a text input.
    - `pattern` string — Regex pattern for validation (compatible with HTML5 pattern attribute).

## Other responses

- `401` — Missing or invalid authentication credentials.
- `500` — Unexpected server error.

## Changes

- **2026-02-20** `c36d2dacd201` — 2 info
  - added the media type `application/json` for the response with the status `401`
  - added the non-success response with the status `500`
- **2026-02-02** `f718a615d1be` — 1 info
  - api operation id `listDestinationTypeSchemasJwt` removed and replaced with `listDestinationTypeSchemas`

[Change history](https://skmtc.dev/hookdeck/apis/outpost-api/changes/destination-types/get.md)

---

[API](https://skmtc.dev/hookdeck/apis/outpost-api.md) · [All operations](https://skmtc.dev/hookdeck/apis/outpost-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/hookdeck/outpost-api/revisions/c36d2dacd201/schema)
