Base URLs, authentication (OAT), and the difference between the Core API and the Customer Portal API
https://api.polar.sh/v1
https://sandbox-api.polar.sh/v1
Authorization: Bearer
header/v1/customer-sessions/
Environment | Base URL | Purpose |
---|---|---|
Production | https://api.polar.sh/v1 | Real customers & live payments |
Sandbox | https://sandbox-api.polar.sh/v1 | Safe testing & integration work |
Aspect | Core API | Customer Portal API |
---|---|---|
Audience | Your server / backend | One of your customer |
Auth Type | Organization Access Token (OAT) | Customer Access Token |
Scope | Full org resources (products, orders, subscriptions, benefits, checkout) | Only the authenticated customer’s data |
Typical Use | Admin dashboards, internal tools, automation, provisioning | Building a custom customer portal or gated app |
Token Creation | Via dashboard (manual) | Via /v1/customer-sessions/ (server-side) |
Sensitive Operations | Yes (create/update products, issue refunds, etc.) | No (read/update only what the customer owns) |
server
parameter for sandbox usage:
429 Too Many Requests
response. The response will include a Retry-After
header indicating how long you should wait before making another request.