Phare Maintenance Windows API

Maintenance Windows

Operations 7

GET /uptime/maintenance-windows List maintenance windows #
POST /uptime/maintenance-windows Create a maintenance window #
GET /uptime/maintenance-windows/{maintenanceWindowId} Get a maintenance window #
POST /uptime/maintenance-windows/{maintenanceWindowId} Update a maintenance window #
DELETE /uptime/maintenance-windows/{maintenanceWindowId} Delete a maintenance window #
POST /uptime/maintenance-windows/{maintenanceWindowId}/cancel Cancel a maintenance window #
POST /uptime/maintenance-windows/{maintenanceWindowId}/complete Complete a maintenance window #

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/phare:phare-maintenance-windows-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

phare-maintenance-windows-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Phare Maintenance Windows API
  description: Learn how to use the phare.io API. Most of the things that can be done on the web platform can also be achieved with the API documented on this page.
  termsOfService: https://phare.io/legal/terms-of-service
  contact:
    name: Phare
    email: support@phare.io
  version: '1.0'
servers:
- url: https://api.phare.io
security:
- BearerAuth: []
tags:
- name: Maintenance Windows
  description: Maintenance Windows
paths:
  /uptime/maintenance-windows:
    get:
      tags:
      - Maintenance Windows
      summary: List maintenance windows
      description: Get a paginated list of maintenance windows
      operationId: getUptimeMaintenanceWindows
      parameters:
      - name: monitor_id
        in: query
        description: Filter maintenance windows by monitor ID. Can be specified multiple times to filter by multiple monitor IDs.
        required: false
        style: form
        explode: true
        schema:
          type: integer
      - name: status_page_id
        in: query
        description: Filter maintenance windows by status page ID. Can be specified multiple times to filter by multiple status page IDs.
        required: false
        style: form
        explode: true
        schema:
          type: integer
      - name: state
        in: query
        description: Filter maintenance windows by state.
        required: false
        schema:
          $ref: '#/components/schemas/Uptime.MaintenanceWindow.StateEnum'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/per_page'
      - $ref: '#/components/parameters/header_project_id'
      - $ref: '#/components/parameters/header_project_slug'
      responses:
        '200':
          description: Success, maintenance windows retrieved
          content:
            application/json:
              schema:
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          description: Maintenance window ID
                          type: integer
                          example: 1
                        project_id:
                          description: Parent project ID
                          type: integer
                          example: 1
                        state:
                          $ref: '#/components/schemas/Uptime.MaintenanceWindow.StateEnum'
                        monitoring_mode:
                          $ref: '#/components/schemas/Uptime.MaintenanceWindow.MonitoringModeEnum'
                        title:
                          description: Maintenance window title
                          type: string
                          example: Database upgrade
                          maximum: 250
                          minimum: 1
                        description:
                          description: Description of the maintenance window
                          type:
                          - string
                          - 'null'
                          example: Planned database upgrade and maintenance
                        starts_at:
                          description: Date and time when the maintenance window starts
                          type: string
                          format: date-time
                        ends_at:
                          description: Date and time when the maintenance window ends
                          type: string
                          format: date-time
                        monitors:
                          description: List of monitor IDs linked to the maintenance window
                          type: array
                          items:
                            type: integer
                          example:
                          - 1
                          - 2
                          - 3
                        status_pages:
                          description: List of status page IDs linked to the maintenance window
                          type: array
                          items:
                            type: integer
                          example:
                          - 1
                          - 2
                        created_at:
                          description: Date of creation for the entity
                          type: string
                          format: date-time
                        updated_at:
                          description: Date of last update for the entity
                          type: string
                          format: date-time
                      required:
                      - title
                      - monitoring_mode
                      - starts_at
                      - ends_at
                  meta:
                    $ref: '#/components/schemas/meta'
                  links:
                    $ref: '#/components/schemas/links'
                type: object
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
    post:
      tags:
      - Maintenance Windows
      summary: Create a maintenance window
      operationId: createUptimeMaintenanceWindow
      requestBody:
        description: Maintenance window request
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                title:
                  description: Maintenance window title
                  type: string
                  example: Database upgrade
                  maximum: 250
                  minimum: 1
                description:
                  description: Description of the maintenance window
                  type:
                  - string
                  - 'null'
                  example: Planned database upgrade and maintenance
                monitoring_mode:
                  $ref: '#/components/schemas/Uptime.MaintenanceWindow.MonitoringModeEnum'
                starts_at:
                  description: Date and time when the maintenance window starts
                  type: string
                  format: date-time
                ends_at:
                  description: Date and time when the maintenance window ends
                  type: string
                  format: date-time
                monitors:
                  description: List of monitor IDs linked to the maintenance window
                  type: array
                  items:
                    type: integer
                  example:
                  - 1
                  - 2
                  - 3
                status_pages:
                  description: List of status page IDs linked to the maintenance window
                  type: array
                  items:
                    type: integer
                  example:
                  - 1
                  - 2
              required:
              - title
              - monitoring_mode
              - starts_at
              - ends_at
      responses:
        '201':
          description: Success, maintenance window created
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    description: Maintenance window ID
                    type: integer
                    example: 1
                  project_id:
                    description: Parent project ID
                    type: integer
                    example: 1
                  state:
                    $ref: '#/components/schemas/Uptime.MaintenanceWindow.StateEnum'
                  monitoring_mode:
                    $ref: '#/components/schemas/Uptime.MaintenanceWindow.MonitoringModeEnum'
                  title:
                    description: Maintenance window title
                    type: string
                    example: Database upgrade
                    maximum: 250
                    minimum: 1
                  description:
                    description: Description of the maintenance window
                    type:
                    - string
                    - 'null'
                    example: Planned database upgrade and maintenance
                  starts_at:
                    description: Date and time when the maintenance window starts
                    type: string
                    format: date-time
                  ends_at:
                    description: Date and time when the maintenance window ends
                    type: string
                    format: date-time
                  monitors:
                    description: List of monitor IDs linked to the maintenance window
                    type: array
                    items:
                      type: integer
                    example:
                    - 1
                    - 2
                    - 3
                  status_pages:
                    description: List of status page IDs linked to the maintenance window
                    type: array
                    items:
                      type: integer
                    example:
                    - 1
                    - 2
                  created_at:
                    description: Date of creation for the entity
                    type: string
                    format: date-time
                  updated_at:
                    description: Date of last update for the entity
                    type: string
                    format: date-time
                required:
                - title
                - monitoring_mode
                - starts_at
                - ends_at
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '422':
          $ref: '#/components/responses/422'
      parameters:
      - $ref: '#/components/parameters/header_project_id'
      - $ref: '#/components/parameters/header_project_slug'
  /uptime/maintenance-windows/{maintenanceWindowId}:
    get:
      tags:
      - Maintenance Windows
      summary: Get a maintenance window
      description: Get a maintenance window by ID
      operationId: getUptimeMaintenanceWindow
      parameters:
      - name: maintenanceWindowId
        in: path
        description: ID of the maintenance window to show
        required: true
        schema:
          type: integer
      - $ref: '#/components/parameters/header_project_id'
      - $ref: '#/components/parameters/header_project_slug'
      responses:
        '200':
          description: Success, maintenance window retrieved
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    description: Maintenance window ID
                    type: integer
                    example: 1
                  project_id:
                    description: Parent project ID
                    type: integer
                    example: 1
                  state:
                    $ref: '#/components/schemas/Uptime.MaintenanceWindow.StateEnum'
                  monitoring_mode:
                    $ref: '#/components/schemas/Uptime.MaintenanceWindow.MonitoringModeEnum'
                  title:
                    description: Maintenance window title
                    type: string
                    example: Database upgrade
                    maximum: 250
                    minimum: 1
                  description:
                    description: Description of the maintenance window
                    type:
                    - string
                    - 'null'
                    example: Planned database upgrade and maintenance
                  starts_at:
                    description: Date and time when the maintenance window starts
                    type: string
                    format: date-time
                  ends_at:
                    description: Date and time when the maintenance window ends
                    type: string
                    format: date-time
                  monitors:
                    description: List of monitor IDs linked to the maintenance window
                    type: array
                    items:
                      type: integer
                    example:
                    - 1
                    - 2
                    - 3
                  status_pages:
                    description: List of status page IDs linked to the maintenance window
                    type: array
                    items:
                      type: integer
                    example:
                    - 1
                    - 2
                  created_at:
                    description: Date of creation for the entity
                    type: string
                    format: date-time
                  updated_at:
                    description: Date of last update for the entity
                    type: string
                    format: date-time
                required:
                - title
                - monitoring_mode
                - starts_at
                - ends_at
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
    post:
      tags:
      - Maintenance Windows
      summary: Update a maintenance window
      description: Update a maintenance window by ID
      operationId: updateUptimeMaintenanceWindow
      parameters:
      - name: maintenanceWindowId
        in: path
        description: ID of the maintenance window to update
        required: true
        schema:
          type: integer
      - $ref: '#/components/parameters/header_project_id'
      - $ref: '#/components/parameters/header_project_slug'
      requestBody:
        description: Maintenance window request
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                title:
                  description: Maintenance window title
                  type: string
                  example: Database upgrade
                  maximum: 250
                  minimum: 1
                description:
                  description: Description of the maintenance window
                  type:
                  - string
                  - 'null'
                  example: Planned database upgrade and maintenance
                monitoring_mode:
                  $ref: '#/components/schemas/Uptime.MaintenanceWindow.MonitoringModeEnum'
                starts_at:
                  description: Date and time when the maintenance window starts
                  type: string
                  format: date-time
                ends_at:
                  description: Date and time when the maintenance window ends
                  type: string
                  format: date-time
                monitors:
                  description: List of monitor IDs linked to the maintenance window
                  type: array
                  items:
                    type: integer
                  example:
                  - 1
                  - 2
                  - 3
                status_pages:
                  description: List of status page IDs linked to the maintenance window
                  type: array
                  items:
                    type: integer
                  example:
                  - 1
                  - 2
      responses:
        '200':
          description: Success, maintenance window updated
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    description: Maintenance window ID
                    type: integer
                    example: 1
                  project_id:
                    description: Parent project ID
                    type: integer
                    example: 1
                  state:
                    $ref: '#/components/schemas/Uptime.MaintenanceWindow.StateEnum'
                  monitoring_mode:
                    $ref: '#/components/schemas/Uptime.MaintenanceWindow.MonitoringModeEnum'
                  title:
                    description: Maintenance window title
                    type: string
                    example: Database upgrade
                    maximum: 250
                    minimum: 1
                  description:
                    description: Description of the maintenance window
                    type:
                    - string
                    - 'null'
                    example: Planned database upgrade and maintenance
                  starts_at:
                    description: Date and time when the maintenance window starts
                    type: string
                    format: date-time
                  ends_at:
                    description: Date and time when the maintenance window ends
                    type: string
                    format: date-time
                  monitors:
                    description: List of monitor IDs linked to the maintenance window
                    type: array
                    items:
                      type: integer
                    example:
                    - 1
                    - 2
                    - 3
                  status_pages:
                    description: List of status page IDs linked to the maintenance window
                    type: array
                    items:
                      type: integer
                    example:
                    - 1
                    - 2
                  created_at:
                    description: Date of creation for the entity
                    type: string
                    format: date-time
                  updated_at:
                    description: Date of last update for the entity
                    type: string
                    format: date-time
                required:
                - title
                - monitoring_mode
                - starts_at
                - ends_at
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '422':
          $ref: '#/components/responses/422'
    delete:
      tags:
      - Maintenance Windows
      summary: Delete a maintenance window
      description: Delete a maintenance window by ID
      operationId: deleteUptimeMaintenanceWindow
      parameters:
      - name: maintenanceWindowId
        in: path
        description: ID of the maintenance window to delete
        required: true
        schema:
          type: integer
      - $ref: '#/components/parameters/header_project_id'
      - $ref: '#/components/parameters/header_project_slug'
      responses:
        '204':
          description: Success, maintenance window deleted
          content: {}
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
  /uptime/maintenance-windows/{maintenanceWindowId}/cancel:
    post:
      tags:
      - Maintenance Windows
      summary: Cancel a maintenance window
      description: Cancel a maintenance window by ID
      operationId: cancelUptimeMaintenanceWindow
      parameters:
      - name: maintenanceWindowId
        in: path
        description: ID of the maintenance window to cancel
        required: true
        schema:
          type: integer
      - $ref: '#/components/parameters/header_project_id'
      - $ref: '#/components/parameters/header_project_slug'
      responses:
        '204':
          description: Success, maintenance window cancelled
          content: {}
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '422':
          $ref: '#/components/responses/422'
  /uptime/maintenance-windows/{maintenanceWindowId}/complete:
    post:
      tags:
      - Maintenance Windows
      summary: Complete a maintenance window
      description: Complete a maintenance window by ID
      operationId: completeUptimeMaintenanceWindow
      parameters:
      - name: maintenanceWindowId
        in: path
        description: ID of the maintenance window to complete
        required: true
        schema:
          type: integer
      - $ref: '#/components/parameters/header_project_id'
      - $ref: '#/components/parameters/header_project_slug'
      responses:
        '200':
          description: Success, maintenance window completed
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    description: Maintenance window ID
                    type: integer
                    example: 1
                  project_id:
                    description: Parent project ID
                    type: integer
                    example: 1
                  state:
                    $ref: '#/components/schemas/Uptime.MaintenanceWindow.StateEnum'
                  monitoring_mode:
                    $ref: '#/components/schemas/Uptime.MaintenanceWindow.MonitoringModeEnum'
                  title:
                    description: Maintenance window title
                    type: string
                    example: Database upgrade
                    maximum: 250
                    minimum: 1
                  description:
                    description: Description of the maintenance window
                    type:
                    - string
                    - 'null'
                    example: Planned database upgrade and maintenance
                  starts_at:
                    description: Date and time when the maintenance window starts
                    type: string
                    format: date-time
                  ends_at:
                    description: Date and time when the maintenance window ends
                    type: string
                    format: date-time
                  monitors:
                    description: List of monitor IDs linked to the maintenance window
                    type: array
                    items:
                      type: integer
                    example:
                    - 1
                    - 2
                    - 3
                  status_pages:
                    description: List of status page IDs linked to the maintenance window
                    type: array
                    items:
                      type: integer
                    example:
                    - 1
                    - 2
                  created_at:
                    description: Date of creation for the entity
                    type: string
                    format: date-time
                  updated_at:
                    description: Date of last update for the entity
                    type: string
                    format: date-time
                required:
                - title
                - monitoring_mode
                - starts_at
                - ends_at
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '422':
          $ref: '#/components/responses/422'
