Opening Our Data
Keep Track can be used to help power your own projects, research, and education. It is free for private and non-commerical use.
Features
Endless Possibilities
Now the same data that powers Keep Track can be used to power your own projects!
Satellite Endpoint
Keep Track has a RESTful API that can be used to access the same data used in the app. It is new but will keep expanding.
Expansive Database
Keep Track has a database of over 37,000 satellites and debris objects. We combine TLEs from multiple sources with satellite descriptions to provide the most accurate data.
Works with OOTK
Use the Orbital Object Toolkit to calculate orbits, find objects, and more. This is exactly the same library that powers Keep Track.
Free
This service is being offered for free to help power your projects, research, and education. It is free for private and non-commercial use.
Pair KeepTrack API with Orbital Object Toolkit
Import OOTK
Import the Orbital Object Toolkit (OOTK) into your project.
Get Satellite Data
Use the Keep Track API to get the latest TLEs for a satellite.
Create a Satellite Object
Use the TLEs to create a Satellite object in OOTK.
Calculate Position
Calculate the satellite position in latitude, longitude, and altitude with one command.
That's It!
It is that easy to get satellite data and calculate its position with OOTK. Try it out below.
// Normally you would install ootk via npm and import it like this:
// import { Satellite } from 'ootk';
// We've already included ootk on this page, so you can use it in the browser like this:
var Satellite = window.ootk.Satellite;
fetch('https://api.keeptrack.space/v1/sat/25544')
.then((res) => res.json())
.then((data) => {
const sat = new Satellite({ name: data.name, tle1: data.tle1, tle2: data.tle2 });
console.log(sat.lla()); // Get the satellite's position in latitude, longitude, altitude
console.log(sat.eci()); // Get the satellite's position and velocity in Earth-centered inertial coordinates
console.log(sat.ecf()); // Get the satellite's position in Earth-centered, Earth-fixed coordinates
}).catch((err) => console.error(err));
var Satellite = window.ootk.Satellite;
fetch('https://api.keeptrack.space/v1/sat/5')
.then((res) => res.json())
.then((data) => {
const sat = new Satellite({ name: data.name, tle1: data.tle1, tle2: data.tle2 });
console.group('Satellite Details');
console.log('International Designator: ' + sat.intlDes); // International Designator
console.log('Epoch Year: ' + sat.epochYear); // Epoch Year
console.log('Epoch Day: ' + sat.epochDay); // Epoch Day
console.log('Mean Motion Deviation 1: ' + sat.meanMoDev1); // Mean Motion Deviation 1
console.log('Mean Motion Deviation 2: ' + sat.meanMoDev2); // Mean Motion Deviation 2
console.log('Bstar (Drag Coefficient): ' + sat.bstar); // Bstar (Drag Coefficient)
console.log('Inclination (degrees): ' + sat.inclination); // inclination in degrees
console.log('Right Ascension (degrees): ' + sat.rightAscension); // right ascension of the ascending node in degrees
console.log('Eccentricity: ' + sat.eccentricity); // eccentricity
console.log('Argument of Perigee (degrees): ' + sat.argOfPerigee); // argument of perigee in degrees
console.log('Mean Anomaly (degrees): ' + sat.meanAnomaly); // mean anomaly in degrees
console.log('Mean Motion (revolutions per day): ' + sat.meanMotion); // mean motion in revolutions per day
console.log('Period (seconds): ' + sat.period); // period in seconds
console.log('Apogee (kilometers): ' + sat.apogee); // apogee in kilometers
console.log('Perigee (kilometers): ' + sat.perigee); // perigee in kilometers
console.groupEnd();
}).catch((err) => console.error(err));
Get the Orbital Object Toolkit
The Orbital Object Toolkit (OOTK) is a TypeScript library that was developed to simplify the math and let you focus on using the results.