Miro

Visual workspace for innovation that enables distributed teams to collaborate. Through Langdock’s integration, you can access and manage Miro directly from your conversations.

Authentication: OAuth Category: Productivity & Collaboration Availability: All workspace plans

Available Actions

Get Boards

miro.getBoards

Retrieves a list of boards accessible to the user Requires Confirmation: No

Parameters:

  • teamId (TEXT, Optional): Optional team ID to filter boards

Output: Returns array of boards with their IDs, names, descriptions, and other details


Search Boards

miro.searchBoards

Search for boards by name or description Requires Confirmation: No

Parameters:

  • query (TEXT, Required): Search term to find boards

  • teamId (TEXT, Optional): Optional team ID to filter search results

  • limit (NUMBER, Optional): Maximum number of boards to return (default: 10)

Output: Returns array of boards matching the search criteria


Get Recent Boards

miro.getRecentBoards

Get recently modified boards, sorted by modification date Requires Confirmation: No

Parameters:

  • limit (NUMBER, Optional): Maximum number of boards to return (default: 10)

  • teamId (TEXT, Optional): Optional team ID to filter boards

Output: Returns array of recently modified boards


Get Board Details

miro.getBoardDetails

Retrieves detailed information about a specific board Requires Confirmation: No

Parameters:

  • boardId (TEXT, Required): The unique identifier of the board

Output: Returns board details including ID, name, description, and other properties


Get Board Items

miro.getBoardItems

Retrieves all items on a board with optional filtering by type Requires Confirmation: No

Parameters:

  • boardId (TEXT, Required): The unique identifier of the board

  • itemType (TEXT, Optional): Filter by item type (e.g., sticky_note, text, shape, frame, card)

Output: Returns array of board items with their details


Get Frames

miro.getFrames

Retrieves all frames on a board Requires Confirmation: No

Parameters:

  • boardId (TEXT, Required): The unique identifier of the board

Output: Returns array of frames with their details


Get Frame Items

miro.getFrameItems

Retrieves all items within a specific frame Requires Confirmation: No

Parameters:

  • boardId (TEXT, Required): The unique identifier of the board

  • frameId (TEXT, Required): The unique identifier of the frame

Output: Returns array of items within the specified frame


Get Board Tags

miro.getBoardTags

Retrieves all tags used on a board for organization and categorization Requires Confirmation: No

Parameters:

  • boardId (TEXT, Required): The unique identifier of the board

Output: Returns array of tags with their details


Get Specific Item

miro.getSpecificItem

Retrieves a specific item on a board by its ID Requires Confirmation: No

Parameters:

  • boardId (TEXT, Required): The ID of the board containing the item

  • itemId (TEXT, Required): The ID of the specific item to retrieve

Output: Returns the specific item with its details


Get Frame

miro.getFrame

Retrieves a specific frame item by its ID Requires Confirmation: No

Parameters:

  • boardId (TEXT, Required): The ID of the board containing the frame

  • frameId (TEXT, Required): The ID of the frame to retrieve

Output: Returns the specific frame with its details


Get Card Item

miro.getCardItem

Retrieves a specific card item by its ID Requires Confirmation: No

Parameters:

  • boardId (TEXT, Required): The ID of the board containing the card

  • cardId (TEXT, Required): The ID of the card to retrieve

Output: Returns the specific card with its details


Get Document Item

miro.getDocumentItem

Retrieves a specific document item by its ID Requires Confirmation: No

Parameters:

  • boardId (TEXT, Required): The ID of the board containing the document

  • documentId (TEXT, Required): The ID of the document to retrieve

Output: Returns the specific document with its details


Get Embed Item

miro.getEmbedItem

Retrieves a specific embed item by its ID Requires Confirmation: No

Parameters:

  • boardId (TEXT, Required): The ID of the board containing the embed

  • itemId (TEXT, Required): The ID of the embed to retrieve

Output: Returns the specific embed with its details


Get Shape Item

miro.getShapeItem

Retrieves a specific shape item by its ID Requires Confirmation: No

Parameters:

  • boardId (TEXT, Required): The ID of the board containing the shape

  • itemId (TEXT, Required): The ID of the shape to retrieve

Output: Returns the specific shape with its details


Get Sticky Note Item

miro.getStickyNoteItem

Retrieves a specific sticky note item by its ID Requires Confirmation: No

Parameters:

  • boardId (TEXT, Required): The ID of the board containing the sticky note

  • itemId (TEXT, Required): The ID of the sticky note to retrieve

Output: Returns the specific sticky note with its details


Get Text Item

miro.getTextItem

Retrieves a specific text item by its ID Requires Confirmation: No

Parameters:

  • boardId (TEXT, Required): The ID of the board containing the text

  • itemId (TEXT, Required): The ID of the text item to retrieve

Output: Returns the specific text item with its details


Get Page Content

miro.getPageContent

Retrieves the content of a specific page or block and all its children from Notion and converts them to markdown Requires Confirmation: No

Parameters:

  • blockId (TEXT, Required): The unique identifier of the Notion page or block whose content you want to retrieve, including all its nested children blocks and their formatted content

Output: Returns the page content converted to markdown format


Query Database

miro.queryDatabase

Returns pages from a database with optional filters, sorts, and pagination. Use this action whenever you want to fetch multiple pages from a database Requires Confirmation: No

Parameters:

  • databaseId (TEXT, Required): ID or URL of the database to query

  • filter (TEXT, Optional): Notion filter object JSON. Supports ‘and’/‘or’ compound filters and all type-specific conditions

  • sorts (OBJECT, Optional): Array of Notion sort objects. Example: ['property':'Last ordered','direction':'ascending']

  • pageSize (NUMBER, Optional): Number of results per page (max 100). Defaults to 30

  • startCursor (TEXT, Optional): Cursor from a previous response for pagination

  • filterProperties (TEXT, Optional): Comma-separated property IDs to include in the response

  • returnAll (BOOLEAN, Optional): If true, paginates until all results are collected

  • simplifyOutput (BOOLEAN, Optional): Return simplified pages with id, url, title and flattened properties

Output: Returns array of database pages with their properties and content


Create Database

miro.createDatabase

Creates a database as a subpage in the specified parent page, with the specified properties schema. Requires parent page to be an actual page or Wiki Requires Confirmation: Yes

Parameters:

  • parentId (TEXT, Required): ID or URL of the parent PAGE (or wiki) under which the database will be created

  • title (TEXT, Optional): Optional database title

  • properties (OBJECT, Required): Property schema object. Example: Name': title': }, 'Status': status': }, 'Price': number': format': 'dollar'}}

  • icon (TEXT, Optional): Emoji or full icon object

  • cover (TEXT, Optional): External cover URL or full external file object

  • isInline (BOOLEAN, Optional): Create the database inline on the page

Output: Returns the created database with ID, title, and properties schema


Update Database

miro.updateDatabase

Updates database metadata (title, description, icon, cover) and/or modifies database properties (add, remove, rename, or change schema) Requires Confirmation: Yes

Parameters:

  • databaseId (TEXT, Required): ID or URL of the database to update

  • title (TEXT, Optional): Optional new database title

  • description (TEXT, Optional): Optional new database description

  • properties (OBJECT, Optional): JSON object describing property changes. Use null to remove a property, provide { name: 'New name' } to rename, or pass a property schema object to change type/options

  • icon (TEXT, Optional): Emoji or full icon object

  • cover (TEXT, Optional): External cover URL or full external file object

Output: Returns the updated database with new metadata and properties


Get Page Details

miro.getPageDetails

Retrieves detailed information about a specific Notion page including its properties, metadata, and structure Requires Confirmation: No

Parameters:

  • pageId (TEXT, Required): The unique identifier of the Notion page you want to retrieve information about

Output: Returns page details including ID, title, properties, and metadata


Find Pages

miro.findPages

Searches for pages in your Notion workspace by title Requires Confirmation: No

Parameters:

  • query (TEXT, Optional): Search term used to find pages by their titles

Output: Returns array of pages matching the search criteria


Find Databases

miro.findDatabases

Searches for databases in your Notion workspace by title Requires Confirmation: No

Parameters:

  • query (TEXT, Optional): Search term used to find databases by their titles

Output: Returns array of databases matching the search criteria


Get Database Details

miro.getDatabaseDetails

Retrieves detailed information about a specific Notion database including its properties, metadata, and structure Requires Confirmation: No

Parameters:

  • databaseId (TEXT, Required): The unique identifier of the Notion database you want to retrieve information about

Output: Returns database details including ID, title, properties schema, and metadata


miro.search

Searches across your entire Notion workspace or within a specific database for pages and content Requires Confirmation: No

Parameters:

  • query (TEXT, Optional): Search term to find pages or databases. Searches are case-insensitive and match partial words

  • databaseId (TEXT, Optional): Optional: Search within a specific database instead of the entire workspace

  • objectType (SELECT, Optional): Filter results by type. Choose ‘page’ for pages only or ‘database’ for databases only

  • propertyFilters (TEXT, Optional): Filter database pages by property values (requires database ID). Provide as JSON object

  • pageSize (NUMBER, Optional): Number of results to return per page. Default is 30, maximum is 100

  • sortBy (SELECT, Optional): Sort results by creation time or last edited time

  • sortDirection (SELECT, Optional): Sort order for results

  • createdBy (TEXT, Optional): Filter results by the user who created the page or database

  • lastEditedBy (TEXT, Optional): Filter results by the user who last edited the page or database

  • startCursor (TEXT, Optional): Pagination cursor from previous search results

Output: Returns array of pages and databases matching the search criteria


Create Page

miro.createPage

Creates a new page in Notion, either as a database entry or as a child of another page Requires Confirmation: Yes

Parameters:

  • parentId (TEXT, Required): The ID of the parent database or page where the new page will be created

  • parentType (SELECT, Optional): Type of parent where the page will be created

  • title (TEXT, Optional): The title of the new page

  • properties (OBJECT, Optional): Properties for the new page as a JSON object

  • content (TEXT, Optional): The content of the page. Can be plain text (will be converted to paragraphs) or an array of Notion blocks

  • icon (TEXT, Optional): An emoji or URL for the page icon

  • cover (TEXT, Optional): URL of an image to use as the page cover

  • createInPersonalRoot (BOOLEAN, Optional): When enabled and parentId is ‘workspace’ or ‘root’, creates the page at your personal workspace root

Output: Returns the created page with ID, title, and properties


Update Page

miro.updatePage

Updates a page’s properties and/or a specific block on that page. Use page fields for database/page metadata; use block fields to edit the content of an individual block Requires Confirmation: Yes

Parameters:

  • pageId (TEXT, Optional): ID of the page to update (properties, icon, cover, trash)

  • properties (TEXT, Optional): JSON object of properties to update

  • icon (TEXT, Optional): Emoji character or full Notion icon object

  • cover (TEXT, Optional): URL string or full Notion external file object

  • inTrash (BOOLEAN, Optional): Set true to move the page to trash, false to restore

  • blockId (TEXT, Optional): ID of the block to update (content editing)

  • blockType (TEXT, Optional): Block type to update (e.g., ‘paragraph’, ‘heading_1’, ‘heading_2’, ‘heading_3’, ‘to_do’, ‘bulleted_list_item’, ‘numbered_list_item’)

  • blockText (TEXT, Optional): Text content for the block (converted to rich_text)

  • blockChecked (BOOLEAN, Optional): Only for to_do blocks. true/false

  • blockPayload (TEXT, Optional): Advanced: full JSON body for the block update (overrides blockType/blockText)

  • blockArchived (BOOLEAN, Optional): Set true to archive the block, false to unarchive

Output: Returns the updated page or block with new values

Triggers

Updated Page

miro.updatedPage

Triggers when pages are updated Requires Confirmation: No

Parameters:

  • pageId (TEXT, Optional): ID of the page to monitor for updates

Output: Returns the result of the operation


Updated Database Item

miro.updatedDatabaseItem

Triggers when items in the database are updated Requires Confirmation: No

Parameters:

  • databaseId (TEXT, Required): ID of the database to monitor for updated items

Output: Returns the result of the operation


New Database Item

miro.newDatabaseItem

Triggers when new database items are added Requires Confirmation: No

Parameters:

  • databaseId (TEXT, Required): ID of the database to monitor for new items

Output: Returns the result of the operation

Common Use Cases

  • Data Management — Manage and organize your Miro data

  • Automation — Automate workflows with Miro

  • Reporting — Generate insights and reports

  • Integration — Connect Miro with other tools

Best Practices

1

Getting Started

Enable the Miro integration in your workspace settings, authenticate using OAuth, and test the connection with a simple read operation.

2

Explore Actions

Explore available actions for your use case.

3

Important Considerations

  • Ensure proper authentication credentials

  • Respect rate limits and API quotas

  • Review data privacy settings

  • Test operations in a safe environment first

Troubleshooting

Issue
Solution

Authentication failed

Verify your OAuth credentials

Rate limit exceeded

Reduce request frequency

Data not found

Check permissions and data availability

Connection timeout

Verify network connectivity

Support

For additional help with the Miro integration, contact [email protected]envelope