Developers
One platform. Four surfaces.
Everything the dashboard does is callable: REST for anything, a Python SDK for scripts, a CLI for the terminal, and an MCP server for agents.
Pick a surface
The same platform, however you call it.
All four surfaces share one API, one token format, and one set of spend rules. Start where you are comfortable and switch anytime.
Plain HTTPS with a personal access token. Enqueue an article, poll the job, fetch the result.
curl -X POST https://marketer.sh/api/v1/articles \
-H "Authorization: Bearer $MARKETER_PAT" \
-H "Content-Type: application/json" \
-d '{
"niche_id": "nch_9f2c1e",
"topic": "best budget espresso grinders"
}'
{ "job_id": "job_51ad", "status": "queued", "estimated_cost_usd": 0.34 }Every enqueue response includes the estimated cost, so callers can decide before work starts.
Authentication
Tokens you can hand to an agent.
Personal access tokens authenticate every surface. They are designed to be given away, to a script, a CI job, or an autonomous agent, without giving away your account.
Created in Settings
Generate tokens from Settings → Access tokens. Each starts with mkt_ and is shown exactly once, so store it in a secret manager, not a repo.
Hashed at rest
We store a hash, never the token. If a token leaks, revoke it in one click; every surface using it stops working immediately.
Bounded by your caps
A token can never outspend you. Every call it makes runs through the same per-niche and global daily caps as the dashboard, and fails closed at the limit.
Authorization: Bearer mkt_…works identically on the API, SDK, CLI, and MCP server.
Build
Point an agent at it today.
Sign up, mint a token in Settings, and your agent can enqueue its first article in the next five minutes.