> ## Documentation Index
> Fetch the complete documentation index at: https://docs.trypost.it/llms.txt
> Use this file to discover all available pages before exploring further.

# Get a repurpose

> Read one repurpose in the current workspace.

Requires **manage repurposes** permission (Owner / Admin / Member). Viewers get `403`. Other-workspace IDs return `403`.

Conceptual guide: [Repurpose](/knowledge-base/repurposes).

## Response

<ResponseField name="id" type="string">
  Repurpose UUID.
</ResponseField>

<ResponseField name="source_social_account_id" type="string">
  Instagram or Facebook account being watched. `null` if the source was disconnected and removed.
</ResponseField>

<ResponseField name="source_format" type="string">
  Format watched: `reel`, `video`, or `story`.
</ResponseField>

<ResponseField name="publish_mode" type="string">
  `publish` (schedule each replica immediately) or `draft` (leave the posts for review).
</ResponseField>

<ResponseField name="destinations" type="array">
  Accounts that receive each video. Each entry has `social_account_id`, `content_type` (must accept video), and optional `meta` (same keys as [per-platform meta](/api-reference/endpoint/update-post#per-platform-meta)).
</ResponseField>

<ResponseField name="status" type="string">
  `draft`, `active`, `paused`, or `disabled`.
</ResponseField>

<ResponseField name="paused_reason" type="string">
  Why a system pause happened: `source_removed`, `source_unavailable`, or `no_destinations`. `null` on a user pause and when the row is not paused.
</ResponseField>

<ResponseField name="activated_at" type="string">
  ISO 8601 watermark. Videos published before this instant are ignored. `null` until the first activation.
</ResponseField>

<ResponseField name="last_polled_at" type="string">
  ISO 8601 last successful or failed poll. `null` if never polled.
</ResponseField>

<ResponseField name="next_poll_at" type="string">
  ISO 8601 when the source is due again. `null` means it is due on the next `repurpose:poll`.
</ResponseField>

<ResponseField name="last_error" type="string">
  Last poll error, tokens redacted. `null` after a successful poll.
</ResponseField>

<ResponseField name="created_at" type="string">
  ISO 8601 creation timestamp.
</ResponseField>

<ResponseField name="updated_at" type="string">
  ISO 8601 last-update timestamp.
</ResponseField>

<Note>
  List adds `source_account` (the nested social-account object) and `published_items_count`. Those relations are not loaded on this endpoint.
</Note>

<RequestExample>
  ```bash theme={null}
  curl -X GET https://app.trypost.it/api/repurposes/a1b2c3d4-e5f6-7890-abcd-ef1234567890 \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```
</RequestExample>

<ResponseExample>
  ```json theme={null}
  {
    "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "source_social_account_id": "9f1a2b3c-4d5e-6f7a-8b9c-0d1e2f3a4b5c",
    "source_format": "reel",
    "publish_mode": "publish",
    "destinations": [
      {
        "social_account_id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
        "content_type": "tiktok_video",
        "meta": { "privacy_level": "PUBLIC_TO_EVERYONE" }
      }
    ],
    "status": "active",
    "paused_reason": null,
    "activated_at": "2026-09-10T12:00:00+00:00",
    "last_polled_at": "2026-09-10T12:15:00+00:00",
    "next_poll_at": "2026-09-10T12:30:00+00:00",
    "last_error": null,
    "created_at": "2026-09-10T11:55:00+00:00",
    "updated_at": "2026-09-10T12:15:00+00:00"
  }
  ```
</ResponseExample>
