openemail.tools
Каждый метод этого пространства имён: его сигнатура, параметры, что он возвращает, и пример.
Методы
Checks of the public mail records of any domain, the free tools on the OpenEmail website: its DMARC policy, its BIMI logo and a deliverability report across MX, SPF, DKIM, DMARC and BIMI. They need no scope.
tools.check_dmarc()
Check a domain's DMARC policy
def check_dmarc( domain: str, *, api_key: str | None = None, timeout: float | None = None,) -> DmarcReportResourceReads the domain's DMARC record from public DNS, or the record of the organisational domain it inherits from, and says how strict it is and what is wrong with it, the DMARC checker on the OpenEmail website. stage is missing, invalid, monitor for p=none, quarantine or reject, and issues lists the problems written to be shown to a person.
Параметры
domainstrОбязательноThe domain to check, such as
acme.com. An email address or a URL is read as its domain, and any public domain works, not only the ones in this workspace.api_keystrOverrides the client's API key for this call only.
timeoutfloatSeconds this call may take, the response included, before it raises
OpenEmailNetworkErrorwithis_timeout. It overrides the client'stimeoutfor this call, and0turns the limit off.
Возвращает
DmarcReportResource with domain, record, inheritedFrom, every tag in tags, stage and issues.
Пример
from openemail import openemail report = openemail.tools.check_dmarc('acme.com') print(report['stage'], report['tags'].get('p'), report['issues'])Примечания
Needs no scope: any key or access token for the workspace may run it.
A domain that does not read as one is 422
invalid_parameterondomain, and DNS that did not answer is 503unreachable, which is worth retrying.
Также доступно в
- API
GET /tools/dmarc- TypeScript
tools.checkDmarc()- Ruby
tools.check_dmarc- CLI
openemail tools check-dmarc
tools.check_bimi()
Check a domain's BIMI logo
def check_bimi( domain: str, *, api_key: str | None = None, timeout: float | None = None,) -> BimiReportResourceReads the domain's BIMI record, fetches the logo it names and checks the DMARC policy beside it, since inboxes draw a logo only at p=quarantine or p=reject, the BIMI checker on the OpenEmail website. status is present, partial when the record is there but something stops inboxes showing the logo, absent or invalid, and issues says why.
Параметры
domainstrОбязательноThe domain to check, such as
acme.com. An email address or a URL is read as its domain, and any public domain works, not only the ones in this workspace.api_keystrOverrides the client's API key for this call only.
timeoutfloatSeconds this call may take, the response included, before it raises
OpenEmailNetworkErrorwithis_timeout. It overrides the client'stimeoutfor this call, and0turns the limit off.
Возвращает
BimiReportResource with record, logoUrl, authorityUrl, logoSvg, logoReachable, dmarcPolicy, dmarcEnforced, status and issues.
Пример
from openemail import openemail report = openemail.tools.check_bimi('acme.com') if report['status'] != 'present': for issue in report['issues']: print(issue)Примечания
Needs no scope: any key or access token for the workspace may run it.
A domain that does not read as one is 422
invalid_parameterondomain, and DNS that did not answer is 503unreachable, which is worth retrying.
Также доступно в
- API
GET /tools/bimi- TypeScript
tools.checkBimi()- Ruby
tools.check_bimi- CLI
openemail tools check-bimi
tools.check_deliverability()
Check a domain's deliverability
def check_deliverability( domain: str, *, api_key: str | None = None, timeout: float | None = None,) -> DeliverabilityReportResourceChecks the records a receiving mailbox reads before it trusts mail from the domain, the deliverability checker on the OpenEmail website: MX, SPF, DKIM at the selectors its mail provider uses, DMARC and BIMI. Each check says pass, warn, fail or absent with a verdict and notes, and score weighs them into 0 to 100, graded A to F.
Параметры
domainstrОбязательноThe domain to check, such as
acme.com. An email address or a URL is read as its domain, and any public domain works, not only the ones in this workspace.api_keystrOverrides the client's API key for this call only.
timeoutfloatSeconds this call may take, the response included, before it raises
OpenEmailNetworkErrorwithis_timeout. It overrides the client'stimeoutfor this call, and0turns the limit off.
Возвращает
DeliverabilityReportResource with score, grade, provider and checks, each with id, label, status, verdict, record and notes.
Пример
from openemail import openemail report = openemail.tools.check_deliverability('acme.com') print(report['grade'], report['score']) for check in report['checks']: print(check['id'], check['status'], check['verdict'])Примечания
Needs no scope: any key or access token for the workspace may run it.
A domain that does not read as one is 422
invalid_parameterondomain, and DNS that did not answer is 503unreachable, which is worth retrying.