Check an Adobe Stock user's licensing quota with Member/Profile before requesting a license for a specific asset
domain: stock.adobe.io · 5 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗
Steps
Obtain an OAuth Bearer access token for the user via Adobe IMS, since all licensing-related calls require the Authorization header
Call GET https://stock.adobe.io/Rest/Libraries/1/Member/Profile?content_id={id}&license=Standard with x-Product, x-api-key, and Authorization headers
Inspect purchase_options.state in the response: 'possible' means the user has quota, 'overage' means they can be billed for an additional purchase, and 'not_possible' means they must be redirected to purchase_options.url on stock.adobe.com
Display purchase_options.message to the user as-is, since Adobe Stock returns it pre-localized based on the locale parameter or the user's account locale
Only proceed to Content/License once the profile check confirms quota or an acceptable overage state
Known gotchas
Skipping the Member/Profile check and calling Content/License directly on a no-quota account still works, but the resulting purchase_options.state='not_possible' response forces a manual redirect flow that a pre-check avoids
possible_licenses (Alternative Licenses) only appears for accounts specifically configured for it — its absence doesn't mean the request failed
Enterprise accounts distinguish has_credit_model vs has_agency_model, which changes how quota is interpreted and cannot be assumed to work like an individual plan
Give your agent this knowledge — and 15,500+ more routes
One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp
Need this verified for your stack — or a route we don't have yet?