Documentation

Five minutes to a first call.

REST first. The interactive OpenAPI reference ships with the hosted API.

Early access. The interface below is final and the sandbox runs the full loop in labeled mock mode; the hosted API at api.routergrowth.com opens to early-access keys as provider terms are signed. Request a key: hello@routergrowth.com.

Quickstart

1 · Create an account and get a test key with $5 promotional credit:

curl -X POST https://api.routergrowth.com/v1/dev/signup \
  -H "Content-Type: application/json" \
  -d '{"email": "you@company.com", "organization_name": "Acme"}'
# → {"api_key": "rg_test_...", ...}  (shown only once, store it now)

2 · Inspect a capability: schema, providers, price and billing conditions:

curl -X POST https://api.routergrowth.com/v1/inspect \
  -H "Authorization: Bearer $ROUTERGROWTH_API_KEY" \
  -d '{"capability": "contact.find"}'

3 · Run it:

curl -X POST https://api.routergrowth.com/v1/run \
  -H "Authorization: Bearer $ROUTERGROWTH_API_KEY" \
  -H "Idempotency-Key: my-unique-value-1" \
  -d '{
    "capability": "contact.find",
    "input": {"first_name": "Alex", "last_name": "Rivera", "company_domain": "example.com"},
    "routing": {"provider": "auto", "strategy": "best_value", "max_cost": "0.10"}
  }'

4 · Check your wallet and run history:

curl https://api.routergrowth.com/v1/wallet -H "Authorization: Bearer $ROUTERGROWTH_API_KEY"
curl https://api.routergrowth.com/v1/runs   -H "Authorization: Bearer $ROUTERGROWTH_API_KEY"

Development build: providers run in mock mode and return clearly-labeled simulated data with real quoting, reservation and settlement, so you can build the full integration before live providers are enabled. Force outcomes for testing: include nomatch, fail or timeout in any input string.

Core concepts

Authentication

Bearer keys: rg_test_ and rg_live_. Keys are hashed at rest and shown once at creation. Rotate via /v1/api-keys.

Discover & inspect

POST /v1/discover searches the catalog by job description and never executes a paid call. POST /v1/inspect returns schemas, providers, prices and billing conditions.

Runs

POST /v1/run executes a capability. The maximum billable amount is reserved first, then settled to the actual charge or released on failure. Long-running calls return 202 with a poll URL.

Routing

provider: auto with strategies cheapest, fastest, highest_success_rate, best_value, or pin a specific provider. The routing_reason field explains every decision.

Wallet & billing

Prepaid USD credits in integer microdollars on an immutable ledger. GET /v1/wallet, GET /v1/wallet/transactions. Minimum top-up $20; Stripe checkout lands in Phase 2.

BYOK connections

POST /v1/connections/{provider} stores your credential encrypted. Your key takes routing priority and those calls are not metered. DELETE revokes instantly.

Errors & idempotency

Errors use stable codes (insufficient_balance, no_match, provider_timeout, ...) with a request_id. Send an Idempotency-Key header to make /v1/run safe to retry.