puzaricloud-in Resources API

The resources API from puzaricloud-in — 9 operation(s) for resources.

Operations 18

PUT /api/v1/monitors/{monitor_id} Replace a monitor's configuration (config-file keys) #
GET /api/v1/monitors/{monitor_id}/config Monitor as a config entry (what PUT accepts), with ids #
POST /api/v1/monitors/config Create a monitor from a config entry (channel_ids or channel names) #
GET /api/v1/channels List channels #
POST /api/v1/channels Create a channel #
GET /api/v1/channels/{channel_id} Get a channel #
PUT /api/v1/channels/{channel_id} Replace a channel #
DELETE /api/v1/channels/{channel_id} Delete a channel #
GET /api/v1/status-pages List status pages #
POST /api/v1/status-pages Create a status page #
GET /api/v1/status-pages/{page_id} Get a status page #
PUT /api/v1/status-pages/{page_id} Replace a status page #
DELETE /api/v1/status-pages/{page_id} Delete a status page #
GET /api/v1/servers List servers (configuration view) #
POST /api/v1/servers Register a server; the response carries the agent token (shown once) #
GET /api/v1/servers/{server_id} Get a server (configuration view) #
PUT /api/v1/servers/{server_id} Update a server's name, tags, rules, channels #
DELETE /api/v1/servers/{server_id} Delete a server and its history #

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/puzaricloud-in:puzaricloud-in-resources-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

puzaricloud-in-resources-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Vigil Resources API
  description: 'Uptime, API checks with assertions, cron heartbeats, SSL expiry, website change detection and status pages.


    Authenticate with `Authorization: Bearer ` (find your key under Settings). API access requires a paid plan.


    Alert integration recipes: Spike.sh (webhook body template with `"source": "vigil"`), Apprise (send Apprise notifications into alert ingestion), MCP server, OpenTelemetry.'
  version: 1.0.0
