Software development kit (SDK)

The monday.com SDK provides a toolset for application developers to build features and solutions on top of the monday.com Work OS platform. You'll find this SDK useful if you want to:

  • Access monday.com account data from your application by utilizing the GraphQL client
  • Build board views and dashboard widgets that extend the monday.com UI
  • Build integrations and automations using your own external services and business logic

The SDK contains methods for server-side and client-side application development. Client-side capabilities assume a valid user session is present and can seamlessly act on behalf of that user. At the same time, you can use server-side methods to access monday.com features using explicit credentials without any client-side code.

Usage

Using as an npm module

Install the SDK as a module:

npm install monday-sdk-js --save

Then import into your project:

import mondaySdk from "monday-sdk-js";
const monday = mondaySdk();

As a <script> tag directly in your HTML code

Load the SDK directly into your HTML code by adding the following:

<head>
  <script src="https://cdn.jsdelivr.net/npm/monday-sdk-js/dist/main.js"></script>
</head>

Then, initialize the SDK anywhere on the page by declaring:

const monday = window.mondaySdk()

Seamless authentication

When used for client-side development, SDK methods that require acting on behalf of the connected user will work out-of-the-box by communicating with the parent monday.com running application. You're not required to initialize the SDK client with any explicit credentials.

Methods that use seamless authentication (including monday.api and monday.storage) offer capabilities that are scoped based on the permissions of the logged-in user and the scopes you have configured in your app.

SDK capabilities

The SDK exposes the following capabilities:

SDK ObjectCapability
monday.apiPerforming queries against the monday.com API on behalf of the connected user
monday.listenListen to client-side events on the monday.com client running this app
monday.getRetrieve information from the monday.com client running this app
monday.executeCall an action on the monday.com client running this app
monday.storageRead/write to the Storage API, a key-value storage service for apps
monday.oauthRedirecting the client to the OAuth authorization server with your client ID included
monday.setSetup data inside an app