# Decision Data Studio JSON Diff

> Decision Data Studio JSON Diff is a paid API for AI agents from api.ikoles.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-14).

Computes a structured diff between two JSON values, returning per-operation change details and a summary of additions, modifications, and removals.

## Facts

- Endpoint: POST https://api.ikoles.dev/v1/json-diff
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/decision-data-studio-json-diff-f800216c
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_ZLiatTIH-DZzlldP0MF-L

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 decision-data-studio-json-diff-f800216c -d '<json body>'
```

Example prompt: Compare these two JSON snapshots and tell me exactly what changed — before: {"state":"queued","retries":0} and after: {"state":"done","retries":2}.

## When to prefer this

Choose this endpoint when you need a machine-readable, structured diff of two arbitrary JSON values with per-field change granularity and SHA-256 provenance hashes — especially useful in agent workflows that need to detect state changes, audit mutations, or verify idempotency. Prefer it over text-based diff tools when the inputs are JSON and you need structured output (op/path/before/after) rather than line-by-line text deltas.

## Known failure modes

- Malformed JSON in 'before' or 'after' fields causes a parse error response
- Missing 'before' or 'after' fields returns a validation error
- Extremely large JSON payloads may result in a truncated diff (truncated: true)
- Network or service unavailability returns a non-200 status
- Payment failure (x402) blocks the request before processing

## How this service works

Local-first data and agent workflow tools from Decision Data Studio, plus verified EU tender shortlists and machine-callable utilities.

## Output

Returns a JSON object with an 'equal' boolean, a 'changes' array of RFC-6902-style operations (op, path, before, after), a 'summary' object with counts of added/changed/removed/total operations, SHA-256 hashes of both inputs, a 'generatedAt' ISO timestamp, and a 'truncated' flag if the diff was cut off due to size.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "after": {
   "description": "Any valid JSON value after the change"
  },
  "before": {
   "description": "Any valid JSON value before the change"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "equal": false,
  "changes": [
   {
    "op": "replace",
    "path": "/state",
    "after": "done",
    "before": "queued"
   }
  ],
  "summary": {
   "added": 0,
   "total": 1,
   "changed": 1,
   "removed": 0
  },
  "truncated": false,
  "afterSha256": "2b69c90c1cdbeb8253b34a78e05e2d38c2875f070c345f0465f375ab52e186ca",
  "generatedAt": "2026-07-24T00:00:00.000Z",
  "beforeSha256": "c55d11e35f99b2c5e1eb592183654435da275e8f42119f4c4fca0e20af55f48a"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/decision-data-studio-json-diff-f800216c/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.ikoles.dev](https://www.zero.xyz/host/api.ikoles.dev/llms.txt)
