getTransferOfferStatus polls the lifecycle of an offer created with createTransferOffer, keyed by the same tracking_id.
Setup
import { Canton } from '@fairmint/canton-node-sdk';
const canton = new Canton({
network: 'devnet',
provider: '5n',
partyId: 'OWN_PARTY_ID',
});
Import and receiver
import { Canton } from '@fairmint/canton-node-sdk';
Receiver: canton.validator.getTransferOfferStatus.
Minimal example
const status = await canton.validator.getTransferOfferStatus({
trackingId: 'offer-uuid...',
});
Parameters
trackingId(required, string) — Tracking identifier previously embeddedcreateTransferOfferpayloads correlating asynchronous workflows.
Returns
status(enum) —created,accepted,completed, orfailed.transaction_id(optional, string) — Ledger transaction id when the workflow commits.contract_id(optional, string) — Offer contract id when relevant.failure_kind(optional) — One ofexpired,rejected, orwithdrawn.withdrawn_reason(optional, string) — Extra detail when withdrawn server-side.
Errors and pitfalls
- Unknown tracking identifiers yield HTTP failures—confirm persistence referencing UUID-grade uniqueness client-side derivations.
Auth and party
Bearer token binding wallet personas referencing OAuth scopes minted previously provisioning Canton identities.
See also
Source
src/clients/validator-api/operations/v0/wallet/transfer-offers/get-status.ts on GitHub.