Initialize the EOS SDK and obtain a valid EOS_HEcom handle from the platform handle.
Call EOS_Ecom_QueryOwnership with the local user's account ID and an array of catalog item IDs to check ownership status; wait for the callback.
Call EOS_Ecom_QueryEntitlements with the account ID to retrieve the list of entitlements the user has been granted; wait for the callback.
Use EOS_Ecom_GetEntitlementsCount and EOS_Ecom_CopyEntitlementByIndex to iterate and inspect individual entitlement records.
To consume (redeem) entitlements so they cannot be reused, call EOS_Ecom_RedeemEntitlements with an array of entitlement IDs; wait for the callback confirming redemption.
Handle error codes in each callback; in particular check for EOS_Ecom_EntitlementStale and re-query if needed before redeeming.
Known gotchas
There is no EOS_Ecom_ConsumeEntitlement function — the correct call for marking entitlements as used is EOS_Ecom_RedeemEntitlements (plural), which takes an array of IDs.
EOS_Ecom_QueryOwnership and EOS_Ecom_QueryEntitlements serve different purposes: QueryOwnership checks whether the user owns catalog items, while QueryEntitlements retrieves the actual granted entitlement records needed for redemption.
Entitlement data cached locally can become stale; always re-query before redeeming in a new session to avoid operating on outdated records.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp