Discover/Topps API
live

Topps APIlaunches.topps.com

Access Topps US limited-release launch data: product names, SKUs, prices, inventory variants, shipping countries, and open/upcoming/closed status via 2 endpoints.

Endpoint health
verified 42m ago
list_launches
get_launch
2/2 passing latest checkself-healing
Endpoints
2
Updated
2h ago

What is the Topps API?

The Topps Launches API covers the full listing at launches.topps.com across 2 endpoints, returning launch identifiers, slugs, SKUs, pricing, status, and inventory variants for every US limited-release product. The list_launches endpoint pages through open, upcoming, and closed launches with optional name filtering, while get_launch returns the complete record for a single product including shipping countries, processing hours, fee objects, and per-variant purchase limits.

This call costs5 credits / call— charged only on success
Try it
1-based page number over the filtered result set.
Case-insensitive substring matched against the product name and subtitle (one shape: 'formula 1'). Omitted = no text filter.
Filter by computed launch status. 'all' disables the filter.
Rows per page, capped at 100.
api.parse.bot/scraper/79d19729-33e1-4ce6-9d65-cb0fd2477169/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/79d19729-33e1-4ce6-9d65-cb0fd2477169/list_launches?query=formula+1&status=closed&page_size=5' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 2 totalmissing one? ·

Returns Topps US launches from the launches listing, newest start date first, one row per launch (a hobby box and its sealed case are separate launches). Each row carries the launch identifier, slug, product name, SKU, price and currency, start/end and listing timestamps (ISO 8601 UTC), and a computed status: 'upcoming' (before start), 'open' (between start and end) or 'closed' (after end). The site's own page only displays open and upcoming launches, so an empty result for status=open is normal when nothing is live; the full history of closed launches is still returned. Optional status and query filters are applied over the whole set before paging; total_matching counts rows after filtering and total_launches counts every launch the site publishes. Paging is by page and page_size (page_size is capped at 100); omitting them returns the first 20 rows. One upstream request per call.

Input
ParamTypeDescription
pageinteger1-based page number over the filtered result set.
querystringCase-insensitive substring matched against the product name and subtitle (one shape: 'formula 1'). Omitted = no text filter.
statusstringFilter by computed launch status. 'all' disables the filter.
page_sizeintegerRows per page, capped at 100.
Response
{
  "type": "object",
  "fields": {
    "page": "integer page returned",
    "has_more": "boolean, true when a later page exists in the filtered set",
    "launches": "array of launch summaries: launch_id, slug (input to get_launch), product, subtitle (nullable), sku, status (open|upcoming|closed), price (number, in currency), currency, start, end, listing_date (ISO 8601 UTC), timezone (site display timezone), country, access_type, image_url, launch_url",
    "page_size": "integer rows per page applied",
    "total_launches": "integer count of every launch the site publishes, before filtering",
    "total_matching": "integer count of launches matching the status/query filters"
  },
  "sample": {
    "data": {
      "page": 1,
      "has_more": true,
      "launches": [
        {
          "end": "2026-09-15T16:00:00.000Z",
          "sku": "FGC006877-DB",
          "slug": "2026-topps-chrome-formula-1r-hobby-box-pre-order",
          "price": 469.99,
          "start": "2026-09-15T15:00:00.000Z",
          "status": "closed",
          "country": "US",
          "product": "2026 Topps Chrome Formula 1® - Hobby Box - Pre-Order",
          "currency": "USD",
          "subtitle": null,
          "timezone": "America/New_York",
          "image_url": "https://cdn.eql.media/draw-api/9201f031-26db-4f29-ad0a-8df9f073c959/1362dfab-6fd3-4eda-8195-2f3ef3e0846e.png",
          "launch_id": "TS0292US",
          "launch_url": "https://launches.topps.com/en-US/launch/2026-topps-chrome-formula-1r-hobby-box-pre-order",
          "access_type": "PUBLIC",
          "listing_date": "2026-09-15T17:00:00.000Z"
        }
      ],
      "page_size": 1,
      "total_launches": 254,
      "total_matching": 254
    },
    "status": "success"
  }
}

About the Topps API

What the API Covers

The API exposes Topps US limited-release product launches as listed at launches.topps.com. Each launch represents a distinct purchasable SKU — a hobby box and its sealed case are tracked as separate launch records. Data includes launch_id, slug, product name, subtitle, sku, price, currency, status (open, upcoming, or closed), and ISO 8601 UTC timestamps for start, end, and listing_date.

list_launches Endpoint

list_launches returns a paginated array of launch summaries, sorted by newest start date first. The status parameter accepts open, upcoming, closed, or all to disable filtering. The query parameter does a case-insensitive substring match against the product name and subtitle — for example, passing 'formula 1' returns only Formula 1 releases. Pagination is controlled with page and page_size (capped at 100 rows). The response includes total_launches (all launches before filtering) and total_matching (launches matching your filters), alongside a has_more boolean for cursor-style pagination.

get_launch Endpoint

get_launch accepts a slug exactly as emitted by list_launches and returns the full launch record. Beyond the summary fields, it adds description (long product text), an extra description field with shipping and pre-order notes, processing_hours, supported collection_methods, and an array of shipping_countries. The inventory array lists each purchasable variant by inventory_id, name, max_quantity_per_entry, and an optional image_url. The fees array reflects any additional charges published for the launch, though it is typically empty.

Reliability & maintenanceVerified

The Topps API is a managed, monitored endpoint for launches.topps.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when launches.topps.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official launches.topps.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
42m ago
Latest check
2/2 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Monitor when new Topps releases move from upcoming to open status to trigger purchase alerts
  • Track price and SKU data across hobby box and sealed case variants for the same product
  • Build a countdown tool using start and end ISO 8601 timestamps for upcoming launches
  • Filter launches by name substring (e.g., 'bowman', 'formula 1') to track specific product lines
  • Inspect max_quantity_per_entry per inventory variant to surface per-customer purchase limits
  • Identify which launches ship to specific countries using the shipping_countries field in get_launch
  • Aggregate historical closed launches by listing date to analyze Topps release cadence over time
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Topps have an official developer API for launches.topps.com?+
Topps does not publish a public developer API for their launches site. There is no documented REST or GraphQL interface available to third-party developers for this data.
How does status filtering work in list_launches, and what values are valid?+
The status parameter accepts open (currently accepting orders), upcoming (not yet started), or closed (end date has passed). Passing all disables the filter and returns every launch regardless of status. Status is computed from the start and end timestamps, so a launch transitions automatically as time passes.
Does the API cover Topps international or non-US storefronts?+
The API currently covers the US launch listing at launches.topps.com/en-US/launch. International Topps storefronts are not included. You can fork this API on Parse and revise it to add endpoints targeting other regional Topps launch pages.
Does get_launch return secondary market pricing or sold-out inventory counts?+
No secondary market or resale pricing is available. The inventory array reflects the variants and per-entry quantity limits as published on the launch page, not real-time remaining stock counts. The API covers the price field as listed at time of retrieval. You can fork this API on Parse and revise it to track price changes over time by storing snapshots.
Is there a limitation on how many launches list_launches can return per request?+
page_size is capped at 100 rows per page. For result sets larger than 100 launches, use the page parameter alongside has_more to paginate. The total_matching field tells you exactly how many results match your current status and query filters so you can calculate the number of pages needed.
Page content last updated . Spec covers 2 endpoints from launches.topps.com.
Related APIs in EcommerceSee all →