Skip to content

Latest commit

 

History

History

custom-actions

Miro Custom Actions

Custom actions are a quick way to get one or more tasks done with your apps. Users can launch a custom action associated with your app through the context menu of a board item.

ℹ️ Important: Custom actions are only supported for non-public apps that will be distributed privately via a shareable authorization link from your App Settings page. This means that apps built with custom actions will not be eligible for distribution via the Miro Marketplace.

🚧 To ensure you can see the custom action in a dropdown from your app, you will need to register a minimum of two custom actions. If only one single custom action was registered, no drop down will appear and instead the custom action will fire directly by clicking on its icon.

👨🏻‍💻 App Demo

custom_actions_demo.mov

📒 Table of Contents

⚙️ Included Features

🛠️ Tools and Technologies

✅ Prerequisites

  • You have a Miro account.
  • You're signed in to Miro.
  • Your Miro account has a Developer team.
  • Your development environment includes Node.js 14.13 or a later version.
  • All examples use npm as a package manager and npx as a package runner.
  • Your app is a private app, and it's not publicly available on the Miro Marketplace. Currently, custom actions are available only for private apps.

📖 Associated Developer Tutorial

To view a more in depth developer tutorial of this app (including code explanations) see the custom actions tutorial on Miro's Developer documentation.

🏃🏽‍♂️ Run the app locally

  1. Run npm install to install dependencies.
  2. Run npm start to start developing.
    Your URL should be similar to this example:
    http://localhost:3000
    
  3. Open the app manifest editor by clicking Edit in Manifest.
    In the app manifest editor, configure the app as follows and then click save:
# See https://developers.miro.com/docs/app-manifest on how to use this
appName: Custom Actions
sdkVersion: SDK_V2
sdkUri: http://localhost:3000
scopes:
  - boards:read
  - boards:write
  1. Go back to your app home page, and under the Permissions section, you will see a blue button that says Install app and get OAuth token. Click that button. Then click on Add as shown in the video below. In the video we install a different app, but the process is the same regardless of the app.

⚠️ We recommend to install your app on a developer team while you are developing or testing apps.⚠️

install-app.mov
  1. Go to your developer team, and open your boards.
  2. Click on a supported item, such as a sticky note.
  3. From the context menu that appears, click on the plus icon. If you hover over it, it will say App actions.
  4. Select a custom action to send a notification to the Miro Board (see App Demo).

🗂️ Folder structure

.
├── src
│  └── index.tsx <-- Where the custom actions are defined.
├── tsconfig.json <-- typescript configuration file
├── vite.config.ts <-- Vite configuration file
└── index.html <-- The app entry point. This is the value you assign to 'sdkUri' in the app manifest file.

🫱🏻‍🫲🏽 Contributing

If you want to contribute to this example, or any other Miro Open Source project, please review Miro's contributing guide.

🪪 License

MIT License.