Core API
- Checkout
- Checkout Links
- Custom Checkout Fields
- Customers
- Subscriptions
- Orders
- Discounts
- Refunds
- Products
- Events
- Meters
- Benefits
- Customer Meters
- License Keys
- Files
- Organizations
- Metrics
Customer Portal API
- GETGet Customer
- GETGet Organization
- Sessions
- Subscriptions
- Orders
- License Keys
- File Downloads
Webhook Events
- Customer Events
- Billing Events
- Organization Events
OAuth 2.0 API
- Connect
- Clients
List Customer Meters
List customer meters.
Scopes: customer_meters:read
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.CustomerMeters.List(ctx, operations.CustomerMetersListRequest{
OrganizationID: polargo.Pointer(operations.CreateCustomerMetersListQueryParamOrganizationIDFilterArrayOfStr(
[]string{
"1dbfc517-0bbf-4301-9ba8-555ca42b9737",
},
)),
})
if err != nil {
log.Fatal(err)
}
if res.ListResourceCustomerMeter != nil {
for {
// handle items
res, err = res.Next()
if err != nil {
// handle error
}
if res == nil {
break
}
}
}
}
{
"items": [
{
"id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"modified_at": "2023-11-07T05:31:56Z",
"customer_id": "992fae2a-2a17-4b7a-8d9e-e287cf90131b",
"meter_id": "d498a884-e2cd-4d3e-8002-f536468a8b22",
"consumed_units": 25,
"credited_units": 100,
"balance": 75,
"customer": {
"id": "992fae2a-2a17-4b7a-8d9e-e287cf90131b",
"created_at": "2023-11-07T05:31:56Z",
"modified_at": "2023-11-07T05:31:56Z",
"metadata": {},
"external_id": "usr_1337",
"email": "customer@example.com",
"email_verified": true,
"name": "John Doe",
"billing_address": {
"line1": "<string>",
"line2": "<string>",
"postal_code": "<string>",
"city": "<string>",
"state": "<string>",
"country": "US"
},
"tax_id": [
"911144442",
"us_ein"
],
"organization_id": "1dbfc517-0bbf-4301-9ba8-555ca42b9737",
"deleted_at": "2023-11-07T05:31:56Z",
"avatar_url": "https://www.gravatar.com/avatar/xxx?d=blank"
},
"meter": {
"metadata": {},
"created_at": "2023-11-07T05:31:56Z",
"modified_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"name": "<string>",
"filter": {
"conjunction": "and",
"clauses": [
{
"property": "<string>",
"operator": "eq",
"value": "<string>"
}
]
},
"aggregation": {
"func": "count"
},
"organization_id": "<string>"
}
}
],
"pagination": {
"total_count": 123,
"max_page": 123
}
}
Authorizations
You can generate an Organization Access Token from your organization's settings.
Query Parameters
Filter by organization ID.
"1dbfc517-0bbf-4301-9ba8-555ca42b9737"
Filter by customer ID.
Filter by external customer ID.
Filter by meter ID.
Page number, defaults to 1.
x > 0
Size of a page, defaults to 10. Maximum is 100.
x > 0
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.
created_at
, -created_at
, modified_at
, -modified_at
, customer_id
, -customer_id
, customer_name
, -customer_name
, meter_id
, -meter_id
, meter_name
, -meter_name
, consumed_units
, -consumed_units
, credited_units
, -credited_units
, balance
, -balance
Response
An active customer meter, with current consumed and credited units.
The ID of the object.
Creation timestamp of the object.
Last modification timestamp of the object.
The ID of the customer.
"992fae2a-2a17-4b7a-8d9e-e287cf90131b"
The ID of the meter.
"d498a884-e2cd-4d3e-8002-f536468a8b22"
The number of consumed units.
25
The number of credited units.
100
The balance of the meter, i.e. the difference between credited and consumed units. Never goes negative.
75
The customer associated with this meter.
The ID of the customer.
"992fae2a-2a17-4b7a-8d9e-e287cf90131b"
Creation timestamp of the object.
Last modification timestamp of the object.
The ID of the customer in your system. This must be unique within the organization. Once set, it can't be updated.
"usr_1337"
The email address of the customer. This must be unique within the organization.
"customer@example.com"
Whether the customer email address is verified. The address is automatically verified when the customer accesses the customer portal using their email address.
true
The name of the customer.
"John Doe"
"US"
["911144442", "us_ein"]
The ID of the organization owning the customer.
"1dbfc517-0bbf-4301-9ba8-555ca42b9737"
Timestamp for when the customer was soft deleted.
"https://www.gravatar.com/avatar/xxx?d=blank"
The meter associated with this customer.
Creation timestamp of the object.
Last modification timestamp of the object.
The ID of the object.
The name of the meter. Will be shown on customer's invoices and usage.
The filter to apply on events that'll be used to calculate the meter.
and
, or
The aggregation to apply on the filtered events to calculate the meter.
"count"
The ID of the organization owning the meter.
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.CustomerMeters.List(ctx, operations.CustomerMetersListRequest{
OrganizationID: polargo.Pointer(operations.CreateCustomerMetersListQueryParamOrganizationIDFilterArrayOfStr(
[]string{
"1dbfc517-0bbf-4301-9ba8-555ca42b9737",
},
)),
})
if err != nil {
log.Fatal(err)
}
if res.ListResourceCustomerMeter != nil {
for {
// handle items
res, err = res.Next()
if err != nil {
// handle error
}
if res == nil {
break
}
}
}
}
{
"items": [
{
"id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"modified_at": "2023-11-07T05:31:56Z",
"customer_id": "992fae2a-2a17-4b7a-8d9e-e287cf90131b",
"meter_id": "d498a884-e2cd-4d3e-8002-f536468a8b22",
"consumed_units": 25,
"credited_units": 100,
"balance": 75,
"customer": {
"id": "992fae2a-2a17-4b7a-8d9e-e287cf90131b",
"created_at": "2023-11-07T05:31:56Z",
"modified_at": "2023-11-07T05:31:56Z",
"metadata": {},
"external_id": "usr_1337",
"email": "customer@example.com",
"email_verified": true,
"name": "John Doe",
"billing_address": {
"line1": "<string>",
"line2": "<string>",
"postal_code": "<string>",
"city": "<string>",
"state": "<string>",
"country": "US"
},
"tax_id": [
"911144442",
"us_ein"
],
"organization_id": "1dbfc517-0bbf-4301-9ba8-555ca42b9737",
"deleted_at": "2023-11-07T05:31:56Z",
"avatar_url": "https://www.gravatar.com/avatar/xxx?d=blank"
},
"meter": {
"metadata": {},
"created_at": "2023-11-07T05:31:56Z",
"modified_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"name": "<string>",
"filter": {
"conjunction": "and",
"clauses": [
{
"property": "<string>",
"operator": "eq",
"value": "<string>"
}
]
},
"aggregation": {
"func": "count"
},
"organization_id": "<string>"
}
}
],
"pagination": {
"total_count": 123,
"max_page": 123
}
}