Domain Health (report)

GET/api/v1/reports/domain-health
Requires anorganization API keywith the scopereports:read

Request

GET/api/v1/reports/domain-health
curl -X GET 'https://app.mailyte.com/api/v1/reports/domain-health' \
  -H 'Authorization: Bearer mk_live_YOUR_API_KEY'
The key names its own organization, so no X-Organization-ID header is needed.

Response

Success.

  • dataobject
    • objectstringdomain_health_report
    • generated_atstring

      When this response was computed, ISO 8601 UTC. Every report answers it, so "is this figure stale?" never depends on which report you asked.

    • periodobject

      Always null: this report shows your domains' DNS as it is now, so date_range does not apply.

      • start_atstring
      • end_atstring
      • granularitystringday

        The width of one series bucket. Always day: the granularity query parameter is accepted and ignored.

    • domainsarray<object>

      One row per domain in your organization, soft-deleted domains excluded.

      • objectstringdomain_health
      • domainstring

        The domain name.

      • dnsobject

        The domain's DNS status.

        • statestringverified | pending | failed | unknown

          verified, pending, failed or unknown.

        • verifiedboolean

          True only for verified. pending and failed are both "not verified" to a caller deciding whether to send.

      • spam_scorenumber

        Not available yet; always null.

      • reputation_scorenumber

        Always null today, for the same reason as spam_score.

      • checked_atstring

        Sourced from the domain record's updated_at, so it moves whenever anything about the domain changes and is not necessarily when DNS was last checked. Treat it as "as of", not as a check timestamp.

    • totalsobject

      How many domains are in each DNS state. They add up to domains. These count domains, not messages.

      • domainsinteger

        Rows in domains.

      • verifiedinteger

        Domains whose DNS has passed.

      • pendinginteger

        Domains whose DNS check has not finished.

      • failedinteger

        Domains whose DNS check failed.

      • unknowninteger

        Domains whose DNS state is not known.

Returned inside the standard envelope.

Errors

StatusWhen
401The API key is missing, unknown, revoked or expired. All four answer identically, on purpose: distinguishing them would confirm which keys exist.
403The key is valid but may not do this: it lacks the required scope, its IP allowlist does not include you, or this endpoint does not accept API keys.
404No such resource in this organization.
422The request was understood but the values were not acceptable.
429Too many requests, or the organization has spent its sending allowance. `Retry-After` says how long to wait.

Every status, with what causes it and what to do, is on the error reference.