Issue a license

Grants a subscription straight to a named user and charges one unit of quota. Use this when you already know who the customer is on StandMap.

POST /v1/billing/partner/licenses API key

Request

Body
{
  "planSlug": "standoff_radar_high_30days",
  "login": "customer-login",
  "idempotencyKey": "b8f1c2a4-5d6e-4f70-8a91-2c3d4e5f6a7b"
}
Body fields
planSlug string required

Which product to issue. Use a productSlug from your balances response.

login string required

The recipient's exact StandMap login. They must already have an account.

idempotencyKey string required

8 to 128 characters, chosen by you. A UUID works well. Reuse it when retrying this same issue.

The recipient needs an account first. You identify them by their existing StandMap login. There is no way to create an account on someone's behalf — if they do not have one, have them register before you issue.

Response

200 OK
{
  "orderPublicId": "3f2a91c4-7b5e-4d18-9c60-1a2b3c4d5e6f",
  "planSlug": "standoff_radar_high_30days",
  "userPublicId": "9c0d1e2f-3a4b-5c6d-7e8f-90a1b2c3d4e5",
  "login": "customer-login",
  "remainingBalance": 411,
  "createdUtc": 1754380800
}
Response fields
orderPublicId string (uuid)

Identifies this issue. Worth storing against your own record of the sale.

planSlug string

The resolved product slug.

userPublicId string (uuid)

The recipient's stable identifier. Unlike a login, this never changes.

login string | null

The login as it stood at the moment of issue.

remainingBalance integer

Your quota for this product after the charge.

createdUtc integer

Unix epoch seconds, UTC.

A 200 means the charge is committed and the grant is on its way. The subscription itself is activated moments later, so allow a short delay before the user sees it.

Errors

Reseller.TargetUserNotFound 404

No account with that login. Check spelling before retrying — a retry will not help on its own.

Reseller.TargetUserBanned 409

The recipient is banned. No quota was consumed.

Reseller.InsufficientQuota 409

Your balance for this product is zero. Nothing was consumed.

Billing.ProductNotFound 404

Unknown planSlug. Read the valid list from your balances.

Billing.ProductNotActive 409

The product exists but is no longer being sold.

The full catalogue, including the shape of an error response, is on the Errors page.