components:
  parameters:
    per_page:
      name: per_page
      in: query
      description: Number of resources to return per page
      required: false
      schema:
        type: integer
        example: 20
        default: 20
        maximum: 100
        minimum: 1
    header_project_id:
      name: X-Phare-Project-Id
      in: header
      description: A project header is required when using an organization-scoped API key.
      required: false
      schema:
        type: integer
        example: 1
    header_project_slug:
      name: X-Phare-Project-Slug
      in: header
      description: A project header is required when using an organization-scoped API key.
      required: false
      schema:
        type: string
        example: luminous-guiding-tower
    page:
      name: page
      in: query
      description: Page number to show
      required: false
      schema:
        type: integer
        example: 1
        default: 1
  schemas:
    meta:
      description: Meta data for pagination
      properties:
        current_page:
          type: integer
          example: 2
        from:
          type: integer
          example: 11
        to:
          type: integer
          example: 20
        per_page:
          type: integer
          example: 100
        path:
          type: string
          example: https://api.phare.io/{resource}?page=2
      type: object
    Uptime.MaintenanceWindow.MonitoringModeEnum:
      type: string
      enum:
      - pause
      - mute
      - normal
    Uptime.MaintenanceWindow.StateEnum:
      type: string
      enum:
      - scheduled
      - in_progress
      - completed
      - cancelled
    links:
      description: Links for pagination
      properties:
        first:
          type: string
          format: url
          example: https://api.phare.io/{resource}?page=2
        last:
          type:
          - string
          - 'null'
          format: url
          example: https://api.phare.io/{resource}?page=10
        prev:
          type:
          - string
          - 'null'
          format: url
          example: https://api.phare.io/{resource}?page=1
        next:
          type:
          - string
          - 'null'
          format: url
          example: https://api.phare.io/{resource}?page=1
      type: object
  responses:
    '403':
      description: Error, access forbidden
      content:
        application/json:
          schema:
            description: Access forbidden error schema
            properties:
              message:
                type: string
                example: The platform:write permission is required to perform this action.
            type: object
    '401':
      description: Error, access unauthorized
      content:
        application/json:
          schema:
            description: Access unauthorized error schema
            properties:
              message:
                type: string
                example: Unauthorized
            type: object
    '404':
      description: Error, resource not found
      content:
        application/json:
          schema:
            description: Not found error schema
            properties:
              message:
                type: string
                example: Resource not found
            type: object
    '422':
      description: Error, unprocessable entity
      content:
        application/json:
          schema:
            description: Validation error schema
            properties:
              message:
                type: string
              errors:
                properties:
                  key:
                    type: array
                    items:
                      type: string
                      example: The key field is required
                type: object
            type: object
  securitySchemes:
    BearerAuth:
      type: http
      description: 'Use a user token to access authenticated routes. The token must be specified in the Authorization HTTP header with the following format ''Authorization: Bearer <token>''.'
      scheme: bearer
x-tagGroups:
- name: Phare platform
  tags:
  - Users
  - Projects
  - Alert Rules
- name: Phare uptime
  tags:
  - Monitors
  - Incidents
  - Status Pages
  - Reports