Join the Beta!
Datadog Apps is currently in beta, but you can easily request access! Use this form to submit your request today. Once approved, you can start getting creative and develop your App for you, your organization, or for publishing to the entire Datadog community alongside our other great Datadog Apps!
What is an App?
Datadog Apps enable developers to extend the native functionality of Datadog through custom dashboard widgets. For example, if there is a data visualization you want that Datadog does not support, or a common remediation workflow you execute in a third-party platform, you could write an app to extend this functionality within Datadog.
Create an app
- Create a Datadog App.
yarn create @datadog/app
- Navigate to the folder you have created.
- Set up your development environment.
This starts your local development server on http://localhost:3000/.
If you see this message, your application is running.
Note that there are two pages:
http://localhost:3000: A main controller that orchestrates all of your different extensions (such as widgets, menus, or modals). It will come in handy as you enrich app functionality.
http://localhost:3000/widget: Components for widgets, modals, or anything that needs a dedicated display.
See the Developer Platform Developer Guide for details about this architecture.
- Go to your Developer Platform within Datadog and click on + New App in the upper right.
Enter a name for your application. Choose a distinct name so that you can differentiate it from any other apps you may be creating.
You are then presented with the dashboard for your new application. You can further change your app name here, give your app a more detailed description, or change its icon.
Add your app to a dashboard
- Before you can add your app to a dashboard, you must enable it by clicking on UI Extensions on the left side.
Once this view loads, click on the Enable UI Extensions button.
- You are then presented with more options for your app.
Make sure you change the root URL and debug mode root URL to match the localhost version of the widget that you have running. The main controller path is
/widget. These URL values will change as you build your application and begin to host it on your own infrastructure.
- Turn the toggle
to ‘Dashboard Custom Widget’ on (you may need to scroll the center panel down a bit to see it). This generates JSON on the right hand side.
Note that this JSON contains a value called
Your first widget. This is the name of your widget as it appears in the menu to add to your Dashboards.
- Navigate to your dashboard and add a widget.
- The Custom Widgets section is at the bottom of the sidebar. Find your widget in the list and add it to your dashboard.
- A preview of your new widget appears, along with some options. Scroll down in the modal and click Done to add it to your dashboard.
To build your application, run
yarn build in your terminal. Then move your static generated site to the hosting of your choice and update the URLs in the app settings.
OAuth API Access
When this feature is enabled, users need to be authenticated before using the app. This feature allows you to integrate your existing authentication mechanism (for example, cookie-based username/password login) with the Developer Platform.