# GTMRouter — the unified GTM API for AI agents > One API key + one prepaid credit balance runs the full outbound loop: > find leads, check intent, enrich to verified emails, verify deliverability, > provision warmed sending, draft campaigns, launch (human-approved), read replies. > LLM passthrough included. Misses are always free; every response discloses > its exact charge in the `gtmrouter` envelope. Base URL: https://api.gtmrouter.dev MCP server: https://mcp.gtmrouter.dev/mcp (Authorization: Bearer ) Console (accounts, keys, approvals, top-ups): https://app.gtmrouter.dev OpenAPI spec: https://api.gtmrouter.dev/openapi.json ## Verbs (REST paths; also exposed as MCP tools of the same names) - POST /v1/find_leads — search 200M+ B2B contacts by titles/industries/locations/headcount. 0.2 credits per returned lead. Emails come back masked; chain into enrich. - POST /v1/enrich — reveal verified work email (+ mobile) for a person (name+domain, linkedin_url, or email). 5 credits on hit only; 90-day workspace cache. - POST /v1/verify_email — deliverability with catch-all analysis. Statuses: valid | invalid | catch_all_valid | catch_all_unknown | unknown | risky. 1 credit. - POST /v1/find_intent — hiring/funding/news/job_change/technology signals for up to 100 company domains. 10 credits per signal-bearing company + 0.5 credits per company scanned. - POST /v1/setup_sending — quote (free) → human console approval → purchase warmed sending capacity. 1,500 credits/domain one-time + 750 credits/mailbox/month upkeep. Requires assets:purchase scope + Idempotency-Key. Returns operation_id; poll /v1/operations/:id. - POST /v1/campaigns — create a DRAFT campaign (never sends). Free. Suppressed/invalid leads filtered and reported. Requires Idempotency-Key. - POST /v1/launch_campaign — preview → human console approval → launch. Free. Requires campaign:launch scope, Idempotency-Key, and active sending capacity. Suppression re-checked at launch; fails closed. - POST /v1/get_replies — read replies (classifications: interested, not_interested, out_of_office, unsubscribe, bounce, other). Free. Repliers auto-suppressed. - POST /v1/llm/chat — OpenAI-compatible chat completions. Models: anthropic/claude-sonnet-5 (0.5 cr/1k tok), anthropic/claude-haiku-4.5 (0.25), openai/gpt-5-mini (0.1). - GET /v1/usage, /v1/requests/:id, /v1/operations/:id — balance, request status, async progress. Free. ## Rules an agent must know - Auth: `Authorization: Bearer gtmr_sk_…`. Scopes gate verbs; purchases/launches additionally need a single-use confirmation_token approved by a human in the console. Agents cannot spend or send alone. - Idempotency: send an Idempotency-Key header; retries replay the original result without re-charging. Required on setup_sending purchases, create_campaign, launch_campaign. - Suppression is permanent and server-enforced: replies/unsubscribes/bounces are never contacted again. - Errors: single envelope {error:{code,message,request_id?,details?}}. Retry only rate_limited, provider_unavailable, internal (same Idempotency-Key). operation_unknown_state → poll, never blind-retry. - Free tier: 300 credits at signup, no card. 1 credit ≈ $0.01. Rate limit 300 req/min/key. ## Docs - Quickstart: https://docs.gtmrouter.dev/ - Add to your agent (MCP): https://docs.gtmrouter.dev/agent.html - Concepts: https://docs.gtmrouter.dev/concepts.html - Pricing: https://docs.gtmrouter.dev/pricing.html - API reference: https://docs.gtmrouter.dev/reference.html - Errors: https://docs.gtmrouter.dev/errors.html - Playbooks: https://docs.gtmrouter.dev/playbooks.html