{"uid":"cap_Z4zRyeoD5yHQMJL8FDJ_X","slug":"dmarc-check-4ab606d0","name":"DMARC Check","description":"DMARC check for a domain: finds the TXT record, policy mode and aggregate-reporting signal for email trust decisions.","url":"https://relay402.georgespring.workers.dev/api/web-dmarc-check","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET"],"type":"string"},"queryParams":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["domain"],"properties":{"domain":{"type":"string","pattern":"^[a-z0-9]([a-z0-9.-]{2,251})[a-z0-9]$"}},"additionalProperties":false}},"additionalProperties":false}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.005","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.005/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_6eMBgQsGSxovUPX5BRrCM","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.005","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Looks up and parses the DMARC TXT record for a domain, returning its policy mode and aggregate-reporting configuration for email trust decisions.","exampleAgentPrompt":"Can you check the DMARC record for sendgrid.com and tell me what policy mode it's using and whether aggregate reporting is configured?","exampleUseCases":[{"title":"Pre-send email trust check","prompt":"Before I start sending outreach emails from acme.com, can you look up its DMARC record and tell me if the policy is in reject or quarantine mode and whether rua reporting is set up?"},{"title":"Vendor onboarding email security review","prompt":"I'm onboarding a new vendor at partner.io — can you pull their DMARC record so I can see their policy mode and whether they have aggregate reporting configured?"},{"title":"Anti-spoofing domain audit","prompt":"Check whether stripe.com has a valid DMARC record and what the policy is — I want to know if it's properly protected against spoofing."}],"resultDescription":"Returns the raw DMARC TXT record found in DNS, the parsed policy mode (none, quarantine, or reject), and any aggregate reporting (rua) addresses configured, giving a clear signal of the domain's email authentication posture.","failureModes":["Domain has no DMARC TXT record — returns empty or not-found result","Domain does not exist or is unreachable in DNS — DNS resolution error","Invalid domain format supplied — rejected by input schema pattern validation","DMARC record is malformed or unparseable — partial result or parse error returned","Network or upstream DNS timeout — transient failure"],"whenToPreferThis":"Use this endpoint when you need a focused, single-signal DMARC check — specifically the TXT record, policy mode, and rua address — without the overhead of a full email trust report. It's ideal when you want a quick, cheap per-domain signal to gate email trust decisions in automated workflows. Prefer the sibling 'Email trust report' endpoint if you also need MX and SPF data combined in a single call.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T12:49:42.294Z","isFirstParty":false}