The API Experience

API documentation is a user experience problem.

Most API documentation is written from the inside out: here is what we built, here are its parameters. Developers read it from the outside in: here is what I am trying to do, show me the shortest safe path. My documentation is structured for the second reader.

That means every endpoint answers four questions in order: what does this do, what do I send, what comes back, and what happens when it fails. The last question is the one most documentation skips, and it is the one that costs the most support tickets. A developer who can diagnose a 401 from the docs alone never opens a ticket at all.

It also means writing two registers of the same truth. The technical view carries the exact contract: schemas, types, status codes. The human view carries the intent: what this is for, when to reach for it, what to check first. The demo below shows both, toggle between them.

This endpoint is fictional. The standards are not: they are the ones I applied to the WOPA API documentation at Accenture and the KHEMEIA developer guides at Cyient.

The demo: one endpoint, documented completely.

POST/v1/documents/transform
Request
POST /v1/documents/transform
Authorization: Bearer sk_live_...
Content-Type: application/json

{
  "source_format": "markdown",
  "target_format": "dita",
  "content": "# Getting started...",
  "options": {
    "validate": true,
    "locale": "en-US"
  }
}
Response · 200
HTTP/1.1 200 OK

{
  "id": "tf_8Kd93hAq",
  "status": "complete",
  "target_format": "dita",
  "output_url": "https://api.example.com/v1/documents/tf_8Kd93hAq/output",
  "warnings": []
}
Error states: documented, not hidden

When documentation is right, developers don't need to ask questions.

← Back to Portfolio