---
title: "REST API"
description: "Register images with the XI Parallax engine so they can be found again, and look images up to learn whether they are already registered."
published: 2026-09-22T14:01:25.9707+00:00
updated: 2026-09-22T14:01:25.9707+00:00
url: https://xiobjects.com/docs/xio/parallax/rest-api
source: XI Objects
---

<!-- xion:doctype xion+markdown -->
<!-- xion:metadata
{
  "version": "1.0",
  "content_type": "application/xion\u002Bmarkdown",
  "source_type": "xi-content/doc",
  "generator": "xio-content-publisher/1.0.0",
  "generated": "2026-09-22T14:00:22.9731280\u002B00:00",
  "encoding": "utf-8",
  "render_intent": "markdown",
  "title": "REST API",
  "slug": "xio/parallax/rest-api",
  "copyright": "\u00A9 2026 XI Objects Inc"
}
-->

# REST API

XI Parallax exists to recover lost attribution.

During the closed beta, look-up and the records request require an API token issued by XI Objects. At general release, both become generally available without a token, so anyone can find a registered image and recover its attribution. Registration and take-down remain operations for token holders.

A creator registers an image together with the manifests that say who made it and on what terms: their own JSON, a C2PA manifest, whatever they attach. Parallax derives what the engine needs, discards the pixels, and publishes a signed record. Later, anyone who finds that image, or a copy, a crop or a derivative of it, can look it up, get the original image's hash from the match, and ask for that record. The manifests come back. It does not matter which account registered the image, and it does not matter that the file they found had the metadata stripped out of it years ago.

Finding the image and recovering its attribution are two requests. [Look-up](/docs/xio/parallax/rest-api/look-up-single-image) finds the original. [The records request](/docs/xio/parallax/rest-api/records) recovers the attribution.

The API is a private beta. An operator mints an API token for your account and gives it to you. Every route except the health check requires that token.

Base URL: `https://api.parallax.xiobjects.com`

## How to read this collection

Start with [Getting Started](/docs/xio/parallax/rest-api/getting-started). It covers the token, the health check, the error shape, and a full first pass: register an image, look it up, take it down.

After that, pick the page for the job you are doing. The guides explain the order of calls and what each answer means. The [REST API reference](/docs/xio/parallax/rest-api/reference) lists every endpoint with its request fields, response shapes and statuses.

## Pages

