Skip to main content
POST
/
v1
/
customer-seats
Go (SDK)
package main

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

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

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

    res, err := s.CustomerSeats.AssignSeat(ctx, components.SeatAssign{})
    if err != nil {
        log.Fatal(err)
    }
    if res.CustomerSeat != nil {
        // handle response
    }
}
{
  "created_at": "2023-11-07T05:31:56Z",
  "modified_at": "2023-11-07T05:31:56Z",
  "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "subscription_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "order_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "status": "pending",
  "customer_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "customer_email": "<string>",
  "invitation_token_expires_at": "2023-11-07T05:31:56Z",
  "claimed_at": "2023-11-07T05:31:56Z",
  "revoked_at": "2023-11-07T05:31:56Z",
  "seat_metadata": {}
}

Authorizations

Authorization
string
header
required

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

Body

application/json
subscription_id
string<uuid> | null

Subscription ID. Required if checkout_id and order_id are not provided.

checkout_id
string<uuid> | null

Checkout ID. Used to look up subscription or order from the checkout page.

order_id
string<uuid> | null

Order ID for one-time purchases. Required if subscription_id and checkout_id are not provided.

email
string<email> | null

Email of the customer to assign the seat to

external_customer_id
string | null

External customer ID for the seat assignment

customer_id
string<uuid> | null

Customer ID for the seat assignment

metadata
object | null

Additional metadata for the seat (max 10 keys, 1KB total)

immediate_claim
boolean
default:false

If true, the seat will be immediately claimed without sending an invitation email. API-only feature.

Response

Successful Response

created_at
string<date-time>
required

Creation timestamp of the object.

modified_at
string<date-time> | null
required

Last modification timestamp of the object.

id
string<uuid>
required

The seat ID

status
enum<string>
required

Status of the seat

Available options:
pending,
claimed,
revoked
subscription_id
string<uuid> | null

The subscription ID (for recurring seats)

order_id
string<uuid> | null

The order ID (for one-time purchase seats)

customer_id
string<uuid> | null

The assigned customer ID

customer_email
string | null

The assigned customer email

invitation_token_expires_at
string<date-time> | null

When the invitation token expires

claimed_at
string<date-time> | null

When the seat was claimed

revoked_at
string<date-time> | null

When the seat was revoked

seat_metadata
object | null

Additional metadata for the seat