Quickstart

Create a key, connect an account and publish your first post.

Preview of the API. The hosted API opens at launch: join the waitlist for early access.

1

Create a key

Open API keys in the dashboard and create one. It is shown once.

Terminal
export API_KEY=pp_live_...
2

Connect an account

Use the test network first. Nothing leaves your machine.

Test network
curl -X POST https://api.posteverysocial.com/v1/connections \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"network": "sandbox", "name": "Test account"}'

For Bluesky, create an app password in Bluesky settings, then send it. Never send your account password.

Bluesky request body
-d '{"network": "bluesky", "handle": "you.bsky.social", "appPassword": "xxxx-xxxx-xxxx-xxxx"}'
3

Publish

Terminal
curl -X POST https://api.posteverysocial.com/v1/publications \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text": "Hello", "connections": ["con_..."]}'

Add publishAt with an ISO 8601 time to schedule. Add an Idempotency-Key header so a retry cannot post twice.

4

Read the receipt

Terminal
curl https://api.posteverysocial.com/v1/publications/pub_... \
  -H "Authorization: Bearer $API_KEY"

Each entry in deliveries has its own status. A delivered one carries a receipt; a failed one carries an error with a code.

Other endpoints

  • GET/v1/networksLists networks and their state
  • GET/v1/connectionsLists connected accounts
  • DELETE/v1/connections/:idDisconnects an account
  • GET/v1/publicationsLists recent publications
  • DELETE/v1/publications/:idCancels anything not yet sent
  • POST/v1/publications/:id/retryRetries failed targets only
  • GET/v1/statsDelivery counts per network