🏆 Make your 2026 football predictions with Miro — + win $400 in our June Challenge
Discuss everything related to Miro API, SDK, embedding and Miro Platform apps development.
Recently active
Hi, I’ve noticed a copy of bugs/issues with MMD that might be worth investigating.Inability for MMD to export a map that includes links/URLs. Inability for MMD to export a map to include dependencies between nodes.ThanksLD
Hi all,I am new to this community, so please excuse any mistakes.I have been using the Rest API for 2 months now to programmatically create board contents. Everything worked as documented and I did not have more than the usual problems.Today, I am observing a very strange behavior: When creating a shape, the fillOpacity values are sometimes ignored and set to 0.0. However, there is no pattern, i.e. if I create the board contents several times, the elements having the wrong fillOpacity are not identical, but vary a lot.I did not change anything in my code regarding fillOpacity, so I suspect that something has changed on the API side.Any help is highly appreciated!Thanks, and best regards,Rene
Greetings colleagues,In the past, I developed a small private application with the web sdk v1. It was very basic, I added the application in the context menu and when selecting a series of widgets (sticky notes, app cards, etc..) my application appeared in the context menu and in its inner workings what it did was to go through the selected widgets, search the tags inside them and add those that matched a specific numerical format.I want to migrate it to version 2 of the new sdk and the truth is, it is being quite difficult.I have read the documentation and I think that the closest thing to my needs is to make a CustomAction.I have been able to add my customAction to the context menu and show an information message when I click on it. I need to be able to read somehow the content of the tags, their text, but I can't find any way to do it. Is it possible to do it somehow? I share my code with you: import type { CustomAction, CustomEvent } from "@mirohq/websdk-types";const actionHandler
Hello!We are testing our Miro implementation and are seeing frequent 504 GatewayTimeout responses.Seems to frequently occur when we are creating a teamPATH https://api.miro.com/v2/orgs/[org-id]/teamsHappy to provide more details.Any insight into what could cause frequent 504 GatewayTimeout errors to come back from the api would be greatly appreciated. Thank you.
Hi, I’m new using this framework, but all I need is a guide to create a menu with many option to call an API.Thanks in advance,
Hi everyone,I'm trying to embed a Power BI visual into Miro, but I want to resize the visual to fit my needs without embedding the entire report. Is there a way to edit the iFrame embed link to accomplish this?I would be grateful for any advice or guidance on how to customize the iFrame embed links for Power BI visuals in Miro.
I've developed a small miro web-plugin.Anonymous guests should be able to use this app on my board.Is there any way I can do this? I have not found any information on this. Thanks very much, Thorsten Diekhof
I’m trying to get a list of all nodes in a mind map using the Web SDK. The documentation here: https://developers.miro.com/docs/websdk-reference-mindmap-node gives the following example// Get all mind map nodes from the boardconst items = await miro.board.experimental.get({type: 'mindmap_node'});However, when I run it on my board, I only get the root node of the mind map. Is this supposed to return all nodes? Am I missing something?An alternative approach I’ve tried is to use the above to get the root, then use miro.board.experimental.get() to retrieve every child node by id recursively, but I always bump up against rate limiting.
Hi, there seems to be some disconnects between the Mirotone npm package and the Mirotone Figma UI library, e.g. some icons are available in the Figma library but not in the npm package. This causes some minor frictions when a design is handed over from designers to developers. The issue can be addressed by exporting the assets from Figma and / or manually implementing the styles, but being able to rely on the npm package would certainly improve workflow and thus the question - should we refer to the Figma UI library, the npm package, or mirotone.xyz as source of truth for Mirotone?Not sure if others find this an issue (love to hear your experience / opinions) but I believe setting the correct expectation will ease both designing and implementation.
I am having trouble understanding how to authenticate my app to use the REST API with my specific use case. A high level overview of what I need my app to do is as follows:Read existing boards Compare items on the boards to data within a data warehouse Create board items to represent specific data in the data warehouse (if they don’t already exist)This would be executed by a script and run on a schedule, so no human user would be involved. What I am not understanding is Step 2 of the “Authorization flow for expiring tokens”: “Request user for authorization”. https://developers.miro.com/reference/request-user-for-authorizationHow does this work since there will be no user? Is there another way to receive an authorization code or a way to get an access token without one? I am a business analyst, not a developer, so explaining it like I’m five is much appreciated!Thanks in advance!
I have found this topic, but it’s 3 years old. Is there a way to enable a web sdk plugin to selected boards only?If an app is installed in a team, and a user has authorized it, then the app will be able to access any boards opened by the same user, which sounds like a security concern to me.Is my understanding correct? How to prevent this? Does the workaround of creating a team and installing the app only in that team still do the job, like mentioned in the linked question?Thanks!
Hey all,I want to manage the user license from each user through the API, unfortunately I can´t find a way or any information within the API site.Does anybody has a idea?https://developers.miro.com/reference#introductionBest Regards
Hello! The docs says:“To provide a great experience for your users and meet app review requirements, we recommend using UI components from our interface library, Mirotone. We have an App card CSS component that you can use to represent Miro app cards in your interface.” Could you please point me to an example of how I can apply App Card CSS Component to my app cards. For example, I want to make custom layout of an app card, add checkboxes and buttons. Thank you!
Hi everyone! I am thinking to build a new web plugin to manage Miro board elements and I have found that this can be done with JS, specifically with NodeJS and ExpressJS. My question is how someone could "hide", secure the JavaScript source code of the web plugin as it can be easily inspected in the web browser with web developer tools. This is fine for open source systems but how to build it for a proprietary system so that the code is not visible? Does anyone have implemented a proprietary web plugin for Miro? Do I have to build a backend system, authorization, etc? Thanks 🙏
My dream is to generate and manage a Miro design that perfectly reflects a data structure in eg a database or excel table.From the Miro Web SDK i learnt that it’s possible to generate a mind map in Miro based on a excel spreadsheet (csv). However if I make small adjustments in the mind map in Miro i would like my spreadsheet to update. In this way Miro would not only be merely a drawing and presentation tool, but the actual visual representation of a data structure. I’m not only thinking of mind maps here, but rather general sync of information from data source to Miro and vice versa.Is it possible to create this kind of functionality using the SDK?
I followed all the steps in this tutorial but couldn’t find the app in the More apps section of the toolbar. I tried running it on Chrome with all security features turned off. Any ideas?
Hey guys,I created a local Miro app (at localhost:3000) where I have an Add a sticky button. If I press the button, nothing will happen. There are no errors in the browser console. I tried pasting this code to the console: await miro.board.createStickyNote({ content: ‘Hello, World!’,});but it wouldn’t do anything either.Am I missing something?
All board on app not loading but work in browser.
Good afternoon,I am trying to call the REST API manually for testing purposes, but I noticed that I get unpredictable results. I currently have 3 boards. Board TEST 3 was just created moments ago.However, the API returns that there are only 2 boards available. I have run this directly on the documentation sandbox to make sure the problem wasn’t with my calls. I still get consistent results and the board TEST 3 is not present in the JSON response.All three boards have read/write permission with the Developer team that I created for this testing purpose, so they are accessible (or they should be). At some point and after trying the GET request several times, without changing anything with the boards (I think I’ll be waiting for something like a couple minutes), the third board will appear.Deleting a board seems to have an instantaneous change within the database, therefore if I call the API after deleting a board, it will disappear at the following API call. However, trying to re-add a b
HiI am trying to attach metadata to a shape widget created from javascript through the API.Widget is created correctly when there is no metadata, but creation fails as soon as metadata is part of the widget definition. I have interpreted the metadata definition from this post:https://community.miro.com/developer-platform-and-apis-57/how-to-attach-meta-data-via-webplugins-682and from the documentation here:https://developers.miro.com/reference/application-metadataThe result looks like this: let shapeWidgets2 = await miro.board.widgets.create([ { type: 'shape', x: x3, y: y3 + 150, height: 30, metadata: { ['TEST']: { 'type': 'sannsynlig', }, }, }, ]) I have tried several combination with and without aphostrophes, but none of them works.Can anyone out there give me a hint on what is wrong with the code?
Hello !I've been using Miro for several years and many projects (30+). I love it, it's a great tool that really helps me thinking. But the downside is that, along the way, all my work has been stored on several different boards through various architectures.Lately, I've been wanting to grab all that "data" and to gather it in a singular place. I want it to be easier for me to cruise between my past projects, to centralise all their output. My goal is clarity and readability. The data in itself is mostly text but, as you can guess, with a precise visual organization also.By any chance, would any of you have an idea or a recommandation?I'm looking for a technique to "extract" the data, but also for a way to could store it visually in a convenient way.Thanks in advance, and have a great day :)
If i use the API to query a widget on a Kanban board, I get an X and Y co-ordinate, but I don’t seem to see any reference to the structure of the board itself eg Swimlane/Bucket name or indeed the fact that the widget is contained within a particular swimlane/column. Am I missing something. Is there some API call that allows me to further discover the structure and relationship between widgets?
I would like to set up an automation between Miro and ProductPlan using Zapier. Trigger: Sticky added to a Miro boardAction: Add contents to ProductPlan roadmap parking lot Unfortunately Zapier informs that only Miro actions are available.
This topic is the changelog for the Mirotone UI Library, the official design resource for Mirotone CSS. For feedback or questions, check the announcement post for the library, or leave a message on our Discord server. 📣 Subscribe to this post and get updates in your inbox whenever a new version is released 📣 Version 1.2 Initial release of the Mirotone UI Library: Adds Foundations Colors Functional Colors Typography Spacing Effects Spacing Radius Adds Icons People icons Objects Symbols Board objects 16x16 icons 32x32 icons Adds components App Panel App Card Inputs & Checkboxes Select Buttons Divider Dismissible Badge Link Tags Tabs Table Tooltip Adds Utilities Canvas utilities Installation flows
How cool would it be if in Miro you could not only see the cursors of other participants, but also INTERACT WITH THEM? For example, a dear colleague or an inquisitive session participant is swimming next to you, and you can click on him and virtually hug/smack/put a heart❤️? I think such an option would add soulfulness to any collaboration.And for purely formal and serious interaction, you can provide an option at the top next to the avatars to disable this function (similar to the Hide Collaborators' Cursors button).
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.