Introducing Our Free API Service: CheckDomain

@skiddle.id

Introducing Our Free API Service: CheckDomain

Are you looking for a quick and reliable way to check domains against blocklists or validate their DNS registration? Look no further! Our free API service, CheckDomain, is here to make domain checks seamless and efficient. Built with simplicity and performance in mind, this API provides robust tools for developers, researchers, and cybersecurity enthusiasts.


How It Works

Our API serves two primary purposes:

  1. Blocklist Checking:

    • Verify if a domain or IP is listed in our extensive blocklists, which currently include:
      • Domain Blocklist: Over 5.9 million entries.
      • IP Blocklist: Over 87,000 entries.
    • Whether you're building a cybersecurity solution or want to enforce stricter security policies, our blocklists can help you stay ahead of potential threats.
  2. DNS Validation:

    • If a domain isn’t found in our blocklist, we query the DNS records to validate its registration status.
    • Quickly determine if a domain is valid or currently unregistered.

Key Features

📊 Real-Time Metrics

Metrics Dashboard

We’ve built robust analytics to ensure transparency and performance monitoring. Here are some of our recent stats for the Free API:

  • API Requests: Over 2 million in the last 24 hours, a 125% growth!
  • DNS Requests: Over 4 million in the same period, a 119% growth.
  • Success Rate: Out of 1.1 million API requests, only 972 errors were recorded (less than 0.1%).

Fast Response Times

  • DNS Resolution Time (Free API):
    • Average: 749ms
    • Maximum: 817ms
    • Minimum: 698ms
  • Future Private and Dedicated API options will significantly boost response times, ensuring even faster and more reliable results for high-demand applications.

🔧 Error Handling

We categorize errors to provide meaningful feedback:

  • Domain Not Found in Database: Indicates the domain isn't on our blocklist.
  • DNS Resolution Error: Suggests the domain might be unregistered or invalid.

Why Use CheckDomain?

  1. Free API with Open Source Frontend:

    • While the API is free to use, the underlying backend code has been modified from the original Cloudflare Workers-based implementation to support larger datasets and is currently closed source. However, the frontend code remains open-source. You can find the Domain Checker frontend code on GitHub: Domain Checker Repository.
  2. Extensive Blocklists:

    • With millions of domains and thousands of IPs listed, you get comprehensive protection against potentially harmful entities.
  3. Ease of Integration:

    • Our API is developer-friendly, with straightforward endpoints and clear documentation to get you started quickly.
  4. Scalable for Growth:

    • As your needs grow, our API scales effortlessly to handle increased traffic.

Getting Started

It’s simple to start using CheckDomain:

  1. Visit our GitHub repository for the frontend documentation: GitHub - Domain Checker.
  2. Integrate the API into your application using our sample requests and examples.
  3. Start performing blocklist checks and DNS validations instantly!

Example Usage

Blocklist Check:

You can check the blocking status of a single domain with the following cURL command:

cURL Command:

curl -X GET 'https://check.skiddle.id/?domain=example.com'

Expected Output:

example.com: Not Blocked!

Batch Search for Domains

Batch search functionality allows you to query multiple domains simultaneously. Note the following restrictions:

  • Maximum Domains: Only search up to 30 domains at a time.
  • API Update: Use new API links for more robust batch searches.

cURL Command:

curl -X GET 'https://check.skiddle.id/?domains=example.com,reddit.com'

Expected Output:

example.com: Not Blocked!
reddit.com: Blocked!

JSON Output

This API also supports JSON output for easier integration with other tools and scripts.

Single Domain

For a single domain, append the json=true parameter to the request.

cURL Command:

curl -X GET 'https://check.skiddle.id/?domain=example.com&json=true'

Expected Output:

{"example.com":{"blocked":false}}

Batch Domains

For multiple domains, the JSON output structure is slightly different. Use the domains parameter along with json=true.

cURL Command:

curl -X GET 'https://check.skiddle.id/?domains=example.com,reddit.com&json=true'

Expected Output:

{"example.com":{"blocked":false},"reddit.com":{"blocked":true}}
skiddle.id
Jeff

@skiddle.id

Data Scientist & AI/ML Enthusiast. Digital Archivists.

OSS Contributors
Decentralized Social Network.

Currently Lived in Nonthaburi, Thailand
Posting in 🇮🇩 and 🇺🇸, but I also speaks 🇨🇳 🇲🇾 🇻🇳 🇹🇭 🇰🇷 🇩🇪

Post reaction in Bluesky

*To be shown as a reaction, include article link in the post or add link card

Reactions from everyone (0)