Sealed Products
The sealed product object
Each field available on a One Piece sealed product is described below.
id <string>
The unique identifier for the sealed product.
name <string>
The name of the sealed product.
type <string>
The type of sealed product (e.g., "Booster Pack", "Booster Box").
images <array of maps>
Contains URLs for the product's images in various sizes.
- 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 <object>
Details about the expansion this sealed product belongs to.
- id
<string>: The unique identifier for the expansion. - name
<string>: The name of the expansion. - type
<string>: The type of expansion. - code
<string>: The code for the expansion. - total
<integer>: Total number of cards in the expansion. - total_unique_variants
<integer>: Total number of unique variants in the expansion. - release_date
<string>: The release date of the expansion (YYYY/MM/DD). - logo
<string>: URL for the expansion logo. - language
<string>: The language of the expansion. - language_code
<string>: The language code of the expansion.
language <string>
The language of the sealed product.
language_code <string>
The language code of the sealed product (e.g., "EN").
expansion_sort_order <integer>
The position of the sealed product in the expansion, used for sorting.
variants <array of maps>
A list of collectible variants of the sealed product.
- name
<string>: The name of the variant (e.g., "normal"). - prices
<array of maps>: Price data for the variant.
Example JSON representation of a One Piece sealed product:
{
"id": "OP01-s1",
"name": "Romance Dawn - Booster Pack",
"type": "Booster Pack",
"images": [
{
"type": "front",
"small": "https://images.scrydex.com/onepiece/OP01-s1/small",
"medium": "https://images.scrydex.com/onepiece/OP01-s1/medium",
"large": "https://images.scrydex.com/onepiece/OP01-s1/large"
}
],
"expansion": {
"id": "OP01",
"name": "Romance Dawn",
"type": "Booster Pack",
"code": "OP01",
"total": 121,
"total_unique_variants": 158,
"release_date": "2022/12/02",
"logo": "https://images.scrydex.com/onepiece/OP01-logo/logo",
"language": "English",
"language_code": "EN"
},
"language": "English",
"language_code": "EN",
"expansion_sort_order": 1,
"variants": [
{
"name": "normal",
"prices": [
{
"condition": "U",
"is_perfect": false,
"is_signed": false,
"is_error": false,
"type": "raw",
"low": 73.69,
"market": 64.82,
"currency": "USD",
"trends": {
"days_1": {
"price_change": 1.03,
"percent_change": 1.61
},
"days_7": {
"price_change": 4.15,
"percent_change": 6.84
}
}
}
]
}
]
}
curl -X GET 'https://api.scrydex.com/onepiece/v1/sealed/OP01-s1' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'X-Team-ID: YOUR_TEAM_ID'
Get a sealed product
This endpoint retrieves a specific One Piece sealed product by its unique identifier.
URL
GET https://api.scrydex.com/onepiece/v1/sealed/<id>
URL Parameters
- id
<string>
The unique identifier of the sealed product to retrieve (e.g.,OP01-s1).
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 sealed product:
curl -X GET 'https://api.scrydex.com/onepiece/v1/sealed/OP01-s1' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'X-Team-ID: YOUR_TEAM_ID'
Search sealed products
Fetching and searching for multiple sealed products in the Scrydex API is simple yet powerful.
Use the various query parameters to customize your requests and retrieve the specific sealed products or data you need.
URL
There are two primary endpoints for fetching multiple sealed products: Searching across the whole database, or scoped to a specific expansion.
Get all sealed products (paginated), unfiltered:
GET https://api.scrydex.com/onepiece/v1/sealed
Get all sealed products (paginated), for a specific expansion:
GET https://api.scrydex.com/onepiece/v1/expansions/OP01/sealed
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 sealed products to return per page. The highest allowable value is 100. |
100 (max: 100) |
| 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 sealed product searches.
Below are examples of supported query operations:
Keyword Matching
- Find sealed products that contain "romance" in the name field:
name:romance - Search for the phrase "booster pack" in the name field:
name:"booster pack" - Combine multiple conditions:
- Sealed products with "romance" in the name AND "Booster Pack" in the
typefield:name:romance type:"Booster Pack"
- Sealed products with "romance" in the name AND "Booster Pack" in the
Wildcard Matching
- Products where the name starts with "rom":
name:rom*
Exact Matching
- Match sealed products where the name is exactly "Romance Dawn - Booster Pack":
!name:"Romance Dawn - Booster Pack"
Searching Nested Fields
Leverage the . separator to search nested fields:
- Filter by expansion ID:
expansion.id:OP01
Example: Fetch & Search Sealed Products
Use the query parameters to retrieve and search sealed products. Below are examples using Scrydex API:
Ordering Data
The orderBy parameter allows for flexible sorting of results:
- Order sealed products by name:
?orderBy=name - Combine ascending (
ASC) and descending (DESC) order:?orderBy=name,-expansion_sort_order
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 sealed products:?select=id,name
Response Example
Here’s a sample response for a search query:
{
"status": "success",
"data": [
{
"id": "OP01-s1",
"name": "Romance Dawn - Booster Pack",
"type": "Booster Pack",
"images": [
{
"type": "front",
"small": "https://images.scrydex.com/onepiece/OP01-s1/small",
"medium": "https://images.scrydex.com/onepiece/OP01-s1/medium",
"large": "https://images.scrydex.com/onepiece/OP01-s1/large"
}
],
"expansion": {
"id": "OP01",
"name": "Romance Dawn",
"type": "Booster Pack",
"code": "OP01",
"total": 121,
"total_unique_variants": 158,
"release_date": "2022/12/02",
"logo": "https://images.scrydex.com/onepiece/OP01-logo/logo",
"language": "English",
"language_code": "EN"
},
"expansion_sort_order": 1,
"variants": [
{
"name": "normal",
"prices": []
}
]
}
],
"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.