Core API
- Checkout
- Checkout Links
- Custom Checkout Fields
- Customers
- Subscriptions
- Orders
- Discounts
- Refunds
- Products
- Benefits
- License Keys
- Files
- Organizations
- Metrics
Customer Portal API
- GETGet Customer
- GETGet Organization
- Sessions
- Subscriptions
- Orders
- License Keys
- File Downloads
Webhook Events
- Billing Events
- Organization Events
OAuth 2.0 API
- Connect
- Clients
List Benefit Grants
List the individual grants for a benefit.
It’s especially useful to check if a user has been granted a benefit.
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.Benefits.Grants(ctx, operations.BenefitsGrantsRequest{
ID: "<value>",
})
if err != nil {
log.Fatal(err)
}
if res.ListResourceBenefitGrant != 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>",
"granted_at": "2023-11-07T05:31:56Z",
"is_granted": true,
"revoked_at": "2023-11-07T05:31:56Z",
"is_revoked": true,
"subscription_id": "<string>",
"order_id": "<string>",
"customer_id": "<string>",
"user_id": "<string>",
"benefit_id": "<string>",
"customer": {
"created_at": "2023-11-07T05:31:56Z",
"modified_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"metadata": {},
"email": "<string>",
"email_verified": true,
"name": "<string>",
"billing_address": {
"line1": "<string>",
"line2": "<string>",
"postal_code": "<string>",
"city": "<string>",
"state": "<string>",
"country": "<string>"
},
"tax_id": [
"<any>"
],
"organization_id": "<string>",
"avatar_url": "<string>"
},
"properties": {
"account_id": "<string>",
"guild_id": "<string>",
"role_id": "<string>"
}
}
],
"pagination": {
"total_count": 123,
"max_page": 123
}
}
Authorizations
Bearer authentication header of the form Bearer <token>
, where <token>
is your auth token.
Path Parameters
The benefit ID.
Query Parameters
Filter by granted status. If true
, only granted benefits will be returned. If false
, only revoked benefits will be returned.
Filter by customer.
Page number, defaults to 1.
x > 0
Size of a page, defaults to 10. Maximum is 100.
x > 0
Response
Creation timestamp of the object.
Last modification timestamp of the object.
The ID of the grant.
Whether the benefit is granted.
Whether the benefit is revoked.
The ID of the subscription that granted this benefit.
The ID of the order that granted this benefit.
The ID of the customer concerned by this grant.
The ID of the benefit concerned by this grant.
A customer in an organization.
Creation timestamp of the object.
Last modification timestamp of the object.
The ID of the object.
The timestamp when the benefit was granted. If None
, the benefit is not granted.
The timestamp when the benefit was revoked. If None
, the benefit is not revoked.
Was this page helpful?
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.Benefits.Grants(ctx, operations.BenefitsGrantsRequest{
ID: "<value>",
})
if err != nil {
log.Fatal(err)
}
if res.ListResourceBenefitGrant != 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>",
"granted_at": "2023-11-07T05:31:56Z",
"is_granted": true,
"revoked_at": "2023-11-07T05:31:56Z",
"is_revoked": true,
"subscription_id": "<string>",
"order_id": "<string>",
"customer_id": "<string>",
"user_id": "<string>",
"benefit_id": "<string>",
"customer": {
"created_at": "2023-11-07T05:31:56Z",
"modified_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"metadata": {},
"email": "<string>",
"email_verified": true,
"name": "<string>",
"billing_address": {
"line1": "<string>",
"line2": "<string>",
"postal_code": "<string>",
"city": "<string>",
"state": "<string>",
"country": "<string>"
},
"tax_id": [
"<any>"
],
"organization_id": "<string>",
"avatar_url": "<string>"
},
"properties": {
"account_id": "<string>",
"guild_id": "<string>",
"role_id": "<string>"
}
}
],
"pagination": {
"total_count": 123,
"max_page": 123
}
}