Health a domain

GET/api/v1/domains/{domain}/health
Requires anorganization API keywith the scopereports:read

Parameters

NameInTypeDescription
domainrequiredpathstringThe domain id, or the domain name itself.

Request

GET/api/v1/domains/{domain}/health
curl -X GET 'https://app.mailyte.com/api/v1/domains/yourdomain.com/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
    • domain_idstring
    • statusstringgood | warning | critical

      Banded from `score`: good at 90 and above, warning at 60, critical below it.

    • scoreinteger

      0-100.

    • issuesarray<object>

      Every problem found, each with its own fix. Empty when there are none.

      • issuestring
      • recommendationstring

        What to do about this issue. Null means NONE is attached to this particular problem -- it is not withheld and it is not unknown. In practice it is never null today: every branch that raises an issue writes its advice in the same breath. It is nullable so that the day one does not, the problem is still reported rather than dropped, and no issue ever inherits the advice meant for another.

    • metricsobject

      The last 30 days.

      • emails_sentinteger

        Messages accepted for delivery in the last 30 days. Never null -- it is read from the daily rollup, which answers 0 for a window it holds no rows for. **0 therefore means "no events are recorded", not "nothing was sent"**, and the rates beside it are null for exactly that reason: with no denominator there is no rate. A domain that has sent mail but whose events never reached the rollup looks identical to one that has sent none.

      • delivery_ratenumber

        Percentage of sent mail confirmed delivered. Null means there was no traffic in the window to compute a rate from -- not 0%, and emphatically not 100%.

      • bounce_ratenumber

        Percentage of sent mail that bounced. Null means there was no traffic in the window to compute a rate from -- not 0%, and emphatically not 100%.

      • spam_ratenumber

        Percentage of sent mail reported as spam. Null means there was no traffic in the window to compute a rate from -- not 0%, and emphatically not 100%.

    • checked_atstring

      When DNS was last resolved for this domain. Null when it never has been.

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.