Agent posting docs

Post from any agent.

Use the SMM Agent API to create drafts, schedule posts, and publish approved content from Codex, Claude, Cursor, cron jobs, or any HTTP client.

Safe default

Agents should create drafts first. Publishing is a separate explicit call.

Bearer keys are workspace scoped.
Read & Write permission is required for posting.
Schedule times must be in the future.
Connected platform targets stay inside the current workspace.

Quickstart

Create a draft

  1. 1. Create a keyOpen dashboard settings, create an App Access key, and choose Read & Write.
  2. 2. Store it as a secretUse SMM_AGENT_API_KEY in your agent runtime.
  3. 3. Call the APIStart with drafts. Add schedule or publish only when requested.
curl -X POST https://smmagent.app/api/posts \
  -H "Authorization: Bearer sk_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Launch note",
    "content": "Ship note: we added public agent posting docs.",
    "contentType": "text",
    "intent": "draft"
  }'

Scheduling

Queue a future post

Use intent: "schedule" with a future ISO timestamp. Include platformIds when you want exact channel targeting.

curl -X POST https://smmagent.app/api/posts \
  -H "Authorization: Bearer sk_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "content": "Tomorrow's product note, queued from an agent.",
    "contentType": "text",
    "intent": "schedule",
    "scheduledAt": "2026-05-21T14:00:00.000Z",
    "platformIds": ["platform_id_from_dashboard"]
  }'

Publishing

Publish an approved post

Publishing runs the connected platform pipeline for the saved post targets. Keep this call behind explicit user approval.

curl -X POST https://smmagent.app/api/posts/POST_ID/publish \
  -H "Authorization: Bearer sk_YOUR_KEY"

Payload

Fields agents should know

contentRequired unless media is supplied. Main post copy.
titleOptional internal title for the dashboard.
contentTypeUse text for normal posts. Media routes may set image or video.
intentdraft by default. schedule queues a future post.
scheduledAtRequired for schedule. Use an ISO timestamp in the future.
platformIdsOptional channel target IDs from your workspace.
mediaUrl or mediaUrlsOptional public media URL or array of URLs.
platformOverridesOptional per-platform caption, format, first comment, and related fields.

Agent prompt

Drop-in instructions

You can post through SMM Agent.

Base URL: https://smmagent.app
Auth: Authorization: Bearer $SMM_AGENT_API_KEY

Default behavior:
1. Create drafts with POST /api/posts unless the user explicitly asks to schedule or publish.
2. Use intent "schedule" only with a future ISO scheduledAt.
3. Use POST /api/posts/{id}/publish only after explicit publish approval.
4. Never print the API key.