Discuss everything related to Miro API, SDK, embedding and Miro Platform apps development.
Recently active
Hello! I was versed in the API by following this documentation:I was able to build my development team and my floating decal board. However, I noticed that you cannot go to your main profile (which I work on) and connect the API to it. In the settings of your profile, when creating your application, you can select only the team profile, but you cannot choose your own.What does it mean? Can't I use the API on my board?
Hi I was looking for a solution to de-select currently selected widgets on the whiteboard here https://developers.miro.com/docs/interface-iboardwidgetscommands but couldn’t find a solution. I’m using a widget attribute of clientVisible: false . After I overwrtite a widget with this attribute it becomes invisible on the whiteboard but still can be manipulated with as it stays selected hence even while in clientVisible : false state the user is able to move it around, I would like to perform a de-select method after the clientVisible change, so that the user would either have to make the widget visible again to move it around or not be able to move it while it is invisible
Hi,Not sure in which forum to put it.I just checked miro.d.ts for IBoardViewportCommands which I am using as single source of turth, but not all methods are listed there. Just fiddled in the console and on miro.board.viewport I get those methods listed:miro.board.viewport. methodsWhen using the methods getZoom, zoomToObject it shows deprecation warning, alltough this methods are also listed on the documentation example here https://developers.miro.com/docs/how-to-start. Would be cool to see in the console which method to use instead (eg. getZoom shows deprecated, but could mention to use getScale instead).And a general migration section in the docu would be cool.Markus
Hello, My client is hoping to create / remove miro users via spreadsheet. In order to acheive this, they need to create occasional users (day passes). I am aware that occasional users are company level accounts, however I do not see company level endpoints mentioned in the docs. I noticed that the webapp achieves this by making requests to the following endpoint: /api/v1/organizations/{organisationId}/members Although my calls to the same endpoint are returning 404’s. Consequently, my assumption is that this endpoint is not available for public consumption. Am I correct, and if so do you have any plans to open this up in the future? Thanks in advance, Oliver McPheely.
I am in the process of updating and testing an app which updates boards though the REST API. While doing this I’ve noticed a change in behaviour from the last time this app was used. Making a call to the ‘update widget’ (https://developers.miro.com/reference#update-board-widgets) endpoint results in a “connection restored” pop-up in a browser watching the board being updated. This behaviour is also reproduced using the ‘Try-it’ button in the API documentation, and has been seen with both Firefox and Chrome.This is a issue as it results in the board becoming temporarily unresponsive. This change appears to have happened in the last 3 months as it was working well the last time the app in question was tested.Any help or advice on how to fix or work around this behaviour would be greatly appreciated.If you would like more details please let me know.
Is any other option available for export the board in format of image using miro API?
I am working for a larger organization which has Domain SSO enabled for their users. We are working on building a custom app for Miro, but when I follow the instructions on the Getting Started page, and click the Get Dev Team to Create an App, I get an error that says: “Domain users are not allowed to create any accounts outside of their domain organization.” We have been building the tool in our own development project, but it’s now time to hand it over to the company and I don’t see how to add it in their organization’s settings. Our ‘API, SDK & Embed’ tab looks very different from theirs.Any help would be greatly appreciated.
Dear, I would like to set up a board with frames, one of them filled with a Kanban template. Did someone has done this before ? Thanks in advance for your help. Cheers Pierre
Hey guys, Miro is awesome, and to learn more awsomeness of miro I have been playing with miro SDK. I know how to create widgets like card, stickers, lines etc. I want to link one widget, lets say sticker A to some other shape in the same board. Visually, we can do this by selecting sticker A, then “ctrl + k” and selecting the target shape in the board. But I cant figure out how to do this using SDK. PS:- One alternative is to wrap the text of sticker A inside <a href="link to the board object here”>TEXT</a>. But this makes the text a hyperlink, not exactly what I want to accomplish.
Is there a integrated miro command or any other way to detect when a miro widget gets created on a board? And even more importantly can we access it’s id and other data immediately as it gets created? The only solution to this that comes to my mind is to gather all current miro board widget id’s and compare them in certain time intervals against new widget id’s whenever the time interval triggers. This solution seems really dirty and inefficient to me though so I’m trying to ask here first to find out if I could theoretically implement some sort of a event listener for miro widget creation
Hi, I’m trying to use bringForward() and sendBackward() Miro board functions which I found here: https://github.com/miroapp/app-examples/blob/master/miro.d.ts (line 351 - 357) I assumed this only needs the widget id’s in an array but when I tried with some test data it doesn’t actually change the widget “priority” AKA doesn’t send them forward or backwards. Tried something like this: `sendbackward(arrayOfWidgets)` where arrayOFWidgets were a few selected widgets from current boardIs there a specific use case that has to be done like with miro.board.commands , where they have to be in a miro on ready block? Or am I missing something else? Thanks for any suggestions
Hi all!How do I set up my plugin to have settings on the Apps&Integrations page? I would like to give the user some configuration options.Alternatively, I guess this can be done with a modal view (to configure) and a hidden widget (to store). Is that a good approach? Are there better ways to let the user configure a plugin?Thanks for your help :)
Has anyone else experienced an issue where the due date on your card does not match the “date” field when pulled from Miro? This is happening in about 50% of the cards I am pulling and for all of them the incorrect date is one day ahead of the correct assigned date. eg. if the due date is “Nov. 12” the output json from a Python Requests API pull will say “Nov. 13”. I have not noticed any correlation with when the cards were created or modified.
Heya,I am trying to use the REST API to automatically deprovision our users when a member leaves the team.I am using the Update Team User Connection endpoint to change a member’s role from ‘member’ to ‘non_team’. I’m doing this because it’s the best way to ensure a member’s boards aren’t deleted when their account is removed.When I try this with an account, I get a 500 error, both via Postman and the API reference page, with the message InternalError.After this happens, the user can no longer access the Team Boards at all. The web interface’s Users list still lists them as a Full member, and presumably they are still licensed as such.When using the API, the user is no longer listed under List All Team Members, and the Team User Connection ID will 404.Is this a bug that I'm running into, or am I doing something wrong here? Is there a better practice to deprovision users?Thanks for any help you can provide!
Hi there, I want to use Embed miro board.So, I implements frontend plugin referring below.https://developers.miro.com/docs/editable-boards-for-anonymous-users Then, I have a question.When we use miroBoardsPicker.open, what kind of values should be passed to getToken property?In the document, they say only we should generate jwt in server side.I want to knouw actual type of the property. Regards,
The METADATA_CHANGED event is still experimental, and it does not call the call back in my browser. How can I subscribe to it? having it is really useful.
Hi,I have tried a few ways to get the current user id, but I always encounter a error in one way or another. What is the most basic way to get a user id? So far I have mainly tried this: async function getUser() { const proxyurl = "https://cors-anywhere.herokuapp.com/" // getting cors error without this const url = "https://api.miro.com/v1/users/me" const options = { "method": "GET", "headers": { “Authorization”: `Bearer ${token}`, "Content-Type": "application/json" } } fetch(proxyurl + url, options) .then(response => { console.log(response) }) .catch(err => { console.error(err) }) }I’m currently getting error 401 “Not Authorized”I’ve seen a few discussions in here about a direct miro dot command that can get the user id but can’t find it anywhere in the documentation. Will be thankful for any suggestions as I ran out of ideas of what to
Is there a way to have a T&C pop up for guests to accept before they can view/interact with a board?
Hi,I’m using Miro REST API in the form of a sidebar, I’m trying to export data to a external database and would like to mark each dataset with its corresponding miro board ID from the board url like this one for example: https://miro. com/app/board/hereistheboardid/I’m trying to do this by calling window.location.pathname.split('/') from which I then obtain an array of paths in the link. Unfortunately the paths that I get returned back are ones from my server where I keep the code to my miro REST API Outlined in blue is my sidebar, from which the url path gets returned, but in the red there is underlined the actual window url / location which I believe it should return. Any ideas how to get the miro board URL via my REST API / webplugin?
I’m new to creating plugin for Miro. I have created a test plugin by follwing https://developers.miro.com/docs/how-to-start this & successfully added to my board. But how to modify/change my plugin after installation. When I change the code in index.js file of my web page which is hosted in the web plugin url, the plugin does not affect. It keeps un changed. How to update my plugin to affect changes.Thank you
I am writing a plugin that detects changes in a board (widget created, deleted, etc), and I want to take a screenshot of the change.The plugin can detect those changes, but I am stuck at the screenshot part. I have tried to integrate an iframe in the plugin but with no success. I want to ask you what ideas would you suggest?
Hi, I am trying to get widgets by id using the await miro.board.widgets.get({ id }) but it doesn’t appear to work? I have tried single ids, array of ids, both with strings and integers and nothing comes back? Is that expected behaviour? This is within the onReady callback; Thanks, Craig
Hi guys,I want to code a simple calculator to use inside the Miro environment.Since I am completely new to doing this in Miro: Do I need to build this functionality within my own HTML environment and embed this piece of code within Miro using something like an iframe? I can’t figure out if it’s always a ‘web plugin’ you’ll have to load from your own website/environment.If someone can explain me where to start, thanks a lot!All the best,Bob
Hi, I seem to be having an issue in getting the miro.board.widgets.create() promise to complete. The widgets are created but the returned promise never changes from “pending”. I have tried creating widgets one at a time and in batches but with no luck. As I say the widgets do create but without the promise completing or even erroring there is no way for my code to complete… it just hangs forever :( Anyone else has this issue? My code block is wrapped in the miro.onReady() callback so I don’t think i need to do anything else? Thanks.
Hi, I have trouble with embed from miro. I used this code in my website <iframe width="100%" height="400"src="https://miro.com/app/embed/o9J_kkXmwko=/?autoplay=yep" frameborder="0" scrolling="no" allowfullscreen=""></iframe> but I have an iframe like that : miro.com And i have a error on the the console :Uncaught ReferenceError: rtb is not defined at Object.p (embedEntry.23055cf40587a7dd6af2.js:2) at Object.O [as storeUserIds] (embedEntry.23055cf40587a7dd6af2.js:2) at t.apiHost (embedEntry.23055cf40587a7dd6af2.js:2) at G.apiHost (embedEntry.23055cf40587a7dd6af2.js:2) at Object.<anonymous> (embedEntry.23055cf40587a7dd6af2.js:2) at p (runtime~embedEntry.09c728ffbf645e3ac835.js:1) at Object.<anonymous> (embedEntry.23055cf40587a7dd6af2.js:2) at p (runtime~embedEntry.09c728ffbf645e3ac835.js:1) at Object.<anonymous> (embedEntry.23055cf40587a7dd6af2.js:2) at Object.<anonymous> (embedEntry.23055cf40587a7dd6af2.js:2) Thank for yo
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.