> ## 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.

# List repurpose items

> Lists the source videos the repurpose has picked up, newest first (by when they were posted on the source), with the posts created for each. Page size is set by the server: read `meta.per_page`.



## OpenAPI

````yaml /openapi.json get /repurposes/{repurpose}/items
openapi: 3.1.0
info:
  title: TryPost API
  version: 2.0.0
  description: >-
    REST API for TryPost. Authenticate with a workspace API key as a Bearer
    token.
servers:
  - url: https://app.trypost.it/api
    description: TryPost Cloud
security:
  - bearerAuth: []
tags:
  - name: Posts
    description: Create, read, update, delete and preview posts.
  - name: Post notes
    description: Internal notes on a post, visible to workspace members.
  - name: Approvals
    description: Approve or reject posts waiting for approval.
  - name: Recurrence
    description: Make a post repeat on a schedule.
  - name: Media and uploads
    description: Upload files and attach media to posts.
  - name: Social accounts
    description: Connected social accounts and their network-specific options.
  - name: Channels
    description: A channel's posting schedule and queue.
  - name: Ideas
    description: Ideas on the Create board.
  - name: Idea stages
    description: The groups (columns) of the ideas board.
  - name: Analytics
    description: Workspace and channel insights.
  - name: Labels
    description: Labels to organize posts and ideas.
  - name: Signatures
    description: Reusable text to append to posts.
  - name: Workspace
    description: The workspace the API key belongs to.
  - name: API keys
    description: Personal API keys for this workspace.
  - name: Webhooks
    description: Outgoing webhooks and their delivery logs.
  - name: Repurposes
    description: Automations that republish videos posted outside TryPost.
  - name: Platform
    description: Platform capabilities and content types.
paths:
  /repurposes/{repurpose}/items:
    parameters:
      - $ref: '#/components/parameters/RepurposeId'
    get:
      tags:
        - Repurposes
      summary: List repurpose items
      description: >-
        Lists the source videos the repurpose has picked up, newest first (by
        when they were posted on the source), with the posts created for each.
        Page size is set by the server: read `meta.per_page`.
      operationId: listRepurposeItems
      parameters:
        - name: page
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
            default: 1
      responses:
        '200':
          description: A page of items.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/RepurposeItem'
                  links:
                    $ref: '#/components/schemas/PaginationLinks'
                  meta:
                    $ref: '#/components/schemas/PaginationMeta'
              example:
                data:
                  - id: 9a1b2c40-5f6a-4b7c-8d9e-0f1a2b3c4d5e
                    repurpose_id: 9a1b2c3d-4e5f-4a6b-8c7d-9e0f1a2b3c4d
                    source_media_id: '18045678901234567'
                    source_permalink: https://www.instagram.com/reel/DAbCdEfGhIj/
                    source_created_at: '2026-10-07T21:10:00+00:00'
                    status: published
                    reason: null
                    error: null
                    posts:
                      - id: 9d3c1f40-7c8d-4e9f-8a0b-1c2d3e4f5a6b
                        platforms:
                          - platform: tiktok
                            status: published
                    created_at: '2026-10-07T21:15:00+00:00'
                    updated_at: '2026-10-07T21:16:30+00:00'
                links:
                  first: >-
                    https://app.trypost.it/api/repurposes/9a1b2c3d-4e5f-4a6b-8c7d-9e0f1a2b3c4d/items?page=1
                  last: >-
                    https://app.trypost.it/api/repurposes/9a1b2c3d-4e5f-4a6b-8c7d-9e0f1a2b3c4d/items?page=1
                  prev: null
                  next: null
                meta:
                  current_page: 1
                  from: 1
                  last_page: 1
                  links:
                    - url: null
                      label: '&laquo; Previous'
                      page: null
                      active: false
                    - url: >-
                        https://app.trypost.it/api/repurposes/9a1b2c3d-4e5f-4a6b-8c7d-9e0f1a2b3c4d/items?page=1
                      label: '1'
                      page: 1
                      active: true
                    - url: null
                      label: Next &raquo;
                      page: null
                      active: false
                  path: >-
                    https://app.trypost.it/api/repurposes/9a1b2c3d-4e5f-4a6b-8c7d-9e0f1a2b3c4d/items
                  per_page: 25
                  to: 1
                  total: 1
        '401':
          $ref: '#/components/responses/Unauthorized'
        '402':
          $ref: '#/components/responses/PaymentRequired'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/TooManyRequests'
