Posteady
Posteady Docs
GuidesAPI referenceMCP
GuidesGetting started

Quickstart

Get an API key and publish your first text post in four steps.

Start with a connected Threads, X, or LinkedIn account. UUIDs and responses below are illustrative; replace the account ID with your own.

Base URL: https://www.posteady.com/api/v1

1. Get an API key

In a workspace on Creator or above, open the API keys tab in settings and create a key. The full key is shown once after creation. Store it in an environment variable on your server or local shell.

Get an API key
export POSTEADY_API_KEY="pk_replace_with_your_key"

2. Choose an account ID

curl --request GET "https://www.posteady.com/api/v1/accounts" \
  --header "Authorization: Bearer $POSTEADY_API_KEY"

Copy the accountId of an account whose provider is threads, x, or linkedin and whose publishPosts is true.

{
  "accounts": [
    {
      "accountId": "11111111-1111-4111-8111-111111111111",
      "provider": "threads",
      "username": "example",
      "displayName": "Example",
      "capabilities": {
        "readPosts": true,
        "publishPosts": true,
        "schedulePosts": true,
        "repostPosts": true
      }
    }
  ]
}

3. Publish your first post

Replace accountIds with the ID you copied. This request publishes a real post to the connected account.

curl --request POST "https://www.posteady.com/api/v1/posts" \
  --header "Authorization: Bearer $POSTEADY_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
  "accountIds": [
    "11111111-1111-4111-8111-111111111111"
  ],
  "posts": [
    "Hello from Posteady!"
  ]
}'

4. Check the result

A successful Threads text request returns HTTP 200 with a response like this. Check each account’s success and published postIds.

{
  "results": [
    {
      "accountId": "11111111-1111-4111-8111-111111111111",
      "provider": "threads",
      "username": "example",
      "success": true,
      "postIds": [
        "18000000000000000"
      ]
    }
  ],
  "summary": {
    "succeeded": 1,
    "failed": 0
  }
}

HTTP 200 can include failures when publishing to multiple accounts. If summary.failed is greater than zero, inspect those results. Media platforms accept jobs with HTTP 202 and require a separate status check.

Next steps

More related guides

On this page