Skip to main content

Documentation Index

Fetch the complete documentation index at: https://checkly-422f444a-sync-playwright-reporter-changelog-v1-5-0.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Learn more about Dashboards in the Dashboards overview.
Use Dashboard to create public or private dashboards that display checks and their related metrics on a single page. Dashboards provide a centralized view of your monitoring data.
import { Dashboard } from "checkly/constructs"

new Dashboard("basic-dashboard", {
  header: "Service Status",
  description: "Real-time monitoring dashboard",
  tags: ["production", "api"],
  customUrl: "service-status",
})

Configuration

ParameterTypeRequiredDefaultDescription
checksPerPagenumber15Number of checks per page (1-20)
customCSSobject-Custom CSS styling (Team/Enterprise plans only)
customDomainstring-Custom domain (e.g., “status.example.com”)
customUrlstring-Subdomain under “checklyhq.com” (required if customDomain not specified)
descriptionstring-Text displayed below the header
enableIncidentsbooleanfalseEnable incidents
expandChecksbooleanfalseExpand checks by default
faviconstring-URL to favicon image
headerstring-Text displayed at the top of your dashboard
hideTagsbooleanfalseHide tags on the dashboard
isPrivatebooleanfalseMake dashboard private (Team/Enterprise plans only)
linkstring-URL to redirect when dashboard logo is clicked
logostring-URL to logo image for the dashboard header
paginatebooleantrueEnable pagination for checks
paginationRatenumber60Pagination interval: 30 | 60 | 300 seconds
refreshRatenumber60Auto-refresh interval: 60 | 300 | 600 seconds
showHeaderbooleantrueShow header and description
showP95booleantrueShow P95 statistics
showP99booleantrueShow P99 statistics
tagsstring[][]Tags that filter which checks appear on the dashboard
useTagsAndOperatorbooleanfalseUse AND instead of OR for tag filtering
widthstring'FULL'Dashboard width: 'FULL' | '960PX'

Essential Dashboard Options

header
string
Text displayed at the top of your dashboard as the main title.Usage:
new Dashboard('my-dashboard', {
  header: 'Production Services Status'
})
Use cases: Brand identity, service identification, user clarity.
description
string
Text displayed below the header providing additional context about the dashboard.Usage:
new Dashboard('my-dashboard', {
  header: 'Production Services',
  description: 'Real-time monitoring of all production services'
})
Use cases: Context provision, scope clarification, user guidance.
tags
string[]
default:"[]"
Tags that filter which checks appear on the dashboard. Empty array shows all checks.Usage:
new Dashboard('my-dashboard', {
  tags: ['production', 'api']
})
Examples:
// Service-specific tags
new Dashboard('api-dashboard', {
  header: 'API Services',
  tags: ['api-dashboard'],
})

// Environment and service tags
new Dashboard('prod-web-dashboard', {
  header: 'Production Web Services',
  tags: ['production', 'web'],
  useTagsAndOperator: true // Must have BOTH tags
})

// All checks (empty array)
new Dashboard('all-services', {
  header: 'All Services',
  tags: [] // Shows all checks
})
Use cases: Service filtering, environment separation, team organization.
customUrl
string
Subdomain under “checklyhq.com” for your dashboard (e.g., “my-status” becomes “my-status.checklyhq.com”).Usage:
new Dashboard('my-dashboard', {
  customUrl: 'service-status'
})
// Creates: service-status.checklyhq.com
Required if customDomain is not specified. Use lowercase letters, numbers, and hyphens only.
Use cases: Public access, branded URLs, easy sharing.
customDomain
string
Custom domain for your dashboard (e.g., “status.example.com”). Must be verified through the Checkly UI.Usage:
new Dashboard('my-dashboard', {
  customDomain: 'status.example.com'
})
Use cases: Brand consistency, professional appearance, domain control.
customCSS
object
Custom CSS styling for your dashboard. Only available on Team and Enterprise plans.Usage:
// Using file reference
new Dashboard("styled-dashboard", {
  customCSS: {
    entrypoint: path.join(__dirname, "dashboard.css"),
  },
})

// Using inline content
new Dashboard("styled-dashboard", {
  customCSS: {
    content: `
      .header {
        background: #080808;
        border-bottom-color: #313035;
      }
      .header .logo a {
        color: #f7f8f8;
      }
    `,
  },
})
Properties:
ParameterTypeRequiredDescription
entrypointstringPath to a CSS file containing custom styles
contentstringInline CSS content as a string
You must provide either entrypoint or content, but not both.
Use cases: Brand consistency, custom themes, visual identity, enhanced UX.

Examples

new Dashboard("production-monitoring", {
  header: "Production Services",
  description: "Real-time monitoring of all production services",
  tags: ["production", "critical"],
  customUrl: "production-monitoring",
  logo: "https://company.com/logo.png",
  refreshRate: 60,
  width: "FULL",
  showP95: true,
  showP99: true,
  enableIncidents: true,
})