Gumroad Creator Products API
A creator's catalog across their profile sections, paged with a cursor.
GET /v1/gumroad/creator/products1 credit Failed requests are free
About this endpoint
GET /v1/gumroad/creator/products takes creator and optionally sectionId, sort, page, limit or a cursor. Without sectionId it walks the creator's product sections in tab order. A sorted walk stays sorted and does not skip products. A product listed in several sections appears once per section. It answers { data, meta } with data.lookupStatus, data.creator, data.sectionId, data.sections, data.products, data.facets, data.page and data.sort.
data.sections lists each section's id, header and total, which tells you whether to ask for one section or walk them all. The order is Gumroad's for the requested sort (its default order when omitted), not the creator's saved page-layout order. The product rows are the same reference shape as search: id, permalink, name, type, url, thumbnailUrl, coverUrl, summary, creator, ratings, price, saleLabel, stock and subscription. data.page has from, size, hasMore, nextCursor, truncated, sectionId and sectionHeader. page.sectionId and page.sectionHeader name the section whose rows that page holds, including on a merged walk, so a client can dedupe by id when it wants each product once.
A creator can have one landing page instead of profile sections. That landing answer still returns found; its product rows have no ratings and can have a null id. The catalog stops at 10,000 products, so a request whose first row would pass the cap is refused before it is sent.
Gumroad Creator Products API FAQ
How do I get one section only?
Pass sectionId from data.sections[].id. Without it, the route walks the creator's product sections in tab order and names the section each page came from in data.page.sectionId and data.page.sectionHeader.
How does paging work?
Keep the filters and the same creator, then send page.nextCursor while page.hasMore is true. A cursor that was issued for different filters is refused before a request. You can also use page and limit, up to the 10,000-product depth cap. A product that sits in two sections appears once in each; page.sectionId tells the rows apart and its id lets you dedupe.
What are the facets?
data.facets has the same tags, file types and category attributes as search, so you can show counts beside a creator's own filter controls.
Why would a product have no rating or id?
A landing-layout creator's products can lack those fields. The contract allows a null id and null ratings on that branch, so guard for both.
How many credits does a creator-products page cost?
Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged: that field is the billing source of truth. Each paginated page is a separate billed request.
Other Gumroad endpoints
- ProductGET /v1/gumroad/product
- Product detailsGET /v1/gumroad/product/details
- ReviewsGET /v1/gumroad/product/reviews
- Related productsGET /v1/gumroad/product/related
- Call slotsGET /v1/gumroad/product/call-slots
- SearchGET /v1/gumroad/search
- SuggestionsGET /v1/gumroad/search/suggestions
- CategoriesGET /v1/gumroad/categories