# First page
curl "https://api.infinipost.co/v1/posts?status=generated&limit=50" \
-H "Authorization: Bearer YOUR_API_KEY"
# Next page
curl "https://api.infinipost.co/v1/posts?status=generated&limit=50&cursor=cG9zdF9hYmMxMjM" \
-H "Authorization: Bearer YOUR_API_KEY"
// First page
const response = await fetch('https://api.infinipost.co/v1/posts?status=generated&limit=50', {
headers: { 'Authorization': 'Bearer YOUR_API_KEY' }
});
const data = await response.json();
// Next page
if (data.hasMore) {
const nextResponse = await fetch(`https://api.infinipost.co/v1/posts?status=generated&limit=50&cursor=${data.nextCursor}`, {
headers: { 'Authorization': 'Bearer YOUR_API_KEY' }
});
}
{
"data": [
{
"postId": "post_abc123",
"accountId": "acc_1a2b3c4d5e",
"platform": "tiktok",
"contentType": "video",
"contentUrl": "https://storage.googleapis.com/...",
"thumbnailUrl": "https://storage.googleapis.com/.../thumb.jpg",
"caption": "Check out this amazing content! #viral",
"soundId": "snd_xyz789",
"timezone": "America/New_York",
"scheduledTime": "2024-04-22T16:00:00Z",
"status": "generated",
"postedAt": null,
"createdAt": "2024-04-21T20:15:00Z"
},
{
"postId": "post_def456",
"accountId": "acc_1a2b3c4d5e",
"platform": "instagram",
"contentType": "slides",
"contentUrl": [
"https://storage.googleapis.com/.../slide1.jpg",
"https://storage.googleapis.com/.../slide2.jpg",
"https://storage.googleapis.com/.../slide3.jpg"
],
"thumbnailUrl": null,
"caption": "Step by step tutorial 🔥",
"soundId": null,
"timezone": "America/Los_Angeles",
"scheduledTime": "2024-04-22T19:00:00Z",
"status": "posted",
"postedAt": "2024-04-22T19:00:12Z",
"createdAt": "2024-04-21T20:15:00Z"
}
],
"hasMore": true,
"nextCursor": "cG9zdF9hYmMxMjM"
}
Posts
List Posts
Retrieve a paginated list of your scheduled and posted content
GET
/
v1
/
posts
# First page
curl "https://api.infinipost.co/v1/posts?status=generated&limit=50" \
-H "Authorization: Bearer YOUR_API_KEY"
# Next page
curl "https://api.infinipost.co/v1/posts?status=generated&limit=50&cursor=cG9zdF9hYmMxMjM" \
-H "Authorization: Bearer YOUR_API_KEY"
// First page
const response = await fetch('https://api.infinipost.co/v1/posts?status=generated&limit=50', {
headers: { 'Authorization': 'Bearer YOUR_API_KEY' }
});
const data = await response.json();
// Next page
if (data.hasMore) {
const nextResponse = await fetch(`https://api.infinipost.co/v1/posts?status=generated&limit=50&cursor=${data.nextCursor}`, {
headers: { 'Authorization': 'Bearer YOUR_API_KEY' }
});
}
{
"data": [
{
"postId": "post_abc123",
"accountId": "acc_1a2b3c4d5e",
"platform": "tiktok",
"contentType": "video",
"contentUrl": "https://storage.googleapis.com/...",
"thumbnailUrl": "https://storage.googleapis.com/.../thumb.jpg",
"caption": "Check out this amazing content! #viral",
"soundId": "snd_xyz789",
"timezone": "America/New_York",
"scheduledTime": "2024-04-22T16:00:00Z",
"status": "generated",
"postedAt": null,
"createdAt": "2024-04-21T20:15:00Z"
},
{
"postId": "post_def456",
"accountId": "acc_1a2b3c4d5e",
"platform": "instagram",
"contentType": "slides",
"contentUrl": [
"https://storage.googleapis.com/.../slide1.jpg",
"https://storage.googleapis.com/.../slide2.jpg",
"https://storage.googleapis.com/.../slide3.jpg"
],
"thumbnailUrl": null,
"caption": "Step by step tutorial 🔥",
"soundId": null,
"timezone": "America/Los_Angeles",
"scheduledTime": "2024-04-22T19:00:00Z",
"status": "posted",
"postedAt": "2024-04-22T19:00:12Z",
"createdAt": "2024-04-21T20:15:00Z"
}
],
"hasMore": true,
"nextCursor": "cG9zdF9hYmMxMjM"
}
Query Parameters
string
Filter by post status:
generated, pending_render, posted, or failed.string
Filter by platform:
tiktok or instagram.string
Filter by content type:
video or slides.string
Filter by a specific account ID.
number
default:"50"
Number of posts to return (max 100).
string
Cursor for pagination. Pass the
nextCursor value from the previous response to get the next page. Omit for the first page.Response
array
Array of post objects.
Show Post object properties
Show Post object properties
string
Unique identifier for the post.
string
The account this post is scheduled for.
string
Platform:
tiktok or instagram.string
video or slides.string | array
The content to be posted. When
contentType is video, this is a single URL string. When contentType is slides, this is an array of image URL strings.string
URL of the video thumbnail.
null for slideshow posts or if not yet generated.string
Post caption.
string
ID of the sound attached to this post.
null if no sound.string
IANA timezone the
scheduledTime was submitted in (e.g. America/New_York).string
UTC ISO 8601 timestamp of when the post is scheduled to go live.
string
Current status:
generated, pending_render, posted, or failed.string
ISO 8601 timestamp of when the post went live.
null if not yet posted.string
ISO 8601 timestamp of when the post was created.
boolean
Whether there are more posts beyond this page.
string
Cursor to pass as the
cursor query parameter to retrieve the next page. null when there are no more pages.# First page
curl "https://api.infinipost.co/v1/posts?status=generated&limit=50" \
-H "Authorization: Bearer YOUR_API_KEY"
# Next page
curl "https://api.infinipost.co/v1/posts?status=generated&limit=50&cursor=cG9zdF9hYmMxMjM" \
-H "Authorization: Bearer YOUR_API_KEY"
// First page
const response = await fetch('https://api.infinipost.co/v1/posts?status=generated&limit=50', {
headers: { 'Authorization': 'Bearer YOUR_API_KEY' }
});
const data = await response.json();
// Next page
if (data.hasMore) {
const nextResponse = await fetch(`https://api.infinipost.co/v1/posts?status=generated&limit=50&cursor=${data.nextCursor}`, {
headers: { 'Authorization': 'Bearer YOUR_API_KEY' }
});
}
{
"data": [
{
"postId": "post_abc123",
"accountId": "acc_1a2b3c4d5e",
"platform": "tiktok",
"contentType": "video",
"contentUrl": "https://storage.googleapis.com/...",
"thumbnailUrl": "https://storage.googleapis.com/.../thumb.jpg",
"caption": "Check out this amazing content! #viral",
"soundId": "snd_xyz789",
"timezone": "America/New_York",
"scheduledTime": "2024-04-22T16:00:00Z",
"status": "generated",
"postedAt": null,
"createdAt": "2024-04-21T20:15:00Z"
},
{
"postId": "post_def456",
"accountId": "acc_1a2b3c4d5e",
"platform": "instagram",
"contentType": "slides",
"contentUrl": [
"https://storage.googleapis.com/.../slide1.jpg",
"https://storage.googleapis.com/.../slide2.jpg",
"https://storage.googleapis.com/.../slide3.jpg"
],
"thumbnailUrl": null,
"caption": "Step by step tutorial 🔥",
"soundId": null,
"timezone": "America/Los_Angeles",
"scheduledTime": "2024-04-22T19:00:00Z",
"status": "posted",
"postedAt": "2024-04-22T19:00:12Z",
"createdAt": "2024-04-21T20:15:00Z"
}
],
"hasMore": true,
"nextCursor": "cG9zdF9hYmMxMjM"
}
Error Responses
Unauthorized
{
"error": {
"code": "unauthenticated",
"message": "Invalid or missing API key"
}
}
Invalid Parameter
{
"error": {
"code": "invalid_parameter",
"message": "status must be one of: generated, pending_render, posted, failed"
}
}
Invalid Cursor
{
"error": {
"code": "invalid_parameter",
"message": "Invalid cursor"
}
}
Server Error
{
"error": {
"code": "internal",
"message": "An unexpected error occurred"
}
}
⌘I