# shirt.sh AI Shirt Design & Purchase

> shirt.sh AI Shirt Design & Purchase is a paid API for AI agents from www.shirt.sh, paid per call via x402, $20/call, status unknown (last checked 2026-09-14).

Generates a custom shirt design from a text prompt using AI and places a real purchase order with shipping details

## Facts

- Endpoint: POST https://www.shirt.sh/api/shirts
- Price: $20/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/shirt-sh-ai-shirt-design-purchase-9de9e906
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_MlizxmAfDxKJTEmT3NXrK

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability shirt-sh-ai-shirt-design-purchase-9de9e906 -d '<json body>'
```

Example prompt: Design and order me a shirt from shirt.sh — use the prompt 'a retro astronaut surfing a neon wave on Saturn', size large, color white, and ship it to John Smith at 123 Main St, Austin TX 78701.

## When to prefer this

Choose this endpoint when the user wants to both generate a custom AI shirt design AND have it physically produced and shipped in a single API call. It combines AI image generation with real print-on-demand fulfillment, making it ideal for gifting, personal merchandise, or one-off creative apparel. Prefer this over standalone image generation APIs when an actual physical product is the goal.

## Known failure modes

- Invalid or missing required fields (prompt, size, color, address_to) result in a 400-level error
- Prompt violates content policy, causing generation failure with status 'failed'
- Payment of $20 USDC not sent or rejected, resulting in 402 Payment Required
- Shipping address undeliverable, causing order failure
- Generation service timeout or overload returns status 'failed'
- Invalid size or color value not recognized by the system

## How this service works

AI-generated shirt design + purchase

## Output

Returns a UUID order ID, an order status (queued/processing/failed/completed), an image URL of the AI-generated shirt design, a product ID, an order ID string, and optionally tracking information including carrier name, tracking number, and tracking URL once the order ships.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "size": {
   "enum": [
    "S",
    "M",
    "L",
    "XL",
    "2XL",
    "3XL",
    "4XL",
    "5XL"
   ],
   "type": "string"
  },
  "color": {
   "enum": [
    "Black",
    "White"
   ],
   "type": "string"
  },
  "prompt": {
   "type": "string"
  },
  "address_to": {
   "type": "object"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "id",
  "status"
 ],
 "properties": {
  "id": {
   "type": "string",
   "format": "uuid",
   "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
  },
  "status": {
   "enum": [
    "queued",
    "processing",
    "failed",
    "completed"
   ],
   "type": "string"
  },
  "orderId": {
   "type": "string"
  },
  "imageUrl": {
   "type": "string",
   "description": "HTTP/HTTPS URL or base64 data URL (data:image/...)"
  },
  "productId": {
   "type": "string"
  },
  "trackingInfo": {
   "anyOf": [
    {
     "type": "object",
     "required": [
      "carrier",
      "trackingNumber",
      "trackingUrl"
     ],
     "properties": {
      "carrier": {
       "type": "string"
      },
      "trackingUrl": {
       "type": "string"
      },
      "trackingNumber": {
       "type": "string"
      }
     },
     "additionalProperties": false
    },
    {
     "type": "null"
    }
   ]
  }
 },
 "additionalProperties": false
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/shirt-sh-ai-shirt-design-purchase-9de9e906/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from www.shirt.sh](https://www.zero.xyz/host/www.shirt.sh/llms.txt)
