Skip to main content
Every lemonsqueezy.api.* operation is listed below with parameter shapes and return types from the plugin Zod schemas.
New to Corsair? See API access, authentication, and error handling.

Affiliates

get

affiliates.get Read one affiliate, with their status and earnings Risk: read
Input Output

list

affiliates.list List affiliates, filtered by store or email Risk: read
Input Output

Checkouts

create

checkouts.create Create a checkout link for a variant and return its URL, with optional prefilled data, custom pricing and appearance Risk: write
Input The answer’s data.attributes.url is the page to send a buyer to. customPrice is only valid for a pay-what-you-want product. Output

get

checkouts.get Read one checkout, with its options and prefilled data Risk: read
Input Output

list

checkouts.list List checkouts, filtered by store or variant Risk: read
Input Output

Customers

create

customers.create Create a customer record. This does not send an invitation to the customer Risk: write
Input Creates the customer record only. Lemon Squeezy does not send the customer an invitation. Output

get

customers.get Read one customer, with their status, country and revenue Risk: read
Input Output

list

customers.list List customers, filtered by store or email Risk: read
Input Output

update

customers.update Change a customer’s name or email address Risk: write
Input Give name, email, or both. Output

Discount Redemptions

get

discountRedemptions.get Read one discount redemption, with the amount it took off Risk: read
Input Output

list

discountRedemptions.list List discount redemptions, filtered by discount or order Risk: read
Input Output

Discounts

create

discounts.create Create a discount code, either a percentage or a fixed amount in cents, lasting once, a number of months or forever Risk: write
Input amount is a percentage when amountType is percent and cents when it is fixed. durationInMonths is only read for a repeating discount, and maxRedemptions only with isLimitedRedemptions. Output

delete

discounts.delete Delete a discount code. A deleted code cannot be restored Risk: destructive · Irreversible
Input Deleting a code cannot be undone. Discounts already applied to an order keep their effect. Output

get

discounts.get Read one discount code, with its amount, duration and status Risk: read
Input Output

list

discounts.list List discount codes, optionally for one store Risk: read
Input Output

Files

get

files.get Read one file and its download URL Risk: read
Input Output

list

files.list List downloadable files, optionally for one variant Risk: read
Input Output

License Key Instances

get

licenseKeyInstances.get Read one license key instance, with its identifier and name Risk: read
Input Output

list

licenseKeyInstances.list List the instances a license key has been activated on Risk: read
Input Output

License Keys

get

licenseKeys.get Read one license key, including the full key string Risk: read
Input Returns the full license key string. Prefer licenseKeys.list when only metadata is needed; it also returns the full key, so treat either as sensitive. Output

list

licenseKeys.list List license keys, filtered by store, order, product or status Risk: read
Input Output

update

licenseKeys.update Change a license key’s activation limit, expiry or disabled state Risk: write
Input Give activationLimit, expiresAt or disabled. Output

Order Items

get

orderItems.get Read one order line item, with its price and quantity Risk: read
Input Output

list

orderItems.list List order line items, filtered by order, product or variant Risk: read
Input Output

Orders

generateInvoice

orders.generateInvoice Generate the PDF invoice for an order and return its URL. No money moves Risk: write
Input Builds the invoice PDF and returns a download link in meta.urls.download_invoice. The billing details are sent as query parameters; state is required for a US or Canadian address. No money moves. Output

get

orders.get Read one order, with its totals, tax and refund state Risk: read
Input Output

list

orders.list List orders, filtered by store, email or order number Risk: read
Input Output

refund

orders.refund Refund an order in full, or partially by amount in cents. A refund cannot be undone through the API Risk: destructive · Irreversible
Input A partial refund cannot be undone through the API. The amount is in cents and its currency is the store currency; omit it to refund the order in full. Output

Prices

get

prices.get Read one price, with its scheme, tiers and renewal interval Risk: read
Input Output

list

prices.list List prices, optionally for one variant Risk: read
Input Output

Products

get

products.get Read one product, with its price range and buy-now URL Risk: read
Input Output

list

products.list List products, optionally for one store Risk: read
Input A page holds at most 100 rows. meta.page.lastPage says how many pages there are. Output

Stores

get

stores.get Read one store, with its plan, currency and sales totals Risk: read
Input Output

list

stores.list List the stores the key can reach, with their plan and sales totals Risk: read
Input Output

Subscription Invoices

generate

subscriptionInvoices.generate Generate the PDF invoice for a subscription invoice and return its URL. No money moves Risk: write
Input Output

get

subscriptionInvoices.get Read one subscription invoice, with its totals and refund state Risk: read
Input Output

list

subscriptionInvoices.list List subscription invoices, filtered by store, status, refund state or subscription Risk: read
Input Output

refund

subscriptionInvoices.refund Refund a subscription invoice in full, or partially by amount in cents. A refund cannot be undone through the API Risk: destructive · Irreversible
Input The same rules as an order refund: the amount is optional and in cents, and a partial refund cannot be undone through the API. Output

Subscription Items

get

subscriptionItems.get Read one subscription item, with its price, quantity and usage flag Risk: read
Input Output

list

subscriptionItems.list List a subscription’s items, filtered by subscription or price Risk: read
Input Output

update

subscriptionItems.update Change a subscription item’s quantity Risk: write
Input Output

usage

subscriptionItems.usage Read a usage-based item’s metered usage for the current period Risk: read
Input Output

Subscriptions

cancel

subscriptions.cancel Cancel an active subscription. It stays readable but stops renewing Risk: destructive
Input Cancels an active subscription. It stays readable and keeps its history, but stops renewing. Output

get

subscriptions.get Read one subscription, with its status, renewal date and pause state Risk: read
Input Output

list

subscriptions.list List subscriptions, filtered by store, order, product, variant, email or status Risk: read
Input Output

update

subscriptions.update Move a subscription to another variant, pause or resume it, or change its billing date. A plan change prorates the next charge Risk: write
Input A variant change prorates the next charge unless invoiceImmediately or disableProrations says otherwise. pause and unpause are opposite actions, and at least one change is required.
Output

Usage Records

create

usageRecords.create Record metered usage against a subscription item: add to the period total, or replace it Risk: write
Input The default increment adds quantity to the period total and suits a “sum of usage” price. action: "set" makes quantity the total only on a “most recent usage” price; on a sum price it is added like an increment. Only a usage-based subscription item accepts records. Output

get

usageRecords.get Read one usage record, with its quantity and action Risk: read
Input Output

list

usageRecords.list List metered usage records, optionally for one subscription item Risk: read
Input Output

Users

get

users.get Read the account that owns the API key Risk: read
Input: empty object Output

Variants

get

variants.get Read one variant, with its license settings and checkout links Risk: read
Input Output

list

variants.list List variants, optionally for one product or status Risk: read
Input Output

Webhooks

create

webhooks.create Register a webhook URL with its signing secret and the events to send Risk: write
Input secret is required, and Lemon Squeezy signs each delivery with it in the X-Signature header. The secret is never returned in a response. Output

delete

webhooks.delete Delete a webhook. Deliveries to it stop immediately Risk: destructive · Irreversible
Input Deliveries to the URL stop immediately, and the webhook cannot be restored. Output

get

webhooks.get Read one webhook, with its URL, events and last delivery time Risk: read
Input Output

list

webhooks.list List webhooks, optionally for one store Risk: read
Input Output

update

webhooks.update Change a webhook’s URL, event list or signing secret Risk: write
Input Give url, events or secret. A new events list replaces the old one. Output