---
title: "Get a destination's settings"
method: GET
path: "/destinations/{id}/options"
tags: ["Destinations"]
---

# Get a destination's settings

`GET /destinations/{id}/options`

## Request

- Base URL: `https://api.deploy.social/v1`
- URL: `https://api.deploy.social/v1/destinations/{id}/options`
- Auth: HTTP bearer

The settings a post to this destination can choose, with their choices and defaults. For TikTok they come live from TikTok for this account: show the person posting the account name and the privacy choices, and let them pick one, before you post.

## Path parameters

- `id` string, required: Starts with `dest_`.

## Response `200`

The destination's settings.

- DestinationOptions
  - `destination_id` string, required: The destination's id. Starts with `dest_`.
  - `platform` string, required
  - `options` OptionDescriptor[], required
    - `key` string, required: The name to send in `options`.
    - `type` 'enum' | 'boolean' | 'text' | 'list', required: `enum` takes one of `values`; `boolean` takes true or false; `text` takes a string; `list` takes an array of strings. New types may be added.
    - `values` string[], nullable, required: The choices for an `enum`.
    - `default` union, required: What's used when you don't send it. `null` means you have to choose.
      - string
      - boolean
      - string[]
    - `required` boolean, required: You have to send this one.
    - `locked` boolean, required: The account owner has turned this off on the platform, so it's fixed.
    - `description` string, required
  - `creator` object, nullable, required: TikTok only: the account the video will post as. Show this to the person posting.
    - `username` string, required
    - `avatar_url` string, nullable, required
  - `max_duration_sec` number, nullable, required: TikTok only: the longest video this account can post right now.

## Other responses

- `401`: The API key is missing, wrong, revoked or expired: `missing_api_key`, `invalid_api_key`, `api_key_revoked`, `api_key_expired`.
- `403`: The key can't do this: `insufficient_scope` (a read-only key), `plan_required`, `usage_limit_exceeded` (this month's videos are used up), `access_revoked` (its creator left the workspace), `workspace_archived`.
- `404`: Nothing with this id in the key's workspace.
- `409`: The post or video isn't in a state that allows this right now: `invalid_state` (detail code `media_expired` when the video's files were removed; upload it again), `media_not_ready` (with `Retry-After`), `idempotency_key_in_progress`.
- `422`: Something in the request needs fixing. `details` lists each problem and where it is: `validation_failed`, or `idempotency_key_reused` when a key is sent again with a different request.
- `429`: Slow down and wait `Retry-After` seconds. Either this key has used its requests for the minute (Standard: 60 reads and 20 writes, Studio: 120 and 30), or, when publishing or scheduling, the plan's API posts for the day are used (detail code `daily_post_limit`; Standard: 30 a day across your account, Studio: 100 a day per workspace; `Retry-After` runs to midnight UTC). Posts made in the app never count.
- `500`: Something broke on our side. Retry, and contact us with the request id if it keeps happening.
- `502`: The platform didn't answer as expected.
- `503`: We can't take the request right now. Retry shortly.

---

[API](https://skmtc.dev/deploy/apis/deploy-social-api.md) · [All operations](https://skmtc.dev/deploy/apis/deploy-social-api/llms.txt) · [OpenAPI document](https://skmtc.dev/deploy/apis/deploy-social-api/revisions/7ed97bdd207f?raw)
