Skip to content

Quickstart

PostProxy creates your first profile group automatically when you sign up. Connect your social media accounts through the dashboard, then you’re ready to make API calls.

First, retrieve your connected profiles to get their IDs.

Terminal window
curl -X GET "https://api.postproxy.dev/api/profiles" \
-H "Authorization: Bearer YOUR_API_KEY"

Response:

{
"data": [
{
"id": "prof123abc",
"name": "My Company Page",
"platform": "facebook",
"status": "active",
"profile_group_id": "grp456xyz",
"expires_at": null,
"post_count": 42
},
{
"id": "prof789def",
"name": "@mycompany",
"platform": "instagram",
"status": "active",
"profile_group_id": "grp456xyz",
"expires_at": null,
"post_count": 38
}
]
}

Note the profile IDs and platform types - you’ll use these when creating posts.

Post content to one or more profiles. You can specify profiles by their ID or by platform name (uses the first profile for that platform).

Terminal window
curl -X POST "https://api.postproxy.dev/api/posts" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"post": {
"body": "Hello World!"
},
"profiles": ["facebook", "instagram"],
"media": ["https://example.com/image.jpg"]
}'

Response:

{
"id": "xyz789abc",
"body": "Hello World!",
"status": "processed",
"scheduled_at": null,
"created_at": "2024-01-15T10:30:00.000Z",
"platforms": [
{
"platform": "facebook",
"status": "published",
"error": null,
"params": null,
"attempted_at": "2024-01-15T10:30:01.000Z"
},
{
"platform": "instagram",
"status": "published",
"error": null,
"params": {
"format": "post"
},
"attempted_at": "2024-01-15T10:30:02.000Z"
}
]
}

Your post will be published to the specified platforms almost immediately.

To schedule a post for later, add scheduled_at with an ISO 8601 timestamp.

Terminal window
curl -X POST "https://api.postproxy.dev/api/posts" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"post": {
"body": "Hello World!",
"scheduled_at": "2024-01-20T12:00:00Z"
},
"profiles": ["facebook", "instagram"],
"media": ["https://example.com/image.jpg"]
}'

Response:

{
"id": "xyz789abc",
"body": "Hello World!",
"status": "scheduled",
"scheduled_at": "2024-01-20T12:00:00.000Z",
"created_at": "2024-01-15T10:30:00.000Z",
"platforms": [
{
"platform": "facebook",
"status": "processing",
"error": null,
"params": null,
"attempted_at": null
},
{
"platform": "instagram",
"status": "processing",
"error": null,
"params": {
"format": "post"
},
"attempted_at": null
}
]
}

PostProxy handles the scheduling - your post will be published at the specified time.