Lookup
Answers what is known about a single IPv4 or IPv6 address. Which fields
come back is decided by the plan behind the presented key; with no key
the answer is ip and is_vpn.
?apikey=<key>. Convenient in a browser; prefer a header elsewhere.
In: query
Path Parameters
The IPv4 or IPv6 address to classify.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://api.vpndetection.io/1.1.1.1"{
"ip": "1.1.1.1",
"is_vpn": false
}{
"error": "not a valid IP address"
}{
"error": "invalid API key"
}{
"error": "source address not allowed for this API key"
}{
"error": "rate limit exceeded"
}{
"error": "lookup failed"
}Rate Limits
Quota and throttling behavior for the VPNDetection HTTP API.
Lookup your own address GET
Answers what is known about the address this request came from, which is the same answer `GET /{ip}` gives for that address: the plan behind the presented key decides which fields come back, and the request counts against the same allowance. The address is the one our edge observed, so a request through a proxy or a VPN reports the exit it left through rather than the machine that made it. That is usually the point of asking.