# Migration Export Compare

> Migration Export Compare is a paid API for AI agents from gogeta2-u35175.vm.elestio.app, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-29).

Compares two JSON export snapshots (before/after) by key fields and reports additions, removals, and field-level changes without any database access or writes.

## Facts

- Endpoint: POST https://gogeta2-u35175.vm.elestio.app/agents/v1/structured/migration-compare?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-29
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/migration-export-compare-21655b26
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_tIFfhAeX4xma-vWKBkG77

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 migration-export-compare-21655b26 -d '<json body>'
```

Example prompt: I have two JSON exports from before and after our user migration — the 'before' array has the old records and the 'after' array has the new ones. Compare them using 'user_id' as the key field and check 'email', 'role', and 'status' for changes — tell me which users were added, removed, or had fields modified.

## When to prefer this

Choose this endpoint when you need a pure, stateless diff of two JSON export arrays without touching any database. Ideal for post-migration audits, deployment change detection, and import validation where you already have before/after snapshots in hand. Prefer this over database-query-based diff tools when you want reproducible, offline comparison with no side effects and clear type-aware field diffing.

## Known failure modes

- Missing or empty key_fields causes inability to uniquely identify records
- Duplicate key values within a single export may produce ambiguous diff results
- Records exceeding 1000 items per array are rejected
- key_fields or compare_fields entries exceeding 256 characters are rejected
- Malformed JSON or non-object array items cause validation errors
- If compare_fields is omitted, the scope of comparison may be undefined

## How this service works

Compare two supplied JSON exports using unique string key fields. Report additions, removals and changed fields, keeping missing/null/boolean/number distinct. No database access or writes; source export completeness is not established.

## Output

Returns a structured diff report listing: records present in 'after' but not 'before' (additions), records present in 'before' but not 'after' (removals), and records present in both where one or more compared fields changed (changes), with field-level before/after values. Null, boolean, and numeric types are kept distinct in comparisons.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "after": {
   "type": "array",
   "items": {
    "type": "object"
   },
   "maxItems": 1000
  },
  "before": {
   "type": "array",
   "items": {
    "type": "object"
   },
   "maxItems": 1000
  },
  "key_fields": {
   "type": "array",
   "items": {
    "type": "string",
    "maxLength": 256,
    "minLength": 1
   },
   "maxItems": 64,
   "minItems": 1,
   "uniqueItems": true
  },
  "compare_fields": {
   "type": "array",
   "items": {
    "type": "string",
    "maxLength": 256,
    "minLength": 1
   },
   "maxItems": 64,
   "minItems": 1,
   "uniqueItems": true
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/migration-export-compare-21655b26/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from gogeta2-u35175.vm.elestio.app](https://www.zero.xyz/host/gogeta2-u35175.vm.elestio.app/llms.txt)
