{"id":28549695,"url":"https://github.com/akacdev/dnsoverhttps","last_synced_at":"2025-10-29T16:25:18.863Z","repository":{"id":63473138,"uuid":"568131992","full_name":"akacdev/DnsOverHttps","owner":"akacdev","description":"💬 An async and lightweight C# library for Cloudflare's DNS over HTTPS.","archived":false,"fork":false,"pushed_at":"2024-03-02T22:04:48.000Z","size":63,"stargazers_count":11,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-10T02:11:55.860Z","etag":null,"topics":["api","csharp","dns","dns-over-https","doh","domain","domain-name-system","library","record","resolve"],"latest_commit_sha":null,"homepage":"https://www.nuget.org/packages/DnsOverHttps","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/akacdev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-11-19T14:54:07.000Z","updated_at":"2025-04-15T00:38:49.000Z","dependencies_parsed_at":"2024-08-09T19:36:08.149Z","dependency_job_id":null,"html_url":"https://github.com/akacdev/DnsOverHttps","commit_stats":null,"previous_names":["actually-akac/dnsoverhttps"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/akacdev/DnsOverHttps","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akacdev%2FDnsOverHttps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akacdev%2FDnsOverHttps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akacdev%2FDnsOverHttps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akacdev%2FDnsOverHttps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/akacdev","download_url":"https://codeload.github.com/akacdev/DnsOverHttps/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akacdev%2FDnsOverHttps/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263627987,"owners_count":23490888,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","csharp","dns","dns-over-https","doh","domain","domain-name-system","library","record","resolve"],"created_at":"2025-06-10T02:11:53.908Z","updated_at":"2025-10-29T16:25:18.760Z","avatar_url":"https://github.com/akacdev.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"﻿# DnsOverHttps\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=\"256\" height=\"256\" src=\"https://raw.githubusercontent.com/actually-akac/DnsOverHttps/master/DnsOverHttps/icon.png\"\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  An async and lightweight C# library for Cloudflare's DNS over HTTPS.\n\u003c/div\u003e\n\n## Usage\nThis library provides an easy interface for interacting with Cloudflare's DNS over HTTPS endpoints.\n\nDoH is a protocol that enhances the privacy and security of DNS queries by encrypting them using HTTPS. This helps prevent unauthorized access or tampering of DNS data during transmission. Learn more about it [here](https://developers.cloudflare.com/1.1.1.1/encryption/dns-over-https/).\n\nTo get started, import the library into your solution with either the `NuGet Package Manager` or the `dotnet` CLI.\n```rust\ndotnet add package DnsOverHttps\n```\n\nFor the primary class to become available, import the used namespace.\n```csharp\nusing DnsOverHttps;\n```\n\nNeed more examples? Under the `Example` directory you can find a working demo project that implements this library.\n\n## Properties\n- Built for **.NET 8**, **.NET 7** and **.NET 6**\n- Fully **async**\n- Extensive **XML documentation**\n- **No external dependencies** (makes use of built-in `HttpClient` and `JsonSerializer`)\n- **Custom exceptions** (`DnsOverHttpsException`) for easy debugging\n- Example project to demonstrate all capabilities of the library\n\n## Features\n- Resolve one or all DNS records under a hostname\n- Ask for DNSSEC validation\n- Query in parallel\n- Specify advanced parameters\n\n## Code Samples\n\n### Initializing a new API client\n```csharp\nDnsOverHttpsClient dns = new();\n```\n\n### Resolving A DNS records including DNSSEC\n```csharp\nResponse response = await dns.Resolve(\"discord.com\", ResourceRecordType.A, true, true);\n```\n\n### Using helper methods to return the first or all answers\n```csharp\nAnswer? nsAnswer = await dns.ResolveFirst(\"example.com\", ResourceRecordType.NS);\nAnswer[] aAnswers = await dns.ResolveAll(\"reddit.com\", ResourceRecordType.A);\n```\n\n## Resources\n- Cloudflare: https://cloudflare.com\n- 1.1.1.1: https://1.1.1.1\n- Introduction: https://developers.cloudflare.com/1.1.1.1/encryption/dns-over-https\n\n*This is a community-ran library. Not affiliated with Cloudflare, Inc.*\n\n*Icon made by **Freepik** at [Flaticon](https://www.flaticon.com).*","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakacdev%2Fdnsoverhttps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fakacdev%2Fdnsoverhttps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakacdev%2Fdnsoverhttps/lists"}