Rising Tide Developers
API

Editions and Payments

Read minted editions, resolve one by contract and token id, follow a broadcast transaction, and read payment legs.

An edition (a ProductInstance) is a numbered, ownable copy of a smart product. Editions are created by the chain, not by this API: you broadcast a mint, and the edition appears once it confirms. There is no create endpoint here, and that is deliberate.

instanceId, instanceNumber and feePaid are chain-side BigInts and are serialized as strings over the wire.

Editions

MethodPathAuthPurpose
GET/api/product-instances/lookupapp keyResolve an edition by contract and token id.
PATCH/api/product-instances/{id}/burnapp key + userRecord a burn against an edition.
PATCH/api/product-instances/{id}/featuredapp key + userToggle an edition's featured flag on the owner's profile.
POST/api/product-instances/{id}/resaveapp key + userSave again: re-render the edition into its saved copy. Owner-only; 409 on a locked or burned edition.
POST/api/product-instances/{id}/save-as/planapp key + userSave As, leg one: the items to write (landing URL, bytes, tags), the key to sign with, the per-item cap, and the wallet's allowance. Owner-only; 409 without a saved copy.
POST/api/product-instances/{id}/save-as/receiptsapp key + userSave As, leg two: report uploaded data items. Each is verified against the saved copy before it is recorded; a 422 names the receipt and whether to retry. Returns the manifest once every image is written.
POST/api/product-instances/{id}/save-as/manifestapp key + userSave As, leg three: the uploaded manifest. Verified, recorded as the edition's permanent manifest, and the detach is enqueued.
POST/api/product-instances/notesapp key + userPost a private note at broadcast, keyed to the mint transaction id. The note is off-chain by design.
GET/api/product-imagespublicThe saved PNG render of a product or edition, for a surface drawing many at once. ids is required (at most 100, comma-separated) and entity is product_instance (default) or smart_product. Each id answers with the portrait render, else square, else landscape, with its role, url, contentType and bytes; prefer=og asks for the 1.91:1 social-card render instead, with no fallback to the others. An id with no render yet is absent from the answer, which is how you tell rendering from broken.

Transactions and payments

MethodPathAuthPurpose
POST/api/pending-transactionsuserRegister a broadcast transaction so the protocol reconciles it if its confirmation never lands.
GET/api/pending-transactions/{txId}publicStatus of one registered transaction.
GET/api/pending-transactions/listapp keyList registered transactions.
GET/api/transactionsapp keyRecorded chain transactions.
GET/api/transactions/{txId}app keyOne transaction by id.
GET/api/paymentsapp keyPayment legs, filterable by product, address and currency.