<!-- https://cutedyno.com/docs/glossary -->

# Glossary

The words this API uses, and the ones it used to use.

Some of these have a history. Where an older name is still accepted, it is noted, because you will meet it in stored data and in code written against earlier versions.

## Account

A connected social account: a Facebook Page, an Instagram Professional account, a TikTok account, a LinkedIn profile or Company Page, a YouTube channel. Accounts belong to a profile.

Every account has two identifiers. `id` is CuteDyno's, and `platformAccountId` is the platform's. Both are accepted wherever an account ID is taken. `accountId` is a deprecated alias of `id`.

## Account (billing)

The unhelpful collision: your CuteDyno account, which holds one or more profiles and is what gets billed. Where it matters, these docs say "billing account" or "your account" for this one and "connected account" for the social kind.

An **account-level API key** can act across every profile in the account. See [Build a platform](/docs/build-a-platform).

## API key

A credential starting `cdyn_live_`. Carries a [scope](/docs/authentication), an optional set of profiles it may reach, and optional restrictions on accounts, daily volume, and approval. Shown once at creation.

## Approver

A person who must approve a post before it publishes. Nominated per post, or defaulted to the key's owner. Approval happens over email; see [agent governance](/docs/guides/agent-governance).

## Delivery

One attempt to send one webhook event to one endpoint. Retried on failure, up to seven attempts over roughly 31 hours. Inspect them with [`GET /v1/webhooks/:id/deliveries`](/docs/api/list-webhook-deliveries).

## Event

Two different things, unfortunately:

- A **webhook event** — something that happened, delivered to your endpoint. See [Webhooks](/docs/webhooks).
- An **audit event** — a row in the trail returned by [`GET /v1/events`](/docs/api/list-events), recording who did what.

## Idempotency key

A caller-supplied string on a write, making a retry safe. The same key with the same body replays the original response; the same key with a different body is an error. See [Idempotency](/docs/guides/idempotency).

## Job

The old name for a post. It survives in internal logs and in some dashboard URLs. The API says **post**.

## Media

An image or video, uploaded to storage and referenced by URL in a post's `media` array. See [Media uploads](/docs/guides/media-uploads).

## MCP

Model Context Protocol, the standard that lets an AI agent call tools. CuteDyno's [MCP server](/docs/mcp) exposes the API as tools for Claude, Cursor, and other clients.

## Policy

Per-profile settings that constrain publishing: `requireApproval`, `allowedPlatforms`, `maxPostsPerDay`. Read with [`GET /v1/policy`](/docs/api/get-policy). Combines with a key's own restrictions — either one saying no is enough.

## Post

Content plus target accounts plus timing. One post can target several accounts on several platforms, and each is published independently, which is why `partially_published` exists.

Called a **job** in older code and internal logs.

## Profile

A container for accounts, posts, and policy. One profile per customer if you are building a platform; one profile total if you are publishing for yourself.

Called a **workspace** in the dashboard UI and in the database. Same object; the API says profile.

## Request ID

An identifier on every response, and on every error. Include it in a support request and we can find the exact call. Also visible in [`GET /v1/logs`](/docs/api/list-api-logs).

## Result

One entry per target account in a published post, carrying `status`, the platform's response on success, and the reason on failure. The thing to read when a post is `partially_published`.

## Scope

The permission preset on an API key: `full`, `agent`, or `readonly`. See [Authentication](/docs/authentication).

## Status

Where a post is in its lifecycle: `draft`, `pending_approval`, `approved`, `rejected`, `scheduled`, `queued`, `processing`, `published`, `partially_published`, `failed`, `cancelled`.

A `state` field carrying the same value appears in some older webhook payloads. It is deprecated — read `status`.

## Target

Internal name for one account within a post. You will see it as `targetId` in `results`, where it holds the account's `id`.

## Workspace

The dashboard's word for a [profile](#profile), and the database table's name. The API uses profile throughout.
