> ## Documentation Index
> Fetch the complete documentation index at: https://checkly-422f444a-mintlify-f27640bd.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# List all events for a heartbeat monitor

> Get all events from a heartbeat.



## OpenAPI

````yaml get /v1/checks/heartbeats/{checkId}/events
openapi: 3.0.0
info:
  title: Checkly Public API
  version: v1
  description: >-
    These are the docs for the newly released Checkly Public API. If you have
    any questions, please do not hesitate to get in touch with us.
servers:
  - url: https://api.checklyhq.com
security:
  - Bearer: []
tags: []
paths:
  /v1/checks/heartbeats/{checkId}/events:
    get:
      tags:
        - Heartbeats
      summary: Get a list of events for a heartbeat
      description: Get all events from a heartbeat.
      operationId: getV1ChecksHeartbeatsCheckidEvents
      parameters:
        - schema:
            type: string
            x-format:
              guid: true
          required: true
          name: checkId
          in: path
        - schema:
            type: string
            format: date
          required: false
          name: startTime
          in: query
        - schema:
            type: string
            format: date
          required: false
          name: endTime
          in: query
        - schema:
            type: number
            maximum: 10
            default: 10
          required: false
          name: limit
          in: query
        - schema:
            type: string
            x-format:
              guid: true
            description: >-
              Your Checkly account ID, you can find it at
              https://app.checklyhq.com/settings/account/general
          required: false
          description: >-
            Your Checkly account ID, you can find it at
            https://app.checklyhq.com/settings/account/general
          name: x-checkly-account
          in: header
      responses:
        '200':
          description: Successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HeartbeatsV1EventsResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenError'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundError'
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TooManyRequestsError'
components:
  schemas:
    HeartbeatsV1EventsResponse:
      type: array
      items:
        $ref: '#/components/schemas/HeartbeatsV1EventsForCheck'
    ApiError:
      type: object
      properties:
        statusCode:
          type: number
        error:
          type: string
        message:
          type: string
      required:
        - statusCode
        - error
        - message
    UnauthorizedError:
      type: object
      properties:
        statusCode:
          type: number
          enum:
            - 401
        error:
          $ref: '#/components/schemas/error'
        message:
          type: string
          example: Bad Token
        attributes:
          $ref: '#/components/schemas/attributes'
      required:
        - statusCode
        - error
    ForbiddenError:
      type: object
      properties:
        statusCode:
          type: number
          enum:
            - 403
        error:
          $ref: '#/components/schemas/Model1'
        message:
          type: string
          example: Forbidden
      required:
        - statusCode
        - error
    NotFoundError:
      type: object
      properties:
        statusCode:
          type: number
          enum:
            - 404
        error:
          $ref: '#/components/schemas/Model4'
        message:
          type: string
          example: Not Found
      required:
        - statusCode
        - error
    TooManyRequestsError:
      type: object
      properties:
        statusCode:
          type: number
          enum:
            - 429
        error:
          $ref: '#/components/schemas/Model2'
        message:
          type: string
          example: Too Many Requests
        attributes:
          $ref: '#/components/schemas/attributes'
      required:
        - statusCode
        - error
    HeartbeatsV1EventsForCheck:
      type: object
      properties:
        events:
          type: array
          items:
            $ref: '#/components/schemas/HeartbeatsV1Event'
        stats:
          $ref: '#/components/schemas/HeartbeatsV1EventStats'
    error:
      type: string
      enum:
        - Unauthorized
    attributes:
      type: object
    Model1:
      type: string
      enum:
        - Forbidden
    Model4:
      type: string
      enum:
        - Not Found
    Model2:
      type: string
      enum:
        - Too Many Requests
    HeartbeatsV1Event:
      type: object
      properties:
        id:
          type: string
          format: uuid
        state:
          type: string
          enum:
            - FAILING
            - EARLY
            - RECEIVED
            - GRACE
            - LATE
          description: Describe the event state, if the ping was received or not.
        timestamp:
          type: string
          format: date
          description: UTC timestamp on which we received the event.
        source:
          type: string
          nullable: true
          description: Source which triggered the event.
        userAgent:
          type: string
          nullable: true
          description: User agent from the ping.
      required:
        - id
    HeartbeatsV1EventStats:
      type: object
      properties:
        last24Hours:
          $ref: '#/components/schemas/HeartbeatsV1AvailabilityResponse'
        last7Days:
          $ref: '#/components/schemas/HeartbeatsV1AvailabilityResponse'
    HeartbeatsV1AvailabilityResponse:
      type: object
      nullable: true
      properties:
        successRatio:
          $ref: '#/components/schemas/HeartbeatsV1AvailabilitySuccessRatio'
        totalEntitiesCurrentPeriod:
          type: number
    HeartbeatsV1AvailabilitySuccessRatio:
      type: object
      properties:
        previousPeriod:
          type: number
        currentPeriod:
          type: number
  securitySchemes:
    Bearer:
      type: http
      scheme: bearer
      bearerFormat: Bearer
      description: >-
        The Checkly Public API uses API keys to authenticate requests. You can
        get the API Key
        [here](https://app.checklyhq.com/settings/user/api-keys). Your API key
        is like a password: keep it secure!

        Authentication to the API is performed using the Bearer auth method in
        the Authorization header and using the account ID.

        For example, set **Authorization** header while using cURL: `curl -H
        "Authorization: Bearer [apiKey]" "X-Checkly-Account: [accountId]"` 

````