OpsGenie Integrations API

Operations for creating, retrieving, enabling, disabling, and managing integrations.

Operations 8

POST /v2/integrations Create integration #
GET /v2/integrations List integrations #
GET /v2/integrations/{id} Get integration #
PUT /v2/integrations/{id} Update integration #
DELETE /v2/integrations/{id} Delete integration #
POST /v2/integrations/{id}/enable Enable integration #
POST /v2/integrations/{id}/disable Disable integration #
POST /v2/integrations/authenticate Authenticate integration #

Documentation

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/opsgenie-integrations-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

opsgenie-integrations-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: OpsGenie Account Integrations API
  description: The OpsGenie Account API provides endpoints for retrieving account-level information and configuration settings. Developers can use this API to access details about their OpsGenie account, including plan information and account metadata. It serves as a foundational API for administrative operations and account management within the OpsGenie platform.
  version: 2.0.0
  contact:
    name: Atlassian Support
    url: https://support.atlassian.com/opsgenie/
  termsOfService: https://www.atlassian.com/legal/cloud-terms-of-service
servers:
- url: https://api.opsgenie.com
  description: Production Server
- url: https://api.eu.opsgenie.com
  description: EU Production Server
security:
- genieKey: []
tags:
- name: Integrations
  description: Operations for creating, retrieving, enabling, disabling, and managing integrations.
paths:
  /v2/integrations:
    post:
      operationId: createIntegration
      summary: Create integration
      description: Creates a new integration in OpsGenie. The type of integration determines the configuration options available.
      tags:
      - Integrations
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateIntegrationRequest'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateIntegrationResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    get:
      operationId: listIntegrations
      summary: List integrations
      description: Returns a list of all integrations configured in the account.
      tags:
      - Integrations
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListIntegrationsResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /v2/integrations/{id}:
    get:
      operationId: getIntegration
      summary: Get integration
      description: Retrieves the details of a specific integration by its ID.
      tags:
      - Integrations
      parameters:
      - name: id
        in: path
        required: true
        description: Unique identifier of the integration.
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetIntegrationResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    put:
      operationId: updateIntegration
      summary: Update integration
      description: Updates the specified integration's configuration.
      tags:
      - Integrations
      parameters:
      - name: id
        in: path
        required: true
        description: Unique identifier of the integration.
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateIntegrationRequest'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    delete:
      operationId: deleteIntegration
      summary: Delete integration
      description: Deletes the specified integration.
      tags:
      - Integrations
      parameters:
      - name: id
        in: path
        required: true
        description: Unique identifier of the integration.
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /v2/integrations/{id}/enable:
    post:
      operationId: enableIntegration
      summary: Enable integration
      description: Enables the specified integration so it can process incoming events.
      tags:
      - Integrations
      parameters:
      - name: id
        in: path
        required: true
        description: Unique identifier of the integration.
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /v2/integrations/{id}/disable:
    post:
      operationId: disableIntegration
      summary: Disable integration
      description: Disables the specified integration so it stops processing events.
      tags:
      - Integrations
      parameters:
      - name: id
        in: path
        required: true
        description: Unique identifier of the integration.
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /v2/integrations/authenticate:
    post:
      operationId: authenticateIntegration
      summary: Authenticate integration
      description: Authenticates an integration using the provided API key and returns the integration details if the key is valid.
      tags:
      - Integrations
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - type
              properties:
                type:
                  type: string
                  description: Type of the integration to authenticate.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetIntegrationResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    ListIntegrationsResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Integration'
          description: List of integrations.
        took:
          type: number
          description: Time taken in seconds.
        requestId:
          type: string
          description: Unique identifier for the request.
    Integration:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier.
        name:
          type: string
          description: Name of the integration.
        type:
          type: string
          description: Type of the integration.
        enabled:
          type: boolean
          description: Whether the integration is currently enabled.
        ownerTeam:
          type: object
          properties:
            id:
              type: string
              description: Team ID.
            name:
              type: string
              description: Team name.
          description: Owner team.
        isGlobal:
          type: boolean
          description: Whether this is a global (account-level) integration.
        allowWriteAccess:
          type: boolean
          description: Whether write access is enabled.
        allowConfigurationAccess:
          type: boolean
          description: Whether configuration access is enabled.
        responders:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                description: Responder ID.
              name:
                type: string
                description: Responder name.
              type:
                type: string
                description: Responder type.
          description: Default responders.
    UpdateIntegrationRequest:
      type: object
      properties:
        name:
          type: string
          description: Updated integration name.
        ownerTeam:
          type: object
          description: Updated owner team.
          properties:
            id:
              type: string
              description: Team ID.
            name:
              type: string
              description: Team name.
        allowWriteAccess:
          type: boolean
          description: Updated write access setting.
        allowConfigurationAccess:
          type: boolean
          description: Updated configuration access setting.
        ignoreRespondersFromPayload:
          type: boolean
          description: Updated responder ignore setting.
        suppressNotifications:
          type: boolean
          description: Updated notification suppression setting.
        responders:
          type: array
          description: Updated default responders.
          items:
            type: object
            properties:
              id:
                type: string
                description: Responder ID.
              name:
                type: string
                description: Responder name.
              type:
                type: string
                description: Responder type.
    CreateIntegrationRequest:
      type: object
      required:
      - name
      - type
      properties:
        name:
          type: string
          description: Name of the integration.
        type:
          type: string
          description: Type of the integration (e.g. API, Marid, Email, etc.).
        ownerTeam:
          type: object
          description: Team that owns the integration.
          properties:
            id:
              type: string
              description: Team ID.
            name:
              type: string
              description: Team name.
        allowWriteAccess:
          type: boolean
          description: Whether the integration allows write access.
        allowConfigurationAccess:
          type: boolean
          description: Whether the integration allows configuration access.
        ignoreRespondersFromPayload:
          type: boolean
          description: Whether to ignore responders from the incoming payload.
        suppressNotifications:
          type: boolean
          description: Whether to suppress notifications from this integration.
        responders:
          type: array
          description: Default responders for the integration.
          items:
            type: object
            properties:
              id:
                type: string
                description: Responder ID.
              name:
                type: string
                description: Responder name.
              type:
                type: string
                enum:
                - team
                - user
                - escalation
                - schedule
                description: Responder type.
    ErrorResponse:
      type: object
      properties:
        message:
          type: string
          description: Error message.
        took:
          type: number
          description: Time taken in seconds.
        requestId:
          type: string
          description: Unique identifier for the request.
    GetIntegrationResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/Integration'
        took:
          type: number
          description: Time taken in seconds.
        requestId:
          type: string
          description: Unique identifier for the request.
    SuccessResponse:
      type: object
      properties:
        result:
          type: string
          description: Result message.
        took:
          type: number
          description: Time taken in seconds.
        requestId:
          type: string
          description: Unique identifier for the request.
    CreateIntegrationResponse:
      type: object
      properties:
        data:
          type: object
          properties:
            id:
              type: string
              description: ID of the created integration.
            name:
              type: string
              description: Name of the integration.
            enabled:
              type: boolean
              description: Whether the integration is enabled.
            type:
              type: string
              description: Integration type.
            apiKey:
              type: string
              description: API key for the integration.
        took:
          type: number
          description: Time taken in seconds.
        requestId:
          type: string
          description: Unique identifier for the request.
  securitySchemes:
    genieKey:
      type: apiKey
      in: header
      name: Authorization
      description: API key authentication using the GenieKey scheme.
externalDocs:
  description: OpsGenie Account API Documentation
  url: https://docs.opsgenie.com/docs/account-api