# Agent Miner Tools – Budget Basket (Multi-Need Shopify Shopper)

> Agent Miner Tools – Budget Basket (Multi-Need Shopify Shopper) is a paid API for AI agents from agent-api-production.tim1712.workers.dev, paid per call via x402, $0.03/call, status unknown (last checked 2026-09-15).

Given a list of product needs with pre-formed queries and an overall budget, finds one real Shopify product per need across multiple merchants and returns per-item checkout URLs.

## Facts

- Endpoint: POST https://agent-api-production.tim1712.workers.dev/v1/shopping/budget-basket
- Price: $0.03/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/agent-miner-tools-budget-basket-multi-need-shopify-shopper-35606467
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_yl_FiyJL68CR3PmD3ESvG

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 agent-miner-tools-budget-basket-multi-need-shopify-shopper-35606467 -d '<json body>'
```

Example prompt: I need to buy three things for a video-creator kit — a wireless lavalier mic compatible with USB-C iPhones, a 20000mAh 65W USB-C power bank that's airline-safe, and a compact aluminium travel tripod under 1.2 kg — and my total item budget is €150. Find me one real Shopify product for each and give me the checkout links, shopping in the Netherlands in EUR.

## When to prefer this

Use this endpoint when an agent has already resolved buyer intent into concrete, specific product queries (one per need) and wants to find a real purchasable Shopify listing for each, respecting an overall item-price budget. Prefer it over a generic product search when you have multiple simultaneous needs with priorities and need per-item checkout URLs across multiple merchants in a single call. Do not use it for open-ended product discovery, cart creation, or checkout processing — it only returns links, not completed carts.

## Known failure modes

- No matching Shopify product found for one or more needs — item omitted from results and complete flag set to false
- Budget too tight to satisfy all needs at minimum prices — some items excluded
- Malformed need query or missing required fields (id, query) — 400 validation error
- budgetMinor or maxPriceMinor set to 0 — interpreted as no cap, may return unexpected results
- Country or currency code not recognized — 400 or empty results
- Rate limit or upstream Shopify catalog unavailability — 5xx error

## How this service works

Use when an agent already knows several products/categories a buyer needs and wants one real Shopify product for each need while staying within one overall item-price budget. Each need.query must already carry the important compatibility and preference details; this service does not reinterpret intent. Returns a cross-merchant basket plan with per-item checkout URLs. It is not a generic product search and does not create carts or checkouts.

## Output

A JSON object containing an array of matched items — one per need — each with the product title, variant title, price in minor currency units, product URL, direct single-item checkout URL, seller name and domain, search rank, optional rating (count and average), and the need ID it satisfies. The response also includes the total basket price in minor units, the currency, the country, a completeness flag indicating whether all needs were filled, the catalog source, a timestamp, and an array of warnings (e.g. shipping and taxes not included).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "needs": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "id",
     "query"
    ],
    "properties": {
     "id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9._-]{1,64}$"
     },
     "query": {
      "type": "string",
      "maxLength": 256,
      "minLength": 1
     },
     "priority": {
      "type": "integer",
      "maximum": 10,
      "minimum": 1
     },
     "maxPriceMinor": {
      "type": "integer",
      "minimum": 0
     }
    },
    "additionalProperties": false
   }
  },
  "country": {
   "type": "string",
   "pattern": "^[A-Z]{2}$"
  },
  "currency": {
   "type": "string",
   "pattern": "^[A-Z]{3}$"
  },
  "budgetMinor": {
   "type": "integer",
   "minimum": 0
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "items": [
   {
    "query": "wireless lavalier microphone for iPhone USB-C",
    "needId": "microphone",
    "rating": {
     "count": 214,
     "value": 4.6
    },
    "seller": {
     "url": "https://example-merch.example",
     "name": "Example Merch",
     "domain": "example-merch.example"
    },
    "currency": "EUR",
    "priority": 10,
    "productId": "gid://shopify/Product/1111111111",
    "variantId": "gid://shopify/ProductVariant/2222222222",
    "priceMinor": 17999,
    "productUrl": "https://example-merch.example/products/usb-c-wireless-lavalier",
    "searchRank": 0,
    "checkoutUrl": "https://example-merch.example/cart/2222222222:1",
    "productTitle": "USB-C Wireless Lavalier Microphone",
    "variantTitle": "Single mic + USB-C receiver"
   },
   {
    "query": "65W USB-C power bank 20000mAh airline safe",
    "needId": "power-bank",
    "rating": {
     "count": 88,
     "value": 4.4
    },
    "seller": {
     "url": "https://poweredup.example",
     "name": "PoweredUp",
     "domain": "poweredup.example"
    },
    "currency": "EUR",
    "priority": 6,
    "productId": "gid://shopify/Product/3333333333",
    "variantId": "gid://shopify/ProductVariant/4444444444",
    "priceMinor": 13299,
    "productUrl": "https://poweredup.example/products/pb-20000-65w",
    "searchRank": 1,
    "checkoutUrl": "https://poweredup.example/cart/4444444444:1",
    "productTitle": "20000mAh 65W USB-C Power Bank",
    "variantTitle": null
   },
   {
    "query": "compact travel tripod aluminium under 1.2kg",
    "needId": "tripod",
    "rating": null,
    "seller": {
     "url": "https://tripodworld.example",
     "name": "Tripod World",
     "domain": "tripodworld.example"
    },
    "currency": "EUR",
    "priority": 4,
    "productId": "gid://shopify/Product/5555555555",
    "variantId": "gid://shopify/ProductVariant/6666666666",
    "priceMinor": 9999,
    "productUrl": "https://tripodworld.example/products/alu-travel-tripod",
    "searchRank": 0,
    "checkoutUrl": "https://tripodworld.example/cart/6666666666:1",
    "productTitle": "Aluminium Travel Tripod 1.1kg",
    "variantTitle": "Black"
   }
  ],
  "source": "shopify-global-catalog",
  "country": "NL",
  "complete": true,
  "currency": "EUR",
  "warnings": [
   "Shipping, taxes, duties and discounts are not included in the budget."
  ],
  "checkedAt": "2026-08-30T10:00:02.000Z",
  "totalMinor": 41297,
  "budgetMinor": 60000,
  "budgetScope": "items_only",
  "re
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agent-miner-tools-budget-basket-multi-need-shopify-shopper-35606467/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agent-api-production.tim1712.workers.dev](https://www.zero.xyz/host/agent-api-production.tim1712.workers.dev/llms.txt)
