> ## Documentation Index
> Fetch the complete documentation index at: https://ahasend.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Domain DNS Error Webhook

> &nbsp;

AhaSend automatically checks your domain's DNS configuration every 15 to 30 minutes and sends this webhook if any severer issues are detected that will prevent the system from sending emails on your domain's behalf.

Triggered when DNS configuration issues are detected for any domain in your account.

**Common DNS issues**:
- Missing or invalid SPF record
- Missing or invalid DKIM record
- Missing or invalid DMARC record
- DNS propagation delays

**Impact**: After this event, email sending will be rejected until DNS configuration is fixed.

**Resolution**: Check your domain's DNS settings in the AhaSend dashboard and update your DNS records as needed.

**When it's sent**: When AhaSend's automated DNS checker detects configuration problems.




## OpenAPI

````yaml /webhooks.yaml webhook domain.dns_error
openapi: 3.1.0
info:
  title: AhaSend Webhooks
  description: >
    AhaSend webhook events documentation. This specification describes all
    webhook events that AhaSend sends to your configured webhook URLs.


    ## Overview


    Webhooks are HTTP callbacks that AhaSend sends to your configured URLs when
    specific events occur. They provide real-time notifications about:


    - **Message Events**: Email delivery status (sent, delivered, bounced,
    opened, etc.)

    - **Suppression Events**: When email addresses are automatically suppressed

    - **Domain Events**: DNS configuration issues

    - **Route Events**: Inbound email processing


    ## Standard Webhooks Compliance


    AhaSend webhooks are fully compatible with the [Standard Webhooks
    specification](https://github.com/standard-webhooks/standard-webhooks/blob/main/spec/standard-webhooks.md),
    ensuring consistent and secure webhook delivery.


    ### Security Headers


    All webhooks include these security headers for verification:


    - `webhook-id`: Unique identifier for the webhook event (used as idempotency
    key)

    - `webhook-timestamp`: Unix timestamp when the webhook was sent

    - `webhook-signature`: HMAC signature of the payload using your webhook
    secret


    ### Verification


    Use the [Standard Webhooks
    libraries](https://github.com/standard-webhooks/standard-webhooks) to verify
    webhook authenticity:


    ```go

    import (
        standardwebhooks "github.com/standard-webhooks/standard-webhooks/libraries/go"
    )

    wh, err := standardwebhooks.NewWebhookRaw(webhookSecret)

    err = wh.Verify(payload, headers)

    ```


    ```javascript

    import { Webhook } from 'standardwebhooks';


    const wh = new Webhook(webhookSecret);

    wh.verify(payload, headers);

    ```


    ```python

    from standardwebhooks.webhooks import Webhook


    wh = Webhook(webhook_secret)

    wh.verify(payload, headers)

    ```


    See the [verification
    documentation](https://github.com/standard-webhooks/standard-webhooks/blob/main/spec/standard-webhooks.md#verifying-webhook-authenticity)
    for more implementation details.


    ### Retry Policy


    - Failed webhooks are retried **6 times** over **16+ minutes**

    - Only HTTP status codes **200-299** are considered successful

    - After **100 consecutive failures**, the webhook is automatically disabled

    - You'll receive an email notification when a webhook is disabled


    ### Payload Format


    All webhooks follow the Standard Webhooks payload structure:


    ```json

    {
      "type": "event.type",
      "timestamp": "2024-05-06T09:49:16.687031577Z",
      "data": {
        // Event-specific data
      }
    }

    ```


    ## Getting Started


    1. **Configure a webhook** in your AhaSend dashboard

    2. **Choose which events** you want to receive

    3. **Verify webhook signatures** using Standard Webhooks libraries

    4. **Handle the events** in your application


    For more information, visit the [AhaSend webhook
    documentation](https://ahasend.com/help/integrations/webhooks).
  version: 2.0.0
  contact:
    email: support@ahasend.com
  license:
    name: Proprietary
servers:
  - url: https://your-webhook-endpoint.com
    description: Your webhook endpoint URL (configured in AhaSend dashboard)
security: []
tags:
  - name: Message Events
    description: >
      Webhooks for outbound email delivery tracking.


      These events track the lifecycle of emails you send through AhaSend, from
      initial reception through final delivery or failure.
  - name: Suppression Events
    description: >
      Webhooks for email suppression list changes.


      These events notify you when email addresses are automatically added to
      your suppression list due to delivery issues.
  - name: Domain Events
    description: >
      Webhooks for domain configuration issues.


      These events alert you to DNS configuration problems that could prevent
      email delivery.
  - name: Route Events
    description: >
      Webhooks for inbound email processing.


      These events deliver inbound emails to your application for processing
      (e.g., support tickets, replies).
paths: {}

````