Documentation Writing Guidelines

Standards and best practices for writing API and integration documentation.


Table of Contents


Philosophy & Audience

Why These Docs Exist

These guides exist to empower external stakeholders to build integrations and workflows using our API. They should answer the question: "How can I use this to solve my problem?" β€” helping technical readers connect their systems to ours with confidence.

Target Audiences

Audience
What They Need
How They'll Use It

Integration Developers

Clear API contracts, examples, and workflow patterns

Building custom integrations, automating processes, connecting systems

Technical Administrators

Understand capabilities and configuration options

Setting up webhooks, managing API keys, configuring integrations

Solutions Architects

Understand how the API fits into their architecture

Planning integrations, evaluating capabilities, designing workflows

Technical Decision-Makers

Understand what's possible and the effort involved

Evaluating feasibility, scoping projects, making build vs. buy decisions

The Golden Rule

If a technically-minded non-engineer can't understand the main content, we've failed.

Deep implementation details are valuable, but they belong in clearly-marked sections β€” not scattered throughout the document. The goal is empowerment, not overwhelm.

Goals

  1. Enable self-service integration β€” Readers can build working integrations without contacting support

  2. Answer "how do I accomplish X?" β€” Practical guidance, not just reference material

  3. Reduce time-to-integration β€” Clear examples and patterns accelerate implementation

  4. Build confidence β€” Readers understand what to expect and how to handle edge cases

  5. Support diverse technical backgrounds β€” Accessible to anyone comfortable with APIs, not just engineers

  6. Inspire possibilities β€” Show what's achievable so readers can envision their own workflows


Writing Guidelines

Voice & Tone

  • Conversational but professional β€” Write like you're explaining to a smart colleague, not writing a textbook

  • Active voice β€” "The API returns a response" not "A response is returned by the API"

  • Direct and concise β€” Get to the point; respect the reader's time

  • Empowering β€” Focus on what the reader can accomplish, not limitations

  • Empathetic β€” Anticipate confusion and address it proactively

Language Rules

βœ… Do
❌ Don't

Use plain English for main content

Use jargon without explaining it first

Define technical terms when first introduced

Assume everyone knows what "webhook payload" means

Explain why something works a certain way

Only explain what happens

Use analogies for complex concepts

Dive straight into implementation details

Write "When you send a POST request..."

Write "When webhookHandler() processes the request..."

Focus on the reader's goal

Focus on internal implementation

Formatting Discipline

Bold text should be used intentionally to make points β€” not to randomly highlight words.

Less is more. When everything is emphasized, nothing is.

βœ… Good Use of Bold
❌ Bad Use of Bold

Webhooks do not retry after a successful response.

Webhooks do not retry after a successful response.

The key point: events are delivered in order of creation.

The key point: events are delivered in order of creation.

Use bold for the single most important takeaway in a paragraph.

Use bold for every important-sounding word in a paragraph.

Guidelines:

  • Bold the conclusion, not every step leading to it

  • Bold terms being defined, not random nouns

  • Bold warnings or critical info, not general statements

  • If a sentence has more than one bold phrase, reconsider β€” pick the most important one

The Two-Tier Content Model

Every guide should have two tiers of content:

Tier 1: General Content (Everyone)

This is the main body of the document. It should be:

  • Readable by technical non-engineers β€” An operations manager or solutions architect can understand it

  • Outcome-focused β€” Explains what you can do and why it works this way

  • Practical language β€” Uses API and workflow terminology, not internal code concepts

  • Visually supported β€” Diagrams show flows and relationships

Example (General Content):

When an event occurs in your system, you can configure a webhook to notify our API automatically. The webhook sends a payload containing the event details, and our system processes it based on your configured rules.

Tier 2: Technical Deep-Dives (Developers)

Technical details are contained in clearly-marked sections. They should be:

  • Visually distinct β€” Use a blockquote or callout format

  • Skippable β€” Non-developer readers can skip without losing context

  • Implementation-focused β€” Code samples, data structures, authentication details

  • Precise β€” Include exact field names, data types, and expected formats

