# Penny Army Reference Metadata Comparator

> Penny Army Reference Metadata Comparator is a paid API for AI agents from penny-army-reference-mainnet.spruceboundgranitestudio.workers.dev, paid per call via x402, $0.05/call, status down (last checked 2026-10-13).

Compares up to 10 DOI-bearing academic references against Crossref metadata, returning field-level agreements, discrepancies, and ambiguities for title, authors, and year.

## Facts

- Endpoint: POST https://penny-army-reference-mainnet.spruceboundgranitestudio.workers.dev/v1/compare-reference-metadata?utm_source=zero.xyz
- Price: $0.05/call
- Payment: x402
- Status: down
- Last checked: 2026-10-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/penny-army-reference-metadata-comparator-9927ce0e
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_GC3kinoIhZtYj1f3kAt8v

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 penny-army-reference-metadata-comparator-9927ce0e -d '<json body>'
```

Example prompt: Can you check these 3 references against Crossref for me? DOI 10.1038/nature12373 listed as 'Planck 2013 results' by Ade et al. (2014), DOI 10.1126/science.1260419 listed as 'A Massive Pulsar' by Antoniadis et al. (2013), and DOI 10.1093/mnras/stu1613 listed as 'Dark matter halo' by Behroozi et al. (2014) — tell me which fields match, which are wrong, and any ambiguities.

## When to prefer this

Choose this endpoint when you need to programmatically verify bibliographic metadata accuracy for DOI-bearing academic references against the authoritative Crossref registry. It is ideal for pre-submission citation auditing, bulk reference validation in academic writing tools, and detecting metadata drift in imported bibliographies. Prefer this over manual Crossref lookups when processing 1-10 references in a single automated batch. Note: this endpoint validates bibliographic metadata only — it does not verify scientific claims, full-text availability, or retraction status.

## Known failure modes

- DOI not found in Crossref — failed retrieval prevents batch settlement and payment
- DOI malformed or invalid format — request rejected before processing
- Batch exceeds 10 references — request rejected
- Reference missing required id or doi fields — validation error
- Crossref service unavailable — retrieval failure blocks completion
- Result recovery window expired (after 24 hours) — original results no longer accessible
- Missing X-Penny-Mainnet-Key header — payment/authentication failure
- Sales paused — service temporarily unavailable
- Reference missing at least one of title, authors, or year — schema validation error

## How this service works

Compare 1-10 DOI-bearing references against Crossref metadata: supplied title, ordered authors and/or year. Returns field agreements, discrepancies, ambiguities and provenance; does not verify scientific claims. 0.05 native USDC per completed batch on Base. Failed retrieval prevents settlement. Original-result recovery lasts 24 hours. Purchases require X-Penny-Mainnet-Key and an explicitly opened bounded window; sales are paused by default. Examples are saved fixtures.

## Output

Returns a structured batch result containing per-reference comparisons: for each submitted reference, indicates whether the supplied title, author list (with family/given names), and year agree with or differ from the Crossref record for that DOI. Includes field-level agreement flags, discrepancy details, and ambiguity notes, along with provenance information about the Crossref data source.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "references": {
   "type": "array",
   "items": {
    "type": "object",
    "anyOf": [
     {
      "required": [
       "title"
      ]
     },
     {
      "required": [
       "authors"
      ]
     },
     {
      "required": [
       "year"
      ]
     }
    ],
    "required": [
     "id",
     "doi"
    ],
    "properties": {
     "id": {
      "type": "string",
      "maxLength": 64,
      "minLength": 1
     },
     "doi": {
      "type": "string",
      "pattern": "^10\\.\\d{4,9}\\/[^\\s\\x00-\\x20?#%\\\\]+$",
      "maxLength": 200
     },
     "year": {
      "type": "integer",
      "maximum": 9999,
      "minimum": 1
     },
     "title": {
      "type": "string",
      "maxLength": 2000,
      "minLength": 1
     },
     "authors": {
      "type": "array",
      "items": {
       "type": "object",
       "required": [
        "family"
       ],
       "properties": {
        "given": {
         "type": "string",
         "maxLength": 200,
         "minLength": 1
        },
        "family": {
         "type": "string",
         "maxLength": 200,
         "minLength": 1
        }
       },
       "additionalProperties": false
      },
      "maxItems": 40,
      "minItems": 1
     }
    },
    "additionalProperties": false
   },
   "maxItems": 10,
   "minItems": 1
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/penny-army-reference-metadata-comparator-9927ce0e/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from penny-army-reference-mainnet.spruceboundgranitestudio.workers.dev](https://www.zero.xyz/host/penny-army-reference-mainnet.spruceboundgranitestudio.workers.dev/llms.txt)
