For the complete documentation index, see llms.txt. This page is also available as Markdown.

Miro

Harmony's Miro integration connects your Miro organization to give you visibility into who holds a Miro license, which tier they are on, and how often they actually sign in. Once connected, Harmony syncs your Miro data automatically so you can spot unused seats, review access, and understand adoption alongside the rest of your SaaS portfolio.

What the Miro integration enables

Capability
Description

License Tier Visibility

See each user's license tier (Paid, Free, or Unknown) alongside activity data

Login Trends

Track sign-in activity over time to understand adoption and spot drop-offs

Access Review

Review each member's Miro role - in Miro's own terms - during access reviews

Offboarding Verification

Confirm departed employees no longer hold an active Miro seat


Prerequisites

  1. A Miro Enterprise plan - the APIs Harmony uses are available only on Enterprise. Miro's other plans do not expose organization members or audit logs.

  2. Company Admin role in Miro - required both to see the Enterprise permissions when creating the app and to authorize it

  3. A Harmony account with admin privileges


Connect Miro to Harmony

Step 1: Create a Miro app

  1. Sign in to Miro as a Company Admin

  2. Click your account avatar and select Settings

  3. Open the Your apps tab

  4. Click + Create new app

  5. Name the app (for example, Harmony Integration) and select the team that owns it

  6. Leave the Expire user authorization token checkbox unchecked

Step 2: Grant the required permissions

In the app's Permissions section, select these two scopes, both listed under Enterprise plan only:

  • organizations:read

  • auditlogs:read

See Permissions Explained for what each one is used for.

If these scopes are not listed, the app is owned by a team that is not on an Enterprise plan, or you are not a Company Admin of that team. Both conditions must be met for Miro to show them.

Step 3: Install the app and copy the token

  1. Click Install app and get OAuth token

  2. Select the organization to install into and confirm

  3. Copy the access token that Miro displays

Treat this token like a password - it grants read access to your organization's member list and audit log.

Step 4: Connect in Harmony

  1. Log in to your Harmony dashboard

  2. Go to Settings > Integrations

  3. Find Miro under SaaS Applications and click Connect

  4. Paste the access token

  5. Click Save

Harmony begins syncing immediately. Up to 30 days of historical sign-in activity is pulled in on the first connection, and your member list refreshes every 6 hours.


Permissions Explained

Required scopes

Both scopes are Enterprise plan only in Miro.

Scope
Miro's description
Purpose

organizations:read

Retrieve information about the organization, such as name, plan, number of licenses, organization settings, or organization members

List organization members with their email, license tier, and role - the basis for license optimization

auditlogs:read

Read audit logs for this team's organization

Read sign-in events to build login trends and identify inactive users

Harmony uses both in read-only mode and never modifies anything in your Miro organization.

If only auditlogs:read is granted

Harmony still discovers users who have signed in, and login trends work normally. What is missing is license tier, roles, and any member who has not signed in during the reporting window - which is usually the seat you most want to find. Granting organizations:read is what makes license optimization possible.


What Harmony Syncs from Miro

Data
Description

Organization members

Email address and whether the account is active

License tier

Paid, Free, or Unknown, plus the license name Miro reports

Roles

Each member's organization role, reported in Miro's own terms

Sign-in activity

Login events per user, recorded once per user per day

Last activity

The most recent activity timestamp Miro reports for each member

Where to find Miro data in Harmony:

  • Applications - Miro appears as a discovered application with license and adoption details

  • People - each employee's profile shows their Miro license tier, role, and last sign-in

Historical data on first connection:

Harmony pulls up to 30 days of sign-in history when you first connect Miro. After that, sign-in activity is checked hourly and stays in sync automatically.


Use Cases

License Optimization

Find members holding a paid Miro license who have not signed in recently, and reclaim or downgrade those seats. License tier is shown next to sign-in activity so the decision does not require cross-referencing two systems.

Access Review

Review who has access to your Miro organization and at what role, using Miro's own role names, as part of periodic access certification.

Offboarding Verification

Confirm that departed employees no longer appear as active members of your Miro organization.

Adoption Tracking

Follow login trends over time to see whether Miro adoption is growing or falling off, and by which teams.


Troubleshooting

The integration stopped syncing about an hour after connecting

Possible cause:

  • The Expire user authorization token option was enabled when the app was created, so Miro issued a token valid for one hour

Solution:

Miro locks this setting after the app is created, so it cannot be turned off on the existing app. Create a replacement:

  1. Create a new app in Miro with Expire user authorization token left unchecked

  2. Grant organizations:read and auditlogs:read

  3. Install the app, copy the new token, and update the credentials in Harmony

  4. Uninstall the old app from your Miro team

The Enterprise permissions are not shown when creating the app

Possible causes:

  • The team that owns the app is not on a Miro Enterprise plan

  • Your Miro account does not hold the Company Admin role on that team

Solutions:

  1. Confirm the owning team is on an Enterprise plan

  2. Confirm your account is a Company Admin, then reload the app settings page

  3. If both are true and the scopes are still missing, contact Miro support with your app's Client ID

Users appear but license tier shows as Unknown

Possible causes:

  • The token was issued without the organizations:read permission, so members are discovered from sign-in activity only

  • The member holds a Miro license type whose billing status Miro does not publish

Solutions:

  1. Verify the app has organizations:read granted, then reinstall the app and update the token in Harmony

  2. If the permission is present, the license name Miro reports is still shown alongside the tier

Some members are missing

Possible cause:

  • The token lacks organizations:read, so only members with recent sign-in activity are discovered

Solution:

  1. Grant organizations:read, reinstall the app, and update the token in Harmony - the full member list, including members who have never signed in, then syncs

Data stopped updating

Possible cause:

  • The app was uninstalled from your Miro team, which invalidates its token

Solution:

  1. Reinstall the app in Miro, copy the new token, and update the credentials in Harmony


Disconnect Miro from Harmony

  1. Log in to your Harmony dashboard

  2. Go to Settings > Integrations

  3. Find Miro under SaaS Applications and click the integration card

  4. Click Disconnect and confirm

Harmony stops syncing data from Miro. Previously synced data remains available in Harmony.

To revoke access from the Miro side as well, uninstall the app from your Miro team settings.


Data & Privacy

Key privacy principles

For information about how Harmony handles your data, see our Privacy Policy.

  • Harmony accesses Miro data in read-only mode and does not modify anything in your Miro organization

  • Only member details, license information, and sign-in events are collected - board contents are never accessed

  • Access can be revoked at any time from Harmony settings or by uninstalling the app in Miro

Last updated

Was this helpful?