For Agents
Look up the country for one or many IP addresses with no authentication required. Returns the ISO 3166-1 alpha-2 country code per IP.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Country, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Country API.
Look up the calling client's country by IP with a single GET request
Resolve a specific IPv4 or IPv6 address to its ISO country code
Batch-resolve up to a list of IP addresses in one POST
Retrieve service info such as version and dataset metadata
GET STARTED
Use for: I need to find the country of a given IP address, Look up the caller's country code without authentication, Batch resolve a list of IPs to country codes, Check whether a visitor is in a specific country before showing content
Not supported: Does not return city, region, ISP, or timezone — use for IP-to-country code lookup only.
Jentic publishes the only available OpenAPI specification for Country, keeping it validated and agent-ready. country.is is a free, no-auth IP-to-country lookup service exposed as a small REST API with four endpoints: a caller-IP lookup, a path-based single-IP lookup, a batch POST endpoint, and a service info route. It returns just the ISO 3166-1 alpha-2 country code for an IP address — nothing else — which makes it ideal for lightweight geolocation routing, fraud filtering, or compliance gating without standing up a paid geolocation account.
Embed lightweight country detection in edge or serverless workloads
Gate features or content on the visitor's country without paid geolocation
Patterns agents use Country API for, with concrete tasks.
★ Visitor Country Detection
Resolve a visitor's country from their IP address to localise content, currency, or feature flags. country.is needs no API key and returns just an ISO alpha-2 code, which keeps payloads small and latency low. Suitable for edge functions and serverless handlers that want country awareness without paying for a full geolocation provider.
Call GET / from the user's request context and read the `country` field from the JSON response
Compliance Country Gating
Enforce geographic restrictions for regulated content, embargoed regions, or per-region features by checking the IP's country code before serving a request. Use the path-based lookup when the IP comes from an upstream proxy header rather than the direct caller. Returns only the country code, so downstream code stays simple.
Read the X-Forwarded-For header, call GET /{ip}, and reject the request if the country code is in a configured embargo list
Bulk IP Triage
Score a backlog of suspicious IPs (server logs, abuse reports, signup forms) by country in a single POST. The batch endpoint accepts a list of IPs and returns the country code for each, so a fraud or security workflow can attach country context to every record without sending one request per IP.
Submit a list of 100 suspicious IPs to POST / and tag each log line with the resolved country code
AI Agent Geo-Context
Give an AI agent country awareness when it processes web requests, support tickets, or signup events. Through Jentic, the agent searches for 'look up country from IP' and gets a structured operation it can call without any credential setup. Because country.is is auth-free, the integration is essentially zero-config.
Use Jentic to search 'look up country from IP', load the schema for GET /{ip}, and execute it with the user-supplied IP
4 endpoints — jentic publishes the only available openapi specification for country, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/
Look up the caller's country
/{ip}
Look up a specific IP
/
Batch lookup of multiple IPs
/info
Service info and dataset version
/
Look up the caller's country
/{ip}
Look up a specific IP
/
Batch lookup of multiple IPs
/info
Service info and dataset version
Three things that make agents converge on Jentic-routed access.
Credential isolation
country.is needs no API key, so Jentic forwards the request directly with no credential to manage. No tokens, no vault entries, no rotation overhead.
Intent-based discovery
Agents search Jentic with intents like 'look up country from IP' and Jentic returns the matching country.is operation with its parameter schema, so the agent calls GET /{ip} or POST / without reading the spec.
Time to first call
Direct integration: under 30 minutes — it is a single HTTP GET. Through Jentic: under 5 minutes via search, load, and execute.
Alternatives and complements available in the Jentic catalogue.
Specific to using Country API through Jentic.
Why is there no official OpenAPI spec for Country?
country.is does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Country via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the country.is API use?
country.is requires no authentication. All four endpoints are public and return a JSON object containing only the ISO 3166-1 alpha-2 country code. When called via Jentic, no credential is provisioned for this API.
Can I look up a specific IP address with country.is?
Yes. Send GET /{ip} with the IPv4 or IPv6 address as the path parameter. The response is `{"ip": "...", "country": "US"}`. For multiple addresses in a single request, POST a JSON list of IPs to /.
What are the rate limits for country.is?
country.is does not publish a hard rate limit, but the service is run as a free public utility and aggressive use will be throttled at the network layer. For high-volume workloads, cache the country code per IP and consider falling back to a paid provider.
How do I integrate country.is with an AI agent through Jentic?
Search Jentic for 'look up country from IP', load the schema for GET /{ip}, and execute it with the IP you want to resolve. Because country.is needs no auth, the only thing Jentic returns is the response payload.
Does country.is return city or region information?
No. country.is intentionally returns only the country code. For city, region, or ISP-level enrichment, use a richer geolocation API like ipinfo, ipstack, or ipgeolocation.io.