---
title: "Create an incident integration"
method: POST
path: "/api/v2/{org_id}/incidents/integrations"
tags: ["Incidents"]
---

# Create an incident integration

`POST /api/v2/{org_id}/incidents/integrations`

## Request

- Base URL: `https://api.openobserve.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.openobserve.ai/api/v2/{org_id}/incidents/integrations`
- Auth: API key in header `Authorization`
- TypeScript: <https://skmtc.dev/openobserve/apis/openobserve-api-http/docs/api/v2/:org_id/incidents/integrations/post.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `org_id` string, required

## Request body

- CreateIntegrationPayload
  - `config` object, nullable
  - `destinations` string[]: Where notifications go when this source's alerts create or join an incident. Omitted or empty means "use the org default" — see `IncidentIntegrationRecord::destinations`.
  - `name` string, required
  - `source_type` string, nullable

## Response `200`

Success

- IntegrationResponse
  - `config` object, required
  - `created_at` integer, required
  - `created_by` string, required
  - `destinations` string[], required
  - `enabled` boolean, required
  - `id` string, required
  - `name` string, required
  - `org_id` string, required
  - `source_type` string, required
  - `token` string, nullable: Absent for a caller without `incident_integrations` PUT: it ingests into the org.
  - `updated_at` integer, required
  - `url` string, nullable: Carries the token, so it is withheld with it.

## Other responses

- `409`: Name already exists in the org

---

[API](https://skmtc.dev/openobserve/apis/openobserve-api-http.md) - [All operations](https://skmtc.dev/openobserve/apis/openobserve-api-http/llms.txt) - [OpenAPI document](https://skmtc.dev/openobserve/apis/openobserve-api-http/revisions/0529b8a10252?raw)
