TikTok pulls the video from the URL asynchronously and delivers it to the user's TikTok inbox as a draft (TikTok's sandbox/unverified app behaviour) or publishes it directly. Poll this endpoint until status is SEND_TO_USER_INBOX, PUBLISH_COMPLETE, or FAILED. Query param: ?publish_id=xxx
TikTok pulls the video from the URL asynchronously and delivers it to the user's TikTok inbox as a draft (TikTok's sandbox/unverified app behaviour) or publishes it directly. Poll this endpoint until status is SEND_TO_USER_INBOX, PUBLISH_COMPLETE, or FAILED.
Query param: ?publish_id=xxx
GET https://eranol.com/api/v1/social/tiktok/status
{
"status": "SEND_TO_USER_INBOX, PUBLISH_COMPLETE, or FAILED",
"fail_reason": ""
}
After calling the TikTok publish endpoint, poll this endpoint with the publish_id until status reaches PUBLISH_COMPLETE.
Response
{
"status": "SENDING_TO_USER_INBOX",
"publish_id": "v_pub_url~v1~abc123"
}
Unverified TikTok apps deliver videos to the user's inbox as a draft. Poll until SEND_TO_USER_INBOX to confirm delivery.
Response
{
"status": "SEND_TO_USER_INBOX",
"publish_id": "v_pub_url~v1~abc123"
}
If the status is FAILED, surface an error message to the user and offer a retry.
Response
{
"status": "FAILED",
"error_code": "VIDEO_PULL_FAILED",
"publish_id": "v_pub_url~v1~abc123"
}
| Code | Meaning |
|---|---|
401 | Missing or invalid API key |
402 | Insufficient credits |
422 | Validation error — check your request body |
429 | Rate limit exceeded — slow down requests |
500 | Internal server error — try again or contact support |