{"uid":"cap_aprE6LSK41wn6dxmHnWSh","slug":"forest-factory-dns-propagation-checker-9d812d00","name":"Forest Factory DNS Propagation Checker","description":"Machine-readable contract for active Forest paid capabilities. Unsigned paid calls return HTTP 402 with a PAYMENT-REQUIRED x402 challenge.","url":"https://http--forest-gas-station-mainnet--lcjl27p8lmjs.code.run/dns/propagation?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"hostname":{"type":"string","pattern":"^[a-zA-Z0-9.-]+$","maxLength":253,"description":"Public hostname value used to scope this lookup."},"record_type":{"enum":["A","AAAA","CNAME","MX","NS","TXT"],"description":"Public record type value used to scope this lookup."},"expected_answers":{"type":"array","items":{"type":"string","maxLength":512,"minLength":1},"maxItems":32,"minItems":1,"description":"Public expected answers value used to scope this lookup."}}},"responseSchema":{"type":"json","example":{"ok":true,"data":{"scope":"bounded_public_doh_resolvers_only","state":"complete","hostname":"example","resolvers":[],"answer_sets":[],"record_type":"example","resolver_count":1,"consensus_state":"agreement","expected_answers":[],"failed_resolvers":0,"matching_resolvers":0,"successful_resolvers":0},"meta":{"cache":"miss","provider":"cloudflare-doh","checked_at":"2026-01-01T00:00:00.000Z","duration_ms":0},"version":"1","capability":"dns.propagation"}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.003","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.003/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.003","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.003","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_2eFAph6E2bw4rjearxGqA","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.003","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Checks whether a DNS record has fully propagated across multiple public DNS resolvers and reports consensus state","exampleAgentPrompt":"Can you check if the A record for api.mycompany.com has fully propagated — I'm expecting it to resolve to 203.0.113.42?","exampleUseCases":[{"title":"Post-deployment DNS verification","prompt":"I just updated the A record for app.acmecorp.com to point to 198.51.100.10 — can you check if it's propagated to all the major DNS resolvers yet?"},{"title":"Email deliverability troubleshooting","prompt":"Check whether my MX record for mailserver.example.com has propagated — it should be returning 'mail.example.com' as the answer."},{"title":"SSL certificate pre-validation check","prompt":"Before I trigger my SSL cert issuance, can you verify that the TXT record _acme-challenge.myblog.io is already showing up with the value 'abc123xyz' across DNS resolvers?"}],"resultDescription":"Returns a JSON object with propagation state ('complete', 'partial', etc.), consensus state ('agreement', 'disagreement', etc.), per-resolver answer sets, counts of successful/failed/matching resolvers, and metadata including provider, cache status, and check timestamp.","failureModes":["Invalid hostname format returns 400 validation error","Unsupported record type outside enum returns 400","Expected answers array empty or exceeds 32 items returns 400","No payment header provided returns HTTP 402 with x402 challenge","Resolver network timeout may cause partial results with failed_resolvers > 0","Hostname does not exist in DNS returns resolvers with empty answer sets"],"whenToPreferThis":"Choose this endpoint when you need a multi-resolver consensus check on DNS propagation rather than a single-resolver lookup. It is ideal for post-deployment verification, CI/CD pipeline DNS checks, and confirming TXT records for domain ownership or SSL challenges. It queries multiple public DoH resolvers and reports agreement state, making it more reliable than a single dig command.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-12T18:37:41.289Z","isFirstParty":false,"canonicalSlug":"forest-factory-dns-propagation-checker-9d812d00"}