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.

terminal
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.

API, SDK, CLI & MCP — marketer.sh