Price data permissions
The API is free for now. We give price data to projects that also help CardNexus in the long run, so tell us how yours does.
CardNexus data is open to every account with API access: the catalogue, listings and prices on CardNexus, and your own inventory, orders and account. The market values of other marketplaces are different. They are available through three data permissions that CardNexus grants one project at a time, after you describe how you will use the data.
The three permissions
| Permission | What it unlocks |
|---|---|
market-values |
The cardmarket and tcgplayer blocks on GET /v1/products/{productId}, POST /v1/products/search and GET /v1/products/{productId}/prices: each finish's market value, with its change over 24 hours, 7 days and 30 days. Also the marketPrice and priceVsMarketPercent of every listing on GET /v1/products/{productId}/listings and POST /v1/listings/search, the priceVsMarket filter of listings search and the priceVsMarket sort of both (refused with 403 DATA_PERMISSION_REQUIRED without it), the market filters (marketPrice, hasMarketPrice, priceVsMarket, priceCheckGroup, marketChange) and market sorts (marketPrice, marketChangeAmount, priceVsMarket) of POST /v1/inventory/search (refused the same way), and the market block and priceVsMarketPercent that its includeMarket adds. Without it the listing and includeMarket fields are null. |
price-history |
GET /v1/products/{productId}/prices/history: the daily market value of each product, finish and marketplace. History starts on 6 November 2024, and one request covers at most 365 days. |
bulk-market-values |
The cardmarket and tcgplayer blocks inside the daily prices feed file. |
Each permission is granted on its own. Holding one does not give you the others.
The cardmarket and tcgplayer blocks and the history points still carry low, mid and high. These fields are deprecated and removed after 30 November 2026: until then, holders of the permission keep receiving them. Read marketValue instead. See the changelog.
What you get without a permission
| Endpoint | Without the permission |
|---|---|
| Product, product search and current prices | The response has no cardmarket or tcgplayer block. Each finish carries only its cardnexus block, and a finish with no live CardNexus listing is left out. The request succeeds. |
| Price history | The request is refused with 403 and the error code DATA_PERMISSION_REQUIRED. |
| Prices feed | GET /v1/feeds/{gameId}/prices succeeds and returns a link to the CardNexus-only file: the same records, with the cardnexus block and without cardmarket and tcgplayer. Products with no live CardNexus listing have no record. |
Everything else is unchanged: catalogue fields, the cardnexus block, the availability of a product, listings, sales, and the market value on your own inventory lines.
A refused request
curl "https://public-api.cardnexus.com/v1/products/50212/prices/history?finish=Standard" \
-H "Authorization: Bearer cnk_live_4f2d8c91e5b34a7f9e6c2d1a8b5f7e3c"
{
"code": "DATA_PERMISSION_REQUIRED",
"status": 403,
"message": "This endpoint needs the price-history permission. Request it from Settings → API, or from your app's Permissions page.",
"data": {
"permission": "price-history"
}
}
data.permission names the permission the endpoint needs.
Permissions and scopes
Permissions are checked in addition to scopes. A key keeps every scope it has, * included, and a * key does not hold data permissions it was not granted.
Who holds a permission
| You call with | The permissions come from |
|---|---|
| A personal API key | Your CardNexus account. |
| An application's credentials | The application. |
An application acting for a connected user, with the CardNexus-Account header or a grant token |
The application. The permissions of the connected user are not used. |
A permission granted to your account does not extend to the applications you build, and the other way around. Request it for the one that makes the calls. See Integrations for how applications work.
Requesting a permission
- Personal account: open Settings → API, then the Price data tab, and choose Request access. One request can be open at a time, and you can withdraw it while it is open.
- Application: open the application's Permissions page. Price data is asked for in the same request as scopes.
- First API access request: tick the price data you need on the API access form.
CardNexus staff read every request and decide each permission separately. Nothing is granted automatically. The answer, and a note from staff when a permission is declined, appears on the Price data tab or on the application's Permissions page. You can apply again after a decline.
The application
Every request answers the same four sections:
- Your project. What you are building, who it is for (only you, your own users or customers, or anyone on a public website or app), a link to it or its expected launch month, and how many people use it each month.
- How you will use the data. For each permission you ask for: what you will do with it, the pages where people will see it, how many calls a day you expect, and whether prices or links from other marketplaces appear next to it.
- What CardNexus gets. How your project helps CardNexus, and the numbers behind it if you have them: visitors you send, sellers whose stock you manage, orders you place.
- Your commitments. All four are required.
- You show the CardNexus logo next to every price other people see, with a link to that product on CardNexus. Link formats shows how to build that link. Download the logos: cardnexus-logos.zip.
- You do not resell, share or publish the raw data, the history or the price file.
- You apply again before using the data for anything else.
- CardNexus may check the pages you listed.
What we look for
We approve projects that help CardNexus as well as use its data. The strongest requests:
- Send people to CardNexus, with prices that link to the card on CardNexus.
- Show the CardNexus logo next to the prices, with a link to each product.
- Send traffic through affiliate links:
af.cardnexus.link/{mpId}/cn/{productId}needs only the product id, and pays you for the sign-ups and orders it brings. - Bring sellers who list on CardNexus, or buyers who order on it.
- Keep the data inside the product: no redistribution of the raw values, the history or the file.
We also look at what your account or application does on CardNexus today, including its orders as buyer or seller and its API usage.
Changes to your access
Staff can remove a permission from an account or an application at any time. From then on, the endpoints behave as in What you get without a permission. The API key of an account that is deleted or banned stops working.