Skip to main content
GET
/
v1
/
subscriptions
Go (SDK)
package main

import(
	"context"
	"os"
	polargo "github.com/polarsource/polar-go"
	"github.com/polarsource/polar-go/models/operations"
	"log"
)

func main() {
    ctx := context.Background()

    s := polargo.New(
        polargo.WithSecurity(os.Getenv("POLAR_ACCESS_TOKEN")),
    )

    res, err := s.Subscriptions.List(ctx, operations.SubscriptionsListRequest{
        OrganizationID: polargo.Pointer(operations.CreateOrganizationIDFilterStr(
            "1dbfc517-0bbf-4301-9ba8-555ca42b9737",
        )),
    })
    if err != nil {
        log.Fatal(err)
    }
    if res.ListResourceSubscription != nil {
        for {
            // handle items

            res, err = res.Next()

            if err != nil {
                // handle error
            }

            if res == nil {
                break
            }
        }
    }
}
{
  "items": [
    {
      "created_at": "2023-11-07T05:31:56Z",
      "modified_at": "2023-11-07T05:31:56Z",
      "id": "<string>",
      "amount": 123,
      "currency": "<string>",
      "recurring_interval": "day",
      "recurring_interval_count": 123,
      "status": "incomplete",
      "current_period_start": "2023-11-07T05:31:56Z",
      "current_period_end": "2023-11-07T05:31:56Z",
      "trial_start": "2023-11-07T05:31:56Z",
      "trial_end": "2023-11-07T05:31:56Z",
      "cancel_at_period_end": true,
      "canceled_at": "2023-11-07T05:31:56Z",
      "started_at": "2023-11-07T05:31:56Z",
      "ends_at": "2023-11-07T05:31:56Z",
      "ended_at": "2023-11-07T05:31:56Z",
      "customer_id": "<string>",
      "product_id": "<string>",
      "discount_id": "<string>",
      "checkout_id": "<string>",
      "customer_cancellation_reason": "customer_service",
      "customer_cancellation_comment": "<string>",
      "metadata": {},
      "customer": {
        "id": "<string>",
        "created_at": "2023-11-07T05:31:56Z",
        "modified_at": "2023-11-07T05:31:56Z",
        "metadata": {},
        "email_verified": true,
        "type": "individual",
        "name": "John Doe",
        "billing_address": {
          "country": "AD",
          "line1": "<string>",
          "line2": "<string>",
          "postal_code": "<string>",
          "city": "<string>",
          "state": "<string>"
        },
        "tax_id": {
          "[0]": "<string>"
        },
        "organization_id": "<string>",
        "deleted_at": "2023-11-07T05:31:56Z",
        "avatar_url": "<string>",
        "external_id": "usr_1337",
        "email": "customer@example.com",
        "locale": "<string>"
      },
      "product": {
        "id": "<string>",
        "created_at": "2023-11-07T05:31:56Z",
        "modified_at": "2023-11-07T05:31:56Z",
        "trial_interval": "day",
        "trial_interval_count": 123,
        "name": "<string>",
        "description": "<string>",
        "visibility": "draft",
        "recurring_interval": "day",
        "recurring_interval_count": 123,
        "is_recurring": true,
        "is_archived": true,
        "organization_id": "<string>",
        "metadata": {},
        "prices": [
          {
            "created_at": "2023-11-07T05:31:56Z",
            "modified_at": "2023-11-07T05:31:56Z",
            "id": "<string>",
            "source": "catalog",
            "amount_type": "<string>",
            "price_currency": "<string>",
            "tax_behavior": "location",
            "is_archived": true,
            "product_id": "<string>",
            "type": "<string>",
            "recurring_interval": "day",
            "price_amount": 123,
            "legacy": true
          }
        ],
        "benefits": [
          {
            "id": "<string>",
            "created_at": "2023-11-07T05:31:56Z",
            "modified_at": "2023-11-07T05:31:56Z",
            "type": "<string>",
            "description": "<string>",
            "selectable": true,
            "deletable": true,
            "is_deleted": true,
            "organization_id": "<string>",
            "metadata": {},
            "properties": {
              "note": "<string>"
            }
          }
        ],
        "medias": [
          {
            "id": "<string>",
            "organization_id": "<string>",
            "name": "<string>",
            "path": "<string>",
            "mime_type": "<string>",
            "size": 123,
            "storage_version": "<string>",
            "checksum_etag": "<string>",
            "checksum_sha256_base64": "<string>",
            "checksum_sha256_hex": "<string>",
            "last_modified_at": "2023-11-07T05:31:56Z",
            "version": "<string>",
            "service": "<string>",
            "is_uploaded": true,
            "created_at": "2023-11-07T05:31:56Z",
            "size_readable": "<string>",
            "public_url": "<string>"
          }
        ],
        "attached_custom_fields": [
          {
            "custom_field_id": "<string>",
            "custom_field": {
              "created_at": "2023-11-07T05:31:56Z",
              "modified_at": "2023-11-07T05:31:56Z",
              "id": "<string>",
              "metadata": {},
              "type": "<string>",
              "slug": "<string>",
              "name": "<string>",
              "organization_id": "<string>",
              "properties": {
                "form_label": "<string>",
                "form_help_text": "<string>",
                "form_placeholder": "<string>",
                "textarea": true,
                "min_length": 1073741823,
                "max_length": 1073741823
              }
            },
            "order": 123,
            "required": true
          }
        ]
      },
      "discount": {
        "duration": "once",
        "type": "fixed",
        "amount": 123,
        "currency": "<string>",
        "amounts": {},
        "created_at": "2023-11-07T05:31:56Z",
        "modified_at": "2023-11-07T05:31:56Z",
        "id": "<string>",
        "metadata": {},
        "name": "<string>",
        "code": "<string>",
        "starts_at": "2023-11-07T05:31:56Z",
        "ends_at": "2023-11-07T05:31:56Z",
        "max_redemptions": 123,
        "redemptions_count": 123,
        "organization_id": "<string>"
      },
      "prices": [
        {
          "created_at": "2023-11-07T05:31:56Z",
          "modified_at": "2023-11-07T05:31:56Z",
          "id": "<string>",
          "source": "catalog",
          "amount_type": "<string>",
          "price_currency": "<string>",
          "tax_behavior": "location",
          "is_archived": true,
          "product_id": "<string>",
          "type": "<string>",
          "recurring_interval": "day",
          "price_amount": 123,
          "legacy": true
        }
      ],
      "meters": [
        {
          "created_at": "2023-11-07T05:31:56Z",
          "modified_at": "2023-11-07T05:31:56Z",
          "id": "<string>",
          "consumed_units": 123,
          "credited_units": 123,
          "amount": 123,
          "meter_id": "<string>",
          "meter": {
            "metadata": {},
            "created_at": "2023-11-07T05:31:56Z",
            "modified_at": "2023-11-07T05:31:56Z",
            "id": "<string>",
            "name": "<string>",
            "unit": "scalar",
            "filter": {
              "conjunction": "and",
              "clauses": [
                {
                  "property": "<string>",
                  "operator": "eq",
                  "value": "<string>"
                }
              ]
            },
            "aggregation": {
              "func": "count"
            },
            "organization_id": "<string>",
            "custom_label": "<string>",
            "custom_multiplier": 123,
            "archived_at": "2023-11-07T05:31:56Z"
          }
        }
      ],
      "pending_update": {
        "created_at": "2023-11-07T05:31:56Z",
        "modified_at": "2023-11-07T05:31:56Z",
        "id": "<string>",
        "applies_at": "2023-11-07T05:31:56Z",
        "product_id": "<string>",
        "seats": 123
      },
      "seats": 123,
      "custom_field_data": {}
    }
  ],
  "pagination": {
    "total_count": 123,
    "max_page": 123
  }
}

