openapi: 3.0.1 info: title: Polar benefits subscriptions API description: Polar is an open-source Merchant of Record (MoR) and monetization platform for developers. This document models the core organization-facing REST surface of the Polar API - products and prices, checkouts, customers, subscriptions, orders, benefits and license keys, usage meters and events, and webhooks. All requests are authenticated with a Bearer Organization Access Token. The canonical, machine-generated specification is published by Polar at https://api.polar.sh/openapi.json; this is a curated subset for the API Evangelist catalog. termsOfService: https://polar.sh/legal/terms contact: name: Polar Support email: support@polar.sh url: https://polar.sh/docs license: name: Apache-2.0 url: https://github.com/polarsource/polar/blob/main/LICENSE version: 2026-04 servers: - url: https://api.polar.sh/v1 description: Production environment - url: https://sandbox-api.polar.sh/v1 description: Sandbox environment security: - oat: [] tags: - name: subscriptions description: Recurring subscriptions. paths: /subscriptions/: get: operationId: subscriptions:list tags: - subscriptions summary: List Subscriptions responses: '200': description: A paginated list of subscriptions. content: application/json: schema: $ref: '#/components/schemas/ListResourceSubscription' /subscriptions/{id}: get: operationId: subscriptions:get tags: - subscriptions summary: Get Subscription parameters: - $ref: '#/components/parameters/IdPath' responses: '200': description: The requested subscription. content: application/json: schema: $ref: '#/components/schemas/Subscription' patch: operationId: subscriptions:update tags: - subscriptions summary: Update Subscription parameters: - $ref: '#/components/parameters/IdPath' requestBody: required: true content: application/json: schema: type: object additionalProperties: true responses: '200': description: The updated subscription. content: application/json: schema: $ref: '#/components/schemas/Subscription' delete: operationId: subscriptions:revoke tags: - subscriptions summary: Revoke Subscription parameters: - $ref: '#/components/parameters/IdPath' responses: '200': description: The revoked subscription. content: application/json: schema: $ref: '#/components/schemas/Subscription' components: schemas: Pagination: type: object properties: total_count: type: integer max_page: type: integer ListResourceSubscription: type: object properties: items: type: array items: $ref: '#/components/schemas/Subscription' pagination: $ref: '#/components/schemas/Pagination' Subscription: type: object properties: id: type: string format: uuid created_at: type: string format: date-time status: type: string enum: - incomplete - trialing - active - past_due - canceled - unpaid current_period_start: type: string format: date-time current_period_end: type: string format: date-time nullable: true cancel_at_period_end: type: boolean product_id: type: string format: uuid customer_id: type: string format: uuid recurring_interval: type: string enum: - month - year amount: type: integer nullable: true currency: type: string nullable: true parameters: IdPath: name: id in: path required: true schema: type: string format: uuid securitySchemes: oat: type: http scheme: bearer description: Organization Access Token used for backend, organization-scoped operations. pat: type: http scheme: bearer description: Personal Access Token scoped to a user. customer_session: type: http scheme: bearer description: Customer Session token used for customer portal endpoints.