# nohumans.directory Purchase History for Listing

> nohumans.directory Purchase History for Listing is a paid API for AI agents from api.nohumans.directory, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-11).

Returns the complete ordered history of real USDC purchases the nohumans.directory has made for a specific listing, including per-purchase outcomes, price comparisons, settlement transactions, and consecutive-pair deltas.

## Facts

- Endpoint: GET https://api.nohumans.directory/v1/listings/:id/purchases?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-11
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/nohumans-directory-purchase-history-for-listing-e515aa8e
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_My8us-xRFynjyB5zReR1J

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 nohumans-directory-purchase-history-for-listing-e515aa8e
```

Example prompt: Pull up the full purchase history nohumans.directory has recorded for listing abc123 — I want to see every real USDC purchase, the outcome, how the live quote compared to the listed price, and whether the response body changed between purchases.

## When to prefer this

Use this endpoint when you need the raw, timestamped series of actual USDC purchases the directory has made for a specific listing — particularly when you want to go beyond the pre-spend verdict summary and inspect every individual purchase outcome, price comparison, body hash, and settlement transaction on Base. Prefer this over the verdict endpoint when you need auditability, longitudinal analysis, or want to understand the evidence behind a verdict rather than just its conclusion.

## Known failure modes

- Listing ID not found — returns an error if the :id does not correspond to a known directory listing
- No purchases recorded — returns an empty purchases array for listings that have never been purchased
- Payment failure — x402 payment of 0.01 USDC not completed, endpoint returns 402 Payment Required
- Rate limiting or transient server error — may return 5xx responses
- Stale data — freshness signals may indicate the purchase history has not been updated recently

## How this service works

nohumans.directory purchase history for one listing: every real USDC purchase the directory has made of it, oldest first — outcome, live quote vs listed price, settlement tx on Base, JSON/schema validity, freshness, normalised body hash — plus consecutive-pair deltas (delivery held/regressed/recovered, price held/moved, body same/changed). The verdict is a rule applied to this series; this is the series. Rule: https://nohumans.directory/methodology#purchases

## Output

A JSON object containing: a list of all purchases (oldest first) with per-purchase outcome, live quote vs listed price, Base settlement transaction hash, JSON/schema validity, freshness score, and normalised body hash; consecutive-pair deltas indicating whether delivery held/regressed/recovered, price held/moved, and body same/changed; and a summary object aggregating these signals. The listing_id and endpoint_url are also returned for reference.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "pathParams": {
     "type": "object",
     "required": [
      "id"
     ],
     "properties": {
      "id": {
       "type": "string",
       "description": "Listing id, as returned by GET /v1/discover or /v1/listings. Any listing works."
      }
     }
    },
    "queryParams": {
     "type": "object",
     "required": [],
     "properties": {}
    },
    "discoverable": {
     "type": "boolean"
    }
   }
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "listing_id",
      "summary",
      "purchases",
      "pairs"
     ],
     "properties": {
      "rule": {
       "type": "string"
      },
      "as_of": {
       "type": "integer"
      },
      "basis": {
       "type": "string"
      },
      "pairs": {
       "type": "array",
       "items": {
        "type": "object",
        "properties": {
         "to": {
          "type": "integer"
         },
         "body": {
          "enum": [
           "same",
           "changed",
           "no_hash"
          ],
          "type": "string"
         },
         "from": {
          "type": "integer"
         },
         "price": {
          "enum": [
           "held",
           "moved",
           "unknown"
          ],
          "type": "string"
         },
         "delivery": {
          "enum": [
           "held",
           "regressed",
           "recovered",
           "never"
          ],
          "type": "string"
         },
         "days_apart": {
          "type": "number"
         },
         "quote_delta_usdc": {
          "type": [
           "number",
           "null"
          ]
         }
        }
       },
       "description": "consecutive purchases compared"
      },
      "status": {
       "type": "string"
      },
      "summary": {
       "type": "object",
       "properties": {
        "last_at": {
         "type": [
          "integer",
          "null"
         ]
        },
        "first_at": {
         "type": [
          "integer",
          "nul
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "pairs": {
   "type": "array"
  },
  "summary": {
   "type": "object"
  },
  "purchases": {
   "type": "array"
  },
  "listing_id": {
   "type": "string"
  },
  "endpoint_url": {
   "type": "string"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/nohumans-directory-purchase-history-for-listing-e515aa8e/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.nohumans.directory](https://www.zero.xyz/host/api.nohumans.directory/llms.txt)
