Docs
Posts
GET
/posts

Newest first. With from or to the list becomes a calendar range: posts whose publish time (published, else scheduled) falls in [from, to), oldest first. Pages by cursor: pass nextCursor back as cursor until it is null.

Requires posts:read.

Authorization

bearerAuth
AuthorizationBearer <token>

API key starting with fh_

In: header

Query Parameters

profileId?string

Profile id

Match^prof_[0-9a-fA-F]{32}$
status?string
Value in"draft" | "scheduled" | "publishing" | "published" | "partially_failed" | "failed"
platform?string

Platform id. Publishing works on tiktok, instagram, linkedin, twitter, bluesky, pinterest today; the others are planned

Value in"twitter" | "linkedin" | "instagram" | "facebook" | "tiktok" | "youtube" | "threads" | "bluesky" | "pinterest"
from?string

ISO 8601 timestamp

Formatdate-time
to?string

ISO 8601 timestamp

Formatdate-time
updatedSince?string

Only posts changed at or after this time. Use it to sync: keep the time of your last sync and pass it next time

Formatdate-time
limit?integer

Items per page, 1 to 100

Default20
Range1 <= value <= 100
cursor?string

nextCursor from the previous page

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://feedhorizon.com/api/v1/posts"
{
  "data": [
    {
      "id": "post_0195f0a27b3c7d4e8f5a1b2c3d4e5f60",
      "profileId": "prof_0195f0a27b3c7d4e8f5a1b2c3d4e5f60",
      "content": "string",
      "status": "draft",
      "source": "ui",
      "scheduledAt": "2019-08-24T14:15:22Z",
      "timezone": "string",
      "publishedAt": "2019-08-24T14:15:22Z",
      "idempotencyKey": "string",
      "createdAt": "2019-08-24T14:15:22Z",
      "updatedAt": "2019-08-24T14:15:22Z",
      "targets": [
        {
          "id": "tgt_0195f0a27b3c7d4e8f5a1b2c3d4e5f60",
          "socialAccountId": "acc_0195f0a27b3c7d4e8f5a1b2c3d4e5f60",
          "accountName": "string",
          "platform": "twitter",
          "content": "string",
          "options": {
            "pinterest": {
              "boardId": "string",
              "title": "string",
              "link": "http://example.com"
            },
            "tiktok": {
              "privacyLevel": "PUBLIC_TO_EVERYONE",
              "allowComment": true,
              "allowDuet": true,
              "allowStitch": true,
              "brandOrganic": true,
              "brandedContent": true,
              "aiGenerated": true
            }
          },
          "status": "draft",
          "attempts": 0,
          "scheduledAt": "2019-08-24T14:15:22Z",
          "publishedAt": "2019-08-24T14:15:22Z",
          "platformPostId": "string",
          "platformUrl": "string",
          "error": {
            "code": "string",
            "category": "auth_expired",
            "source": "user",
            "message": "string"
          }
        }
      ],
      "media": [
        {
          "id": "med_0195f0a27b3c7d4e8f5a1b2c3d4e5f60",
          "url": "string",
          "mimeType": "string",
          "filename": "string",
          "sizeBytes": 0
        }
      ]
    }
  ],
  "nextCursor": "string"
}
{
  "error": {
    "type": "invalid_request_error",
    "code": "string",
    "message": "string",
    "param": "string",
    "details": [
      {
        "param": "string",
        "code": "string",
        "message": "string"
      }
    ],
    "docUrl": "http://example.com",
    "requestId": "string"
  }
}
{
  "error": {
    "type": "invalid_request_error",
    "code": "string",
    "message": "string",
    "param": "string",
    "details": [
      {
        "param": "string",
        "code": "string",
        "message": "string"
      }
    ],
    "docUrl": "http://example.com",
    "requestId": "string"
  }
}
{
  "error": {
    "type": "invalid_request_error",
    "code": "string",
    "message": "string",
    "param": "string",
    "details": [
      {
        "param": "string",
        "code": "string",
        "message": "string"
      }
    ],
    "docUrl": "http://example.com",
    "requestId": "string"
  }
}
{
  "error": {
    "type": "invalid_request_error",
    "code": "string",
    "message": "string",
    "param": "string",
    "details": [
      {
        "param": "string",
        "code": "string",
        "message": "string"
      }
    ],
    "docUrl": "http://example.com",
    "requestId": "string"
  }
}
{
  "error": {
    "type": "invalid_request_error",
    "code": "string",
    "message": "string",
    "param": "string",
    "details": [
      {
        "param": "string",
        "code": "string",
        "message": "string"
      }
    ],
    "docUrl": "http://example.com",
    "requestId": "string"
  }
}
{
  "error": {
    "type": "invalid_request_error",
    "code": "string",
    "message": "string",
    "param": "string",
    "details": [
      {
        "param": "string",
        "code": "string",
        "message": "string"
      }
    ],
    "docUrl": "http://example.com",
    "requestId": "string"
  }
}
{
  "error": {
    "type": "invalid_request_error",
    "code": "string",
    "message": "string",
    "param": "string",
    "details": [
      {
        "param": "string",
        "code": "string",
        "message": "string"
      }
    ],
    "docUrl": "http://example.com",
    "requestId": "string"
  }
}