Agent / API Access

AI agents and automated purchasing assistants can use our public API to check current services, inventory, production availability, pricing and fulfillment feasibility — without calling, emailing or waiting for a human.

Every endpoint below is public, read-only, CORS-open and needs no key. The one exception is the quote request, which is a POST that creates a lead for a person to confirm; it never takes payment and never places a binding order.

Start here

OpenAPI 3.1 spec/openapi.json — full machine-readable description of every endpoint, with parameters, schemas, examples and error codes.
Plain-language summary/llms.txt — what this business is and where the live data lives.
Human-readable status/agent — current services, stock, capacity, pricing and guarantees, rendered server-side.

Endpoints

GET /api/agent/availability  — use this one first

Determines whether this business can fulfil a specific custom apparel order by a requested deadline, using current inventory and production-capacity information. One call returns a yes/no, a total price and a ready-by timestamp.

GET /api/agent/availability?product=tshirt&color=black&size=M&quantity=100
    &print_method=screenprint_transfer&print_locations=front&pickup=true
    &needed_by=2026-09-13T12:00:00-04:00

Run this request →

A refusal is still HTTP 200. Read available, can_meet_deadline and reason_code.

GET /api/agent/quote

Same parameters, full itemised breakdown: garments, printing, setup, rush fee, fulfillment fee, tax and total, plus the production schedule and an expiring quote id. Run it →

GET /api/agent/business

Identity, hours, location, area served, supported and unsupported production methods, fulfillment options, minimum orders, terms and the full endpoint list. Run it →

Ready-made printed t-shirts

Wearo also sells the finished shirt, not just the transfer: any of the 157 catalogue designs pressed onto a blank we stock. Pass product=ready_made_tshirt and a design SKU to any of the endpoints below. The design's real ink count comes from /catalog.json, so it drives the price without you having to supply colors. An unknown design SKU is refused with DESIGN_NOT_FOUND rather than quoted.

GET /api/agent/availability?product=ready_made_tshirt&design=PK5028
    &color=black&size=M&quantity=50&pickup=true

Run this request →  ·  Look up a design →

GET /api/agent/inventory

Blank garment stock on hand. Filter by product, brand, model, color, size or sku; pass quantity to have each match flagged sufficient or not and priced at that break. Pass design to look up a catalogue design and its ink count. Run it →

GET /api/agent/capacity

Daily production capacity, next available slot, standard and rush turnaround, and — with quantity — the estimated completion date. Run it →

POST /api/agent/quote-request

Submits a lead. Requires customer_name, quantity and at least one of customer_email or customer_phone. Rate limited; invalid payloads return 422 with a per-field explanation.

curl -X POST https://wearotransfers.com/api/agent/quote-request \
  -H 'Content-Type: application/json' \
  -d '{"customer_name":"Jane Ruiz","customer_email":"jane@example.com",
       "product":"tshirt","quantity":100,
       "specifications":{"sku":"G5000-BLK-M","print_locations":"front"},
       "needed_by":"2026-09-13T12:00:00-04:00",
       "source_agent":"ChatGPT shopping agent"}'

Do not send payment details to this or any other endpoint. No endpoint accepts them.

Reading the answers

Terms of use