Brooklinen · OpenAPI Overlay 1.0.0

API Evangelist enhancements for the Brooklinen Shopify Storefront JSON API

8 actions 8 updates update extends openapi/brooklinen-storefront-openapi.yml
Derived by API Evangelist Built from the contracts Brooklinen publishes. Brooklinen did not publish this file.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-notex-apievangelist-paginationx-apievangelist-provenancex-apievangelist-artifactsx-apievangelist-companion-surfacex-apievangelist-identityx-apievangelist-identifier

Targets 7

$.info
$.paths['/products.json'].get
$.paths['/collections/{handle}/products.json'].get
$.paths['/cart.js'].get
$.paths['/products/{handle}.json'].get
$.components.schemas.Product
$.components.schemas.Variant

OpenAPI Overlay

brooklinen-storefront-overlay.yaml Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements for the Brooklinen Shopify Storefront JSON API
  version: 1.0.0
extends: openapi/brooklinen-storefront-openapi.yml
x-generated: '2026-08-02'
x-method: generated
x-source: https://www.brooklinen.com/agents.md
actions:
- target: $.info
  description: Record provenance and the API Evangelist artifact set on the spec root.
  update:
    x-apievangelist-provenance:
      method: generated
      generated: '2026-08-02'
      source: https://www.brooklinen.com/agents.md
      note: >-
        Brooklinen publishes no OpenAPI. This document was generated from the endpoint list Brooklinen
        publishes in /agents.md plus live probes of each endpoint on 2026-08-02.
    x-apievangelist-artifacts:
      conventions: conventions/brooklinen-conventions.yml
      errors: errors/brooklinen-problem-types.yml
      authentication: authentication/brooklinen-authentication.yml
      lifecycle: lifecycle/brooklinen-lifecycle.yml
      data_model: data-model/brooklinen-data-model.yml
      conformance: conformance/brooklinen-conformance.yml
      mcp: mcp/brooklinen-mcp.yml
      tool_crosswalk: mcp/brooklinen-tool-crosswalk.yml
      skills: skills/_index.yml
- target: $.info
  description: Note the sibling transactional surface, which is not described by this document.
  update:
    x-apievangelist-companion-surface:
      protocol: Universal Commerce Protocol over MCP
      endpoint: https://www.brooklinen.com/api/ucp/mcp
      discovery: https://www.brooklinen.com/.well-known/ucp
      gated: true
      gate: UCP agent profile (meta.ucp-agent.profile / UCP-Agent header)
      note: Cart mutation, checkout and orders live only on that surface.
- target: $.paths['/products.json'].get
  description: Record the pagination contract, which the storefront does not self-describe.
  update:
    x-apievangelist-pagination:
      style: page-number
      params: [limit, page]
      terminator: empty products array
      total_count: false
      cursor: false
      link_header: false
- target: $.paths['/collections/{handle}/products.json'].get
  description: Record the pagination contract and the well-known `all` handle.
  update:
    x-apievangelist-pagination:
      style: page-number
      params: [limit, page]
      terminator: empty products array
    x-apievangelist-note: The `all` handle returns the full catalog.
- target: $.paths['/cart.js'].get
  description: Flag the session-identity model, which differs from the UCP cart.
  update:
    x-apievangelist-identity:
      scope: browser session cookie
      anonymous_behavior: returns a new empty cart
      note: >-
        Not the same object as a UCP cart, which is agent-owned and addressed by id. See
        mcp/brooklinen-tool-crosswalk.yml.
- target: $.paths['/products/{handle}.json'].get
  description: Note that variant prices are decimal strings, a common integration trap.
  update:
    x-apievangelist-note: >-
      Variant `price` and `compare_at_price` are decimal strings (e.g. "159.00"), not integer minor units.
      Cart totals on /cart.js, by contrast, are integer minor units.
- target: $.components.schemas.Product
  description: Record the addressing key used across the whole surface.
  update:
    x-apievangelist-identifier:
      primary: id
      addressable_by: handle
      note: Every other storefront path addresses products by `handle`, not `id`.
- target: $.components.schemas.Variant
  description: Record how the positional option fields bind to the product option axes.
  update:
    x-apievangelist-note: >-
      option1/option2/option3 correspond positionally to Product.options[].name; read Product.options to
      interpret them.

Work with this as data

Every overlay here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/brooklinen-storefront-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.