openapi: 3.1.0 info: title: Checkly Public Accounts Heartbeats API version: v1 description: The Checkly Public API allows you to programmatically manage your monitoring checks, alerts, and more. If you have any questions, please do not hesitate to get in touch with us. contact: name: Checkly Support url: https://checklyhq.com/support license: name: MIT servers: - url: https://api.checklyhq.com description: Production server security: - bearerAuth: [] accountId: [] tags: - name: Heartbeats paths: /v1/heartbeats: get: summary: List Heartbeats description: Retrieve all heartbeat monitors operationId: listHeartbeats parameters: - name: limit in: query description: Limit the number of results schema: type: integer default: 10 minimum: 1 maximum: 100 responses: '200': description: List of heartbeats content: application/json: schema: $ref: '#/components/schemas/HeartbeatList' tags: - Heartbeats post: summary: Create Heartbeat description: Create a new heartbeat monitor operationId: createHeartbeat requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/HeartbeatCreate' responses: '201': description: Heartbeat created content: application/json: schema: $ref: '#/components/schemas/Heartbeat' tags: - Heartbeats components: schemas: HeartbeatList: type: object properties: data: type: array items: $ref: '#/components/schemas/Heartbeat' meta: $ref: '#/components/schemas/PaginationMeta' Heartbeat: type: object properties: id: type: string description: Heartbeat ID name: type: string description: Heartbeat name period: type: integer description: Expected heartbeat period in seconds grace: type: integer description: Grace period in seconds lastPingAt: type: string format: date-time description: Last ping timestamp PaginationMeta: type: object properties: currentPage: type: integer description: Current page number totalPages: type: integer description: Total number of pages totalItems: type: integer description: Total number of items limit: type: integer description: Items per page HeartbeatCreate: type: object required: - name - period properties: name: type: string description: Heartbeat name period: type: integer description: Expected heartbeat period in seconds grace: type: integer description: Grace period in seconds securitySchemes: bearerAuth: type: http scheme: bearer description: API Key authentication for Checkly API. You can get your API key at https://app.checklyhq.com/settings/user/api-keys accountId: type: apiKey in: header name: X-Checkly-Account description: Your Checkly account ID. You can find it at https://app.checklyhq.com/settings/account/general