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. Create a keyOpen dashboard settings, create an App Access key, and choose Read & Write.
- 2. Store it as a secretUse
SMM_AGENT_API_KEYin your agent runtime. - 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
| content | Required unless media is supplied. Main post copy. |
|---|---|
| title | Optional internal title for the dashboard. |
| contentType | Use text for normal posts. Media routes may set image or video. |
| intent | draft by default. schedule queues a future post. |
| scheduledAt | Required for schedule. Use an ISO timestamp in the future. |
| platformIds | Optional channel target IDs from your workspace. |
| mediaUrl or mediaUrls | Optional public media URL or array of URLs. |
| platformOverrides | Optional 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.