Posts
Reschedule
Change a post's time. For scheduled posts this is the real publish time (needs the schedule tier and counts against the monthly quota); for drafts only the planned date on the calendar. Other statuses cannot be rescheduled. The time must carry a timezone and lie in the future.
POST
/api/v1/posts/{postId}/rescheduleschedule:writeposts:writewrite tierIdempotency-Key optional
Authorization & guardrails
- Send
Authorization: Bearer <credential>; credentials are issued under Settings → Integrations → Long-lived credentials, see Authentication. - The credential needs scope
schedule:write/posts:write(any one lets you call it; which tier you may use is decided by the credential's publish allow-list); the issuer's workspace role must also allow the action. - Rate limit: write tier, 10/min per credential; over the cap returns 429 with
Retry-After. - Idempotency: honoured when
Idempotency-Keyis present; optional otherwise.
Path parameters
postIdstringrequiredPost id.
Request body (application/json)
scheduledAtdatetime (ISO 8601, with timezone)requiredThe new time.
clientRequestIdstringoptionalIdempotency key (8–128 chars of [A-Za-z0-9_.:-]); prefer the Idempotency-Key header, which wins over the body.
Responses
Success is HTTP 200 with a { data, meta } envelope; examples per status are on the right (at the end of the page on narrow screens). Every error is { error: { code, message, params }, meta } — branch on the code, not the message; see Errors.
| Status | Possible codes |
|---|---|
| 400 | invalid_input |
| 401 | unauthenticated |
| 402 | plan_limit |
| 403 | forbidden / workspace_not_found |
| 404 | not_found |
| 409 | no_account / needs_reauth / replay |
| 429 | rate_limited |
| 500 | internal |
| 502 | platform_error |
| 503 | external_writes_off |
Examples
Request
curl -X POST "https://popkit.loxily.com/api/v1/posts/pst_01J8ZK3R7QW6M2/reschedule" \
-H "Authorization: Bearer popkit_it_••••••••" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: acme-2026-09-21-001" \
-d '{
"scheduledAt": "2026-09-23T20:00:00+08:00"
}'Response
OK
{
"data": {
"postId": "pst_01J8ZK3R7QW6M2",
"status": "scheduled",
"scheduledAt": "2026-09-23T12:00:00.000Z",
"deepLink": "https://popkit.loxily.com/calendar?post=pst_01J8ZK3R7QW6M2"
},
"meta": {
"requestId": "6a1d0c9e-2b7f-4e3a-8c5d-1f0e9b8a7c67"
}
}