> **Building with AI coding agents?** If you're using an AI coding agent, install the official Scalekit plugin. It gives your agent full awareness of the Scalekit API — reducing hallucinations and enabling faster, more accurate code generation.
>
> - **Claude Code**: `/plugin marketplace add scalekit-inc/claude-code-authstack` then `/plugin install <auth-type>@scalekit-auth-stack`
> - **GitHub Copilot CLI**: `copilot plugin marketplace add scalekit-inc/github-copilot-authstack` then `copilot plugin install <auth-type>@scalekit-auth-stack`
> - **Codex**: run the bash installer, restart, then open Plugin Directory and enable `<auth-type>`
> - **Skills CLI** (Windsurf, Cline, 40+ agents): `npx skills add scalekit-inc/skills --list` then `--skill <skill-name>`
>
> `<auth-type>` / `<skill-name>`: `agentkit`, `full-stack-auth`, `mcp-auth`, `modular-sso`, `modular-scim` — [Full setup guide](https://docs.scalekit.com/dev-kit/build-with-ai/)

---

# Monday.com connector

Connect to Monday.com. Manage boards, tasks, workflows, teams, and project collaboration

**Authentication:** OAuth 2.0
**Categories:** Project Management
1. ### Install the SDK

   
     ### Node.js

```bash frame="terminal"
npm install @scalekit-sdk/node
```

     ### Python

```bash frame="terminal"
pip install scalekit
```

   

   Full SDK reference: [Node.js](/agentkit/sdks/node/) | [Python](/agentkit/sdks/python/)

2. ### Set your credentials

   Add your Scalekit credentials to your `.env` file. Find values in **[app.scalekit.com](https://app.scalekit.com)** > **Developers** > **API Credentials**.

```sh showLineNumbers=false title=".env"
SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
SCALEKIT_CLIENT_ID=<your-client-id>
SCALEKIT_CLIENT_SECRET=<your-client-secret>
```

3. ### Set up the connector

   Register your Monday.com credentials with Scalekit so it handles the token lifecycle. You do this once per environment.

   ## Dashboard setup steps

Register your Scalekit environment with the Monday.com connector so Scalekit handles the authentication flow and token lifecycle for you. The connection name you create will be used to identify and invoke the connection programmatically. You'll need your app credentials from the [Monday.com Developer Center](https://monday.com/developers/apps).

1. ### Set up auth redirects

    - In [Scalekit dashboard](https://app.scalekit.com), go to **AgentKit** > **Connections** > **Create Connection**.

    - Find **Monday.com** from the list of providers and click **Create**. Copy the redirect URI. It looks like `https:///sso/v1/oauth//callback`.

      > Image: Copy redirect URI from Scalekit dashboard

    - In the [Monday.com Developer Center](https://monday.com/developers/apps), open your app and go to the **OAuth** tab.

    - Add the copied URI under **Redirect URLs** and save.

      > Image: Add redirect URL in Monday.com Developer Center

2. ### Get client credentials

    - In the [Monday.com Developer Center](https://monday.com/developers/apps), open your app and go to the **Basic Information** tab:
      - **Client ID** — listed under **Client ID**
      - **Client Secret** — listed under **Client Secret**

3. ### Add credentials in Scalekit

    - In [Scalekit dashboard](https://app.scalekit.com), go to **AgentKit** > **Connections** and open the connection you created.

    - Enter your credentials:
      - Client ID (from your Monday.com app)
      - Client Secret (from your Monday.com app)
      - Permissions — select the scopes your app needs (see [Monday.com OAuth scopes](https://developer.monday.com/apps/docs/oauth-scopes))

      > Image: Add credentials in Scalekit dashboard
    - Click **Save**.

4. ### Authorize and make your first call

   ### Node.js

```typescript title="quickstart.ts"

const scalekit = new ScalekitClient(
  process.env.SCALEKIT_ENV_URL,
  process.env.SCALEKIT_CLIENT_ID,
  process.env.SCALEKIT_CLIENT_SECRET,
)
const actions = scalekit.actions

const connector = 'monday'
const identifier = 'user_123'

// Generate an authorization link for the user
const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
console.log('Authorize Monday:', link)
process.stdout.write('Press Enter after authorizing...')
await new Promise(r => process.stdin.once('data', r))

// Make your first API call through the proxy
const result = await actions.request({
  connectionName: connector,
  identifier,
  path: '/v2',
  method: 'POST',
  body: JSON.stringify({ query: '{ boards (limit: 5) { id name } }' }),
})
console.log(result)
```

  ### Python

```python title="quickstart.py"

from scalekit.client import ScalekitClient
from dotenv import load_dotenv
load_dotenv()

scalekit_client = ScalekitClient(
    env_url=os.getenv("SCALEKIT_ENV_URL"),
    client_id=os.getenv("SCALEKIT_CLIENT_ID"),
    client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),
)
actions = scalekit_client.actions

connection_name = "monday"
identifier = "user_123"

# Generate an authorization link for the user
link_response = actions.get_authorization_link(
    connection_name=connection_name,
    identifier=identifier,
)
print("Authorize Monday:", link_response.link)
input("Press Enter after authorizing...")

# Make your first API call through the proxy
result = actions.request(
    connection_name=connection_name,
    identifier=identifier,
    path="/v2",
    method="POST",
    body=json.dumps({"query": "{ boards (limit: 5) { id name } }"}),
)
print(result)
```

## Common workflows

export const sectionTitle = 'Common workflows'

## Proxy API call

  ### Node.js

```typescript
const result = await actions.request({
  connectionName: 'monday',
  identifier: 'user_123',
  path: '/v2',
  method: 'POST',
  body: JSON.stringify({ query: '{ boards (limit: 5) { id name } }' }),
});
console.log(result);
```

  ### Python

```python

result = actions.request(
    connection_name='monday',
    identifier='user_123',
    path="/v2",
    method="POST",
    body=json.dumps({"query": "{ boards (limit: 5) { id name } }"})
)
print(result)
```

## Execute a tool

  ### Node.js

```typescript
const result = await actions.executeTool({
  connector: 'monday',
  identifier: 'user_123',
  toolName: 'monday_list',
  toolInput: {},
});
console.log(result);
```

  ### Python

```python
result = actions.execute_tool(
    connection_name='monday',
    identifier='user_123',
    tool_name='monday_list',
    tool_input={},
)
print(result)
```


---

## More Scalekit documentation

| Resource | What it contains | When to use it |
|----------|-----------------|----------------|
| [/llms.txt](/llms.txt) | Structured index with routing hints per product area | Start here — find which documentation set covers your topic before loading full content |
| [/llms-full.txt](/llms-full.txt) | Complete documentation for all Scalekit products in one file | Use when you need exhaustive context across multiple products or when the topic spans several areas |
| [sitemap-0.xml](https://docs.scalekit.com/sitemap-0.xml) | Full URL list of every documentation page | Use to discover specific page URLs you can fetch for targeted, page-level answers |
