# Endstate API ## Docs - [Use Endstate with AI tools](https://docs.endstate.io/ai-tools.md): Connect Claude, Cursor, ChatGPT, or any MCP client to the Endstate docs — search the API from your editor and install skills that scaffold Endstate integrations for you. - [Generate an e-value for a test chip](https://docs.endstate.io/api-reference/chips/generate-an-e-value-for-a-test-chip.md): Returns a fresh `e` value for a test chip. POST the returned `e` to `/v1/chips/{chip_id}` to test your integration end-to-end. Only valid for test chips. - [Get a chip replacement](https://docs.endstate.io/api-reference/chips/get-a-chip-replacement.md): Returns the status of a chip replacement. Poll until status is `confirmed`. - [List chips](https://docs.endstate.io/api-reference/chips/list-chips.md): Returns a cursor-paginated list of chips in your organization, each with a reference to the unit it is paired to. Use `is_test` to filter to test or encoded chips. - [Pair a chip](https://docs.endstate.io/api-reference/chips/pair-a-chip.md): Creates a chip in your organization paired to the unit you specify. - [Replace a unit's chip](https://docs.endstate.io/api-reference/chips/replace-a-units-chip.md): Pairs a replacement chip to the unit and retires the currently paired one. The replacement chip must already exist and not be paired to any unit. Available until the unit is claimed; afterwards the chip is permanently locked. Poll GET /v1/units/{unit_id}/chip-replacements/{replacement_id} for status… - [Verify a chip and issue a session token](https://docs.endstate.io/api-reference/chips/verify-a-chip-and-issue-a-session-token.md): Verify a chip tap and return chip, unit, and session details for follow-up flows. - [Claim a unit](https://docs.endstate.io/api-reference/claims/claim-a-unit.md): Hands a unit to a recipient address, authorized by the tap session token. `execution:"endstate_relay"` submits the claim for you; `execution:"client_broadcast"` returns a claim payload for you to submit. Poll GET /v1/units/{unit_id}/claims/{claim_id} for status. - [Get a claim](https://docs.endstate.io/api-reference/claims/get-a-claim.md): Returns the status of a claim. Accepts either an API key or a chip-tap session token. Poll until status is `claimed`. - [Create a collection](https://docs.endstate.io/api-reference/collections/create-a-collection.md): Creates a collection and returns it immediately in `deploying` status with its unique address. Provisioning completes asynchronously; the status becomes `active` once the collection is ready to use. - [Fetch a collection](https://docs.endstate.io/api-reference/collections/fetch-a-collection.md): Returns a single collection by id. - [List collections](https://docs.endstate.io/api-reference/collections/list-collections.md): Returns a cursor-paginated list of collections. Use `external_id` to filter to one caller-supplied identifier. - [Update a collection](https://docs.endstate.io/api-reference/collections/update-a-collection.md): Updates a collection's tap redirect URL. Send null to clear. - [API Reference](https://docs.endstate.io/api-reference/introduction.md): REST endpoints for the Endstate API, generated from the OpenAPI spec. - [Service health check](https://docs.endstate.io/api-reference/service/service-health-check.md): Returns the API's operational status. No authentication required. Suitable for load-balancer health probes and uptime monitoring. - [Service welcome](https://docs.endstate.io/api-reference/service/service-welcome.md): Service welcome message with pointers to docs and available API versions. No authentication. - [Introspect the bearer session token](https://docs.endstate.io/api-reference/session-tokens/introspect-the-bearer-session-token.md): Returns the scope of the session token presented in the `Authorization: Bearer end_sess_*` header. - [Get org settings](https://docs.endstate.io/api-reference/settings/get-org-settings.md): Returns org-level settings: the default tap redirect URL and your organization's network configuration (read-only, configured by Endstate). - [Update org settings](https://docs.endstate.io/api-reference/settings/update-org-settings.md): Sets the org-wide default tap redirect URL. Send null to clear. Network settings are read-only and returned for reference. - [Get a transfer](https://docs.endstate.io/api-reference/transfers/get-a-transfer.md): Returns the status of a transfer. Accepts either an API key or a chip-tap session token. Poll until status is `confirmed`. - [Transfer a unit](https://docs.endstate.io/api-reference/transfers/transfer-a-unit.md): Moves a unit from its current owner to a new owner, authorized by the tap session token. Returns a transfer payload that the unit's current owner submits to complete the transfer. Poll GET /v1/units/{unit_id}/transfers/{transfer_id} until status is `confirmed`. - [Create a unit](https://docs.endstate.io/api-reference/units/create-a-unit.md): Creates a unit in your organization, inside the given collection. - [Fetch a unit](https://docs.endstate.io/api-reference/units/fetch-a-unit.md): Returns a single unit by id, including its collection and issuance status. Poll `collection.token.status` until it is `active`. - [List units](https://docs.endstate.io/api-reference/units/list-units.md): Returns a cursor-paginated list of units, including each unit's collection and issuance status. Use `external_id` to filter to one caller-supplied identifier. - [Update a unit](https://docs.endstate.io/api-reference/units/update-a-unit.md): Updates a unit's tap redirect URL. Send null to clear. - [Authentication](https://docs.endstate.io/authentication.md): The Endstate API uses bearer tokens. There are two credential types: an API key for server-to-server requests and a session token for chip-scoped actions. - [Changelog](https://docs.endstate.io/changelog.md): API and documentation updates — including any breaking change shipped during early access, each with a migration note. - [Chips & verification](https://docs.endstate.io/concepts/chips.md): How NFC chips link physical products to their digital records, and how tap verification works. - [Claims](https://docs.endstate.io/concepts/claims.md): Transfer on-chain ownership of a unit to a recipient wallet, authorized by a chip-tap session token. Endstate can submit the transaction for you, or return one for you to broadcast. - [Collections](https://docs.endstate.io/concepts/collections.md): A collection groups related units under a shared registry, defines their serial-number namespace, and must be provisioned before units can be added. - [Core concepts](https://docs.endstate.io/concepts/overview.md): The building blocks of the Endstate API: collections, units, chips, verification, session tokens, tap redirects, and claims. - [Session tokens](https://docs.endstate.io/concepts/session-tokens.md): Short-lived proof that a specific chip was just tapped. Scoped to one chip, unit, and organization — safe to pass to a client without exposing your API key. - [Tap redirects](https://docs.endstate.io/concepts/tap-redirects.md): Control where a user lands after tapping a chip. Set a redirect URL on a unit, a collection, or your organization default — the most specific one wins. - [Transfers](https://docs.endstate.io/concepts/transfers.md): Move a unit from its current owner to a new owner, authorized by a chip-tap session token. The current owner signs and submits the transfer — Endstate authorizes it, but never moves a unit on an owner's behalf. - [Units](https://docs.endstate.io/concepts/units.md): A unit is the unique digital record of a single physical item — its digital twin. Units are the primary object you work with in the Endstate API. - [Errors](https://docs.endstate.io/conventions/errors.md): All Endstate API errors share a single envelope shape. Learn how to handle them reliably by branching on stable error codes. - [Pagination](https://docs.endstate.io/conventions/pagination.md): All list endpoints use cursor-based pagination. Learn how to request pages and iterate through large result sets. - [Response shape](https://docs.endstate.io/conventions/responses.md): How successful responses are structured. Single resources are returned at the top level; list responses wrap their array under a plural key alongside pagination. - [Versioning](https://docs.endstate.io/conventions/versioning.md): How the Endstate API versions its surface, what changes are safe within a version, and what to expect when a new version ships. - [Environments](https://docs.endstate.io/environments.md): Endstate exposes a single API base URL. Develop and test against it safely using test chips, then switch to encoded hardware for production. - [Claim a unit](https://docs.endstate.io/guides/claim-a-unit.md): End-to-end: transfer ownership of a verified unit to a recipient — from the tap that authorizes it through to on-chain confirmation, in either execution mode. - [Host your own verify page](https://docs.endstate.io/guides/host-verify-page.md): Run the entire post-tap experience on your own domain: point taps at a page you control, receive the chip_id and e, verify server-side, and render a branded authenticity result. - [Set up your catalog](https://docs.endstate.io/guides/set-up-catalog.md): Register your products in Endstate before they ship: create a collection, create a unit for each item, and pair an NFC chip. The one-time setup that makes items verifiable. - [Test without hardware](https://docs.endstate.io/guides/testing-without-hardware.md): Use test chips to exercise the full verification flow in development — no physical NFC hardware required. - [Verify a unit](https://docs.endstate.io/guides/verify-a-unit.md): The complete production flow for verifying an authentic physical item: handle a real user tap end-to-end, from reading the chip to issuing a verified session token. - [Introduction](https://docs.endstate.io/introduction.md): What the Endstate API does and how its core resources fit together. - [Quickstart](https://docs.endstate.io/quickstart.md): Get your first product verification working in about five minutes using a test chip — no hardware required. ## OpenAPI Specs - [openapi](https://docs.endstate.io/openapi.json)