Dash0
Connect to Dash0 to query data using Prometheus API
Triggers
Section titled “Triggers”Actions
Section titled “Actions”On Notification
Section titled “On Notification”The On Notification trigger starts a workflow execution when Dash0 sends a notification webhook.
- Configure the Dash0 integration in SuperPlane.
- Copy the webhook URL shown in the integration configuration.
- In Dash0, configure notifications to send HTTP POST requests to that URL.
Event Data
Section titled “Event Data”The trigger emits the full JSON payload received from Dash0 as dash0.notification.
Example Data
Section titled “Example Data”{ "data": { "issue": { "checkrules": [ { "annotations": { "summary": "High error rate detected" }, "description": "Alert when API error rate is high", "expression": "sum(rate(http_requests_total{status=~\"5..\"}[5m])) \u003e 0.05", "for": "5m", "id": "check_456", "interval": "1m", "keepFiringFor": "10m", "labels": { "env": "prod", "service": "api" }, "name": "API availability", "thresholds": { "critical": 0.05 }, "url": "https://app.dash0.com/check-rules/check_456" } ], "dataset": "default", "description": "Error rate exceeded threshold for API availability check.", "end": "", "id": "issue_123", "issueIdentifier": "availability-api-high-error-rate", "labels": [ { "key": "service", "value": { "stringValue": "api" } }, { "key": "env", "value": { "stringValue": "prod" } } ], "start": "2026-02-20T12:00:00Z", "status": "critical", "summary": "High error rate on API availability check", "url": "https://app.dash0.com/issues/issue_123" } }, "timestamp": "2026-02-20T12:00:00Z", "type": "dash0.notification"}Create HTTP Synthetic Check
Section titled “Create HTTP Synthetic Check”The Create Synthetic Check component creates an HTTP synthetic check in Dash0 to monitor the availability and performance of your endpoints.
Use Cases
Section titled “Use Cases”- Uptime monitoring: Create checks to monitor API endpoints and websites
- Performance validation: Set response time thresholds to catch regressions
- Deployment verification: Create synthetic checks after deployments to verify availability
- Multi-region monitoring: Monitor endpoints from multiple global locations
Configuration
Section titled “Configuration”Name & Dataset
Section titled “Name & Dataset”- Name: Display name of the synthetic check
- Dataset: The Dash0 dataset to create the check in (defaults to “default”)
Request
Section titled “Request”- URL: Target URL to monitor
- Method: HTTP method (GET, POST, PUT, PATCH, DELETE, HEAD)
- Redirects: Whether to follow HTTP redirects
- Allow Insecure: Skip TLS certificate validation (useful for staging environments)
- Headers: Custom HTTP request headers
- Body: Request body payload (for POST/PUT/PATCH)
Schedule
Section titled “Schedule”- Interval: How often the check runs (e.g. 30s, 1m, 5m, 1h, 2d)
- Locations: Probe locations (Frankfurt, Oregon, North Virginia, London, Brussels, Melbourne)
- Strategy: Execution strategy (all locations or round-robin)
Assertions
Section titled “Assertions”Each assertion has a kind, severity (critical or degraded), and kind-specific parameters:
- Status Code: Validate the HTTP response status code
- Timing: Set thresholds for response, request, SSL, connection, DNS, or total time
- Error Type: Detect specific error types (DNS, connection, SSL, timeout)
- SSL Certificate Validity: Enforce minimum days until certificate expiration
- Response Header: Validate presence or value of a specific response header
- JSON Body: Validate JSON response fields using JSONPath expressions
- Text Body: Match plain-text response content
Retries
Section titled “Retries”- Attempts: Number of retry attempts on failure
- Delay: Delay between retries (e.g. 1s, 2s, 5s)
Output
Section titled “Output”Returns the created synthetic check details from the Dash0 API, including the check ID and full configuration.
Example Output
Section titled “Example Output”{ "data": { "kind": "Dash0SyntheticCheck", "metadata": { "annotations": {}, "labels": { "dash0.com/dataset": "default", "dash0.com/id": "64617368-3073-796e-7468-abc123def456", "dash0.com/origin": "api-abc12345-6789-0123-4567-890abcdef012", "dash0.com/version": "1" }, "name": "login-api-health-check" }, "spec": { "enabled": true, "plugin": { "display": { "name": "Login API health check" }, "kind": "http", "spec": { "assertions": { "criticalAssertions": [ { "kind": "status_code", "spec": { "operator": "is", "value": "200" } }, { "kind": "timing", "spec": { "operator": "lte", "type": "response", "value": "5000ms" } } ], "degradedAssertions": [ { "kind": "timing", "spec": { "operator": "lte", "type": "response", "value": "2000ms" } } ] }, "request": { "headers": [], "method": "get", "queryParameters": [], "redirects": "follow", "tls": { "allowInsecure": false }, "tracing": { "addTracingHeaders": true }, "url": "https://api.example.com/health" }, "retries": { "kind": "fixed", "spec": { "attempts": 3, "delay": "1s" } } } }, "schedule": { "interval": "1m", "locations": [ "de-frankfurt", "us-oregon" ], "strategy": "all_locations" } } }, "timestamp": "2026-01-19T12:00:00Z", "type": "dash0.syntheticCheck.created"}Delete HTTP Synthetic Check
Section titled “Delete HTTP Synthetic Check”The Delete HTTP Synthetic Check component removes a synthetic check from Dash0 by its ID. Use the check ID from a Create/Get/Update output (e.g. metadata.labels[“dash0.com/id”]) or from the Dash0 dashboard.
Configuration
Section titled “Configuration”- Check ID: The Dash0 synthetic check ID to delete (required).
- Dataset: The dataset the check belongs to (defaults to “default”).
Output
Section titled “Output”Returns a confirmation payload (e.g. deleted id).
Example Output
Section titled “Example Output”{ "data": { "deleted": true, "id": "64617368-3073-796e-7468-abc123def456" }, "timestamp": "2026-01-19T12:00:00Z", "type": "dash0.syntheticCheck.deleted"}List Issues
Section titled “List Issues”The List Issues component queries Dash0 to retrieve all current issues and routes execution based on issue severity.
Use Cases
Section titled “Use Cases”- Health monitoring: Check system health and route based on issue severity
- Alert routing: Route alerts to different channels based on issue status
- Issue tracking: Monitor and process active issues
- Automated remediation: Trigger remediation workflows based on issues
Configuration
Section titled “Configuration”- Check Rules: Optional list of check rules to filter issues (leave empty to get all issues)
Output Channels
Section titled “Output Channels”- Clear: No active issues detected
- Degraded: One or more degraded issues detected
- Critical: One or more critical issues detected
Output
Section titled “Output”Returns a list of issues with:
- check_rule: The check rule that generated the issue
- status: Issue status (clear, degraded, critical)
- labels: Metric labels associated with the issue
- metadata: Additional issue metadata
Example Output
Section titled “Example Output”{ "data": { "data": { "result": [ { "metric": { "service_name": "test" }, "value": [ 1234567890, "1" ], "values": [ [ 1234567890, "1" ], [ 1234567900, "2" ] ] } ], "resultType": "vector" }, "status": "success" }, "timestamp": "2026-01-19T12:00:00Z", "type": "dash0.issues.list"}Query Prometheus
Section titled “Query Prometheus”The Query Prometheus component executes PromQL queries against the Dash0 Prometheus API.
Use Cases
Section titled “Use Cases”- Metrics monitoring: Query application and infrastructure metrics
- Alerting: Check metric thresholds and trigger alerts
- Data analysis: Analyze time-series data from your applications
- Performance monitoring: Monitor system performance metrics
Configuration
Section titled “Configuration”- PromQL Query: The Prometheus Query Language query to execute (supports expressions)
- Dataset: The dataset to query (default: “default”)
- Query Type:
- Instant: Query a single point in time
- Range: Query a time range with optional start, end, and step parameters
Output
Section titled “Output”Returns the Prometheus query response including:
- status: Query status (success or error)
- data: Query results with metric labels and values
- dataType: Result type (vector, matrix, scalar, or string)
- Requires Dash0 API token and base URL configured in application settings
- Supports all standard PromQL functions and operators
- Range queries require start, end, and step parameters
Example Output
Section titled “Example Output”{ "data": { "data": { "result": [ { "metric": { "service_name": "test" }, "value": [ 1234567890, "1" ], "values": [ [ 1234567890, "1" ], [ 1234567900, "2" ] ] } ], "resultType": "vector" }, "status": "success" }, "timestamp": "2026-01-19T12:00:00Z", "type": "dash0.prometheus.response"}Update HTTP Synthetic Check
Section titled “Update HTTP Synthetic Check”The Update HTTP Synthetic Check component updates an existing synthetic check in Dash0. Use the check ID from a previous Create HTTP Synthetic Check output (e.g. metadata.labels[“dash0.com/id”]) or from the Dash0 dashboard.
Configuration
Section titled “Configuration”- Check ID: The Dash0 synthetic check ID to update (required).
- Dataset: The dataset the check belongs to (defaults to “default”).
- Name, Request, Schedule, Assertions, Retries: Same as Create HTTP Synthetic Check; the full spec is sent to replace the existing check.
Example Output
Section titled “Example Output”{ "data": { "kind": "Dash0SyntheticCheck", "metadata": { "annotations": {}, "labels": { "dash0.com/dataset": "default", "dash0.com/id": "64617368-3073-796e-7468-abc123def456", "dash0.com/origin": "api-abc12345-6789-0123-4567-890abcdef012", "dash0.com/version": "2" }, "name": "login-api-health-check" }, "spec": { "enabled": true, "plugin": { "display": { "name": "Login API health check" }, "kind": "http", "spec": { "assertions": { "criticalAssertions": [ { "kind": "status_code", "spec": { "operator": "is", "value": "200" } } ], "degradedAssertions": [] }, "request": { "headers": [], "method": "get", "queryParameters": [], "redirects": "follow", "tls": { "allowInsecure": false }, "tracing": { "addTracingHeaders": true }, "url": "https://api.example.com/health" }, "retries": { "kind": "fixed", "spec": { "attempts": 3, "delay": "1s" } } } }, "schedule": { "interval": "1m", "locations": [ "de-frankfurt", "us-oregon" ], "strategy": "all_locations" } } }, "timestamp": "2026-01-19T12:00:00Z", "type": "dash0.syntheticCheck.updated"}