Discuss everything related to Miro API, SDK, embedding and Miro Platform apps development.
Recently active
If you can help please PM me. Overview: I lead an innovation activity on Miro. I would like to automate some functions, if possible. I use a grid with 4 columns. Column 1 - Index Letter (A, B, C….) Column 2 - Short statement (text) Column 3 - Leads to Letter - This (Column 2) statement (A, B, C...) leads to this other (Column 2) statement (A, B, C...) Column 4 - Special designator (*) if 2 statements contradict I create a hexagon shape for each short statement in column 2. I then arrange the hexagon shapes according to Column 3 and connect with an arrow. Based on Column 4 I highlight statements in conflict with a different color. The result is a map of hexagons connecting to one more other hexagons and conflicting statements highlighted. Is it possible to read the data on a grid, push a button, and create the hexagons filled, colored and arranged? Thank you for your time and consideration. Ben
Hi. I have created s simple “Web-plugin,” which I have successfully installed for the Dev Team. Every developer can see the new plugin button in the toolbar when they go to a Dev Team board. What I would like to do is let individual users in my company (or individual boards) use the plugin. However, since we have about 1,000 employees around the world, I don’t want to install the plugin for all of them. Is there a way to accomplish this? On a single Miro board, there appears to be a way to add a plugin just to that board, but the UI only shows plugins in the Marketplace, not our custom plugin. When I use the “Install App and get OAuth token” button on the developer screen, I get a choice of teams, but I only see our top-level company team, not the individual project teams within the company. Am I overlooking a way to share the plugin at a more individual level? Thanks. Sheldon
Hi there! I’m developing an uber-simplified Sim-City-like simulation to use on a training setting. I’d like to know if there is a way to block actions like scaling or rotation on images. Thanks! Alan
Some important API endpoints seem to be missing from the Miro API, especially related to the Teams object. I would like to see the ability to list all Teams for a company or create a new Team through an API call. Also there appears to be no endpoints for Projects, which is disappointing. Ideally I’d like the ability to list all teams for a Project and add/delete users from a Project. Are either of these on the roadmap for Miro?
Hello, I am trying to add a button to WidgetContextMenu if the selected widget is a Sticker and it is not locked. I can get the type of widget from the widget object, but it is not clear where i can garner if the widget has been locked or not. This leads to my button being accessible on locked objects, as shown: Can you please offer any guidance on how to tell whether the widget is locked from within the plugin code? Hope this is clear and thanks in advance. Oliver.
Hi there, I'd like to do 4 things. I'm wondering if someone has done these, or if there's a simple way to "hack" the functionality. Thanks! 1. Cards with icons. I'd like to be able to add an icon to a card. 2. Hierarchical tags. I'd like to have nesting in tags to import an existing hierarchy. 3. Import RDF. I'd like to create an importer of RDF files, so it would map them to a visual. 4. Export RDF. I'd like to take my mappings and export them to RDF.
I know you can add metadata through the API, but I cannot find documentation on how to add meta data via web plugins, I’d like to add a “session_id” to the group of objects I create via a single button and I need a way to group them up for future use.
currently working on a toy project for rolling dice. it needs read/write on a board. https://github.com/megonemad1/MiroDicePostIt I’ve tried a bunch of different things. but i keep getting either “A client must have at least one registered redirect URL” or “A redirect_uri must be supplied.” I’ve tried a bunch of different things any ideas? I’m aware: 'https://' + window.location.host + '/success.html' results to the wrong thing for github pages. fixing that doesn't fix the problem
Our company is looking to populate Salesforce information into MIRO via Microsoft Excel for project management. Ideally, we’d like to be pulling data sets and converting them into MIRO Cards for Kanban use. From there we’d like to track and report said cards Kanban position back to Salesforce via excel. At least until there is a more comprehensive Salesforce integration. Any suggestions are greatly appreciated.
Hi! I was using the CANVAS_Clicked event to place objects with the x and y attribute of the event. Now these have disappeared and i have not found out how to use the new event info how to place an item right at the click point on the canvas. Can anyone help? Thanks Falk
Hi! How do i add an image to the board with a webplugin? I cannot find it in the widget create part. Best regards Falk
Hi Miro developers Can someone help me out with some code how to access properties for a board such as title and project in JavaScript in a WebPlugin? //Tomas
Hi everyone It’s @Natalie Nedre and the Platfrom team ⬇️(@Boris Borodyansky @Oleg Plotnikov Artem and Igor). And this is a special thread for your stories about building apps with Miro API, SDK & iframe. If you have successfully built a custom app - share your experience with the Miro community below to get feedback and generate ideas for improvement! Here are some helpful questions to plot your story. What does your plugin do and what is the pain/ problem your plugin solves (share GIF or a short Loom video)? Were there any workarounds before? Why they didn’t work if any. Have you built apps or plugins on any API before? What’s your advice on starting with Miro Platfrom Documentation? What was the most pleasant/funny/interesting moment for your team when building an app? If you are open for GitHub pull requests, share a link to GitHub source code. FYI: for any Developer Platfrom bug reports or questions to the team, please find a dedicated thread, or chat with a team in t
Hi How do I change the size of the BottomPanel when opening it from javascript? miro.initialize({ extensionPoints: { bottomBar: { title: 'Timer', svgIcon: icon24, onClick: () => { miro.board.ui.openBottomPanel('index.html') } }, } })
Can you explain the reasons behind all of the permission needed fro Miro integration into Slack? There seem to be number of extraneous permissions but that is likely due to my limited understanding of how this will be used with the org.
Hi, In sharing a web plugin with a team, do we need to “wrap” Miro REST calls on our application server (e.g. within a Node.js server), sending the authorization in the header for each service call? Or can our plugin code remain as it is? Currently, our test plugin makes use of code like this, using the Miro API that gets loaded automatically in the context of the plugin: miro.board.widgets.create() Without OAuth, this works for the user who created and installed the plugin. However, though other team members can invoke the plugin, they don’t have the authorization for this command to work. Basically, I’m wondering whether, for “web plugins” specifically, the OAuth flow is meant for a one-time installation by each team member, or whether the authentication has to be managed for each user every time they are using the plugin and/or whenever a specific Miro API is called. Thanks, Sheldon
Hi everyone! How i can add an application icon to the widgetContextMenu? By looking at the documentation, i tried the following code: miro.onReady(() => { miro.initialize({ extensionPoints: { widgetContextMenu: { title: 'Hi', svgIcon: "<circle cx=\"12\" cy=\"12\" r=\"9\"></circle>", } } })}) but in console i get the following error However, I can do it in bottomBar if I replace “widgetContextMenu” with “BottomBar”.
Hi! I would like to be able to add items, that have a certain functionality and would need a special rendering, like having dice represented on the board or playingcards, that can be flipped, or an avatar with a hands up indicator. Is there a way to do that? The normal API options do not allow for something like this. Thanks Falk
I have noticed something strange: I created a Sticky Note and wanted to wrap the words into two lines. As I clicked enter it shows me this: I have seen this only one time before but I cannot remember how I could reproduce it. Any solution? Michael
Hello, ich have a problem with my first Miro Plugin. Attached a video that shows the issue: https://storyxpress.co/video/k8shzojjkpud07w0c Thanks for your help BR Roman
Hi, I had a simple plugin up and running that executed a function when I clicked a new icon in the bottomBar. I used some of the example code to get up it set up and everything worked ok. Now the icon no longer appears in the bar. The browser tools show that there is an error message (before the plugin is loaded though) that says: XML Parsing Error: prefix not bound to a namespace. I am not sure if this error message is new or not. Has something changed that means the the button-display code needs to change? The relevant plugin code is: miro.onReady(() => { miro.initialize({ extensionPoints: { bottomBar: { title: 'Post-it Counter', svgIcon: '<circle cx="12" cy="12" r="9" fill="none" fill-rule="evenodd" stroke="currentColor" stroke-width="2"/>', onClick: async () => {...} updateCount(); } } })})
We show in our app a button that allows users to link their Miro profile to our app. Once authorized (via OAuth flow) we deactivate the button, so users understand that Miro is linked. Yet, if the user deauthorizes our app within Miro, we don’t know about it - i.e. our app shows the wrong information. It would be great if you could add a webhook to inform when the user deauthorizes our app. See for inspiration Zoom: https://marketplace.zoom.us/docs/guides/auth/deauthorization
When users are asked to authorize our app to access Miro (OAuth), Miro shows a generic logo on the page. How can we change this to our company logo?
Right now, the Miro access tokens are bound to a specific user and a specific team. This requires users to authorize our app multiple times with Miro (for each team). Our users found this pretty counter-intuitive. Their expectations are set by Zoom/Slack/Github which asks users during their default OAuth flow only once to connect the account. It would therefore be easier to if Miro OAuth access tokens could work across teams (and the API requires the team_id as a parameter when e.g. creating a board).
Today, the api doesn’t allow to set the borderColor to “transparent”. Not setting any value, Miro defaults the border to black. We figured out that setting the borderOpacity to 0 is a possible workaround. Yet, this isn’t ideal because getWidgets doesn’t do this if users create transparent borders in the Miro UI (i.e. input and output API aren’t consistent). It would be great if you would allow API developers to set the border color to transparent.
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.