Auto Provisioning

You can instruct UGA PD Healthchecks to automatically create missing checks on the first received ping. To enable auto provisioning, use slug-based ping endpoints, and append ?create=1 at the end:

# Do some work
sleep 5
# Send success signal to UGA PD Healthchecks
curl -m 10 --retry 5 https://healthchecks.police.uga.edu/ping/my-ping-key/srv01?create=1

In this example, UGA PD Healthchecks will look up project with the Ping Key my-ping-key, and check if a check with a slug srv01 exists there.

  • If the check does not exist yet, UGA PD Healthchecks will create it, ping it, and return an HTTP 201 response.
  • If the check exists, UGA PD Healthchecks will ping it and return an HTTP 200 response.

Auto provisioning works with all slug-based ping endpoints:

Auto provisioning is handy when working with dynamic infrastructure: if you distribute the Ping Key to your monitoring clients, each client can pick its own slug (for example, derived from the server’s hostname), construct a ping URL, and register with UGA PD Healthchecks "on the fly" while sending its first ping.

Auto Provisioned Checks Use Default Configuration

The checks created via auto provisioning will use the default parameters:

  • Period: 1 day.
  • Grace time: 1 hour.
  • All integrations enabled.

It is currently not possible to specify a custom period, grace time, or other parameters through the ping URL. If you need to change any parameters, you will need to do this either from the web dashboard, or through Management API.

Auto Provisioning and Account Limits

Each UGA PD Healthchecks account has a specific limit of how many checks it is allowed to create: 20 checks for free accounts; 100 or 1000 checks for paid accounts. To reduce friction and the risk of silent failures, the auto provisioning functionality is allowed to temporarily exceed the account’s check limit up to two times. Meaning, if your account is already maxed out, auto provisioning will still be able to create new checks until you hit two times the limit.