> ## Documentation Index
> Fetch the complete documentation index at: https://koreai.mintlify.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Miro Connector

<Badge icon="arrow-left" color="gray">[Back to Search AI connectors list](/ai-for-service/searchai/content-sources#supported-connectors)</Badge>

[Miro](https://miro.com/index/) is an online workspace for distributed teams to design and build together. It provides collaboration tools for creating concepts, mapping user stories or customer journeys, and conducting roadmap planning using Miro Boards.

Search AI integrates with Miro and ingests the metadata of **Boards**, enabling efficient search across board content.

## Connector Specifications

| Specification              | Details         |
| -------------------------- | --------------- |
| Repository type            | Cloud           |
| Supported content          | Boards metadata |
| RACL support               | Yes             |
| Content filtering          | No              |
| Auto permission resolution | Yes             |

## Prerequisites

Search AI uses Miro APIs to access resources and ingest content. Authentication uses OAuth 2.0, so you must generate OAuth credentials before configuring the connector.

## Generate OAuth Credentials

1. In your Miro account, click the user avatar and go to **Profile**.
2. Navigate to the **Your Apps** tab and click **+Create New App**.
3. Provide a name for the app.
4. Add a **Redirect URI** for the app. Select the URL that matches your region and deployment:
   * JP Region: `https://jp-bots-idp.kore.ai/workflows/callback`
   * DE Region: `https://de-bots-idp.kore.ai/workflows/callback`
   * Prod: `https://idp.kore.com/workflows/callback`
5. Enable the following permissions for the app:
   * `boards:read`
   * `organizations:read`
   * `projects:read`
   * `Organizations:teams:read`
6. Install the app. The app is only usable after it is deployed.

## Configure the Miro Connector in Search AI

Go to the Miro Connector, provide the following details under the **Authorization** tab, and click **Connect**.

| Field                  | Description                            |
| ---------------------- | -------------------------------------- |
| **Name**               | Unique name for the connector          |
| **Authorization Type** | OAuth 2.0                              |
| **Grant Type**         | Authorization Code                     |
| **Client ID**          | Client ID from your Miro OAuth app     |
| **Client Secret**      | Client secret from your Miro OAuth app |

## Content Ingestion

The Miro Connector ingests metadata about Miro boards into Search AI. It captures board details including title, content, URL, and the project the board belongs to. The content field in each ingested item contains the board's name and description.

## RACL Support

By default, when a board is created, it is shared with all members of the space. The `sys_racl` field is populated with the space ID. For boards shared using other access options, `sys_racl` is populated as follows:

* **Share with specific users via email**: User email addresses are stored in `sys_racl`. The space ID (project ID in Miro) is also included, as space members have default board access.
* **Share with team members**: The team ID is added to `sys_racl`. Because space members are a subset of the team, the space ID is not included separately.
* **Everyone in the company**: The organization ID is stored in `sys_racl`. Because space members are a subset of the organization, the space ID is not included separately.
* **Public Access**: The `sys_racl` field is set to `*`, allowing unrestricted access.

ProjectID, TeamID, and OrganizationID are the permission entities that control access in Search AI. Search AI supports automatic resolution of these permission entities and maps them to the corresponding entity type, eliminating the need for manual user-to-entity mapping.
