◆ Developers

API documentation

Postena exposes a small HTTP API so you can publish or schedule videos from your own scripts and workflows. Every request is authenticated.

Authentication

Programmatic requests must include your secret key in the X-API-Key header. Requests without a valid key (or an active dashboard session) are rejected with 401. You can find your key in your Postena configuration; keep it private.

X-API-Key: your_api_key_here

Publish a video now

POST/api/publish

Publishes a video to your connected TikTok account immediately.

FieldTypeDescription
videoPathstringAbsolute path to the MP4 on the host (or send a video file with multipart).
captionstringCaption and hashtags.
coverMsnumberCover-frame timestamp in milliseconds (the thumbnail).
curl -X POST https://your-domain/api/publish \
  -H "X-API-Key: your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "videoPath": "/videos/clip.mp4",
    "caption": "New drop #video",
    "coverMs": 1000
  }'

 { "ok": true, "publish_id": "v2.123..." }

Schedule a video

POST/api/schedule

Same fields as publish, plus an at timestamp. Postena stores the video and publishes it automatically at that time.

FieldTypeDescription
atstring (ISO 8601)When to publish, e.g. 2026-09-01T18:00:00Z.
curl -X POST https://your-domain/api/schedule \
  -H "X-API-Key: your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{ "videoPath": "/videos/clip.mp4", "caption": "Tomorrow", "coverMs": 800, "at": "2026-09-01T18:00:00Z" }'

 { "ok": true, "id": "6304...", "at": "2026-09-01T18:00:00.000Z" }

Check publish status

GET/api/publish/status?publish_id=…
curl "https://your-domain/api/publish/status?publish_id=v2.123..."
 { "status": "PUBLISH_COMPLETE" }
The dashboard at /app does the same thing with a visual interface — connect your account, drop a video, pick the cover, and publish or schedule. Both the dashboard and the API act only on the TikTok account you have authorized.