Skip to main content
GET
/
api
/
partner
/
v1
/
posts
/
{id}
curl --request GET \
  --url https://www.genviral.io/api/partner/v1/posts/post_789 \
  --header 'Authorization: Bearer <token>'
{
  "ok": true,
  "code": 200,
  "message": "Post retrieved",
  "data": {
    "id": "post_789",
    "caption": "Holiday drops start Monday!",
    "status": "scheduled",
    "scheduled_at": "2025-02-01T15:00:00Z",
    "created_at": "2025-01-20T12:05:11.205Z",
    "media": {
      "type": "video",
      "url": "https://cdn.example.com/video.mp4"
    },
    "music_url": null,
    "accounts": {
      "total": 2,
      "states": [
        {
          "account_id": "0f4f54d4-8cce-4fb7-8c7b-befbcb8af812",
          "status": "scheduled",
          "published_at": null,
          "error_message": null,
          "last_attempted_at": null,
          "published_url": null
        },
        {
          "account_id": "6b0c8c9c-55ac-4fcb-85ec-70b5a8b0d089",
          "status": "scheduled",
          "published_at": null,
          "error_message": null,
          "last_attempted_at": null,
          "published_url": null
        }
      ]
    }
  }
}
Return the canonical status for a single post, including every account’s state (pending, posted, failed, retry metadata, published URLs, etc.) plus normalized media metadata. Media mirrors the create payload (type + url/urls) and surfaces music_url alongside it.

Path Parameters

id
string
required
The ID of the post to retrieve (e.g., post_789).

Response

id
string
Post ID.
caption
string
Post caption.
status
string
Overall status of the post.
media
object
Returned in the same shape as create/update payloads.
music_url
string | null
TikTok post URL when music is applied; null otherwise.
accounts
object
curl --request GET \
  --url https://www.genviral.io/api/partner/v1/posts/post_789 \
  --header 'Authorization: Bearer <token>'
{
  "ok": true,
  "code": 200,
  "message": "Post retrieved",
  "data": {
    "id": "post_789",
    "caption": "Holiday drops start Monday!",
    "status": "scheduled",
    "scheduled_at": "2025-02-01T15:00:00Z",
    "created_at": "2025-01-20T12:05:11.205Z",
    "media": {
      "type": "video",
      "url": "https://cdn.example.com/video.mp4"
    },
    "music_url": null,
    "accounts": {
      "total": 2,
      "states": [
        {
          "account_id": "0f4f54d4-8cce-4fb7-8c7b-befbcb8af812",
          "status": "scheduled",
          "published_at": null,
          "error_message": null,
          "last_attempted_at": null,
          "published_url": null
        },
        {
          "account_id": "6b0c8c9c-55ac-4fcb-85ec-70b5a8b0d089",
          "status": "scheduled",
          "published_at": null,
          "error_message": null,
          "last_attempted_at": null,
          "published_url": null
        }
      ]
    }
  }
}

Error Responses

  • 401/403 — authentication failed or key lacks workspace access
  • 404 not_found — post does not exist under the workspace scope
  • 500 get_failed — unexpected database/serialization error