---
title: "Create an integration configuration"
method: POST
path: "/integrations"
tags: ["integrations"]
---

# Create an integration configuration

`POST /integrations`

## Request

- Base URL: `https://api.onplana.com/api`
- URL: `https://api.onplana.com/api/integrations`
- Auth: one of:
  - HTTP bearer
  - API key in header `Authorization`

## Headers

- `X-Organization-Id` string, required

## Request body

- object
  - `type` string, required
  - `displayName` string
  - `config` object, required: Provider-specific. Sensitive fields are write-only.

## Response `200`

Created

- Integration
  - `id` string, uuid, required
  - `type` 'SLACK' | 'TEAMS' | 'GITHUB' | 'JIRA' | 'GOOGLE_DRIVE' | 'BOX' | 'DROPBOX' | 'ONEDRIVE' | 'NOTION' | 'CONFLUENCE', required
  - `displayName` string: User-supplied label.
  - `isActive` boolean, required
  - `config` object: Provider-specific configuration. Sensitive fields are write-only and never returned.
  - `organizationId` string, uuid, required
  - `createdAt` string, date-time, required

## Other responses

- `400`: Validation error
- `401`: Unauthorized - missing or invalid JWT
- `402`: Plan gate - feature not available on current plan
- `403`: Forbidden - insufficient role

---

[API](https://skmtc.dev/onplana/apis/onplana-api.md) · [All operations](https://skmtc.dev/onplana/apis/onplana-api/llms.txt) · [OpenAPI document](https://skmtc.dev/onplana/apis/onplana-api/revisions/c3d6c89e9dc8?raw)
