◆ Sapport for developers API reference Error catalog OpenAPI
Sections

#Changelog

Status: Available. The log has been kept since the first publication of the documentation.

Purpose: record changes to the public API contract and the documentation. Any breaking change and any deprecation is announced here at least 90 days before it takes effect (the Deprecation and Sunset headers duplicate the entry in API responses; see Conventions).

#Versioning policy

RuleDescription
Version in the address/api/public/v1
Within a versionOnly additive changes (new endpoints, optional parameters, response fields)
Breaking changeShips as a new version (v2); v1 keeps working throughout the deprecation period
Notice periodAt least 90 days before shutdown
How to find outAn entry here + the Deprecation and Sunset headers in responses
Page statuses"Available", "Beta", "Planned": see the README

#Entry format

Each entry contains the date, the affected area, and the type of change: added, changed, deprecated, removed, fixed, security.


#2026-10-11 — server API: reading, wallet, webhooks v2

API

Documentation


#2026-10-11 — first edition of the documentation

Documentation

API

The v1 server API has not been released yet: there have been no contract changes. Until the OpenAPI specification is published, the response examples are illustrative.

#Planned platform changes that affect integrators

The entries below are warnings about what will change, not a log of completed changes.

WhatTypeWho it affects
Outgoing webhooks of the previous version (v1) are replaced by webhooks v2: the envelope {id, type, api_version, created_at, livemode, data}, the Sapport-Signature signature, retries, a delivery log, secret rotation. The operator handoff event handoff.requested is replaced by conversation.handoff_requestedchangedAnyone who receives webhooks of the previous version. The customer message text (content) is removed from the previous version's payload
Wallet and exchange suspension: GET /wallet, the wallet block in GET /me (state, exchange, topup_url), the 402 wallet_suspended code on all routes when the balance is negative or the wallet is blocked, deferred webhook delivery (details)addedAll server API clients
A single error format application/problem+json with errors[] by JSON PointeraddedAll server API clients
Cursor pagination, Idempotency-Key, RateLimit-* headers, asynchronous operations (operation)addedAll server API clients
Test keys and the sandboxaddedAnyone who wants to test an integration without production data

#How to follow changes