Datadog Apps

Datadog Apps

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.

Setup

Create an app

  1. Clone the Datadog Apps starter kit.

$ git clone git@github.com:DataDog/starter-kit.git

  1. Navigate to the folder you have cloned.

$ cd starter-kit

  1. Set up your development environment.

$ yarn install

$ yarn start

This starts your local development server on http://localhost:3000/.

Application has loaded

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.

  1. Go to your Developer Platform within Datadog and click on + New App in the upper right.
New App
  1. Enter a name for your application. Choose a distinct name so that you can differentiate it from any other apps you may be creating.

  2. 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.

App Settings Dashboard

Add your app to a dashboard

  1. Before you can add your app to a dashboard, you must enable it by clicking on UI Extensions on the left side.
Enable UI Extensions

Once this view loads, click on the Enable UI Extensions button.

  1. 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.

  1. Turn the toggle to ‘Dashboard Custom Widget’ on. This generates JSON on the right hand side.
Dashboard Custom Widget

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.

  1. Navigate to your dashboard and add a widget.
Dashboard add widget
  1. The Custom Widgets section is at the bottom of the sidebar. Find your widget in the list and add it to your dashboard.
Custom Widfget
  1. 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.
New Application New Application 2

To build your application, run yarn build in your termal. 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.

Sample Applications

Starter kit

Sentiment analysis