monit-rs Status Pages API

Manage public status pages.

Operations 7

GET /api/v1/status-pages List status pages #
POST /api/v1/status-pages Create a status page #
GET /api/v1/status-pages/{page_id} Status page detail (by internal id, not slug) #
PATCH /api/v1/status-pages/{page_id} Update a status page #
DELETE /api/v1/status-pages/{page_id} Delete a status page #
POST /api/v1/status-pages/{page_id}/endpoints Attach an endpoint to a status page #
DELETE /api/v1/status-pages/{page_id}/endpoints/{spe_id} Detach an endpoint from a status page #

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/monit-rs:monit-rs-status-pages-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

monit-rs-status-pages-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Monit Rs Status Pages API
  version: 2026.08.30
  contact:
    name: monit.rs support
    url: https://monit.rs/contact
    email: support@monit.rs
  license:
    name: Data licensed for direct reuse; see terms
    url: https://monit.rs/terms
  termsOfService: https://monit.rs/terms
  x-logo:
    url: https://monit.rs/logo.png
    backgroundColor: '#0f172a'
    altText: monit.rs
  x-origin:
  - url: https://monit.rs/openapi.yaml
    format: openapi
    version: '3.1'
  x-providerName: monit.rs
  description: 'Operations tagged status-pages across 2 of this provider''s published API definitions: api.monit.rs-openapi.json, monit-rs-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://monit.rs
  description: Production
tags:
- name: status-pages
  description: Manage public status pages.
paths:
  /api/v1/status-pages:
    get:
      tags:
      - status-pages
      summary: List status pages
      security:
      - ApiKeyBearer: []
      - BearerJwt: []
      x-scopes:
      - read:status-pages
      responses:
        '200':
          description: List of status pages.
      operationId: getApiV1StatusPages
      x-operation-id-source: derived
    post:
      tags:
      - status-pages
      summary: Create a status page
      security:
      - ApiKeyBearer: []
      - BearerJwt: []
      x-scopes:
      - write:status-pages
      parameters:
      - $ref: '#/components/parameters/IdempotencyKeyHeader'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - slug
              - title
      responses:
        '201':
          description: Created.
        '401':
          description: Not authenticated.
        '403':
          description: Missing write:status-pages scope.
        '409':
          description: Idempotency-Key reused with different body.
        '422':
          description: Validation error.
        '429':
          description: Rate limit exceeded.
      operationId: postApiV1StatusPages
      x-operation-id-source: derived
    servers:
    - url: https://monit.rs
      description: Production
  /api/v1/status-pages/{page_id}:
    get:
      tags:
      - status-pages
      summary: Status page detail (by internal id, not slug)
      security:
      - ApiKeyBearer: []
      - BearerJwt: []
      x-scopes:
      - read:status-pages
      parameters:
      - name: page_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Status page with attached endpoints.
        '404':
          description: Not found.
      operationId: getApiV1StatusPagesByPageId
      x-operation-id-source: derived
    patch:
      tags:
      - status-pages
      summary: Update a status page
      security:
      - ApiKeyBearer: []
      - BearerJwt: []
      x-scopes:
      - write:status-pages
      parameters:
      - name: page_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/IdempotencyKeyHeader'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Updated.
        '401':
          description: Not authenticated.
        '403':
          description: Missing write:status-pages scope.
        '404':
          description: Not found.
        '409':
          description: Idempotency-Key reused with different body.
        '422':
          description: Validation error.
        '429':
          description: Rate limit exceeded.
      operationId: patchApiV1StatusPagesByPageId
      x-operation-id-source: derived
    delete:
      tags:
      - status-pages
      summary: Delete a status page
      security:
      - ApiKeyBearer: []
      - BearerJwt: []
      x-scopes:
      - write:status-pages
      parameters:
      - name: page_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: Deleted.
        '401':
          description: Not authenticated.
        '403':
          description: Missing write:status-pages scope.
        '404':
          description: Not found.
        '429':
          description: Rate limit exceeded.
      operationId: deleteApiV1StatusPagesByPageId
      x-operation-id-source: derived
    servers:
    - url: https://monit.rs
      description: Production
  /api/v1/status-pages/{page_id}/endpoints:
    post:
      tags:
      - status-pages
      summary: Attach an endpoint to a status page
      security:
      - ApiKeyBearer: []
      - BearerJwt: []
      x-scopes:
      - write:status-pages
      parameters:
      - name: page_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/IdempotencyKeyHeader'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - endpoint_id
              - display_name
              properties:
                endpoint_id:
                  type: string
                  format: uuid
                display_name:
                  type: string
                display_order:
                  type: integer
      responses:
        '201':
          description: Attached.
        '401':
          description: Not authenticated.
        '403':
          description: Missing write:status-pages scope.
        '409':
          description: Idempotency-Key reused with different body.
        '422':
          description: Validation error.
        '429':
          description: Rate limit exceeded.
      operationId: postApiV1StatusPagesByPageIdEndpoints
      x-operation-id-source: derived
    servers:
    - url: https://monit.rs
      description: Production
  /api/v1/status-pages/{page_id}/endpoints/{spe_id}:
    delete:
      tags:
      - status-pages
      summary: Detach an endpoint from a status page
      security:
      - ApiKeyBearer: []
      - BearerJwt: []
      x-scopes:
      - write:status-pages
      parameters:
      - name: page_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: spe_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: Detached.
        '401':
          description: Not authenticated.
        '403':
          description: Missing write:status-pages scope.
        '404':
          description: Not found.
        '429':
          description: Rate limit exceeded.
      operationId: deleteApiV1StatusPagesByPageIdEndpointsBySpeId
      x-operation-id-source: derived
    servers:
    - url: https://monit.rs
      description: Production
components:
  parameters:
    IdempotencyKeyHeader:
      name: Idempotency-Key
      in: header
      required: false
      schema:
        type: string
        maxLength: 255
      description: Optional. Same key + same body replays cached response for 24h; same key + different body returns 409.
  securitySchemes:
    ApiKeyBearer:
      type: http
      scheme: bearer
      bearerFormat: mrs_live_*
      description: monit.rs API key (mrs_live_ prefix). Get one at https://monit.rs/settings?tab=api-keys after signing in.
    BearerJwt:
      type: http
      scheme: bearer
      description: Bearer JWT token for authenticated user sessions.
externalDocs:
  description: Full public site + browsable changelog
  url: https://monit.rs/changelog
x-refined-from:
- api.monit.rs-openapi.json
- monit-rs-openapi.json