Format for Technical Sections:

Glossary Requirement

Every guide must include a Key Terms section near the top that defines domain-specific vocabulary in plain language. This ensures everyone starts with the same understanding.

Example:

Term
Definition

Webhook

An automated message sent from one system to another when an event occurs

Payload

The data included in a webhook or API request

Endpoint

A specific URL where your system receives or sends data

Subscription

A configuration that determines which events trigger webhooks

FAQ Structure

FAQs should be written from the integrator's perspective, not the internal engineer's:

βœ… Good FAQ Question
❌ Bad FAQ Question

"Why isn't my webhook receiving events?"

"Why did webhookDispatcher fail to enqueue?"

"How do I verify a webhook signature?"

"How does HMAC validation work internally?"

"Can I filter which events trigger my webhook?"

"How do I configure event filtering in the database?"


Visual Engagement Standards

Documentation should be scannable and engaging β€” not a wall of text. Use these formatting patterns consistently across all guides:

1. Emoji Section Headers

Use emojis on major section headers for instant visual recognition:

2. TL;DR Boxes

Add a quick summary at the top of dense sections:

3. Tip / Warning / Info Callouts

Use consistent emoji-prefixed blockquotes throughout:

4. Quick Check Lists in FAQs

Make troubleshooting scannable with checkbox-style lists:

5. Key Takeaway Boxes

End major sections with a highlighted takeaway:

6. Collapsible Technical Details

For deep technical content that most readers can skip (GitHub-flavored Markdown):

7. Use Case Cards

Make use cases visually distinct with summary tables:

Standard Emoji Reference

Use these emojis consistently across all documentation:

Emoji
Usage

🎯

Overview sections, key takeaways

πŸ“–

Key terms / glossary

βš™οΈ

How it works / mechanics

πŸ’‘

Key concepts, tips

πŸ“‹

Use cases, examples

❓

FAQ sections

πŸ”§

Technical reference, deep-dives

πŸ“Œ

TL;DR summaries

⚠️

Warnings, common mistakes

ℹ️

Notes, additional context

βœ…

Checklist items, do's

❌

Don'ts, failures

πŸ“—

Positive use case (success path)

πŸ“™

Neutral use case (alternative path)

πŸ“•

Negative use case (error/edge case)

πŸ”

Quick check / diagnosis

πŸ“

Detailed explanation

πŸ‘€

Audience indicator (General)

πŸ‘©β€πŸ’»

Audience indicator (Developers)


Document Structure

Each guide follows a consistent structure designed for multiple audiences:


Diagram Standards

Diagrams should be understandable without reading surrounding text.

Requirements:

  • Use descriptive labels, not technical names

  • Include a brief caption explaining what the diagram shows

  • Use ASCII art for compatibility (renders in GitHub, Slack, etc.)

Example:

Tips for ASCII diagrams:

  • Use box-drawing characters: β”Œ ┐ β”” β”˜ β”‚ ─ β”œ ─ ┬ β”΄ β”Ό

  • Use arrows: β†’ ← ↑ ↓ β–Ά β—€ β–² β–Ό or ──▢

  • Keep labels short and clear

  • Test rendering in GitHub preview


Technical Deep-Dive Format

All technical content should be contained in clearly-marked sections:

This format:

  • Is visually distinct (blockquote + emoji)

  • Can be skipped by non-developer readers

  • Provides working code examples for those implementing integrations


Quality Checklist

Use this checklist when writing or reviewing documentation:

Accessibility (Required)

Technical Depth (Required)

Completeness

Formatting


Contributing

When you find something that could be improved:

  • Quick fixes: Open a PR with your change

  • Missing content: Create a GitHub issue tagged documentation

  • New guide needed: Follow this guide's structure template


These guidelines help us maintain documentation that empowers technical stakeholders to build integrations and workflows with confidence.

Last updated