> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.fluxerlist.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.fluxerlist.com/_mcp/server.

# Embed a stat badge

Widgets are small SVG badges you can embed anywhere images work - a GitHub README, your bot's website, a support server's rules channel. They're public and unauthenticated, since an `<img>` tag can't send an `Authorization` header.

## The endpoints

| Listing | Endpoint                              | `{id}` is                                            | `stat` values                |
| ------- | ------------------------------------- | ---------------------------------------------------- | ---------------------------- |
| Bot     | `GET /api/v1/bots/{id}/widget.svg`    | Your Fluxer bot ID, FluxerList UUID, or listing slug | `servers` (default), `votes` |
| Server  | `GET /api/v1/servers/{id}/widget.svg` | Your Fluxer guild ID                                 | `members` (default), `votes` |

No API key needed - just link to the URL directly.

**`Markdown`**

```md title="Markdown"
![FluxerList server count](https://fluxerlist.com/api/v1/bots/YOUR_BOT_ID/widget.svg)
```

**`HTML`**

```html title="HTML"
<img
  src="https://fluxerlist.com/api/v1/bots/YOUR_BOT_ID/widget.svg?stat=votes"
  alt="FluxerList votes"
/>
```

## How it behaves

> **Info**
>
> Widgets always return a `200` with an SVG body, even when something's wrong - there's no `404` or `429` to handle. A missing or unapproved listing renders a "not found" badge, and a caller sending too many requests gets a "rate limited" badge instead of an error. This keeps embeds from showing broken-image icons.

* **Caching.** Badges are cached for 5 minutes (`Cache-Control: public, max-age=300`), so don't expect second-by-second updates.
* **Hidden member counts.** If a server owner has set their member count to hidden, `?stat=members` renders a "hidden" badge instead of the real number - the widget respects the same setting the listing page does.
* **No key, no ownership check.** Anyone can embed anyone's badge, the same as viewing a listing page.

## Related

#### [Find your listings](/find-your-listings)

Look up the IDs you need to build a badge URL.

#### [API reference](/overview)

Every parameter and response.