List Sales
gumroad.list_sales
ActionBusiness appsconnection required
Calls the Gumroad API with the connection's credentials.
List a page of successful sales, newest first, optionally narrowed to a date range, a product, a buyer, an order or a licence key.
Connection
- Required
- Yes — the node will not save without one
- Auth type
- Bearer token
- Providers
- Gumroad
- Secret shape
- the Gumroad access token, or {"access_token": "…"}
- Config it needs
- base_url
- Resolved by
- config.connection_id, else node.connection_id
Configuration
8 fields, none required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.
| Field | Type | Required | Default | Constraints | Example |
|---|---|---|---|---|---|
after Only return sales made on or after this date, as YYYY-MM-DD. | string | No | — | matches ^\d{4}-\d{2}-\d{2}$ | 2026-01-01 |
before Only return sales made on or before this date, as YYYY-MM-DD. | string | No | — | matches ^\d{4}-\d{2}-\d{2}$ | 2026-01-31 |
product_id Only return sales of this product, by its Gumroad product id. | string | No | — | — | A-mMS-2Vd0Nn0-hHnZmMQQ== |
email Only return sales made by this buyer's email address. | string | No | — | email format | — |
order_id Only return the sale with this numeric order id. | string | No | — | — | 524612724 |
name Only return sales whose buyer name matches this text. | string | No | — | — | — |
license_key Only return the sale that issued this licence key. | string | No | — | — | — |
page_key The next_page_key from a previous call, to fetch the following page. | string | No | — | — | — |
Example configuration
Every value below is the contract’s own example or default — nothing invented.
{
"after": "2026-01-01",
"before": "2026-01-31",
"order_id": "524612724",
"product_id": "A-mMS-2Vd0Nn0-hHnZmMQQ=="
}Output
One shape.
result
| Field | Type | Example |
|---|---|---|
sales The sales on this page, newest first. | array | — |
count How many sales this page carried. | number | — |
next_page_key Feed this back as page_key for the next page. | string | — |
next_page_url Gumroad's own URL for the next page. | string | — |
sales[].id The sale's Gumroad id. | string | — |
sales[].email The buyer's email address. | string | — |
sales[].purchase_email The address the purchase itself was made with. | string | — |
sales[].full_name The buyer's name, when they gave one. | string | — |
sales[].seller_id The seller's Gumroad id. | string | — |
sales[].created_at ISO-8601 time the sale was made. | string | — |
sales[].timestamp How long ago the sale was made, in words. | string | — |
sales[].product_id The product's Gumroad id. | string | — |
sales[].product_name The product's name. | string | — |
sales[].product_permalink The product's short permalink. | string | — |
sales[].price What the buyer paid, in the smallest currency unit. | number | — |
sales[].gumroad_fee Gumroad's fee on the sale, in the same unit. | number | — |
sales[].currency ISO code of the currency the sale is listed in. | string | — |
sales[].formatted_total_price The total as Gumroad displays it. | string | — |
sales[].amount_refundable_in_currency How much of the sale can still be refunded. | string | — |
sales[].order_id The numeric order id, which also filters the sales list. | number | — |
sales[].quantity How many units the sale covers. | number | — |
sales[].refunded True once the sale has been refunded in full. | boolean | — |
sales[].partially_refunded True when only part of the sale was refunded. | boolean | — |
sales[].disputed True while a chargeback is open on the sale. | boolean | — |
sales[].dispute_won True when a chargeback was reversed in the seller's favour. | boolean | — |
sales[].chargedback True when the sale was charged back and not reversed. | boolean | — |
sales[].license_key The licence key issued for the sale, when the product has one. | string | — |
sales[].is_recurring_billing True when the product is a membership. | boolean | — |
sales[].subscription_id The subscription the sale belongs to, for memberships. | string | — |
sales[].variants The variant names the buyer chose, by category. | object | — |
sales[].custom_fields The custom checkout fields the buyer filled in. | object | — |
sales[].country The buyer's country. | string | — |
sales[].referrer Where the buyer came from. | string | — |
{
"count": 0,
"next_page_key": "",
"next_page_url": "",
"sales": [
{
"amount_refundable_in_currency": "",
"chargedback": false,
"country": "",
"created_at": "",
"currency": "",
"custom_fields": {},
"dispute_won": false,
"disputed": false,
"email": "",
"formatted_total_price": "",
"full_name": "",
"gumroad_fee": 0,
"id": "",
"is_recurring_billing": false,
"license_key": "",
"order_id": 0,
"partially_refunded": false,
"price": 0,
"product_id": "",
"product_name": "",
"product_permalink": "",
"purchase_email": "",
"quantity": 0,
"referrer": "",
"refunded": false,
"seller_id": "",
"subscription_id": "",
"timestamp": "",
"variants": {}
}
]
}See List Sales run in a workflow.
In a technical demo we add the Gumroad connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.