- [Getting Started](/docs/xio/parallax/rest-api/getting-started): the token, the health check, the OpenAPI document, the error shape, and a first end to end pass.
- [Register a single image](/docs/xio/parallax/rest-api/register-single-image): one image in one request, and what each refusal means.
- [Register in batches](/docs/xio/parallax/rest-api/register-in-batches): the slot conversation, upload, resume, commit, progress.
- [Look up a single image](/docs/xio/parallax/rest-api/look-up-single-image): one image in, one verdict out.
- [Look up in batches](/docs/xio/parallax/rest-api/look-up-in-batches): the look-up slot conversation and its results.
- [Recover an image's attribution](/docs/xio/parallax/rest-api/records): the manifests for any image you have found, whoever registered it.
- [Manifests](/docs/xio/parallax/rest-api/manifests): what a manifest is here, how to state one, and what comes back.
- [Take down a registration](/docs/xio/parallax/rest-api/take-down): stop an image matching.
- [Quotas and stats](/docs/xio/parallax/rest-api/quotas-and-stats): what you are granted, what spends it, and how to read your usage.
- [Custody and privacy](/docs/xio/parallax/rest-api/custody-and-privacy): what happens to your pixels, what is stored, and what another account can learn.
- [Errors and refusals](/docs/xio/parallax/rest-api/errors-and-refusals): every status and every refusal reason, with what to do about each.
- [REST API reference](/docs/xio/parallax/rest-api/reference): the endpoint by endpoint contract.
<!-- xion:trust
{
  "v": 1,
  "canon_v": 1,
  "ctx": "xiobjects.com/content",
  "hash_blake3_hex": "7aced2d8fa210ac6834e2a94259f13029a507b45cd8bb5618a9bfa03b181afca",
  "hash_sha256_hex": null,
  "sig_alg": "ed25519",
  "sig_b64": "EqnLc8ahMl71RNc8NK-pvw-xyBRBuh4rJjOZIns5MccDh1WN9w3RTWc0YUt8uro50YOn0eqMaa9-GweEq2_CDA",
  "pubkey_b64": "80eIkQXFTnQXrRMp3MkWRLzrLg7c8p2ENT-7Jl95248",
  "x509_chain_pem": [
    "-----BEGIN CERTIFICATE-----\r\nMIIB9DCCAaagAwIBAgIQe/Ne/1C0HXiEirXReKD8tzAFBgMrZXAwLjEsMCoGA1UE\r\nAwwjWEkgT2JqZWN0cyBJbmMgQ29udHJvbCBJbnRlcm1lZGlhdGUwHhcNMjYwOTIy\r\nMTM1NTA5WhcNMjYxMDIyMTM1NTA5WjBLMR4wHAYDVQQDDBV4aW8tY29udGVudC1w\r\ndWJsaXNoZXIxFzAVBgNVBAoMDlhJIE9iamVjdHMgSW5jMRAwDgYDVQQLDAdDb250\r\nZW50MCowBQYDK2VwAyEA80eIkQXFTnQXrRMp3MkWRLzrLg7c8p2ENT\u002B7Jl9524\u002Bj\r\ngbwwgbkwDAYDVR0TAQH/BAIwADAOBgNVHQ8BAf8EBAMCB4AwEwYDVR0lBAwwCgYI\r\nKwYBBQUHAyQwZQYDVR0jBF4wXIAUOym3mFmw/qs1fgKrujCkxhrTk7KhLqQsMCox\r\nKDAmBgNVBAMMH0luc3RpdHV0ZSBvZiBQcm92ZW5hbmNlIFJvb3QgQ0GCFFJgN/ix\r\nQn72H6h3T5lEr9f8lJQFMB0GA1UdDgQWBBTe55DaK2WJhR5A2Q\u002B2FQqSBEfNPzAF\r\nBgMrZXADQQDXr7/oGfBfYRxxQz8FueMmjx4aEb2SIL69zwPk8JBTPnG18IwdTD\u002Bs\r\ndcO\u002BZxHxMl5MmiIoElk3AD0iv7m\u002B2doK\r\n-----END CERTIFICATE-----\r\n",
    "-----BEGIN CERTIFICATE-----\r\nMIIByDCCAXqgAwIBAgIUUmA3\u002BLFCfvYfqHdPmUSv1/yUlAUwBQYDK2VwMCoxKDAm\r\nBgNVBAMMH0luc3RpdHV0ZSBvZiBQcm92ZW5hbmNlIFJvb3QgQ0EwHhcNMjUxMTAy\r\nMDMxNzEyWhcNMzAxMTAxMDMxNzEyWjAuMSwwKgYDVQQDDCNYSSBPYmplY3RzIElu\r\nYyBDb250cm9sIEludGVybWVkaWF0ZTAqMAUGAytlcAMhAFSS/pggSRmTcAMko7uc\r\nATH8OHgxVymd5mBFlPXbJkgio4GtMIGqMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYD\r\nVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBQ7KbeYWbD\u002BqzV\u002BAqu6MKTGGtOTsjBlBgNV\r\nHSMEXjBcgBQAZRTDswSVORu\u002BkUOKX6WvrOvmQKEupCwwKjEoMCYGA1UEAwwfSW5z\r\ndGl0dXRlIG9mIFByb3ZlbmFuY2UgUm9vdCBDQYIUJqoJlpiSFg\u002B7W5IJLMrLttgR\r\nQp4wBQYDK2VwA0EA5FOht7YOsVRPp/FOKMQ\u002B3Mo9JxrvGR3ylKWAWNm6OUV7N3DB\r\nI9cD62wU5I0d0EKDBy0CX9DnoqUyxv5yguraAA==\r\n-----END CERTIFICATE-----\r\n",
    "-----BEGIN CERTIFICATE-----\r\nMIIBaTCCARugAwIBAgIUJqoJlpiSFg\u002B7W5IJLMrLttgRQp4wBQYDK2VwMCoxKDAm\r\nBgNVBAMMH0luc3RpdHV0ZSBvZiBQcm92ZW5hbmNlIFJvb3QgQ0EwHhcNMjUxMTAy\r\nMDMwNTEyWhcNMzUxMDMxMDMwNTEyWjAqMSgwJgYDVQQDDB9JbnN0aXR1dGUgb2Yg\r\nUHJvdmVuYW5jZSBSb290IENBMCowBQYDK2VwAyEAEWNZl\u002Br3IC7\u002BgBh90Yo1kWk1\r\npZCVzVuFdFT7qBBU8W2jUzBRMB0GA1UdDgQWBBQAZRTDswSVORu\u002BkUOKX6WvrOvm\r\nQDAfBgNVHSMEGDAWgBQAZRTDswSVORu\u002BkUOKX6WvrOvmQDAPBgNVHRMBAf8EBTAD\r\nAQH/MAUGAytlcANBAO6QeydOFNrN75qNyftggYudsxMyl4w9qWkSdZ6hlhrRcbSr\r\niG9Si0kbrIJOwYB/LTBU0RM4Rl\u002Bo9PM3Qp0mPwo=\r\n-----END CERTIFICATE-----\r\n"
  ],
  "key_id": "neMNrgbgR0WsVqSu1szgWVg17A-WwWakQStPffBf6Dw",
  "created_at": "2026-09-22T14:00:22Z"
}
-->