Open Notify ISS API
Free API returning the International Space Station's live latitude and longitude. No key, updates in real time. Tested curl example and live JSON response.
Endpoint tested and returned HTTP 200 on 2026-08-19
What is the Open Notify ISS API?
The Open Notify ISS API returns the current latitude and longitude of the International Space Station in real time. It is completely free, requires no API key, and updates continuously as the station orbits.
This API returns the ISS's position right now, and because the station orbits Earth roughly every 90 minutes at about 7.66 km per second, the coordinates change visibly between requests made seconds apart — which makes it unusually satisfying for demos.
It is a favourite for teaching polling and live map updates, since the data genuinely changes in real time without you having to fake it. Note the endpoint is HTTP only, so call it from a server rather than an HTTPS page.
Quick facts
- Base URL
http://api.open-notify.org- Authentication
- No key required.
- Rate limit
- No published limit, but the position only meaningfully changes every few seconds — polling faster is wasteful.
- Pricing
- Free.
- CORS
- Enabled — callable directly from browser JavaScript
- Official docs
- Read the docs
How to use the Open Notify ISS API
Every request below was executed against the live API on 2026-08-19, and the response shown is the real body it returned — not an illustration.
1. Get the ISS's current position
GET http://api.open-notify.org/iss-now.json
curl 'http://api.open-notify.org/iss-now.json'const res = await fetch("http://api.open-notify.org/iss-now.json");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("http://api.open-notify.org/iss-now.json", timeout=20)
res.raise_for_status()
print(res.json()){
"timestamp": 1787144814,
"message": "success",
"iss_position": {
"latitude": "-48.2974",
"longitude": "118.4108"
}
}2. List the people currently in space
GET http://api.open-notify.org/astros.json
curl 'http://api.open-notify.org/astros.json'const res = await fetch("http://api.open-notify.org/astros.json");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("http://api.open-notify.org/astros.json", timeout=20)
res.raise_for_status()
print(res.json()){
"people": [
{
"craft": "ISS",
"name": "Oleg Kononenko"
},
{
"craft": "ISS",
"name": "Nikolai Chub"
},
{
"craft": "ISS",
"name": "Tracy Caldwell Dyson"
},
{
"craft": "ISS",
"name": "Matthew Dominick"
},
{
"craft": "ISS",
"name": "Michael Barratt"
},
{
"craft": "ISS",
"name": "Jeanette Epps"
},
{
"craft": "ISS",
"name": "Alexander Grebenkin"
},
{
"craft": "ISS",
"name": "Butch Wilmore"
},
{
"craft": "ISS",
"name": "Sunita Williams"
},
{
"craft": "Tiangong",
"name": "Li Guangsu"
},
{
"craft": "Tiangong",
"name": "Li Cong"
},
{
"craft": "Tiangong",
"name": "Ye Guangfu"
}
],
"number": 12,
"message": "success"
}Response fields
iss_position.latitudestring- Current latitude as a string — parse before using.
iss_position.longitudestring- Current longitude as a string.
timestampinteger- Unix timestamp of the reading.
messagestring- `success` when the request worked.
What you can build with the Open Notify ISS API
- Plot the ISS live on a map and animate its path
- Teach polling and real-time UI updates with genuinely changing data
- Build a space education dashboard for classrooms
- Trigger a notification when the station passes over a location
Common errors and how to fix them
Mixed content blocked
The endpoint is HTTP only.
Fix: Call it from your backend and proxy the result to an HTTPS front end.
Coordinates treated as strings
Latitude and longitude are returned as strings.
Fix: Parse them to numbers before plotting, or your map library will silently misplace the marker.
Open Notify ISS API — frequently asked questions
Is there a free API to track the ISS?
Yes. The Open Notify ISS API returns the station's live latitude and longitude with no API key required, updating in real time.
How often does the ISS position change?
Continuously — the station travels at about 7.66 km per second and orbits Earth roughly every 90 minutes, so the coordinates differ noticeably even a few seconds apart.
Why are the coordinates strings instead of numbers?
The API returns them as JSON strings. Parse them with parseFloat or equivalent before plotting, otherwise mapping libraries will misinterpret them.
Can I use this API on an HTTPS website?
Not directly — the endpoint is HTTP only, so browsers block it as mixed content. Fetch it server-side and pass the result to your front end.
Tools that pair with this API
JSON Formatter
Format, beautify and minify JSON online with 2-space, 4-space or tab indentation. Sort keys alphabetically and catch syntax errors instantly — free and private.
Unit Converter
Convert between units of length, weight, temperature, area, volume, speed, time and data storage instantly, with a swap button and common conversion tables.
Timestamp Converter
Convert timestamps to human-readable dates and dates back to timestamps. Auto-detects seconds vs milliseconds, shows local, UTC and ISO 8601 formats.
Open Notify ISS is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-19; always check the official documentation before relying on this API in production, as terms and limits can change.