How to use the IPGEO API in Go
Unlimited free IP Address API with useful information. This guide calls it from Go with code we've run against the live endpoint.
Online · 1055 msEndpoint tested Oct 24, 2026
1. What you need
Go 1.18 or newer. Save as `main.go` and run `go run main.go`.
No API key or sign-up. Endpoint: https://api.techniknews.net/ipgeo/
2. Make the request
package main
import (
"encoding/json"
"fmt"
"net/http"
"time"
)
func main() {
client := &http.Client{Timeout: 10 * time.Second}
res, err := client.Get("https://api.techniknews.net/ipgeo/")
if err != nil {
panic(err)
}
defer res.Body.Close()
var data any
json.NewDecoder(res.Body).Decode(&data)
fmt.Println(data)
}3. The response
Trimmed from the live response on Oct 24, 2026.
{
"status": "success",
"continent": "Africa",
"country": "Ghana",
"countryCode": "GH",
"regionName": "Greater Accra Region",
"city": "Accra",
"zip": "",
"lat": 5.5545,
"lon": -0.1902,
"timezone": "Africa/Accra",
"currency": "GHS",
"isp": "Scancom Limited"
}4. Before you ship
- Set a timeout and handle non-200 responses: free APIs can rate-limit or go down.
- Cache responses where you can, instead of calling the API on every page view.
- Read the official documentation ↗ for rate limits and terms of use.
FAQ
Does the IPGEO API need an API key in Go?
No. The IPGEO API works without an API key, so the Go example runs as-is.
Can I call the IPGEO API from the browser?
Yes. It sends CORS headers, so front-end JavaScript can call it directly.
What does the IPGEO API return?
JSON. The example response on this page is trimmed from a real response our health check received on Oct 24, 2026.
Same API in: Python · JavaScript · Node.js · PHP · Java · Ruby · C#
IPGEO API: ratings & reviews · IPGEO API alternatives · more free APIs for Go