Alerts

List events

The current list of events that you can chose to receive alerts for.

SecuritybasicAuth
Responses
200

A 200 response

Response Schema: application/json
events
required
Array of strings
default

A default response

get/v1/alerts/events
Request samples
Response samples
application/json
{
  • "events": [
    • "ip_listed",
    • "ip_delisted"
    ]
}

Add Alert

Use this endpoint to add new alert settings record.

Webhooks

This section covers details around consuming InboxReady deliverability alerts via webhooks. If you are familiar with Mailgun webhooks, there is a lot of overlapping similarity, however, there are also a few minor nuances to account for.

Securing Webhooks

HMAC is used to verified to integrity as well as the authenticity of received webhooks. To verify the origin of a webhook:

  1. Encode the webhook’s entire POST request body with the HMAC algorithm (using your webhook signing key and SHA256 digest mode)
  2. Compare the resulting hexdigest to the signature provided in the POST request’s X-Sign header.

NOTE: If you’re consuming Mailgun webhooks, please note that your Mailgun webhook signing key differs from your InboxReady alerts webhook signing key. Your InboxReady alerts webhook signing key is available within the InboxReady UI.

Webhook URL Validation

When adding or updating a webhook URL for alerts, we will ensure the endpoint is reachable by sending a GET request to the provided URL. If a 200 response is not returned from your endpoint, the request will be rejected and your alert setting will not be saved. We intentionally chose to send a GET request instead of a POST when validating URLs so that your webhook endpoint does not have to account for test requests.

Additionally, when a POST request is sent to your webhook URL, if a 2xx is not returned, we will attempt retries via an exponential backoff strategy for up to ~8 hours. If the max retry count is reached, the alert will be disabled and the related alert settings record’s disabled_at field will be populated.

SecuritybasicAuth
Request
Request Body schema: application/json
optional
event_type
required
string

The type of event for which you would like to receive alerts.

channel
required
string

The delivery method for the alert. Supported values include 'webhook' and 'email'.

required
object

The details pertaining to the specified channel. Please note that the contents of this object differ per channel type.

Responses
200

A 200 response

Response Schema: application/json
-
required
string
event_type
required
string

The event type that is alerted on.

channel
required
string

The delivery channel for the alert.

required
object

This object contains channel-specific settings.

disabled_at
string <date-time>

Read only. When present

id
Array of integers <int32> = 16 items

The unique identifier for the alert settings record.

400

A 400 response

409

A 409 response

default

A default response

post/v1/alerts/settings/events
Request samples
application/json
{}
Response samples
application/json
{
  • "settings": {},
  • "channel": "webhook",
  • "id": "00000000-0000-0000-0000-000000000000",
  • "event_type": "ip_listed"
}

Update Alert

Use this endpoint to update an existing alert setting record.

NOTE: When updating a webhook alert, we will ensure the endpoint is reachable by sending a GET request to the provided URL. If a 200 response is not returned, a 400 will be returned and the alert setting update will be rejected.

SecuritybasicAuth
Request
path Parameters
id
required
string

The settings ID.

Request Body schema: application/json
optional
event_type
required
string

The type of event for which you would like to receive alerts.

channel
required
string

The delivery method for the alert. Supported values include 'webhook' and 'email'.

required
object

The details pertaining to the specified channel. Please note that the contents of this object differ per channel type.

Responses
200

A 200 response

Response Schema: application/json
message
required
string
400

A 400 response

404

A 404 response

default

A default response

put/v1/alerts/settings/events/{id}
Request samples
application/json
{
  • "channel": "email",
  • "settings": {
    • "emails": [
      ]
    },
  • "event_type": "ip_delisted"
}
Response samples
application/json
{
  • "message": "settings updated"
}

Remove Alert

SecuritybasicAuth
Request
path Parameters
id
required
string

The settings ID.

Responses
200

A 200 response

Response Schema: application/json
message
required
string
default

A default response

delete/v1/alerts/settings/events/{id}
Request samples
Response samples
application/json
{
  • "message": "settings deleted"
}

List Alerts

This endpoint returns a list of all configured alert settings for your account.

SecuritybasicAuth
Responses
200

A 200 response

Response Schema: application/json
required
Array of objects
required
object
required
object
default

A default response

get/v1/alerts/settings
Request samples
Response samples
application/json
{
  • "events": [
    • {},
    • {
      },
    • {
      }
    ]
}

Update Slack settings

SecuritybasicAuth
Request
Request Body schema: application/json
optional
token
required
string
Responses
204

A 204 response

default

A default response

put/v1/alerts/settings/slack
Request samples
application/json
{
  • "token": "string"
}
Response samples
application/json
{
  • "message": "string"
}

Reset Webhook Signing Key

SecuritybasicAuth
Responses
200

A 200 response

Response Schema: application/json
signing_key
required
string
default

A default response

put/v1/alerts/settings/webhooks/signing_key
Request samples
Response samples
application/json
{
  • "signing_key": "string"
}

Test webhook

Sends test webhook request to specified url with dummy data.

SecuritybasicAuth
Request
Request Body schema: application/json
optional
event_type
required
string
url
required
string
Responses
200

A 200 response

Response Schema: application/json
message
required
string
400

A 400 response

default

A default response

post/v1/alerts/webhooks/test
Request samples
application/json
{}
Response samples
application/json
{
  • "message": "string"
}

Test message

Sends test message to emails with dummy data.

SecuritybasicAuth
Request
Request Body schema: application/json
optional
event_type
required
string
emails
required
Array of strings
Responses
200

A 200 response

Response Schema: application/json
message
required
string
400

A 400 response

post/v1/alerts/email/test
Request samples
application/json
{
  • "emails": [
    • "email1@example.com",
    • "email2@example.com"
    ],
  • "event_type": "some-event"
}
Response samples
application/json
{
  • "message": "string"
}