Export · Integrations

Connect Bristlenose to Miro

Push your analysed quotes straight onto a Miro board — a first-draft research wall you can rearrange with your team, instead of building it sticky by sticky.

What you get.

One column per section, then one per theme — the same left-to-right order as the report's Quotes page. Pink headers, yellow quote stickies, stacked in session-then-time order. Bristlenose creates a new board every time and never touches your existing ones.

The one-time hurdle: getting a Miro “key”.

Miro won't let an outside app write to your boards until you grant it permission. There are two ways to do that. The Connect button is one click and needs no setup — use it if you can. The manual key route involves creating a small Miro “app” and copying a token; it's a five-minute developer detour, and it's the part most researchers find fiddly. We've written it out step by step below so you don't have to guess.

Before you start

A Miro account. A free plan works for trying this out. Note Miro's free plan limits how many editable boards you can keep (Free plan limits) — a paid plan removes the cap.
A team where you can create boards. If you're on a company Miro, some organisations restrict who may install apps or create developer tokens — you may need an admin's help.
Two permissions (“scopes”): boards:read and boards:write. The setup screen asks for these; that's all Bristlenose needs.
About a minute of comfort with copy-paste. The manual route asks you to copy one token from Miro and paste it into Bristlenose. That's the whole “key dance”.

Option A — Connect button recommended · coming in v1

In the report toolbar, choose Export → Send to Miro → Connect to Miro. Your browser opens Miro's permission screen, you click Allow, and you're returned to Bristlenose — done. No app to create, no token to copy. Bristlenose stores the connection securely in your system keychain and refreshes it automatically.

This uses Miro's standard OAuth 2.0 sign-in (with PKCE — no shared secret). If your org blocks third-party app authorisation, fall back to Option B. How Miro OAuth works ↗

Option B — Paste a token (the manual key dance) available now

If you can't use the Connect button, create a personal Miro app once and paste its token. You only do this a single time.

  1. Open your Miro apps page

    Go to miro.com/app/settings/user-profile/apps (Profile settings → Your apps), or the Miro Developer dashboard.

  2. Create a new app

    Click Create new app. Give it a name like “Bristlenose export” and associate it with the team whose boards you'll write to. Miro: build your first app ↗

  3. Tick the two permissions

    In the app's Permissions, enable boards:read and boards:write. Leave everything else off — Bristlenose needs nothing more.

  4. Install the app and copy the token

    Click Install app and get OAuth token, choose your team, and confirm. Miro shows you an access token — a long string. Copy it. Miro: access tokens ↗

    Treat this token like a password — it can read and write your boards. Don't paste it into chats or commit it to a repo.

  5. Paste it into Bristlenose

    Either paste it into Export → Send to Miro → Paste token in the report, or from a terminal:

    bristlenose configure miro

    Bristlenose validates the token immediately (a harmless read of one board) and stores it in your system keychain. If it's wrong or missing a scope, you'll be told exactly which.

Where your data goes.

Bristlenose runs entirely on your machine — but sending a board to Miro uploads the selected quotes to Miro's servers, where your team can see them. Miro becomes a data sub-processor for that content. Bristlenose shows you exactly how many quotes will be sent and asks you to confirm before anything leaves your laptop. Hidden quotes are never included. See SECURITY.md for the sub-processor note.

If something goes wrong

You seeWhat it means
Invalid or expired tokenThe token was mistyped, or it expired. Create a fresh one (Option B) or reconnect (Option A).
Token lacks required scopesThe app is missing boards:write. Re-open the app's Permissions, enable it, reinstall, and copy the new token.
Only 3 boards editableA free developer team keeps just the three most recent boards editable. Use a paid team, or delete old test boards. Free plan limits ↗
Export paused / retryingLarge boards can hit Miro's rate limit; Bristlenose backs off and resumes automatically. Miro rate limits ↗