Skip to main content
AI Studio  add-on for Spider.
country.is · HTTP 200

Country Scraper

Spider read country.is in 122 ms without a browser and returned 45 lines of clean markdown, including sections like "Country", "Usage" and "Quick answers".

Get your free API key
Free balance on signup No card. Failed requests cost $0.
Response country.is/index.md markdown · 45 lines
# CountryFree IP-to-country geolocation APICountry maps IP addresses to countries. It can also return city, continent, subdivision, postal code, coordinates, and ASN.api.country.is is free and requires no key. The app is open source and can be self-hosted.## UsageGET / Returns the country of the caller's IP.GET /{ip} Returns the country of a given IPv4 or IPv6 address.`curl https://api.country.is/77.1.2.3`POST / Look up multiple IPs in one request. Send a JSON array of up to 100 addresses.`curl https://api.country.is/ -d ‘["77.1.2.3","93.184.216.34"]’`?fields= Add extra fields to any lookup: `city`, `continent`, `subdivision`, `postal`, `location`, `asn`.`curl https://api.country.is/77.1.2.3?fields=city,continent,subdivision,postal,location,asn`GET /info Returns metadata, including when the data was last updated. Data refreshes every 24 hours.`curl https://api.country.is/info`A machine-readable OpenAPI spec is available.## ErrorsThe API returns standard HTTP status codes.`400` Invalid IP address or malformed request. `404` No data found for the given IP. `429` Rate limit exceeded. Try again shortly. ## Self-hostingRun your own instance with Docker.-e ACCOUNT_ID=YOUR_MAXMIND_ACCOUNT_ID \-e LICENSE_KEY=YOUR_MAXMIND_LICENSE_KEY \Get your credentials from MaxMind. For high-volume server-side use, consider self-hosting or querying MaxMind data directly.## Quick answersIs the API free for commercial use? Yes. Are there rate limits? No quotas. Infrastructure rate-limits to 10 requests per second per IP to prevent abuse. Where does the data come from? MaxMind GeoLite2, updated daily. Cloudflare geolocation is used when available. Do you log requests? No. Will the API keep running? Country has been running since 2015. For critical applications, self-host for full control.
Code · Fields · Cost · Run it keyless, no account

The same call, in code.

The capture above came back as markdown. These examples add a key, so you get browser rendering, proxies, and concurrency on country.is.

country-is-scraper.ts
import { SpiderBrowser } from "spider-browser";

const spider = new SpiderBrowser({
  apiKey: process.env.SPIDER_API_KEY!,
});

await spider.connect();
const page = spider.page!;
await page.goto("https://country.is");

// No selectors, no schema. Spider reads the page and names the fields.
const data = await page.scrape();

console.log(data);
await spider.close();
ready to run · spider-browser, no selectors

Ready for volume? Get an API key →

Fields you can pull.

TitleContentDateSourceCategoryLanguage

Spider names these from the page. The capture above came back as markdown; the same call with return_format: "json" returns them as keys.

What country.is costs to scrape.

The capture above cost $0.000028 to fetch. Pricing is $1 per GB of pre-transformation bandwidth plus $0.001 per CPU minute, so a page like this one lands at a fraction of a cent. Failed requests are billed at $0.

  • Free balance on signup
  • No card required to test
  • Balance never expires
See the full pricing →

Run it keyless, no account

curl -X POST https://api.spider.cloud/scrape -H "Content-Type: application/json" -d '{"url": "https://country.is/", "return_format": "markdown"}'

More International scrapers.

Start scraping country.is.

You already have the call. A key raises the rate limit and turns on browser rendering, proxies, and concurrency. Balance never expires, and top-ups go through secure checkout.