Store

Public API

Our store provides a free, read-only JSON API that requires no authentication, no API key, and no signup. It's designed for developers, integrators, and AI agents who want programmatic access to our product catalog.

Base URL

All API endpoints are available at:

/public-api/v1/

CORS is enabled, so you can call the API directly from browser-based applications.

Endpoints

List products

GET /public-api/v1/products

Returns a paginated list of published products. Supports full-text search and filtering.

Query parameters:

  • q — full-text search across product titles and descriptions
  • in_stock=true — only products currently in stock
  • vendor=Adafruit — filter by brand/vendor
  • product_type=Sensors — filter by product type
  • page=1 — page number (default: 1)
  • per_page=25 — results per page (max: 100)
# Search for Arduino products
curl /public-api/v1/products?q=arduino&per_page=5

# In-stock items from SparkFun
curl /public-api/v1/products?in_stock=true&vendor=SparkFun

Get a single product

GET /public-api/v1/products/{handle}

Returns full product details including all variants, SKUs, stock quantities, images, pricing, and reviews.

curl /public-api/v1/products/raspberry-pi-5

List collections

GET /public-api/v1/collections

Returns all published collections with product counts.

Get a collection with products

GET /public-api/v1/collections/{handle}

Returns collection details with a paginated list of products in the collection.

curl /public-api/v1/collections/sensors?per_page=10

Response format

All responses are JSON. Product listings include pagination metadata:

{
  "products": [ ... ],
  "meta": {
    "total": 1420,
    "page": 1,
    "per_page": 25,
    "total_pages": 57
  }
}

All prices are in AUD and include GST.

OpenAPI specification

A machine-readable OpenAPI 3.1 specification is available at /public-api/v1/openapi.json. You can import it into tools like Postman, Insomnia, or use it to auto-generate client libraries.

Rate limits

The API is rate-limited to 60 requests per minute per IP address. If you exceed this limit, you'll receive a 429 Too Many Requests response. For bulk data access, consider using the Atom feeds or Markdown endpoints instead.

Maddy, co-founder of Little Bird

Need help? We're here for you!

Hi, I'm Maddy. My team and I are ready to help with your order or any questions.