{% extends "front/base_docs.html" %} {% load compress staticfiles hc_extras %} {% block title %}REST API - {% site_name %}{% endblock %} {% block docs_content %}
This is early days for healtchecks.io REST API. For now, there's API calls to:
Your requests to healtchecks.io REST API must authenticate using an API key. By default, an user account on {% site_name %} doesn't have an API key. You can create one in the Settings page.
The client can authenticate itself by sending an appropriate HTTP
request header. The header's name should be X-Api-Key
and
its value should be your API key.
Alternatively, for POST requests with a JSON request body,
the client can include an api_key
field in the JSON document.
See below the "Create a check" section for an example.
For POST requests, the {% site_name %} API expects request body to be
a JSON document (not a multipart/form-data
encoded
form data).
{% site_name %} uses HTTP status codes wherever possible. In general, 2xx class indicates success, 4xx indicates an client error, and 5xx indicates a server error.
The response may contain a JSON document with additional data.
Returns a list of checks. This API call takes no parameters and returns a JSON document with all checks in user's account.
Creates a new check and returns its ping URL. All request parameters are optional and will use their default values if omitted.
name |
string, optional, default value: "" Name for the new check. |
---|---|
tags |
string, optional, default value: "" A space-delimited list of tags for the new check. Example: {"tags": "reports staging"} |
timeout |
number, optional, default value: {{ default_timeout }}. A number of seconds, the expected period of this check. Minimum: 60 (one minute), maximum: 604800 (one week). Example for 5 minute timeout: {"timeout": 300} |
grace |
number, optional, default value: {{ default_grace }}. A number of seconds, the grace period for this check. Minimum: 60 (one minute), maximum: 604800 (one week). |
channels |
string, optional, default value: "" By default, if a check is created through API, no notification channels are assigned to it. So, when the check goes up or down, no notifications would be sent. Set this field to a special value "*" to automatically assign all existing notification channels. |
unique |
array of string values, optional, default value: []. Before creating a check, look for existing checks, filtered
by fields listed in The accepted values are: Example: {"name": "Backups", unique: ["name"]} In this example, if a check named "Backups" exists, it will be returned. Otherwise, a new check will be created and returned. |
201 Created | Returned if the check was successfully created. |
---|---|
200 OK | Returned if the unique parameter was used and an
existing check was matched. |
Or, alternatively:
{% include "front/snippets/create_check_request_b.html" %}Disables monitoring for a check, without removing it. The check goes into a "paused" state. You can resume monitoring of the check by pinging it.
This API call has no request parameters.