---
title: "List Benefit Grants"
method: GET
path: "/v1/benefit-grants/"
tags: ["benefit-grants", "public"]
---

# List Benefit Grants

`GET /v1/benefit-grants/`

List benefit grants across all benefits accessible to the authenticated subject.

**Scopes**: `benefits:read` `benefits:write`

## Query parameters

- `organization_id` union — Filter by organization ID.
  - string, uuid4 — The organization ID.
  - string[]
- `customer_id` union — Filter by customer ID.
  - string, uuid4 — The customer ID.
  - string[]
- `external_customer_id` union — Filter by customer external ID.
  - string — The customer external ID.
  - string[]
- `is_granted` boolean, nullable — Filter by granted status. If `true`, only granted benefits will be returned. If `false`, only revoked benefits will be returned.
- `page` integer — Page number, defaults to 1.
- `limit` integer — Size of a page, defaults to 10. Maximum is 100.
- `sorting` BenefitGrantSortProperty[], nullable — 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.

## Response `200`

Successful Response

- ListResourceBenefitGrant
  - `items` BenefitGrant[], required
    - `created_at` string, date-time, required — Creation timestamp of the object.
    - `modified_at` string, date-time, nullable, required — Last modification timestamp of the object.
    - `id` string, uuid4, required — The ID of the grant.
    - `granted_at` string, date-time, nullable — The timestamp when the benefit was granted. If `None`, the benefit is not granted.
    - `is_granted` boolean, required — Whether the benefit is granted.
    - `revoked_at` string, date-time, nullable — The timestamp when the benefit was revoked. If `None`, the benefit is not revoked.
    - `is_revoked` boolean, required — Whether the benefit is revoked.
    - `subscription_id` string, uuid4, nullable, required — The ID of the subscription that granted this benefit.
    - `order_id` string, uuid4, nullable, required — The ID of the order that granted this benefit.
    - `customer_id` string, uuid4, required — The ID of the customer concerned by this grant.
    - `member_id` string, uuid4, nullable — The ID of the member concerned by this grant.
    - `benefit_id` string, uuid4, required — The ID of the benefit concerned by this grant.
    - `error` BenefitGrantError
      - `message` string, required
      - `type` string, required
      - `timestamp` string, required
    - `customer` Customer, required — unresolved $ref
    - `member` Member — A member of a customer.
      - `id` string, uuid4, required — The ID of the member.
      - `created_at` string, date-time, required — Creation timestamp of the object.
      - `modified_at` string, date-time, nullable, required — Last modification timestamp of the object.
      - `customer_id` string, uuid4, required — The ID of the customer this member belongs to.
      - `email` string, required — The email address of the member.
      - `name` string, nullable, required — The name of the member.
      - `external_id` string, nullable, required — The ID of the member in your system. This must be unique within the customer.
      - `role` 'owner' | 'billing_manager' | 'member', required
    - `benefit` union, required
      - BenefitCustom — A benefit of type `custom`. Use it to grant any kind of benefit that doesn't fit in the other types.
        - `id` string, uuid4, required — The ID of the benefit.
        - `created_at` string, date-time, required — Creation timestamp of the object.
        - `modified_at` string, date-time, nullable, required — Last modification timestamp of the object.
        - `type` 'custom', required
        - `description` string, required — The description of the benefit.
        - `selectable` boolean, required — Whether the benefit is selectable when creating a product.
        - `deletable` boolean, required — Whether the benefit is deletable.
        - `is_deleted` boolean, required — Whether the benefit is deleted.
        - `organization_id` string, uuid4, required — The ID of the organization owning the benefit.
        - `metadata` MetadataOutputType, required
        - `visibility` 'draft' | 'private' | 'public', required
        - `properties` BenefitCustomProperties, required — Properties for a benefit of type `custom`.
          - `note` string, nullable, required
        - `visibility_configurable` boolean, required
      - BenefitDiscord — A benefit of type `discord`. Use it to automatically invite your backers to a Discord server.
        - `id` string, uuid4, required — The ID of the benefit.
        - `created_at` string, date-time, required — Creation timestamp of the object.
        - `modified_at` string, date-time, nullable, required — Last modification timestamp of the object.
        - `type` 'discord', required
        - `description` string, required — The description of the benefit.
        - `selectable` boolean, required — Whether the benefit is selectable when creating a product.
        - `deletable` boolean, required — Whether the benefit is deletable.
        - `is_deleted` boolean, required — Whether the benefit is deleted.
        - `organization_id` string, uuid4, required — The ID of the organization owning the benefit.
        - `metadata` MetadataOutputType, required
        - `visibility` 'draft' | 'private' | 'public', required
        - `properties` BenefitDiscordProperties, required — Properties for a benefit of type `discord`.
          - `guild_id` string, required — The ID of the Discord server.
          - `role_id` string, required — The ID of the Discord role to grant.
          - `kick_member` boolean, required — Whether to kick the member from the Discord server on revocation.
          - `guild_token` string, required
        - `visibility_configurable` boolean, required
      - BenefitGitHubRepository — A benefit of type `github_repository`. Use it to automatically invite your backers to a private GitHub repository.
        - `id` string, uuid4, required — The ID of the benefit.
        - `created_at` string, date-time, required — Creation timestamp of the object.
        - `modified_at` string, date-time, nullable, required — Last modification timestamp of the object.
        - `type` 'github_repository', required
        - `description` string, required — The description of the benefit.
        - `selectable` boolean, required — Whether the benefit is selectable when creating a product.
        - `deletable` boolean, required — Whether the benefit is deletable.
        - `is_deleted` boolean, required — Whether the benefit is deleted.
        - `organization_id` string, uuid4, required — The ID of the organization owning the benefit.
        - `metadata` MetadataOutputType, required
        - `visibility` 'draft' | 'private' | 'public', required
        - `properties` BenefitGitHubRepositoryProperties, required — Properties for a benefit of type `github_repository`.
          - `repository_owner` string, required — The owner of the repository.
          - `repository_name` string, required — The name of the repository.
          - `permission` 'pull' | 'triage' | 'push' | 'maintain' | 'admin', required — The permission level to grant. Read more about roles and their permissions on [GitHub documentation](https://docs.github.com/en/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization#permissions-for-each-role).
        - `visibility_configurable` boolean, required
      - BenefitDownloadables
        - `id` string, uuid4, required — The ID of the benefit.
        - `created_at` string, date-time, required — Creation timestamp of the object.
        - `modified_at` string, date-time, nullable, required — Last modification timestamp of the object.
        - `type` 'downloadables', required
        - `description` string, required — The description of the benefit.
        - `selectable` boolean, required — Whether the benefit is selectable when creating a product.
        - `deletable` boolean, required — Whether the benefit is deletable.
        - `is_deleted` boolean, required — Whether the benefit is deleted.
        - `organization_id` string, uuid4, required — The ID of the organization owning the benefit.
        - `metadata` MetadataOutputType, required
        - `visibility` 'draft' | 'private' | 'public', required
        - `properties` BenefitDownloadablesProperties, required
          - `archived` object, required
          - `files` string[], required
        - `visibility_configurable` boolean, required
      - BenefitLicenseKeys
        - `id` string, uuid4, required — The ID of the benefit.
        - `created_at` string, date-time, required — Creation timestamp of the object.
        - `modified_at` string, date-time, nullable, required — Last modification timestamp of the object.
        - `type` 'license_keys', required
        - `description` string, required — The description of the benefit.
        - `selectable` boolean, required — Whether the benefit is selectable when creating a product.
        - `deletable` boolean, required — Whether the benefit is deletable.
        - `is_deleted` boolean, required — Whether the benefit is deleted.
        - `organization_id` string, uuid4, required — The ID of the organization owning the benefit.
        - `metadata` MetadataOutputType, required
        - `visibility` 'draft' | 'private' | 'public', required
        - `properties` BenefitLicenseKeysProperties, required
          - `prefix` string, nullable, required
          - `expires` BenefitLicenseKeyExpirationProperties, required
            - `ttl` integer, required
            - `timeframe` 'year' | 'month' | 'day', required
          - `activations` BenefitLicenseKeyActivationProperties, required
            - `limit` integer, required
            - `enable_customer_admin` boolean, required
          - `limit_usage` integer, nullable, required
        - `visibility_configurable` boolean, required
      - BenefitMeterCredit — A benefit of type `meter_unit`. Use it to grant a number of units on a specific meter.
        - `id` string, uuid4, required — The ID of the benefit.
        - `created_at` string, date-time, required — Creation timestamp of the object.
        - `modified_at` string, date-time, nullable, required — Last modification timestamp of the object.
        - `type` 'meter_credit', required
        - `description` string, required — The description of the benefit.
        - `selectable` boolean, required — Whether the benefit is selectable when creating a product.
        - `deletable` boolean, required — Whether the benefit is deletable.
        - `is_deleted` boolean, required — Whether the benefit is deleted.
        - `organization_id` string, uuid4, required — The ID of the organization owning the benefit.
        - `metadata` MetadataOutputType, required
        - `visibility` 'draft' | 'private' | 'public', required
        - `properties` BenefitMeterCreditProperties, required — Properties for a benefit of type `meter_unit`.
          - `units` integer, required
          - `rollover` boolean, required
          - `meter_id` string, uuid4, required
        - `visibility_configurable` boolean, required
      - BenefitFeatureFlag — A benefit of type `feature_flag`. Use it to grant feature flags with key-value metadata that can be queried via the API and webhooks.
        - `id` string, uuid4, required — The ID of the benefit.
        - `created_at` string, date-time, required — Creation timestamp of the object.
        - `modified_at` string, date-time, nullable, required — Last modification timestamp of the object.
        - `type` 'feature_flag', required
        - `description` string, required — The description of the benefit.
        - `selectable` boolean, required — Whether the benefit is selectable when creating a product.
        - `deletable` boolean, required — Whether the benefit is deletable.
        - `is_deleted` boolean, required — Whether the benefit is deleted.
        - `organization_id` string, uuid4, required — The ID of the organization owning the benefit.
        - `metadata` MetadataOutputType, required
        - `visibility` 'draft' | 'private' | 'public', required
        - `properties` BenefitFeatureFlagProperties, required — Properties for a benefit of type `feature_flag`.
        - `visibility_configurable` boolean, required
      - BenefitSlackSharedChannel
        - `id` string, uuid4, required — The ID of the benefit.
        - `created_at` string, date-time, required — Creation timestamp of the object.
        - `modified_at` string, date-time, nullable, required — Last modification timestamp of the object.
        - `type` 'slack_shared_channel', required
        - `description` string, required — The description of the benefit.
        - `selectable` boolean, required — Whether the benefit is selectable when creating a product.
        - `deletable` boolean, required — Whether the benefit is deletable.
        - `is_deleted` boolean, required — Whether the benefit is deleted.
        - `organization_id` string, uuid4, required — The ID of the organization owning the benefit.
        - `metadata` MetadataOutputType, required
        - `visibility` 'draft' | 'private' | 'public', required
        - `properties` BenefitSlackSharedChannelProperties, required
          - `slack_integration_id` string, uuid4, required — Polar Slack integration linked to this benefit.
          - `channel_name_template` string, required — Template for the channel name. Supports placeholders: {customer_name}, {customer_email_local}, and {metadata.<key>} for any value stored in customer user metadata.
          - `private` boolean — Create the channel as private (recommended).
          - `welcome_message` string, nullable — Optional message posted to the channel right after creation.
          - `archive_on_revoke` boolean — Archive the channel when the benefit is revoked.
          - `team_invitees` string[] — Slack user IDs from the merchant workspace to invite to every channel created for this benefit.
        - `visibility_configurable` boolean, required
    - `properties` union, required
      - BenefitGrantDiscordProperties
        - `account_id` string, nullable
        - `guild_id` string
        - `role_id` string
        - `granted_account_id` string
      - BenefitGrantGitHubRepositoryProperties
        - `account_id` string, nullable
        - `repository_owner` string
        - `repository_name` string
        - `permission` 'pull' | 'triage' | 'push' | 'maintain' | 'admin'
        - `granted_account_id` string
      - BenefitGrantDownloadablesProperties
        - `files` string[]
      - BenefitGrantLicenseKeysProperties
        - `user_provided_key` string
        - `license_key_id` string
        - `display_key` string
      - BenefitGrantCustomProperties
      - BenefitGrantFeatureFlagProperties
      - BenefitGrantSlackSharedChannelProperties
        - `invited_email` string
        - `channel_id` string
        - `channel_name` string
        - `invite_id` string
        - `invite_url` string
        - `connected_team_id` string
  - `pagination` Pagination, required
    - `total_count` integer, required
    - `max_page` integer, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/polar/apis/polar-api.md) · [All operations](https://skmtc.net/polar/apis/polar-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/polar/polar-api/revisions/77e4ef94fcc3/schema)
