Rootly

Rootly is an incident management platform that automates incident response workflows and integrates with existing tools.

OpenAPI Specification

rootly-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Rootly API
  description: Minimal OpenAPI description of the Rootly incident management REST API.
  version: "1.0.0"
  x-generated-from: https://docs.rootly.com/llms.txt
  x-generated-by: claude-crawl-2026-05-08
servers:
  - url: https://api.rootly.com/v1
    description: Rootly production API
security:
  - bearerAuth: []
tags:
  - name: Incidents
  - name: Alerts
  - name: Services
  - name: Teams
  - name: Users
  - name: Workflows
  - name: Escalation Policies
paths:
  /incidents:
    get:
      tags: [Incidents]
      summary: List incidents
      parameters:
        - $ref: '#/components/parameters/PageNumber'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Collection'
    post:
      tags: [Incidents]
      summary: Create incident
      requestBody:
        $ref: '#/components/requestBodies/Generic'
      responses:
        '201':
          description: Created
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
  /incidents/{id}:
    parameters:
      - $ref: '#/components/parameters/Id'
    get:
      tags: [Incidents]
      summary: Get incident
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
    patch:
      tags: [Incidents]
      summary: Update incident
      requestBody:
        $ref: '#/components/requestBodies/Generic'
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
    delete:
      tags: [Incidents]
      summary: Delete incident
      responses:
        '204':
          description: No content
  /incidents/{id}/mitigate:
    parameters:
      - $ref: '#/components/parameters/Id'
    post:
      tags: [Incidents]
      summary: Mitigate incident
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
  /incidents/{id}/resolve:
    parameters:
      - $ref: '#/components/parameters/Id'
    post:
      tags: [Incidents]
      summary: Resolve incident
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
  /alerts:
    get:
      tags: [Alerts]
      summary: List alerts
      parameters:
        - $ref: '#/components/parameters/PageNumber'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Collection'
    post:
      tags: [Alerts]
      summary: Create alert
      requestBody:
        $ref: '#/components/requestBodies/Generic'
      responses:
        '201':
          description: Created
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
  /alerts/{id}:
    parameters:
      - $ref: '#/components/parameters/Id'
    get:
      tags: [Alerts]
      summary: Get alert
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
    patch:
      tags: [Alerts]
      summary: Update alert
      requestBody:
        $ref: '#/components/requestBodies/Generic'
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
  /alerts/{id}/acknowledge:
    parameters:
      - $ref: '#/components/parameters/Id'
    post:
      tags: [Alerts]
      summary: Acknowledge alert
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
  /alerts/{id}/resolve:
    parameters:
      - $ref: '#/components/parameters/Id'
    post:
      tags: [Alerts]
      summary: Resolve alert
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
  /services:
    get:
      tags: [Services]
      summary: List services
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Collection'
    post:
      tags: [Services]
      summary: Create service
      requestBody:
        $ref: '#/components/requestBodies/Generic'
      responses:
        '201':
          description: Created
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
  /services/{id}:
    parameters:
      - $ref: '#/components/parameters/Id'
    get:
      tags: [Services]
      summary: Get service
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
    patch:
      tags: [Services]
      summary: Update service
      requestBody:
        $ref: '#/components/requestBodies/Generic'
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
  /teams:
    get:
      tags: [Teams]
      summary: List teams
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Collection'
    post:
      tags: [Teams]
      summary: Create team
      requestBody:
        $ref: '#/components/requestBodies/Generic'
      responses:
        '201':
          description: Created
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
  /teams/{id}:
    parameters:
      - $ref: '#/components/parameters/Id'
    get:
      tags: [Teams]
      summary: Get team
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
    patch:
      tags: [Teams]
      summary: Update team
      requestBody:
        $ref: '#/components/requestBodies/Generic'
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
  /users:
    get:
      tags: [Users]
      summary: List users
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Collection'
  /users/{id}:
    parameters:
      - $ref: '#/components/parameters/Id'
    get:
      tags: [Users]
      summary: Get user
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
    patch:
      tags: [Users]
      summary: Update user
      requestBody:
        $ref: '#/components/requestBodies/Generic'
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
  /workflows:
    get:
      tags: [Workflows]
      summary: List workflows
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Collection'
    post:
      tags: [Workflows]
      summary: Create workflow
      requestBody:
        $ref: '#/components/requestBodies/Generic'
      responses:
        '201':
          description: Created
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
  /workflows/{id}:
    parameters:
      - $ref: '#/components/parameters/Id'
    get:
      tags: [Workflows]
      summary: Get workflow
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
    patch:
      tags: [Workflows]
      summary: Update workflow
      requestBody:
        $ref: '#/components/requestBodies/Generic'
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
  /escalation-policies:
    get:
      tags: [Escalation Policies]
      summary: List escalation policies
      responses:
        '200':
          description: Successful response
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Collection'
    post:
      tags: [Escalation Policies]
      summary: Create escalation policy
      requestBody:
        $ref: '#/components/requestBodies/Generic'
      responses:
        '201':
          description: Created
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Resource'
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: "Bearer token authentication. Pass your API token as `Authorization: Bearer YOUR-TOKEN`."
  parameters:
    Id:
      name: id
      in: path
      required: true
      description: Resource identifier
      schema:
        type: string
    PageNumber:
      name: page[number]
      in: query
      description: Page number for pagination
      schema:
        type: integer
        minimum: 1
    PageSize:
      name: page[size]
      in: query
      description: Number of items per page
      schema:
        type: integer
        minimum: 1
        maximum: 200
  requestBodies:
    Generic:
      description: Generic JSON:API request body
      required: true
      content:
        application/vnd.api+json:
          schema:
            $ref: '#/components/schemas/Resource'
  schemas:
    Resource:
      type: object
      description: Generic JSON:API resource document.
      properties:
        data:
          type: object
          properties:
            id:
              type: string
            type:
              type: string
            attributes:
              type: object
              additionalProperties: true
            relationships:
              type: object
              additionalProperties: true
      additionalProperties: true
    Collection:
      type: object
      description: Generic JSON:API collection document.
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Resource'
        meta:
          type: object
          additionalProperties: true
        links:
          type: object
          additionalProperties: true
      additionalProperties: true