Opening Our Data

Keep Track API

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.

Copy and Paste into Your Browser Console (F12)
// 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));
Copy and Paste into Your Browser Console (F12)
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));
More Coming Soon! Adding sensor endpoints next. Keep checking back!

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.