403 with
code: "FEATURE_LOCKED":
Limited drops
How the count stays exact:
- A buyer who opens the checkout holds one copy for 15 minutes (one per
browser, so reloading or changing the order never takes a second copy). The
hold is taken with a single atomic update that only succeeds while
sold + reserved < quantity, so two buyers can never get the last copy. - When the payment goes through, the hold becomes a sold copy. A declined card keeps the hold 5 more minutes (to try another card), then it goes back. Expired holds go back within a minute.
- No copy left: creating a checkout (and
POST /products/buy-freefor a free product) answers409:
reason is all_reserved while the last copies sit in other buyers’
checkouts (“check back in a few minutes”). A buyer who already paid is never
refused, even if their hold ran out.
GET /products/{id}/drop needs no API key — use it to show “35 of 100 left”
on your own site:
PDF stamping
Licensed to ada@example.com · Order 12CD56EF · Oct 16, 2026, plus the same line in the file’s metadata. A gift
is stamped with the recipient’s email. Other files are delivered untouched,
and a PDF that can’t be stamped (encrypted, damaged) is delivered as is.
Download limits
A browser retrying the same file within 30 seconds is not charged twice, and
resumed downloads never count. When a buyer runs out, their delivery page
shows how to contact you;
POST /orders/{id}/downloads/reset gives them
everything back and restarts the expiry window: