All connectors
Implemented
Project & work management
Miro logo

Miro

Read and write Miro boards, sticky notes, cards, shapes, text, frames, tags and connectors, and read board members and items.

Turn tickets, tasks and CRM records into board content for planning workshops, and feed decisions captured on boards back into work management systems.

Source actions

17

Destination actions

19

Data types

13

Validation status

Implemented · fixture tested.

Implementation is checked against provider-shaped fixtures for every action, authentication failures, rate limits, pagination and duplicate safety. Provider sandbox and authorised account validation are recorded separately when credential-backed runs are completed.

What you can map

board copies
  • Copy board
    Destination
    Not retried automatically
    Approval before production

    Copy a board (for example a workshop template) with a new name.

    board_copies.create
board members
  • Get board member
    Source

    One board member and role.

    board_members.get
  • List board members
    Source

    Users with access to a board and their roles; read only.

    board_members.list
boards
  • Create board
    Destination
    Not retried automatically
    Approval before production

    Create a board with Miro's default sharing policy.

    boards.create
  • Get board
    Source

    One board with owner, team, space and last-opened details.

    boards.get
  • List boards
    Source

    Boards the user can access, optionally within a team or space.

    boards.list
  • Update board
    Destination
    Provider duplicate protection
    Approval before production

    Rename a board, change its description or move it to another team or space.

    boards.update
cards
  • Create card
    Destination
    Not retried automatically
    Approval before production

    Add a card to a board.

    cards.create
  • Get card
    Source

    One card with its data, style, position and geometry.

    cards.get
  • Update card
    Destination
    Provider duplicate protection
    Approval before production

    Update the supplied data, style, position or geometry of a card.

    cards.update
connectors
  • Create connector
    Destination
    Not retried automatically
    Approval before production

    Connect two items on a board (frames are not supported as endpoints).

    connectors.create
  • Get connector
    Source

    One connector.

    connectors.get
  • List connectors
    Source

    Lines that connect items on a board.

    connectors.list
  • Update connector
    Destination
    Provider duplicate protection
    Approval before production

    Change a connector's endpoints, shape, captions or style.

    connectors.update
frames
  • Create frame
    Destination
    Not retried automatically
    Approval before production

    Add a frame to a board.

    frames.create
  • Get frame
    Source

    One frame with its data, style, position and geometry.

    frames.get
  • Update frame
    Destination
    Provider duplicate protection
    Approval before production

    Update the supplied data, style, position or geometry of a frame.

    frames.update
item tags
  • Attach tag to item
    Destination
    Provider duplicate protection
    Approval before production

    Attach an existing tag to a card or sticky note (up to 8 tags per item).

    item_tags.create
  • List item tags
    Source

    Tags attached to a card or sticky note.

    item_tags.list
items
  • Get board item
    Source

    One item of any type.

    items.get
  • List board items
    Source

    All items on a board, optionally of one type, or the items inside a frame.

    items.list
  • Move board item
    Destination
    Provider duplicate protection
    Approval before production

    Change an item's position or the frame that contains it.

    items.update
shapes
  • Create shape
    Destination
    Not retried automatically
    Approval before production

    Add a shape to a board.

    shapes.create
  • Get shape
    Source

    One shape with its data, style, position and geometry.

    shapes.get
  • Update shape
    Destination
    Provider duplicate protection
    Approval before production

    Update the supplied data, style, position or geometry of a shape.

    shapes.update
sticky notes
  • Create sticky note
    Destination
    Not retried automatically
    Approval before production

    Add a sticky note to a board.

    sticky_notes.create
  • Get sticky note
    Source

    One sticky note with its data, style, position and geometry.

    sticky_notes.get
  • Update sticky note
    Destination
    Provider duplicate protection
    Approval before production

    Update the supplied data, style, position or geometry of a sticky note.

    sticky_notes.update
tagged items
  • List items with tag
    Source

    Cards and sticky notes that carry a tag.

    tagged_items.list
tags
  • Create tag
    Destination
    Not retried automatically
    Approval before production

    Create a tag on a board. Titles are case-sensitive and must be unique.

    tags.create
  • Get tag
    Source

    One board tag.

    tags.get
  • List tags
    Source

    Tags defined on a board.

    tags.list
  • Update tag
    Destination
    Provider duplicate protection
    Approval before production

    Rename or recolour a board tag.

    tags.update
texts
  • Create text item
    Destination
    Not retried automatically
    Approval before production

    Add a text item to a board.

    texts.create
  • Get text item
    Source

    One text item with its data, style, position and geometry.

    texts.get
  • Update text item
    Destination
    Provider duplicate protection
    Approval before production

    Update the supplied data, style, position or geometry of a text item.

    texts.update

Authentication

Miro OAuth app with expiring access tokens and a refresh token

Plans and access

All Miro plans can use the REST API through an app created in the developer settings; Free plans are limited to three editable team boards. Calls act as the user who installed the app and see only boards that user can access; board content edits require editor rights on the board.

Test environment

Create a free Developer team in Miro to test apps without affecting production boards.

Rate limits

Credit based: 100,000 credits per minute per user and app; level 1 calls cost 50 credits, level 2 cost 100, level 3 cost 500 and level 4 (board copy) cost 2,000. HTTP 429 with X-RateLimit-Reset when exceeded.

Pagination

Boards, members, tags and items by tag use offset and limit (max 50) with total; items and connectors use cursor with limit 10-50.

Provider events

Board subscriptions (experimental webhooks) for board item events. Nexra event triggers are not yet available; flows run on demand or on a schedule.

Before you build a flow

  • Board sharing is never changed: inviting members (share board), changing member roles, removing members and editing sharing or permission policies are not implemented. Boards are created and copied with Miro's default policy.
  • Deleting boards, items, tags or connectors, removing tags from items, and ungrouping are not implemented.
  • Images, documents, embeds, app cards, mind maps, groups and bulk item creation are not implemented.
  • Miro has no modified-since filter on items; flows must read whole boards and compare modifiedAt.
  • Tag changes made through the API appear on open boards only after a refresh, as Miro documents.
  • Miro documents passing refresh credentials as query parameters; Nexra sends them in the form-encoded request body instead, which the token endpoint accepts, so no secret appears in a URL.
  • Miro has no idempotency key; uncertain creates are not repeated automatically.
  • Miro's 429 responses carry X-RateLimit-Reset rather than Retry-After; Nexra uses its bounded backoff.

Developer reference

  1. Create the Miro credentials described above with the narrowest permissions your flows need.
  2. In Nexra, open Connect, then Connections, then New connection, choose Miro, enter its settings and credentials, and tick only the write actions you need. Connection guide
  3. Test the connection, then use its actions as flow sources and destinations. Flow guide

Machine-readable detail: GET /api/public/connect/connectors/miro and the Connections API.