> ## Documentation Index
> Fetch the complete documentation index at: https://na-834f3010.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Marketplace API

> Catalog query params, call body, and Arc / Circle 402 challenges.

Production host: `https://graphitti-five.vercel.app`

Search listed workflows:

```bash theme={null}
curl "https://graphitti-five.vercel.app/api/mcp/workflows?q=balance&chain=arc-testnet&workflowType=read&sort=recent"
```

Call a listing:

```bash theme={null}
curl -X POST https://graphitti-five.vercel.app/api/mcp/workflows/{slug}/call \
  -H "Content-Type: application/json" \
  -d '{"address":"0x..."}'
```

Paid listings respond `402` with `PAYMENT-REQUIRED`:

```json theme={null}
{
  "accepts": [
    {
      "scheme": "exact",
      "network": "eip155:5042002",
      "asset": "0x3600000000000000000000000000000000000000",
      "maxAmountRequired": "1000000",
      "payTo": "0xCreatorPrivyAddress",
      "extra": { "paymentProtocol": "arc-x402" }
    },
    {
      "scheme": "exact",
      "network": "eip155:5042002",
      "asset": "0x3600000000000000000000000000000000000000",
      "maxAmountRequired": "1000000",
      "payTo": "0xCreatorPrivyAddress",
      "extra": {
        "paymentProtocol": "circle-nanopay",
        "settleUrl": "https://gateway-api-testnet.circle.com/v1/transfer"
      }
    }
  ]
}
```

Retry with `PAYMENT-SIGNATURE` containing either:

* An Arc USDC transfer receipt (`txHash`), verified on-chain before execution, or
* A Circle EIP-3009 authorization settled through Gateway.

Graphitti records `workflow_payments` by SHA-256 hash so retries are idempotent.
