Cards
The card object
Each field available on a One Piece card is described below.
id <string>
The unique identifier for the card.
name <string>
The name of the card.
number <string>
The number of the card within its expansion.
printed_number <string>
The number of the card as printed on the card.
cost <string>
The cost to play the card.
power <string>
The power of the card.
attribute <string>
The attribute of the card (e.g., "Slash", "Strike", "Wisdom", "Special", "Ranged").
type <string>
The type of the card (e.g., "Leader", "Character", "Event", "Stage").
colors <array of strings>
The color(s) of the card (e.g., "Red", "Blue", "Green", "Black", "Purple", "Yellow").
subtypes <array of strings>
The subtypes or groups the card belongs to (e.g., "Straw Hat Crew").
printings <array of strings>
A list of expansion codes where this card has been printed.
tags <array of strings>
Any additional tags associated with the card.
rarity <string>
The rarity of the card (e.g., "Common", "Uncommon", "Rare", "Super Rare", "Secret Rare", "Leader").
rarity_code <string>
The code representing the card's rarity (e.g., "C", "U", "R", "SR", "SEC", "L").
rules <array of strings>
The rules or effects text of the card, broken down by paragraph or effect.
images <array of maps>
Contains URLs for the card's images.
- type
<string>: The type of image (e.g., "front"). - small
<string>: The URL of the small image. - medium
<string>: The URL of the medium image. - large
<string>: The URL of the large image.
expansion <map>
Details about the expansion this card belongs to.
- id
<string>: The unique identifier for the expansion. - name
<string>: The name of the expansion. - type
<string>: The type of expansion (e.g., "Booster Pack"). - code
<string>: The code for the expansion. - total
<integer>: Total number of cards in the expansion. - release_date
<string>: The release date of the expansion. - logo
<string>: URL for the expansion logo. - symbol
<string>: URL for the expansion symbol. - language
<string>: The language of the expansion. - language_code
<string>: The language code of the expansion.
language <string>
The language of the card.
language_code <string>
The language code of the card (e.g., "EN").
expansion_sort_order <integer>
The sort order of the card within its expansion.
variants <array of maps>
A list of collectible variants of the card.
- name
<string>: The name of the variant (e.g., "foil", "altArt", "mangaAltArt"). - printings
<array of strings>: Expansion codes for this variant. - images
<array of maps>: Images specific to this variant. - prices
<array of maps>: Price data for this variant.
Example JSON representation of a One Piece card:
{
"id": "OP13-118",
"name": "Monkey.D.Luffy",
"number": "118",
"printed_number": "OP13-118",
"cost": "6",
"power": "7000",
"attribute": "Strike",
"type": "Character",
"colors": [
"Green"
],
"subtypes": [
"Fish-Man Island",
"Supernovas",
"Straw Hat Crew"
],
"printings": [
"OP13"
],
"tags": [],
"rarity": "Secret Rare",
"rarity_code": "SEC",
"rules": [
"[Double Attack]",
"[On Play] If your Leader is multicolored, set up to 4 of your DON!! cards as active. Then, you cannot play Character cards with a base cost of 5 or more during this turn."
],
"images": [
{
"type": "front",
"small": "https://images.scrydex.com/onepiece/OP13-118/small",
"medium": "https://images.scrydex.com/onepiece/OP13-118/medium",
"large": "https://images.scrydex.com/onepiece/OP13-118/large"
}
],
"expansion": {
"id": "OP13",
"name": "Carrying On His Will",
"type": "Booster Pack",
"code": "OP13",
"total": 120,
"release_date": "2025/11/07",
"logo": "https://images.scrydex.com/onepiece/OP13-logo/logo",
"language": "English",
"language_code": "EN"
},
"language": "English",
"language_code": "EN",
"expansion_sort_order": 118,
"variants": [
{
"name": "redMangaAltArt",
"printings": [
"OP13"
],
"images": [
{
"type": "front",
"small": "https://images.scrydex.com/onepiece/OP13-118C/small",
"medium": "https://images.scrydex.com/onepiece/OP13-118C/medium",
"large": "https://images.scrydex.com/onepiece/OP13-118C/large"
}
],
"prices": [
{
"condition": "NM",
"is_perfect": false,
"is_signed": false,
"is_error": false,
"type": "raw",
"low": 20000.0,
"market": 8566.65,
"currency": "USD",
"trends": {
"days_1": {
"price_change": 0.0,
"percent_change": 0.0
},
"days_7": {
"price_change": 0.0,
"percent_change": 0.0
}
}
}
]
}
]
}
curl -X GET 'https://api.scrydex.com/onepiece/v1/cards/OP13-118' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'X-Team-ID: YOUR_TEAM_ID'
Get a card
This endpoint retrieves a specific One Piece card by its unique identifier.
URL
GET https://api.scrydex.com/onepiece/v1/cards/<id>
URL Parameters
- id
<string>
The unique identifier of the card to retrieve (e.g.,OP13-118).
Query Parameters
select
<string>
Comma-separated list of fields to include in the response.include
<string>
Related resources to include (e.g.,prices).
Example request to fetch a single card:
curl -X GET 'https://api.scrydex.com/onepiece/v1/cards/OP13-118' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'X-Team-ID: YOUR_TEAM_ID'
Search cards
Fetching and searching for multiple cards in the Scrydex API is simple yet powerful.
Use the various query parameters to customize your requests and retrieve the specific cards or data you need.
URL
There are two primary endpoints for fetching multiple cards: Searching across the whole card database, or scoped to a specific expansion.
Get all cards (paginated), unfiltered:
GET https://api.scrydex.com/onepiece/v1/cards
Get all cards (paginated), for a specific expansion:
GET https://api.scrydex.com/onepiece/v1/expansions/OP01/cards
Both of these endpoints support the same query parameters and underlying search logic.
Query Parameters
All query parameters are optional, but combining them allows for advanced and targeted searches.
Note that all query parameters can be used with snake case or camel case (so pageSize or page_size are both acceptable).
| Parameter | Description | Default Value |
|---|---|---|
| q | A search query for advanced filtering. Examples can be found below. | - |
| page | The page of data to access. | 1 |
| page_size | The maximum number of cards to return per page. The highest allowable value is 250. |
100 (max: 250) |
| select | A comma-delimited list of fields to return in the response (e.g., ?select=id,name). If omitted, all fields are returned. |
- |
| include | Used to include additional data, such as prices. These are fields you opt-in to, and aren't included in the response by default. | - |
Key Features of q (Search Queries)
Search queries use a Lucene-like syntax for filtering, making it easy to build powerful card searches.
Below are examples of supported query operations:
Keyword Matching
- Find cards that contain "luffy" in the name field:
name:luffy - Search for the phrase "Monkey.D.Luffy" in the name field:
name:"Monkey.D.Luffy" - Combine multiple conditions:
- Cards with "luffy" in the name AND "Character" in the
typefield:name:luffy type:Character - Cards with "luffy" in the name AND either "Red" or "Green" in
colors:name:luffy (colors:Red OR colors:Green)
- Cards with "luffy" in the name AND "Character" in the
Exclude Results
- Retrieve only cards with
type:Characterwhile excluding Blue cards:type:Character -colors:Blue
Wildcard Matching
- Cards where the name starts with "mon":
name:mon* - Cards where the name starts with "mon" and ends with "fy":
name:mon*fy
Exact Matching
- Match cards where the name is exactly "Monkey.D.Luffy" (no other characters appear in the name field):
!name:Monkey.D.Luffy
Range Searches
Fields containing numerical data (e.g., "cost", "power") support range searches:
- Cards with cost between 1 and 5:
cost:[1 TO 5] - Cards with power values up to 5000:
power:[* TO 5000] - Cards with power values greater than or equal to 8000:
power:[8000 TO *]
Pro Tip: Use square brackets
[ ]for inclusive ranges, and curly braces{ }for exclusive ranges.
Searching Nested Fields
Leverage the . separator to search nested fields:
- Filter by expansion ID:
expansion.id:OP01
Example: Fetch & Search Cards
Use the query parameters to retrieve and search cards. Below are examples using Scrydex API:
Ordering Data
The orderBy parameter allows for flexible sorting of results:
- Order cards by power:
?orderBy=power - Combine ascending (
ASC) and descending (DESC) order:?orderBy=name,-power
Field Selection
Optimize and reduce response payload sizes using the select parameter to return only the fields you care about:
- Example: Request only
idandnamefields for all cards:?select=id,name
Response Example
Here’s a sample response for a search query:
{
"status": "success",
"data": [
{
"id": "OP13-118",
"name": "Monkey.D.Luffy",
"power": "7000",
"colors": ["Green"],
"type": "Character"
}
],
"page": 1,
"pageSize": 1,
"totalCount": 1
}
Best Practices for Fetching & Searching
- Paginate Results: Use the
pageandpageSizeparameters to prevent overloading responses. - Limit Fields Returned: Use the
selectparameter to only get the data you need. - Avoid Overhead: Minimize wildcard or range queries for better performance.