Discover/Classic Football Shirts API
live

Classic Football Shirts APIclassicfootballshirts.co.uk

Search Classic Football Shirts by keyword or team. Get prices, sizes, stock status, SKUs, and product URLs for vintage and classic football shirts.

Endpoint health
verified 1d ago
get_products_by_team
search_products
2/2 passing latest checkself-healing
Endpoints
2
Updated
26d ago

What is the Classic Football Shirts API?

The Classic Football Shirts API provides 2 endpoints to search and browse the classicfootballshirts.co.uk catalog, returning up to a configurable number of product records per request. The search_products endpoint accepts any keyword — team name, brand, season, or league — and returns structured product data including price, currency, available sizes, stock quantity, and direct product URLs. A dedicated get_products_by_team endpoint scopes the same data to a single club.

Try it
Maximum number of products to return.
Search keyword to find products (e.g. 'Arsenal', 'Liverpool', 'Barcelona', 'MLS', 'adidas').
api.parse.bot/scraper/73fcfdc9-d8df-488d-b5fa-66bb10075e9c/<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/73fcfdc9-d8df-488d-b5fa-66bb10075e9c/search_products?limit=5&query=Arsenal' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace classicfootballshirts-co-uk-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: Classic Football Shirts SDK — search and browse vintage kits."""
from parse_apis.classic_football_shirts_api import ClassicFootballShirts, ProductNotFound

client = ClassicFootballShirts()

# Search for products by keyword — limit= caps total items fetched.
for product in client.products.search(query="Arsenal", limit=5):
    print(product.name, product.price, product.currency, product.condition)

# Get products for a specific team, take the first one for drill-down.
shirt = client.products.by_team(team="Liverpool", limit=1).first()
if shirt:
    print(shirt.name, shirt.sku, shirt.season, shirt.brand)
    print("Sizes:", shirt.sizes, "Stock:", shirt.stock_quantity)

# Typed error handling around a search that may return nothing.
try:
    for item in client.products.search(query="Barcelona", limit=3):
        print(item.name, item.price, item.availability)
except ProductNotFound as exc:
    print(f"No products found: {exc}")

print("exercised: products.search / products.by_team / ProductNotFound error catch")
All endpoints · 2 totalmissing one? ·

Full-text search over the Classic Football Shirts catalog. Returns products matching the query keyword with prices, sizes, availability, and metadata. Results are capped by the limit parameter. The search matches product names, teams, seasons, and brands.

Input
ParamTypeDescription
limitintegerMaximum number of products to return.
queryrequiredstringSearch keyword to find products (e.g. 'Arsenal', 'Liverpool', 'Barcelona', 'MLS', 'adidas').
Response
{
  "type": "object",
  "fields": {
    "query": "string - the search query used",
    "total": "integer - number of products returned",
    "products": "array of product objects with name, sku, price, currency, sizes, availability, stock_quantity, product_url, image_url, team, season, brand, style, condition"
  },
  "sample": {
    "data": {
      "query": "Arsenal",
      "total": 4,
      "products": [
        {
          "sku": "HR6933",
          "name": "2023-24 Arsenal Third Shorts",
          "team": "Arsenal",
          "brand": "adidas",
          "price": 19.99,
          "sizes": [
            "XS"
          ],
          "style": "Shorts",
          "season": "2023-24",
          "currency": "GBP",
          "condition": "Brand New - With Tags",
          "image_url": "https://www.classicfootballshirts.com/pub/media/catalog/productw=150,h=150,q=90,f=webp/pub/media/catalog/product//4/0/4066761519058-1_un9gytjx5ptmbxrx.jpg",
          "product_url": "https://www.classicfootballshirts.com/2023-24-arsenal-third-shortshr6933.html",
          "availability": "In Stock",
          "stock_quantity": 12
        }
      ]
    },
    "status": "success"
  }
}

About the Classic Football Shirts API

Endpoints and Inputs

The API exposes two GET endpoints. search_products takes a required query string and an optional limit integer. The query matches against product names, team names, seasons, and brands, so searches like 'adidas', 'MLS', or '1994' work alongside team-specific terms. get_products_by_team takes a required team string and the same optional limit parameter, and is the cleaner choice when you need all shirts for a specific club like Arsenal or Barcelona without unrelated matches.

Response Shape

