Skip to main content

Entri Monitor API

General API Guidelines

Base URL

Authentication

All requests require the following headers:
  • applicationId: Your unique application ID.
  • Authorization: A bearer token generated using your client secret.
Example Headers:
Monitor endpoints are protected by a custom Lambda authorizer that validates the applicationId + Authorization pair on every request. Authorizer results are not cached — each request is re-authorized — so always send a valid, unexpired token.

Quickstart

Step 1: Add domains for monitoring

You’ll first need to tell Entri Monitor which domain you’d like to monitor. Send a POST request to /monitor/domains with the name of the domain, as well as a list of the records you want to monitor, including their type, host, value, and ttl properties. Example request body:
You’ll recieve a response like this if you’re successful:

Step 2: Specify a webhook URL

Log into the Entri Dashboard and navigate to the App Settings page. Enter the URL of the webhook that you’ll use to recieve notifications about the DNS changes you specified.

Step 3: Set up your service to receive the webhook requests at the URL you specified

Your webhook URL will be sent requests if the DNS records you specified are modified or deleted. Example request:

Retrieve DNS records

Successful response (200 status)

JSON

Create DNS records

Request body

JSON

Successful response (200 status)

JSON

Update DNS records

Request body

JSON

Successful response (200 status)

JSON

Delete DNS records

Request body

JSON

Successful response (200 status)

JSON

List domains

Successful response (200 status)

JSON
Query Parameters:
  • offset (integer): Pagination offset.
  • limit (integer): Number of domains per page.
  • from_date (date): Filter start date.
  • to_date (date): Filter end date.

Retrieve domain details

Successful response (200 status)

JSON

Add a domain

Request body

JSON

Successful response (200 status)

JSON

Update a domain

Request body

JSON

Successful response (200 status)

JSON

Delete a domain

Request body

JSON

Request parameters

Query parameter form

The same options are accepted as query parameters:

Successful response (200 status)

JSON

Batch create domains

Each batch request is limited to a maximum of 100 domains. Submit multiple batches if you need to register more than 100 at once.

Request body

JSON

Successful response (200 status)

JSON

Batch status

Batch status records are retained for 7 days (TTL) after the batch is submitted. After that window, status lookups for old batches will return a not-found response.

Successful response (200 status)

JSON

Webhooks

To recieve webhook notifications about the target domains, log into the Entri Dashboard and navigate to the App Settings page. Enter the URL of the webhook that you’ll use to recieve notifications about the DNS changes you specified. Your webhook URL will be sent requests if the DNS records you specified are modified or deleted.

Top-Level fields

  • id: A unique identifier for the webhook event (e.g. "e98d267b-84b8-4229-a94a-1933ed7f91ea").
  • user_id: The ID of the user who initiated the domain-related action (e.g. "your-provided-user-id").
  • domain: The domain involved in the event (e.g. "example.com").
  • subdomain: The subdomain associated with the event, if any (e.g. "shop").
  • type: Defines the type of event. Possible values:
    • "domain.record_missing": Used whenever there is a record missing from the records that are being monitored.
    • "domain.record_restored": Confirms that ALL records have been restored.
  • data.records_propagated: Contains all the records that are being monitored and were found correctly configured on the domain.
  • data.records_non_propagated: Contains all the records that are being monitored and were found as missing on the domain.
  • connect_link: Entri Connect’s sharing link with the configuration required to restablish the missing records on the domain.
Example request: