offergraph.

FOR AI ASSISTANTS & DEVELOPERS

The same facts.
A readable contract.

Retrieve the same product records that power our buying pages. Prices, scope, age and unknowns travel together.

An experimental read-only interface. Publishing it does not establish AI-platform distribution, purchase attribution or a freshness guarantee. Retrieval never activates an affiliate link.

Start with JSON

GET https://www.offergraph.io/api/v1/catalogue
GET https://www.offergraph.io/api/v1/catalogue?id=systeme-io

Responses include the product's public plan data, billing conditions, sources and evidence age. They distinguish an ordinary advertised amount from checkout verification and include an explicit buyer handoff. A missing price remains null.

Use the existing MCP transport

POST https://www.offergraph.io/api/v0/mcp
Content-Type: application/json

{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"buyer-assistant","version":"1"}}}

{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"get_product","arguments":{"id":"kit"}}}

Use list_products or get_product. The preserved aliases list_listings, lookup_code, get_valid_code and lookup_discount_code remain for compatibility. GET on the MCP endpoint returns 405. Batch JSON-RPC is not supported; request bodies are limited to 64 KiB.

Keep the buyer in control

Present the product-page URL in buyerHandoff to the buyer. Do not follow referral actions, prefetch merchant destinations or submit forms on their behalf. Reading a record does not establish consent to attribution, a human visit, a click or a sale.

Historical checkout observations

The separate evidence API preserves a conservative historical operator ledger. Supply a listing and exact HTTPS checkout URL. A recent applied observation may return a code only for that same scope; a newer negative, expiry or invalid timestamp withholds it.

GET /api/v1/evidence?listing=...&checkout=<URL-encoded exact checkout>
GET /api/v0/lookup?listing=...&checkout=<URL-encoded exact checkout>

The legacy valid field means a recent scoped observation, not guaranteed current acceptance. The ledger is not an independently replayable evidence archive and does not establish a completed purchase or commission.

Operational limits

Retrieval is deterministic and does not call a paid model. API request limits are best effort per process, not a distributed quota or authentication. Never submit personal data or credentials to these endpoints.