Both endpoints return a total count, the original search term (query or team), and a products array. Each product object includes name, sku, price, currency, sizes (an array of available size options), availability, stock_quantity, product_url, image_url, team, and season. The sku field enables deduplication or cross-referencing across requests, and product_url links directly to the listing on the site.

Coverage and Behavior

Results are drawn from the live Classic Football Shirts catalog, which focuses on retro, vintage, and hard-to-find football shirts from clubs and national teams across multiple decades. The limit parameter caps results per call; without it, the endpoint applies a default cap. Because the catalog is commercially active, price and stock fields reflect current availability rather than historical snapshots.

Reliability & maintenanceVerified

The Classic Football Shirts API is a managed, monitored endpoint for classicfootballshirts.co.uk — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when classicfootballshirts.co.uk 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 classicfootballshirts.co.uk 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
1d 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
  • Build a price tracker that monitors price and stock_quantity changes for a specific team's shirts over time.
  • Populate a resale or fan marketplace with verified sku, image_url, and product_url data from the Classic Football Shirts catalog.
  • Create a kit discovery tool that lets users filter shirts by team and season across multiple clubs.
  • Aggregate availability data across sizes using the sizes array to alert buyers when a specific size comes back in stock.
  • Generate a curated gift guide by querying brand keywords like 'Umbro' or 'Le Coq Sportif' via search_products.
  • Build a club-specific shirt archive page by calling get_products_by_team for each club in a dataset and storing the resulting product records.
  • Cross-reference sku values between calls to identify catalog additions or removals over successive polling intervals.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Classic Football Shirts have an official public developer API?+
No. Classic Football Shirts does not offer a documented public developer API or documented data feeds for third-party developers.
What does the `sizes` field return, and does it indicate per-size stock levels?+
The sizes field returns an array of size options available for the product. Overall stock is reflected in stock_quantity and availability, but per-size stock counts are not broken out as separate fields in the current response shape. You can fork this API on Parse and revise it to add per-size inventory tracking if your use case requires it.
Does the API cover product condition grades, seller notes, or provenance details for vintage shirts?+
Not currently. The API covers name, SKU, price, currency, sizes, availability, stock quantity, URLs, team, and season. Condition grading or provenance text is not exposed in the current endpoints. You can fork the API on Parse and revise it to add those fields if the source exposes them.
Can I retrieve all products in the catalog without a specific query or team name?+
Both endpoints require either a query string or a team string. There is no browse-all or paginated full-catalog endpoint currently. You can fork the API on Parse and revise it to add a category-browse or full-catalog pagination endpoint.
How current is the price and availability data?+
The API reflects the live state of the Classic Football Shirts catalog at the time of each request. Because Classic Football Shirts is an active retail site, prices and stock levels can change between calls. There is no caching layer that intentionally delays data, but there is also no push-notification or webhook mechanism to alert on changes — you would need to poll periodically to detect updates.
Page content last updated . Spec covers 2 endpoints from classicfootballshirts.co.uk.
Related APIs in EcommerceSee all →
nike.com API
Search the Nike product catalog by keyword and retrieve detailed product information including pricing, sizing, color variants, and availability. Use autocomplete suggestions to refine queries and discover relevant products on Nike.com.
stadiumgoods.com API
Search and discover premium sneakers and streetwear from Stadium Goods. Retrieve detailed product specifications, variant-level pricing, and real-time inventory status across the full catalog and curated collections.
sneakers.com API
Search and browse sneaker products across categories and brands, view detailed product information, and discover current flash sales and trending searches from sneakers.com. Get instant access to sneaker listings, pricing, and real-time sale events to find exactly what you're looking for.
sanmar.com API
Search SanMar's product catalog to browse t-shirts and other apparel by category, view detailed product information including sizes and MSRP pricing. Access wholesale pricing and real-time inventory data with a B2B account.
hm.com API
Search H&M's US product catalog by keyword and instantly retrieve detailed information like prices, product images, available sizes, and real-time stock availability. Perfect for comparing items, tracking product details, or building shopping applications powered by H&M's current inventory data.
amazon.co.uk API
Access data from amazon.co.uk.
abercrombie.com API
Search and browse Abercrombie & Fitch products across categories, new arrivals, and clearance items while retrieving detailed product information like pricing and availability. Access curated collections and find exactly what you're looking for with powerful search capabilities.
ebay.co.uk API
Search eBay UK listings and sold items to find products, compare prices, and view seller feedback and ratings. Access detailed item information, explore categories, and discover daily deals all in one place.