---
title: "Read a brand's link-in-bio page, its views and each link's clicks"
method: GET
path: "/api/bio"
---

# Read a brand's link-in-bio page, its views and each link's clicks

`GET /api/bio`

## Request

- Base URL: `https://postwire.io`
- URL: `https://postwire.io/api/bio`
- Auth: HTTP bearer

The brand's page at postwire.io/@<slug> (free on every plan): its settings, the public URL, views (people only: link previews and bots are left out) and clicks per link, all time and the last 30 days. With ?check=<slug>, says whether that address is free and allowed instead. Before the server's bio-page table exists the answer is available: false, code bio_unavailable.

## Query parameters

- `brand_id` string, uuid
- `check` string

## Response `200`

{ available, brand_id, page: { slug, title, bio, links: [{ label, url }], show_socials, hide_badge, updated_at } | null, url, stats: { views, views_30d, links: [{ label, url, clicks, clicks_30d }] } | null, socials: [{ platform, handle }], avatar_url, can_hide_badge, limits }

## Other responses

- `404`: code brand_not_found

---

[API](https://skmtc.dev/postwire/apis/postwire-api.md) · [All operations](https://skmtc.dev/postwire/apis/postwire-api/llms.txt) · [OpenAPI document](https://skmtc.dev/postwire/apis/postwire-api/revisions/513a409ab8f7?raw)
