UptimeRobot PSP Announcements API

The PSP Announcements API from UptimeRobot — 4 operation(s) for psp announcements.

Operations 7

GET /psps/{pspId}/announcements List announcements #
POST /psps/{pspId}/announcements Create an announcement #
GET /psps/{pspId}/announcements/{id} Get an announcement by ID #
PATCH /psps/{pspId}/announcements/{id} Update an announcement #
DELETE /psps/{pspId}/announcements/{id} Delete an announcement #
POST /psps/{pspId}/announcements/{id}/pin Pin an announcement #
POST /psps/{pspId}/announcements/{id}/unpin Unpin an announcement #

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/uptimerobot:uptimerobot-psp-announcements-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

uptimerobot-psp-announcements-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: UptimeRobot PSP Announcements API
  description: ''
  version: '3.0'
  contact: {}
servers:
- url: https://api.uptimerobot.com/v3
tags:
- name: PSP Announcements
paths:
  /psps/{pspId}/announcements:
    get:
      description: List all announcements for a Public Status Page. Results are sorted by creation date (newest first) and can be filtered by status.
      operationId: PspAnnouncementsController_list
      parameters:
      - name: pspId
        required: true
        in: path
        description: ID of the Public Status Page
        schema:
          type: number
      - name: limit
        required: false
        in: query
        description: 'Maximum number of announcements to return per page. Default: 50, Min: 1, Max: 200.'
        schema:
          minimum: 1
          maximum: 200
          example: 50
          type: number
      - name: status
        required: false
        in: query
        description: Filter announcements by status
        schema:
          enum:
          - OFFLINE
          - PENDING
          - PUBLISHED
          - ARCHIVED
          type: string
      - name: cursor
        required: false
        in: query
        description: Cursor to paginate through announcements
        schema:
          type: number
      responses:
        '200':
          description: List of announcements
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PspAnnouncementPaginationResponseDto'
        '400':
          description: Invalid status value
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '401':
          description: Unauthorized - missing or invalid authentication
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '404':
          description: PSP not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '429':
          description: Too Many Requests - rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        default:
          description: An error response. `code` is a member of the published error code vocabulary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
      security:
      - bearer: []
      summary: List announcements
      tags:
      - PSP Announcements
    post:
      description: Create a new announcement for a Public Status Page
      operationId: PspAnnouncementsController_create
      parameters:
      - name: pspId
        required: true
        in: path
        description: ID of the Public Status Page
        schema:
          type: number
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreatePspAnnouncementRequestDto'
      responses:
        '201':
          description: The announcement has been successfully created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PspAnnouncementResponseDto'
        '400':
          description: Invalid request body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '401':
          description: Unauthorized - missing or invalid authentication
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '403':
          description: Forbidden - no write permission
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '404':
          description: PSP not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        default:
          description: An error response. `code` is a member of the published error code vocabulary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
      security:
      - bearer: []
      summary: Create an announcement
      tags:
      - PSP Announcements
  /psps/{pspId}/announcements/{id}:
    get:
      description: Retrieve a single announcement for a Public Status Page
      operationId: PspAnnouncementsController_get
      parameters:
      - name: pspId
        required: true
        in: path
        description: ID of the Public Status Page
        schema:
          type: number
      - name: id
        required: true
        in: path
        description: ID of the announcement
        schema:
          type: number
      responses:
        '200':
          description: The announcement
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PspAnnouncementResponseDto'
        '401':
          description: Unauthorized - missing or invalid authentication
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '404':
          description: PSP or announcement not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '429':
          description: Too Many Requests - rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        default:
          description: An error response. `code` is a member of the published error code vocabulary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
      security:
      - bearer: []
      summary: Get an announcement by ID
      tags:
      - PSP Announcements
    patch:
      description: Update an existing announcement for a Public Status Page
      operationId: PspAnnouncementsController_update
      parameters:
      - name: pspId
        required: true
        in: path
        description: ID of the Public Status Page
        schema:
          type: number
      - name: id
        required: true
        in: path
        description: ID of the announcement to update
        schema:
          type: number
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdatePspAnnouncementRequestDto'
      responses:
        '200':
          description: The announcement has been successfully updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PspAnnouncementResponseDto'
        '400':
          description: Invalid request body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '401':
          description: Unauthorized - missing or invalid authentication
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '403':
          description: Forbidden - no write permission
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '404':
          description: PSP or announcement not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        default:
          description: An error response. `code` is a member of the published error code vocabulary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
      security:
      - bearer: []
      summary: Update an announcement
      tags:
      - PSP Announcements
    delete:
      description: Permanently delete an announcement from a Public Status Page. This cannot be undone.
      operationId: PspAnnouncementsController_delete
      parameters:
      - name: pspId
        required: true
        in: path
        description: ID of the Public Status Page
        schema:
          type: number
      - name: id
        required: true
        in: path
        description: ID of the announcement to delete
        schema:
          type: number
      responses:
        '200':
          description: The announcement has been successfully deleted
        '401':
          description: Unauthorized - missing or invalid authentication
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '403':
          description: Forbidden - no write permission
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '404':
          description: PSP or announcement not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        default:
          description: An error response. `code` is a member of the published error code vocabulary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
      security:
      - bearer: []
      summary: Delete an announcement
      tags:
      - PSP Announcements
  /psps/{pspId}/announcements/{id}/pin:
    post:
      description: Pin an announcement to the Public Status Page. This operation is idempotent.
      operationId: PspAnnouncementsController_pin
      parameters:
      - name: pspId
        required: true
        in: path
        description: ID of the Public Status Page
        schema:
          type: number
      - name: id
        required: true
        in: path
        description: ID of the announcement to pin
        schema:
          type: number
      responses:
        '200':
          description: Announcement pinned successfully
        '401':
          description: Unauthorized - missing or invalid authentication
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '403':
          description: Forbidden - no write permission
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '404':
          description: PSP or announcement not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        default:
          description: An error response. `code` is a member of the published error code vocabulary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
      security:
      - bearer: []
      summary: Pin an announcement
      tags:
      - PSP Announcements
  /psps/{pspId}/announcements/{id}/unpin:
    post:
      description: Unpin an announcement from the Public Status Page. This operation is idempotent.
      operationId: PspAnnouncementsController_unpin
      parameters:
      - name: pspId
        required: true
        in: path
        description: ID of the Public Status Page
        schema:
          type: number
      - name: id
        required: true
        in: path
        description: ID of the announcement to unpin
        schema:
          type: number
      responses:
        '200':
          description: Announcement unpinned successfully
        '401':
          description: Unauthorized - missing or invalid authentication
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '403':
          description: Forbidden - no write permission
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '404':
          description: PSP or announcement not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        default:
          description: An error response. `code` is a member of the published error code vocabulary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
      security:
      - bearer: []
      summary: Unpin an announcement
      tags:
      - PSP Announcements
