Callouts

Callouts draw attention to important information. Use them sparingly to maintain impact.

Note

Use <Note> for important context that readers shouldn't miss:

<Note>
API keys are scoped to a single project. Create separate keys for each environment.
</Note>

API keys are scoped to a single project. Create separate keys for each environment.

Warning

Use <Warning> for potential issues, breaking changes, or dangerous operations:

<Warning>
This action cannot be undone. All associated data will be permanently deleted.
</Warning>

This action cannot be undone. All associated data will be permanently deleted.

Tip

Use <Tip> for helpful suggestions and best practices:

<Tip>
Enable caching in production to reduce API calls by up to 90%.
</Tip>

Enable caching in production to reduce API calls by up to 90%.

Info

Use <Info> for supplementary information:

<Info>
This feature is available on the Pro plan and above.
</Info>

This feature is available on the Pro plan and above.

Danger

Use <Danger> for destructive or irreversible operations:

<Danger>
Deleting a project permanently removes all pages, builds, and analytics data.
</Danger>

Deleting a project permanently removes all pages, builds, and analytics data.

Caution

<Caution> is an alias for <Warning> — use whichever reads better:

<Caution>
Regenerating your webhook secret invalidates all in-flight deliveries.
</Caution>

Regenerating your webhook secret invalidates all in-flight deliveries.

With Titles

Add a custom title with the title prop:

<Note title="Rate Limiting">
The API is limited to 100 requests per minute per API key.
</Note>

The API is limited to 100 requests per minute per API key.

With Code

Callouts can contain code blocks and other markdown:

<Warning title="Breaking Change in v3">
The `userId` parameter has been renamed to `user_id`:

\`\`\`diff
- client.users.get({ userId: "123" })
+ client.users.get({ user_id: "123" })
\`\`\`
</Warning>

The userId parameter has been renamed to user_id:

- client.users.get({ userId: "123" })
+ client.users.get({ user_id: "123" })

Blockquote Shorthand

Plain Markdown blockquotes are auto-styled as callouts — useful for content migrated from other platforms. Two forms are recognized:

Bold label — the label picks the callout type, each with its own icon and palette:

> **Note:** API keys are scoped to a single project.
> **Warning:** This action cannot be undone.
> **Security:** Never expose your secret key in client-side code.
> **Success:** Your webhook endpoint is now verified.
> **Important:** Sandbox and production use separate API keys.
Label Type Icon
Note Note Document (indigo)
Info, Information Info Circle-info (blue)
Tip, Hint Tip Lightbulb (emerald)
Warning, Caution Warning Triangle-alert (amber)
Danger, Error, Critical Danger Octagon-x (red)
Security, Secure Security Shield-check (teal)
Success, Complete Success Circle-check (green)
Important, Remember, Attention Important Diamond-alert (violet)

ReadMe-style emoji prefix📘/📝/📌 → Note, ⚠️/🚧 → Warning, 💡 → Tip, 🚨/🛑/ → Danger, ℹ️ → Info, 🔒/🛡️ → Security, /👍 → Success, → Important:

> 📘 Note
>
> Every external account must be associated with a customer.

The emoji is replaced with a custom SVG icon matching the callout type, and the first line becomes the callout title — emojis never render in your published docs.

Props

Prop Type Default Description
title string (none) Optional heading
children ReactNode Content (required)

When to Use

Callout Use For
Note Important context, prerequisites, key information
Warning Breaking changes, destructive actions, common pitfalls
Tip Best practices, optimization suggestions, shortcuts
Info Supplementary details, feature availability, links

Best Practices

Limit callouts to 1-2 per section. Too many callouts create visual noise and reduce their impact.

  • Keep callout content concise (1-3 sentences)
  • Use the appropriate type for the message
  • Don't nest callouts inside callouts
  • Place callouts near the relevant content
Was this page helpful?