tags:
- name: Resources
paths:
  /api/v1/monitors/{monitor_id}:
    put:
      tags:
      - Resources
      summary: Replace a monitor's configuration (config-file keys)
      operationId: put_monitor_api_v1_monitors__monitor_id__put
      parameters:
      - name: monitor_id
        in: path
        required: true
        schema:
          type: integer
          title: Monitor Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
              title: Body
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/monitors/{monitor_id}/config:
    get:
      tags:
      - Resources
      summary: Monitor as a config entry (what PUT accepts), with ids
      operationId: monitor_config_api_v1_monitors__monitor_id__config_get
      parameters:
      - name: monitor_id
        in: path
        required: true
        schema:
          type: integer
          title: Monitor Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/monitors/config:
    post:
      tags:
      - Resources
      summary: Create a monitor from a config entry (channel_ids or channel names)
      operationId: create_monitor_config_api_v1_monitors_config_post
      requestBody:
        content:
          application/json:
            schema:
              additionalProperties: true
              type: object
              title: Body
        required: true
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/channels:
    get:
      tags:
      - Resources
      summary: List channels
      operationId: list_channels_api_v1_channels_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
    post:
      tags:
      - Resources
      summary: Create a channel
      operationId: create_channel_api_v1_channels_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChannelIn'
        required: true
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/channels/{channel_id}:
    get:
      tags:
      - Resources
      summary: Get a channel
      operationId: get_channel_api_v1_channels__channel_id__get
      parameters:
      - name: channel_id
        in: path
        required: true
        schema:
          type: integer
          title: Channel Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    put:
      tags:
      - Resources
      summary: Replace a channel
      operationId: put_channel_api_v1_channels__channel_id__put
      parameters:
      - name: channel_id
        in: path
        required: true
        schema:
          type: integer
          title: Channel Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChannelIn'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    delete:
      tags:
      - Resources
      summary: Delete a channel
      operationId: delete_channel_api_v1_channels__channel_id__delete
      parameters:
      - name: channel_id
        in: path
        required: true
        schema:
          type: integer
          title: Channel Id
      responses:
        '204':
          description: Successful Response
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/status-pages:
    get:
      tags:
      - Resources
      summary: List status pages
      operationId: list_pages_api_v1_status_pages_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
    post:
      tags:
      - Resources
      summary: Create a status page
      operationId: create_page_api_v1_status_pages_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StatusPageIn'
        required: true
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/status-pages/{page_id}:
    get:
      tags:
      - Resources
      summary: Get a status page
      operationId: get_page_api_v1_status_pages__page_id__get
      parameters:
      - name: page_id
        in: path
        required: true
        schema:
          type: integer
          title: Page Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    put:
      tags:
      - Resources
      summary: Replace a status page
      operationId: put_page_api_v1_status_pages__page_id__put
      parameters:
      - name: page_id
        in: path
        required: true
        schema:
          type: integer
          title: Page Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StatusPageIn'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    delete:
      tags:
      - Resources
      summary: Delete a status page
      operationId: delete_page_api_v1_status_pages__page_id__delete
      parameters:
      - name: page_id
        in: path
        required: true
        schema:
          type: integer
          title: Page Id
      responses:
        '204':
          description: Successful Response
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/servers:
    get:
      tags:
      - Resources
      summary: List servers (configuration view)
      operationId: list_servers_api_v1_servers_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
    post:
      tags:
      - Resources
      summary: Register a server; the response carries the agent token (shown once)
      operationId: create_server_api_v1_servers_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServerIn'
        required: true
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/servers/{server_id}:
    get:
      tags:
      - Resources
      summary: Get a server (configuration view)
      operationId: get_server_api_v1_servers__server_id__get
      parameters:
      - name: server_id
        in: path
        required: true
        schema:
          type: integer
          title: Server Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    put:
      tags:
      - Resources
      summary: Update a server's name, tags, rules, channels
      operationId: put_server_api_v1_servers__server_id__put
      parameters:
      - name: server_id
        in: path
        required: true
        schema:
          type: integer
          title: Server Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServerIn'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    delete:
      tags:
      - Resources
      summary: Delete a server and its history
      operationId: delete_server_api_v1_servers__server_id__delete
      parameters:
      - name: server_id
        in: path
        required: true
        schema:
          type: integer
          title: Server Id
      responses:
        '204':
          description: Successful Response
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    ServerIn:
      properties:
        name:
          type: string
          maxLength: 120
          title: Name
        tags:
          items:
            type: string
          type: array
          title: Tags
          default: []
        rules:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Rules
          description: alert rule overrides (same keys as the Alert rules tab); omitted keys keep defaults
        channel_ids:
          items:
            type: integer
          type: array
          title: Channel Ids
          default: []
        team_id:
          anyOf:
          - type: integer
          - type: 'null'
          title: Team Id
      type: object
      required:
      - name
      title: ServerIn
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    StatusPageIn:
      properties:
        title:
          type: string
          maxLength: 120
          title: Title
        slug:
          type: string
          maxLength: 64
          title: Slug
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
        monitor_ids:
          items:
            type: integer
          type: array
          title: Monitor Ids
          default: []
        groups:
          items:
            additionalProperties: true
            type: object
          type: array
          title: Groups
          default: []
        custom_domain:
          anyOf:
          - type: string
          - type: 'null'
          title: Custom Domain
        support_url:
          anyOf:
          - type: string
          - type: 'null'
          title: Support Url
        logo_url:
          anyOf:
          - type: string
          - type: 'null'
          title: Logo Url
        visibility:
          type: string
          pattern: ^(members|password|public|hidden)$
          title: Visibility
          default: members
        password:
          anyOf:
          - type: string
          - type: 'null'
          title: Password
        hide_branding:
          type: boolean
          title: Hide Branding
          default: false
        show_latency:
          type: boolean
          title: Show Latency
          default: true
        custom_css:
          anyOf:
          - type: string
          - type: 'null'
          title: Custom Css
        team_id:
          anyOf:
          - type: integer
          - type: 'null'
          title: Team Id
        embed_origins:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Embed Origins
      type: object
      required:
      - title
      - slug
      title: StatusPageIn
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    ChannelIn:
      properties:
        kind:
          type: string
          maxLength: 32
          title: Kind
        name:
          anyOf:
          - type: string
            maxLength: 120
          - type: 'null'
          title: Name
        config:
          additionalProperties: true
          type: object
          title: Config
          default: {}
      type: object
      required:
      - kind
      title: ChannelIn