components:
  schemas:
    PspAnnouncementResponseDto:
      type: object
      properties:
        id:
          type: integer
          minimum: 0
        pspId:
          type:
          - integer
          - 'null'
          minimum: 0
        userId:
          type:
          - integer
          - 'null'
          minimum: 0
        title:
          type:
          - string
          - 'null'
          maxLength: 255
        content:
          type:
          - string
          - 'null'
          maxLength: 2000
        status:
          description: 'Status of the announcement. Possible values: Offline (draft, not visible on status page), Pending (scheduled for publication), Published (currently visible on status page), Archived (historical record, no longer visible)'
        type:
          description: 'Type of the announcement. Possible values: Info (general information), Maintenance (scheduled maintenance notification), Issue (incident or issue notification)'
        deliveryStatus:
          description: 'Delivery status of the announcement to subscribers. Possible values: CantSend (cannot be sent to subscribers), InQueue (queued for delivery), Sent (successfully delivered)'
        startDate: {}
        endDate: {}
        creationDate: {}
        submitDate: {}
        sentCount:
          type:
          - integer
          - 'null'
          minimum: 0
      required:
      - id
      - pspId
      - userId
      - title
      - content
      - status
      - type
      - deliveryStatus
      - startDate
      - endDate
      - creationDate
      - submitDate
      - sentCount
    ApiErrorResponseDto:
      type: object
      properties:
        code:
          type: string
          description: A stable, machine-readable error code. Always a member of the published vocabulary.
          enum:
          - 000-001
          - 000-002
          - 000-003
          - 000-004
          - 000-005
          - 000-006
          - 000-007
          - 000-008
          - 000-009
          - 000-010
          - 000-011
          - 000-012
          - 000-013
          - 000-014
          - 003-001
          - 003-002
          - 003-003
          - 003-004
          - 003-005
          - 003-006
          - 003-007
          - 003-008
          - 003-009
          - 003-010
          - 003-011
          - 003-012
          - 003-013
          - 003-014
          - 003-015
          - 003-016
          - 003-017
          - 003-018
          - 003-019
          - 003-020
          - 003-021
          - 004-001
          - 004-002
          - 004-033
          - 004-034
          - 004-035
          - 004-036
          - 004-037
          - 004-038
          - 004-039
          - 004-040
          - 004-041
          - 004-042
          - 004-003
          - 004-004
          - 004-005
          - 004-006
          - 004-007
          - 004-008
          - 004-009
          - 004-010
          - 004-011
          - 004-012
          - 004-013
          - 004-014
          - 004-015
          - 004-016
          - 004-017
          - 004-018
          - 004-019
          - 004-020
          - 004-021
          - 004-022
          - 004-023
          - 004-024
          - 004-025
          - 004-026
          - 004-027
          - 004-028
          - 004-029
          - 004-030
          - 004-031
          - 004-032
          - 004-043
          - 004-044
          - 004-045
          - 005-001
          - 005-002
          - 006-001
          - 009-001
          - 009-002
          - 009-003
          - 009-004
          - 009-005
          - 009-006
          - 009-007
          - 009-008
          - 009-009
          - 009-010
          - 009-011
          - 009-012
          - 009-013
          - 009-014
          - 009-015
          - 009-016
          - 009-017
          - 009-022
          - 009-023
          - 009-024
          - 009-025
          - 009-018
          - 009-019
          - 009-020
          - 009-026
          - 009-027
          - 009-028
          - 009-033
          - 009-034
          - 009-021
          - 009-033
          - 009-030
          - 009-036
          - 009-037
          - 011-001
          - 011-002
          - 011-003
          - 011-004
          - 011-005
          - 011-006
          - 011-007
          - 011-008
          - 011-009
          - 011-010
          - 011-011
          - 011-012
          - 011-013
          - 011-014
          - 011-015
          - 011-016
          - 011-017
          - 011-018
          - 011-019
          - 011-020
          - 011-021
          - 011-022
          - 011-023
          - 011-024
          - 011-025
          - 011-026
          - 011-027
          - 011-028
          - 011-029
          - 013-001
          - 013-002
          - 013-003
          - 013-004
          - 013-005
          - 013-006
          - 013-007
          - 013-008
          - 017-001
          - 017-002
          - 018-001
          - 018-002
          - 018-003
          - 018-004
          - 018-005
          - 018-006
          - 018-007
          - 018-008
          - 018-009
          - 018-010
          - 018-011
          - 018-012
          - 021-001
          - 021-002
          - 021-003
          - 021-004
          - 021-005
          - 021-006
          - 021-007
          - 021-008
          - 021-009
          - 021-010
          - 021-011
          - 021-012
          - 021-013
          - 021-014
          - 021-015
          - 021-016
          - 021-017
          - 021-018
          - 021-019
          - 021-020
          - 021-021
          - 021-022
          - 021-023
          - 021-024
          - 021-025
          - 021-026
          - 021-027
          - 021-028
          - 021-029
          - 021-030
          - 021-031
          - 021-032
          - 021-033
          - 021-034
          - 021-035
          - 021-036
          - 021-037
          - 021-038
          - 021-039
          - 021-040
          - 021-041
          - 021-042
          - 021-043
          - 021-044
          - 021-045
          - 021-046
          - 021-047
          - 021-048
          - 021-049
          - 021-050
          - 021-051
          - 021-052
          - 022-001
          - 024-001
          - 024-002
          - 024-003
          - 024-004
          - 024-005
          - 024-006
          - 024-007
          - 024-008
          - 025-002
          - 025-003
          - 025-004
          - 025-005
          - 025-006
          - 025-007
          - 025-008
          - 025-009
          - 025-010
          - 025-011
          - 025-012
          - 025-013
          - 025-014
          - 025-015
          - 025-016
          - 025-017
          - 025-018
          - 025-019
          - 025-020
          - 025-021
          - 025-022
          - 021-053
          - 021-054
          - 021-055
          - 021-056
          - 021-057
          - 021-058
          - 021-059
          - 021-060
          - 021-061
          - 021-062
          - 021-065
          - 021-066
          - 021-067
          - 021-068
          - 026-001
          - 026-002
          - 026-003
          - 026-004
          - 026-005
          - 026-006
          - 026-007
          - 026-008
          - 026-009
          - 026-016
          - 026-017
          - 026-018
          - 026-019
          - 026-020
          - 027-001
          - 027-002
          - 027-003
          - 027-004
          - 027-005
          - 027-006
          - 027-007
          - 027-008
          - 027-009
          - 027-010
          - 027-011
          - 027-012
          - 027-013
          - 027-014
          - 028-001
          - 028-002
          - 029-001
          - 029-002
          - 029-003
          - 029-004
          - 029-005
          - 029-006
          - 029-007
          - 029-008
          - 029-009
          - 029-010
          - 029-011
          - 029-012
          - 029-013
          - 029-014
          - 029-015
        message:
          description: Human-readable error detail. An array of per-field messages for validation failures, a single string otherwise.
          oneOf:
          - type: string
          - type: array
            items:
              type: string
        statusCode:
          type: number
          description: The HTTP status code, present on validation failures.
        error:
          type: string
          description: The HTTP status text, present on validation failures.
      required:
      - code
      - message
    PspAnnouncementPaginationResponseDto:
      type: object
      properties:
        nextLink:
          type:
          - string
          - 'null'
        data:
          type: array
          items:
            type: object
            properties:
              id:
                type: integer
                minimum: 0
              pspId:
                type:
                - integer
                - 'null'
                minimum: 0
              userId:
                type:
                - integer
                - 'null'
                minimum: 0
              title:
                type:
                - string
                - 'null'
                maxLength: 255
              content:
                type:
                - string
                - 'null'
                maxLength: 2000
              status:
                description: 'Status of the announcement. Possible values: Offline (draft, not visible on status page), Pending (scheduled for publication), Published (currently visible on status page), Archived (historical record, no longer visible)'
              type:
                description: 'Type of the announcement. Possible values: Info (general information), Maintenance (scheduled maintenance notification), Issue (incident or issue notification)'
              deliveryStatus:
                description: 'Delivery status of the announcement to subscribers. Possible values: CantSend (cannot be sent to subscribers), InQueue (queued for delivery), Sent (successfully delivered)'
              startDate: {}
              endDate: {}
              creationDate: {}
              submitDate: {}
              sentCount:
                type:
                - integer
                - 'null'
                minimum: 0
            required:
            - id
            - pspId
            - userId
            - title
            - content
            - status
            - type
            - deliveryStatus
            - startDate
            - endDate
            - creationDate
            - submitDate
            - sentCount
      required:
      - nextLink
      - data
    UpdatePspAnnouncementRequestDto:
      type: object
      properties:
        title:
          type: string
          maxLength: 255
          description: Title of the announcement
          example: Scheduled Maintenance
        content:
          type: string
          maxLength: 2000
          description: Content of the announcement
          example: We will be performing scheduled maintenance on our servers.
        status:
          enum:
          - Offline
          - Pending
          - Published
          - Archived
          type: string
          description: 'Status of the announcement. Possible values: Offline (draft, not visible on status page), Pending (scheduled for publication), Published (currently visible on status page), Archived (historical record, no longer visible)'
          example: Pending
        type:
          enum:
          - Info
          - Maintenance
          - Issue
          type: string
          description: 'Type of the announcement. Possible values: Info (general information), Maintenance (scheduled maintenance notification), Issue (incident or issue notification)'
          example: Maintenance
        startDate:
          format: date-time
          type: string
          description: Start date of the announcement (ISO 8601 format)
          example: '2024-01-15T10:00:00.000Z'
        endDate:
          format: date-time
          type:
          - string
          - 'null'
          description: End date of the announcement (ISO 8601 format)
          example: '2024-01-15T14:00:00.000Z'
    CreatePspAnnouncementRequestDto:
      type: object
      properties:
        title:
          type: string
          maxLength: 255
          description: Title of the announcement
          example: Scheduled Maintenance
        content:
          type: string
          maxLength: 2000
          description: Content of the announcement
          example: We will be performing scheduled maintenance on our servers.
        status:
          enum:
          - Offline
          - Pending
          - Published
          - Archived
          type: string
          description: 'Status of the announcement. Possible values: Offline (draft, not visible on status page), Pending (scheduled for publication), Published (currently visible on status page), Archived (historical record, no longer visible)'
          example: Pending
        type:
          enum:
          - Info
          - Maintenance
          - Issue
          type: string
          description: 'Type of the announcement. Possible values: Info (general information), Maintenance (scheduled maintenance notification), Issue (incident or issue notification)'
          example: Maintenance
        startDate:
          format: date-time
          type: string
          description: Start date of the announcement (ISO 8601 format)
          example: '2024-01-15T10:00:00.000Z'
        endDate:
          format: date-time
          type:
          - string
          - 'null'
          description: End date of the announcement (ISO 8601 format)
          example: '2024-01-15T14:00:00.000Z'
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: Enter your API token (without the "Bearer" prefix — it is added automatically).