Billing & plans
Registration, plan upgrades, and usage metering are handled through Stripe.
Plans & monthly limits
| Plan | Included conversions / month | Notes |
|---|---|---|
free | 50 | Default after subscription cancellation |
starter | 1,000 | Flat + metered overage via Stripe |
pro | 10,000 | Flat + metered overage |
business | 100,000 | Flat + metered overage |
payg | Unlimited* | *No monthly cap; billed per conversion via meter |
See pricing on the marketing site for list prices.
POST /v1/auth/register
Public endpoint — no API key required.
curl -X POST https://api-production-7d714.up.railway.app/v1/auth/register \
-H "Content-Type: application/json" \
-d '{"email":"you@company.com","name":"My App"}'
201 response:
{
"success": true,
"api_key": "dc_live_...",
"plan": "payg",
"checkout_url": "https://checkout.stripe.com/...",
"message": "Save your API key — it will never be shown again..."
}
Redirect users to checkout_url. The key activates when Stripe sends customer.subscription.created.
POST /v1/billing/checkout
Authenticated — upgrade or change plan.
curl -X POST https://api-production-7d714.up.railway.app/v1/billing/checkout \
-H "Content-Type: application/json" \
-H "X-API-Key: dc_live_YOUR_KEY" \
-d '{
"plan": "starter",
"success_url": "https://yoursite.com/billing/success",
"cancel_url": "https://yoursite.com/billing/cancel"
}'
Response: { "url": "https://checkout.stripe.com/..." }
Valid plan values: starter, pro, business, payg.
POST /v1/billing/portal
Authenticated — open Stripe Customer Portal (manage payment method, invoices, cancel).
curl -X POST https://api-production-7d714.up.railway.app/v1/billing/portal \
-H "X-API-Key: dc_live_YOUR_KEY"
Response: { "url": "https://billing.stripe.com/..." }
Usage metering
For payg plans, each conversion is reported to Stripe's usage meter. For subscription plans, conversions beyond the included monthly limit are also metered as overage.
Webhooks
Stripe webhooks at POST /v1/webhooks/stripe are for server configuration only — not called by API consumers. They activate keys and sync plan changes after checkout.