<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Cliqto Media]]></title><description><![CDATA[Guides and updates from Cliqto Media: Apify Actors for public web data, web scraping with Python and JavaScript, and our browser extensions.]]></description><link>https://cliqtomedia.hashnode.dev</link><image><url>https://cdn.hashnode.com/uploads/logos/6ad9612c196a5f441a21ea60/ddb2d6db-5798-4d47-b143-6aeb2572709e.png</url><title>Cliqto Media</title><link>https://cliqtomedia.hashnode.dev</link></image><generator>RSS for Node</generator><lastBuildDate>Tue, 27 Oct 2026 09:41:20 GMT</lastBuildDate><atom:link href="https://cliqtomedia.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Hello from Cliqto Media: web data APIs you can call from code]]></title><description><![CDATA[Who Cliqto Media is, and how to run an Apify Actor from Python or one HTTP request: bulk WHOIS (RDAP) and DNS lookup for a list of domains.]]></description><link>https://cliqtomedia.hashnode.dev/hello-from-cliqto-media-web-data-apis-you-can-call-from-code</link><guid isPermaLink="true">https://cliqtomedia.hashnode.dev/hello-from-cliqto-media-web-data-apis-you-can-call-from-code</guid><category><![CDATA[apify]]></category><category><![CDATA[web scraping]]></category><category><![CDATA[Python]]></category><category><![CDATA[api]]></category><dc:creator><![CDATA[Cliqto Media]]></dc:creator><pubDate>Thu, 22 Oct 2026 05:49:01 GMT</pubDate><content:encoded><![CDATA[<p>Hi, we're Cliqto Media, an independent digital media company. Since 2020 we've been building our own brands, websites and tools. On this blog we'll write about the part developers care about most: <strong>Apify Actors</strong>.</p>
<p>An Actor is a ready-made scraper or data API that runs in the Apify cloud. You give it a JSON input, it returns rows of data. We've built 150+ of them, for public data like store prices, app reviews, job boards, research papers and domain records. <a href="https://apify.com/cliqtomedia?fpr=cliqto">See them on Apify</a>.</p>
<h2>A quick example</h2>
<p>Say you have a list of domains and want registrar, expiry date and DNS records for each. Our <a href="https://apify.com/cliqtomedia/domain-whois-dns-lookup?fpr=cliqto">Domain WHOIS (RDAP) &amp; DNS Lookup</a> Actor does that for up to 5,000 domains per run, using the official registry RDAP servers and public DNS-over-HTTPS.</p>
<pre><code class="language-python"># pip install apify-client
import os
from apify_client import ApifyClient

client = ApifyClient(os.environ["APIFY_TOKEN"])
run = client.actor("cliqtomedia/domain-whois-dns-lookup").call(
    run_input={"domains": ["apify.com", "example.org"], "includeRdap": True, "includeDns": True}
)
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(row["domain"], row["registrar"], row["expiresAt"], row["dns"].get("MX"))
</code></pre>
<p>Each row looks like this (shortened):</p>
<pre><code class="language-json">{
  "domain": "apify.com",
  "registered": true,
  "registrar": "Amazon Registrar, Inc.",
  "expiresAt": "2035-06-02T17:14:10.000Z",
  "daysUntilExpiry": 3154,
  "nameservers": ["ns-449.awsdns-56.com", "..."],
  "dnssec": true,
  "dns": { "MX": ["1 aspmx.l.google.com", "..."] }
}
</code></pre>
<p>No Python? One HTTP request does the same: start the run, wait for it, and get the rows back.</p>
<pre><code class="language-plaintext">POST https://api.apify.com/v2/acts/cliqtomedia~domain-whois-dns-lookup/run-sync-get-dataset-items
Authorization: Bearer YOUR_API_TOKEN
Content-Type: application/json

{ "domains": ["apify.com", "example.org"] }
</code></pre>
<p>Keep your token in an environment variable, not in your code.</p>
<h2>What's next</h2>
<p>We'll post short how-tos here: one Actor, one real task, working code. Follow the blog if that sounds useful.</p>
<p>More about us: <a href="https://cliqtomedia.com/">cliqtomedia.com</a>. Some links in this post are partner links (<a href="https://cliqtomedia.com/legal/affiliate-disclosure/">disclosure</a>).</p>
]]></content:encoded></item></channel></rss>