Good API documentation is one of the most valuable things an engineering team can produce. It determines whether developers can use your API successfully — or give up and look elsewhere. Writing clear API docs in English requires specific patterns, vocabulary, and conventions that experienced technical writers use consistently.
The Structure of an API Reference Entry
Every endpoint in an API reference should include:
- Title and HTTP method + path
- Short description (one sentence)
- Authentication requirements
- Request parameters (path, query, body)
- Request example
- Response schema
- Response example
- Error codes
Language Patterns for Endpoint Descriptions
The standard convention is to describe what an endpoint does, using a verb in the third person present:
“Returns a list of all users in the organisation.”
“Creates a new order and returns the order ID.”
“Deletes the specified webhook and cancels future deliveries.”
“Updates one or more fields of the user profile.”
“Retrieves a paginated list of transactions filtered by date range.”
Do not write:
- “You can use this endpoint to get users.” — too informal
- “This will return users.” — imprecise tense
- “Get users.” — too minimal
Describing Parameters
Path parameters:
“
userId— string, required. The unique identifier of the user. Example:usr_a1b2c3.”
Query parameters:
“
page— integer, optional. The page number for paginated results. Default:1. Minimum:1.”
“
limit— integer, optional. The number of results per page. Default:20. Maximum:100.”
Request body fields:
“
“
role— enum, required. The user’s permission level. Accepted values:admin,member,viewer.”
Writing Request and Response Examples
Use realistic, self-explanatory examples. Avoid foo, bar, test123:
Request example:
POST /v1/users
Authorization: Bearer sk_live_abc123
Content-Type: application/json
{
"email": "alice@example.com",
"role": "member",
"name": "Alice Chen"
}
Response example:
{
"id": "usr_a1b2c3",
"email": "alice@example.com",
"role": "member",
"name": "Alice Chen",
"createdAt": "2026-06-13T09:00:00Z"
}
Writing Error Messages
Good error messages in an API have three qualities: they tell you what went wrong, why it went wrong, and ideally what to do about it.
| Weak error message | Strong error message |
|---|---|
| “Bad request.” | “The email field is required and must be a valid email address.” |
| “Not found.” | “No user with the ID usr_xyz was found. Verify the ID and try again.” |
| “Server error.” | “An unexpected error occurred. Please retry the request. If the issue persists, contact support with reference ID: ERR-20260613-8842.” |
| “Unauthorised.” | “The provided API key is invalid or has been revoked. Check your key in the dashboard.” |
Language for Notes, Warnings, and Tips
Use callout blocks to highlight important information:
Notes — supplementary information:
“Note: This endpoint returns results in descending order by creation date. Pagination is applied before filtering.”
Warnings — actions that could cause problems:
“Warning: Deleting a user is permanent and cannot be undone. All associated data will be removed.”
Deprecation notices:
“Deprecated: The
namefield is deprecated as of API v2.1. UsefirstNameandlastNameinstead. Thenamefield will be removed in v3.0.”
Writing the Authentication Section
“All API requests must include a valid API key in the
Authorizationheader using the Bearer token scheme.”
“API keys are scoped to a specific set of permissions. Attempting to perform an action outside your key’s permissions will return a
403 Forbiddenresponse.”
“Do not include your API key in URLs or log it to files. Treat it as a password.”
Common Documentation Language Patterns
| Pattern | Example |
|---|---|
| “Returns X” | “Returns a paginated list of invoices.” |
| “Creates X and returns Y” | “Creates the order and returns the full order object.” |
| “Must be X” | “The value must be a valid ISO 8601 date string.” |
| “If X, then Y” | “If the request body is omitted, the endpoint returns the current configuration.” |
| “Defaults to X” | “Defaults to false if not provided.” |
| “See also” | “See also: Webhook Events for a list of event types.” |
Quick Self-Editing Checklist
Before publishing API documentation, verify:
- Every endpoint has a description, parameters, and at least one example
- Examples use realistic values, not placeholders like “string” or “value”
- Error codes are documented with explanations
- Deprecated fields are clearly marked
- Language is consistent — do not mix “returns” and “will return” for the same type of endpoint
Clear API documentation is a product, not an afterthought. The developers who use your API will spend more time reading your docs than talking to you. Write for the reader who is stuck at midnight trying to make your endpoint work.
Navigating Nuance: Supporting Non-Native Speakers
Writing effective API documentation is about more than just accurately describing functionality; it’s about communicating clearly with a diverse team. A significant portion of that team may be developing their professional English skills alongside their technical abilities, and this can introduce subtle challenges. It’s crucial to move beyond simply stating what the code does and consider how you explain it in a way that minimizes ambiguity and supports comprehension. This isn’t about dumbing down your writing; it’s about recognizing different levels of linguistic fluency and proactively offering support.
One common issue arises during code reviews. Imagine receiving a comment like, “This doesn’t work.” While seemingly straightforward, it lacks crucial context. A more helpful response – particularly for someone still building their English – would be: “I noticed the process_data() function isn’t returning a value. Could you clarify whether this is intended to return a boolean or an object containing the processed data? The documentation currently states it returns ‘an object’, but I’m unsure if that aligns with the current implementation.” This approach directly addresses the problem while providing specific questions for clarification, framing the issue as a potential mismatch between expectation and reality. Similarly, in Slack conversations when describing a pull request, phrasing like “I’ve implemented the endpoint to handle requests with a status parameter” is clearer than simply stating “Fixed API call.”
Another key consideration is the use of precise terminology. Developers often rely on established technical vocabulary, but even within that realm, nuances can be lost in translation. For example, instead of saying “This improves performance,” which can feel vague, consider “This optimization reduces latency by an average of 15% under peak load conditions.” Quantifiable results paired with clear explanations are always preferable. When drafting PR descriptions, aim for active voice and avoid passive constructions that can obscure responsibility. “The team refactored the authentication module to enhance security” is better than “The authentication module was refactored by the team to enhance security.”
Finally, remember that offering support isn’t just about correcting errors; it’s about fostering a collaborative environment. A simple phrase like, “Would you like me to elaborate on any part of this documentation?” or “Do you have any questions about how this function is intended to be used?” demonstrates empathy and willingness to assist. Creating a culture where asking for clarification is encouraged – rather than perceived as a sign of weakness – significantly improves communication effectiveness across the entire team.
Keep practising
Turn this article into muscle memory
Five-minute exercises with instant feedback — built from the same kind of real IT language.
What to read next
Frequently asked questions
What will I learn from "How to Write API Documentation in English"?
This is a Intermediate-level Writing article covering writing, api-documentation, technical-writing and developer-experience. A practical guide to writing clear, professional API documentation in English — reference docs, guides, error messages, and the language patterns developers expect.
Is this article free to read?
Yes. Every article on CoderSlingo, including this one, is free to read with no account, sign-up, or paywall.
How is reading this article different from doing an exercise?
Articles like this one explain concepts and vocabulary in context through prose, while exercises are interactive drills — fill-in-the-blank, matching, and multiple-choice — that test and reinforce specific terms. Reading builds understanding; exercises build recall.
Can I practice the vocabulary used in this article?
Yes — this article's topic lines up with our writing exercises. Use the "Practice this vocabulary" link below to jump straight into a matching drill.
How long does "How to Write API Documentation in English" take to read?
About 8 min. Most CoderSlingo articles, including this one, are written to be read in one sitting, without needing a dictionary open in another tab.
Do I need to create an account to read or save this article?
No account is required to read any article. If you complete exercises elsewhere on the site, your progress is saved locally in your browser — no login needed.
What if I don't understand a technical term used in this article?
Check the site Glossary for plain-English definitions of common IT terms, or browse the #writing tag page for other Writing articles that use the same vocabulary in different contexts.
Can I share or link to "How to Write API Documentation in English"?
Yes — use the Twitter/X or LinkedIn share buttons at the end of the article, or copy the page URL directly. Attribution back to CoderSlingo is appreciated but the content is free to reference.
When was this Writing article published?
This article was published in 2026. New Writing articles are added regularly — visit the #writing tag page to see the full, continuously updated list.
Where can I find more articles like this one?
See "How to Write a Technical RFC in English", "How to Write Clear API Error Messages in English", "How to Use Active Voice in Technical Documentation" in the Related Articles section below, or browse all Writing articles from the main Blog index.