Documentation Index

Fetch the complete documentation index at: https://polar.sh/docs/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

You can generate an Organization Access Token from your organization's settings.

Query Parameters

organization_id

Filter by organization ID. The organization ID.

Example:

"1dbfc517-0bbf-4301-9ba8-555ca42b9737"

product_id

Filter by product ID. The product ID.

customer_id

Filter by customer ID. The customer ID.

external_customer_id

Filter by customer external ID. The customer external ID.

discount_id

Filter by discount ID. The product ID.

active
boolean | null

Filter by active or inactive subscription.

cancel_at_period_end
boolean | null

Filter by subscriptions that are set to cancel at period end.

customer_cancellation_reason

Filter by customer cancellation reason.

Available options:
customer_service,
low_quality,
missing_features,
switched_service,
too_complex,
too_expensive,
unused,
other
canceled_at_after
string<date-time> | null

Filter by cancellation date (after or equal to).

canceled_at_before
string<date-time> | null

Filter by cancellation date (before or equal to).

page
integer
default:1

Page number, defaults to 1.

limit
integer
default:10

Size of a page, defaults to 10. Maximum is 100.

sorting
enum<string>[] | null

Sorting criterion. Several criteria can be used simultaneously and will be applied in order. Add a minus sign - before the criteria name to sort by descending order.

Available options:
customer,
-customer,
status,
-status,
started_at,
-started_at,
current_period_end,
-current_period_end,
ended_at,
-ended_at,
ends_at,
-ends_at,
amount,
-amount,
product,
-product,
discount,
-discount
metadata
MetadataQuery · object

Filter by metadata key-value pairs. It uses the deepObject style, e.g. ?metadata[key]=value.

Response

Successful Response

items
Subscription · object[]
required
pagination
Pagination · object
required