Gifts have distinct lifecycle states
Available, sold out with resale, received, upgradeable and transferable are different conditions. Pagination and attribute filtering have separate caching semantics. Read current eligibility and limits from the object.
Auction state needs synchronization
An auction combines gift information, auction-wide state and the user’s state. Some queries establish time-limited update subscriptions; an unchanged version does not make the subscription permanent. Display bidding, winning and returned funds separately.
Usernames and ownership are different
Collectible usernames can be associated with accounts, bots, groups or channels, with activation and ordering states. A display name is not a username, and activation is not a sale listing. Collectible phone numbers are a separate capability, not an interface for buying arbitrary mobile numbers.
Implementation recommendations
Show the asset, fee and recipient before a write operation, then reconcile its result. Display the actual domain before an external-platform handoff. Describe current ownership and price evidence without promises of appreciation or guaranteed proceeds.