For developers

REST API quickstart

Every tool as an HTTP endpoint, plus plain paths for the everyday calls.

Base URL https://www.automatesocials.net/api/v2. Authenticate with the x-api-key header (Authorization: Bearer works too). A key belongs to one project, so there is no project parameter.

The everyday paths

Publishing, scheduling and reading back have plain REST paths. The platform may be spelled twitter or x; media may be given as URLs.

curl -X POST https://www.automatesocials.net/api/v2/posts \
  -H "x-api-key: sk_live_..." -H "content-type: application/json" \
  -d '{"post":{"accountId":"<from /users/me/accounts>",
           "content":{"text":"Hello from the API","platform":"linkedin","mediaUrls":[]},
           "target":{"targetType":"linkedin"}},
       "scheduledTime":"2026-10-01T09:00:00Z"}'
PathWhat
GET /users/me, /users/me/accounts, /users/me/accounts/:id/subaccountsWho you are and what is connected
POST /posts, GET /posts, GET /posts/:submissionId, GET /published-postsPublish or schedule, and read back
GET/PATCH/DELETE /schedules/:idMove or cancel something scheduled
GET/POST /schedule/slots, POST /schedule/slots/next-availableWeekly publishing slots
POST /media, POST /media/uploadsFetch a file from a URL, or get an upload URL
GET /creditsYour balance

Every tool, generically

Anything the agent can do is at POST /tools/<name> with the tool's parameters as the JSON body. The names and schemas are in the OpenAPI document and in the manual.

curl -X POST https://www.automatesocials.net/api/v2/tools/save_draft \
  -H "x-api-key: sk_live_..." -H "content-type: application/json" \
  -d '{"text":"Hello","platforms":["facebook"]}'

Limits and logs

30 writes and 60 reads per minute per key; a 429 carries Retry-After. Every call is logged under Settings → API & MCP with its arguments, status and duration.

Machine-readable: https://www.automatesocials.net/api/v2/openapi.json