components:
  parameters:
    RepurposeId:
      name: repurpose
      in: path
      required: true
      description: Repurpose id. A repurpose of another workspace returns `404`.
      schema:
        type: string
        format: uuid
      example: 9a1b2c3d-4e5f-4a6b-8c7d-9e0f1a2b3c4d
  schemas:
    RepurposeItem:
      type: object
      properties:
        id:
          type: string
          format: uuid
        repurpose_id:
          type: string
          format: uuid
        source_media_id:
          type: string
          description: Id of the video on the source network.
        source_permalink:
          type:
            - string
            - 'null'
        source_created_at:
          type:
            - string
            - 'null'
          format: date-time
          description: ISO 8601, UTC.
          examples:
            - '2026-10-07T21:10:00+00:00'
        status:
          type: string
          enum:
            - pending
            - processing
            - published
            - drafted
            - skipped
            - failed
        reason:
          type:
            - string
            - 'null'
          enum:
            - published_via_trypost
            - media_url_missing
            - download_failed
            - post_creation_failed
            - no_usable_destinations
            - null
          description: >-
            Why it was skipped or failed. `published_via_trypost`: the video was
            posted by TryPost, so it is not repurposed again.
        error:
          type:
            - string
            - 'null'
        posts:
          type: array
          description: Posts created for this video, with the status of each destination.
          items:
            type: object
            properties:
              id:
                type: string
                format: uuid
              platforms:
                type: array
                items:
                  type: object
                  properties:
                    platform:
                      $ref: '#/components/schemas/Platform'
                    status:
                      type:
                        - string
                        - 'null'
        created_at:
          type: string
          format: date-time
          description: ISO 8601, UTC.
          examples:
            - '2026-10-07T21:15:00+00:00'
        updated_at:
          type: string
          format: date-time
          description: ISO 8601, UTC.
          examples:
            - '2026-10-07T21:16:30+00:00'
    PaginationLinks:
      type: object
      properties:
        first:
          type:
            - string
            - 'null'
        last:
          type:
            - string
            - 'null'
        prev:
          type:
            - string
            - 'null'
        next:
          type:
            - string
            - 'null'
    PaginationMeta:
      type: object
      properties:
        current_page:
          type: integer
        from:
          type:
            - integer
            - 'null'
        last_page:
          type: integer
        links:
          type: array
          items:
            type: object
            properties:
              url:
                type:
                  - string
                  - 'null'
              label:
                type: string
              page:
                type:
                  - integer
                  - 'null'
              active:
                type: boolean
        path:
          type: string
        per_page:
          type: integer
          description: Page size set by the server. Read it; do not assume a value.
        to:
          type:
            - integer
            - 'null'
        total:
          type: integer
    Platform:
      type: string
      enum:
        - linkedin
        - linkedin-page
        - x
        - tiktok
        - youtube
        - facebook
        - instagram
        - instagram-facebook
        - threads
        - pinterest
        - bluesky
        - mastodon
        - telegram
        - discord
        - google_business
      description: >-
        Network of a social account. `linkedin-page` is a LinkedIn company page,
        `instagram-facebook` an Instagram account connected through a Facebook
        Page.
    ErrorBody:
      type: object
      properties:
        message:
          type: string
    RateLimitErrorBody:
      type: object
      properties:
        name:
          type: string
          const: rate_limit_exceeded
        message:
          type: string
          examples:
            - Rate limit exceeded. Please retry after 30 seconds.
  responses:
    Unauthorized:
      description: >-
        Missing, invalid, revoked or expired API key. Bodies: `Unauthenticated.`
        (no key, or a key that is invalid or revoked), `Token expired.` (past
        its `expires_at`), `Token not found.` and `No workspace selected.` (the
        key is no longer bound to a workspace).
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorBody'
          example:
            message: Unauthenticated.
    PaymentRequired:
      description: >-
        TryPost Cloud only: the workspace's account has no active subscription
        or trial. Body: `{"message": "Active subscription required."}`.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorBody'
          example:
            message: Active subscription required.
    Forbidden:
      description: >-
        The request is not allowed. API keys work only for workspace admins (the
        account owner or a member marked as admin): otherwise every request
        returns `Insufficient workspace permissions.`. Other bodies: `Workspace
        access denied.` (the key's user left the workspace) and `Personal access
        token required.` (an MCP OAuth token was sent) and `This action is
        unauthorized.` (the note belongs to another member).
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorBody'
    NotFound:
      description: The resource does not exist in this workspace.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorBody'
    TooManyRequests:
      description: 'Rate limit exceeded. Limits: 60 requests per minute per workspace.'
      headers:
        Retry-After:
          description: Seconds to wait before retrying.
          schema:
            type: integer
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RateLimitErrorBody'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Workspace API key from Settings → API Keys.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.