Publishing lifecycle
Distinguish accepted requests from published posts and track asynchronous jobs.
Two publishing flows
Threads, X, and LinkedIn text publishing runs during the request and returns per-account results. TikTok, Instagram, YouTube, and Facebook publishing creates a job for later processing. Even a Facebook text-only FEED post is asynchronous.
A newly accepted asynchronous publish returns HTTP 202 with a response like this:
{
"results": [
{
"accountId": "11111111-1111-4111-8111-111111111111",
"provider": "youtube",
"username": "example",
"success": true,
"postIds": [],
"jobId": "44444444-4444-4444-8444-444444444444",
"status": "queued"
}
],
"summary": {
"succeeded": 1,
"failed": 0
}
}success: true and summary.succeeded mean the job was accepted. Confirm publication through status: published.
Track a job
Use the returned jobId. The ID below is illustrative.
curl --request GET "https://www.posteady.com/api/v1/publish-jobs/44444444-4444-4444-8444-444444444444" \
--header "Authorization: Bearer $POSTEADY_API_KEY"| Status | Meaning |
|---|---|
queued | Waiting to start |
scheduled | Waiting for the scheduled time |
processing | Submitting or processing on the platform |
published | Publication confirmed |
failed | A known error prevented completion |
canceled | Canceled before submission |
unknown | The final submission outcome is uncertain |
The response includes jobId, scheduledPostId, platform, accountId, username, status, postId, permalink, and scheduledAt. postId and permalink can be null until confirmed; immediate jobs have scheduledAt: null. On failure, inspect error.code and error.message.
Status reads count toward the API rate limit. Stop automatic polling at published, failed, canceled, or unknown and handle the outcome. While active, space reads so all requests using the key stay within 30 per minute.
Handle the outcome
At published, store the native post ID. At failed, inspect connection, media, or quota errors. Posteady does not automatically resubmit an unknown job. Check the target platform first to avoid creating a duplicate.
Idempotency and retries · Schedule and cancel · Status reference