AccesPub API documentation

The AccesPub API makes your EPUBs accessible in batches from your own systems: it converts them to EPUB 3, fixes everything that can be fixed automatically, leaves what needs judgement (alternative text, tables, languages) to a person, and delivers the EPUB with its report and its accessibility ONIX 3.1. When nothing is pending and EPUBCheck finds no errors, the EPUB carries a WCAG 2.1 AA conformance statement, which is the publisher's own declaration, not a certification.

Two ways of working

  • Portal only: no coding, everything in the AccesPub portal.
  • Mixed model: your system creates batches, uploads EPUBs, sends metadata and commercial data and downloads the results through the API; human review happens in the portal, which your front end links to. See “Mixed model” in the integration guide.

Where to start

Resource What it is for
Integration guide Getting started, job lifecycle, human review, outputs, errors and credits. Start here.
Practical guide Every operation, one by one, explained in plain language with ready-to-run code in curl, Python and JavaScript (in Spanish).
Reference Every operation, parameter, response and schema, generated from the contract.
openapi.yaml The OpenAPI 3.1 contract, to import into Postman, Insomnia or Bruno, or to generate clients.
Python example One EPUB from start to finish, with interactive review in the terminal.
Node.js example The same flow in JavaScript, with no dependencies.
Portal help For people who review in the AccesPub web portal (ES · EN · CA · FR).
The API on video One EPUB from start to finish with real calls, in two minutes (in Spanish, with captions and transcript).

In five minutes

  1. Get a test key (ap_test_…) from your account administrator, or create one in the portal (Organisation → API keys). Test keys use no credits and their data is kept separate from live data.
  2. Try it:
curl -s https://api.accespub.app/v1/organization \
  -H "Authorization: Bearer ap_test_..."
  1. Run the example with one of your EPUBs:
pip install requests
export ACCESPUB_KEY=ap_test_...
python quickstart.py my-book.epub

The essentials

  • Base URL: https://api.accespub.app/v1. Authenticate with Authorization: Bearer <key>.
  • Asynchronous: uploading an EPUB returns 202 and a queued job; poll its status until it is ready.
  • The AI only suggests: decisions are made by a person registered in your organisation, and each one is signed.
  • Credits: used when each title is finalised for the first time (1 credit up to 150 images; one more for every additional 150). Test keys never use credits.
  • Errors as application/problem+json (RFC 9457) and idempotency with the Idempotency-Key header.

Technical questions? info@abserveis.net