# Where the ISS At?

> Track the International Space Station with Where the ISS At?: where it is right now, where it was or will be at any moment, the path it traces over the Earth, the country and timezone it is flying over, and the orbital elements (TLE) pass-prediction tools need. No account or API key required.

App · Weather & Space · 7 actions. Web page: https://docs.lodol.com/docs/integrations/wheretheiss

## Actions

### Get a satellite's position

Get where the International Space Station is right now: latitude, longitude, altitude, speed, the size of the area it is over and whether it is in sunlight. Pick a time to get where it was, or will be, at that moment instead. No API key required.

**Inputs**

- Satellite (`satellite_id`, text): Which satellite to look up. Defaults to the International Space Station (NORAD catalog number 25544), the only satellite the API tracks today. Default: `25544`.
- Time (`at_time`, date and time): Optional. The moment to report the position for, past or future. Leave empty for right now.
- Units (`units`, text): Units for altitude, speed and footprint. Kilometres by default; latitude and longitude are always in decimal degrees. One of: `kilometers` (Kilometers (km, km/h)), `miles` (Miles (mi, mph)). Default: `kilometers`.

**Outputs**

- `altitude` (number): Height above the ground, in the requested units.
- `daynum` (number): The same instant as a Julian date.
- `footprint` (number): Diameter of the circle of ground the satellite is above the horizon for, in the requested units.
- `latitude` (number): Latitude of the point below the satellite, in degrees.
- `longitude` (number): Longitude of the point below the satellite, in degrees.
- `name` (text): The satellite's name, e.g. 'iss'.
- `satellite_id` (number): NORAD catalog number of the satellite, e.g. 25544.
- `solar_latitude` (number): Latitude of the point the Sun is directly over.
- `solar_longitude` (number): Longitude of the point the Sun is directly over.
- `time` (text): The same instant as an ISO 8601 UTC date-time.
- `timestamp` (number): The instant this position is for, in Unix seconds.
- `units` (text): Which units the distances above are in.
- `velocity` (number): Speed over the ground, in the requested units per hour.
- `visibility` (text): Whether the satellite is lit: 'daylight' (in sunlight over a daylit ground), 'visible' (in sunlight over a dark ground, so it can be seen from below) or 'eclipsed' (in the Earth's shadow).

**Example output**

```json
{
  "altitude": 430.367148858,
  "daynum": 2461267.7039931,
  "footprint": 4559.8352143003,
  "latitude": -36.098994690608,
  "longitude": -64.085171042837,
  "name": "iss",
  "satellite_id": 25544,
  "solar_latitude": 14.045332697976,
  "solar_longitude": 107.70067463273,
  "time": "2026-08-15T04:53:45Z",
  "timestamp": 1786769625,
  "units": "kilometers",
  "velocity": 27550.298382663,
  "visibility": "eclipsed"
}
```

### Get orbital elements (TLE)

Get the satellite's current two-line element set (the orbital data tracking software needs to predict passes), both as separate fields and as the plain three-line block those tools expect. No API key required.

**Inputs**

- Satellite (`satellite_id`, text): Which satellite to look up. Defaults to the International Space Station (NORAD catalog number 25544), the only satellite the API tracks today. Default: `25544`.

**Outputs**

- `header` (text): The element set's title line, e.g. 'ISS (ZARYA)'.
- `line1` (text): First line of the two-line element set.
- `line2` (text): Second line of the two-line element set.
- `name` (text): The satellite's name, e.g. 'iss'.
- `requested_time` (text): When it was requested, as an ISO 8601 UTC date-time.
- `requested_timestamp` (number): When it was requested, in Unix seconds.
- `satellite_id` (number): NORAD catalog number of the satellite.
- `text` (text): Header and both lines joined by newlines: the plain-text TLE block tracking libraries read.
- `tle_time` (text): When it was issued, as an ISO 8601 UTC date-time.
- `tle_timestamp` (number): When this element set was issued, in Unix seconds. Element sets are refreshed every few hours.

**Example output**

```json
{
  "header": "ISS (ZARYA)",
  "line1": "1 25544U 98067A   26225.85824407  .00004307  00000+0  85020-4 0  9997",
  "line2": "2 25544  51.6326  14.6698 0007494  43.6909 316.4672 15.49433609580695",
  "name": "iss",
  "requested_time": "2026-08-15T04:53:54Z",
  "requested_timestamp": 1786769634,
  "satellite_id": 25544,
  "text": "ISS (ZARYA)\n1 25544U 98067A   26225.85824407  .00004307  00000+0  85020-4 0  9997\n2 25544  51.6326  14.6698 0007494  43.6909 316.4672 15.49433609580695",
  "tle_time": "2026-08-13T20:35:52Z",
  "tle_timestamp": 1786653352
}
```

### Get positions at specific times

Get a satellite's position at up to ten separate moments in one request, for example the times a pass was reported, or the same minute on ten different days. No API key required.

**Inputs**

- Satellite (`satellite_id`, text): Which satellite to look up. Defaults to the International Space Station (NORAD catalog number 25544), the only satellite the API tracks today. Default: `25544`.
- Times (`times`, list, required): The moments to report positions for, up to ten. Each entry can be a date and time (2026-08-15T04:53:45Z) or a Unix timestamp in seconds.
- Units (`units`, text): Units for altitude, speed and footprint. Kilometres by default; latitude and longitude are always in decimal degrees. One of: `kilometers` (Kilometers (km, km/h)), `miles` (Miles (mi, mph)). Default: `kilometers`.

**Outputs**

- `count` (number): How many positions were returned.
- `positions` (list): One position per time asked for, in the order they were given.

**Example output**

```json
{
  "count": 2,
  "positions": [
    {
      "altitude": 430.367148858,
      "daynum": 2461267.7039931,
      "footprint": 4559.8352143003,
      "latitude": -36.098994690608,
      "longitude": -64.085171042837,
      "name": "iss",
      "satellite_id": 25544,
      "solar_latitude": 14.045332697976,
      "solar_longitude": 107.70067463273,
      "time": "2026-08-15T04:53:45Z",
      "timestamp": 1786769625,
      "units": "kilometers",
      "velocity": 27550.298382663,
      "visibility": "eclipsed"
    },
    {
      "altitude": 430.367148858,
      "daynum": 2461267.7039931,
      "footprint": 4559.8352143003,
      "latitude": -21.152387411214,
      "longitude": -47.884571017465,
      "name": "iss",
      "satellite_id": 25544,
      "solar_latitude": 14.045332697976,
      "solar_longitude": 107.70067463273,
      "time": "2026-08-15T04:58:45Z",
      "timestamp": 1786769925,
      "units": "kilometers",
      "velocity": 27550.298382663,
      "visibility": "daylight"
    }
  ]
}
```

### Get the ground track

Follow the path a satellite traces over the Earth: an evenly spaced run of up to ten positions from a starting time. Say when to start, how far apart the readings should be and how many you want: the times are worked out for you. No API key required.

**Inputs**

- Satellite (`satellite_id`, text): Which satellite to look up. Defaults to the International Space Station (NORAD catalog number 25544), the only satellite the API tracks today. Default: `25544`.
- Start time (`start_time`, date and time): Optional. When the track should start. Leave empty to start from now.
- Minutes between positions (`interval_minutes`, number): How far apart the readings are. The ISS circles the Earth in about 93 minutes, so 10 minutes traces most of an orbit across five readings. From 0.1 to 1440.0. Default: `10.0`.
- Number of positions (`points`, number): How many readings to return, including the one at the start time. The API allows up to ten per request. From 1 to 10. Default: `5`.
- Units (`units`, text): Units for altitude, speed and footprint. Kilometres by default; latitude and longitude are always in decimal degrees. One of: `kilometers` (Kilometers (km, km/h)), `miles` (Miles (mi, mph)). Default: `kilometers`.

**Outputs**

- `count` (number): How many positions were returned.
- `interval_minutes` (number): Minutes between consecutive positions.
- `positions` (list): The positions along the track, earliest first.
- `start_time` (text): The same instant as an ISO 8601 UTC date-time.
- `start_timestamp` (number): The instant the track starts at, in Unix seconds.

**Example output**

```json
{
  "count": 2,
  "interval_minutes": 5.0,
  "positions": [
    {
      "altitude": 430.367148858,
      "daynum": 2461267.7039931,
      "footprint": 4559.8352143003,
      "latitude": -36.098994690608,
      "longitude": -64.085171042837,
      "name": "iss",
      "satellite_id": 25544,
      "solar_latitude": 14.045332697976,
      "solar_longitude": 107.70067463273,
      "time": "2026-08-15T04:53:45Z",
      "timestamp": 1786769625,
      "units": "kilometers",
      "velocity": 27550.298382663,
      "visibility": "eclipsed"
    },
    {
      "altitude": 430.367148858,
      "daynum": 2461267.7039931,
      "footprint": 4559.8352143003,
      "latitude": -21.152387411214,
      "longitude": -47.884571017465,
      "name": "iss",
      "satellite_id": 25544,
      "solar_latitude": 14.045332697976,
      "solar_longitude": 107.70067463273,
      "time": "2026-08-15T04:58:45Z",
      "timestamp": 1786769925,
      "units": "kilometers",
      "velocity": 27550.298382663,
      "visibility": "daylight"
    }
  ],
  "start_time": "2026-08-15T04:53:45Z",
  "start_timestamp": 1786769625
}
```

### Get what a satellite is flying over

Answer 'where is the ISS, and what is it over?' in one step: its position plus the country, timezone and map link for the point on the ground directly below it. The country is empty when it is over open ocean. No API key required.

**Inputs**

- Satellite (`satellite_id`, text): Which satellite to look up. Defaults to the International Space Station (NORAD catalog number 25544), the only satellite the API tracks today. Default: `25544`.
- Time (`at_time`, date and time): Optional. The moment to report on, past or future. Leave empty for right now.
- Units (`units`, text): Units for altitude, speed and footprint. Kilometres by default; latitude and longitude are always in decimal degrees. One of: `kilometers` (Kilometers (km, km/h)), `miles` (Miles (mi, mph)). Default: `kilometers`.

**Outputs**

- `location` (object): The point on the ground directly below it.
- `position` (object): Where the satellite is.

**Example output**

```json
{
  "location": {
    "country_code": "AR",
    "latitude": -36.098994690608,
    "longitude": -64.085171042837,
    "map_url": "https://maps.google.com/maps?q=-36.098994690608,-64.085171042837&z=4",
    "timezone_id": "America/Argentina/Salta",
    "utc_offset_hours": -3.0
  },
  "position": {
    "altitude": 430.367148858,
    "daynum": 2461267.7039931,
    "footprint": 4559.8352143003,
    "latitude": -36.098994690608,
    "longitude": -64.085171042837,
    "name": "iss",
    "satellite_id": 25544,
    "solar_latitude": 14.045332697976,
    "solar_longitude": 107.70067463273,
    "time": "2026-08-15T04:53:45Z",
    "timestamp": 1786769625,
    "units": "kilometers",
    "velocity": 27550.298382663,
    "visibility": "eclipsed"
  }
}
```

### List satellites

List every satellite Where the ISS At? tracks, with the NORAD catalog number the other actions take. Currently that is the International Space Station. No API key required.

**Inputs**: None.

**Outputs**

- `count` (number): How many satellites were returned.
- `satellites` (list): Every satellite the API tracks.

**Example output**

```json
{
  "count": 1,
  "satellites": [
    {
      "name": "iss",
      "satellite_id": 25544
    }
  ]
}
```

### Look up a coordinate

Find out which country and timezone a latitude and longitude fall in, with a map link for the point. Works for anywhere on Earth, not just under a satellite. No API key required.

**Inputs**

- Latitude (`latitude`, number, required): Latitude in decimal degrees, between -90 and 90. Negative is south of the equator. From -90 to 90.
- Longitude (`longitude`, number, required): Longitude in decimal degrees, between -180 and 180. Negative is west of Greenwich. From -180 to 180.

**Outputs**

- `country_code` (text): Two-letter country code for the point, or empty when it is over international waters.
- `latitude` (number): Latitude of the point, in degrees.
- `longitude` (number): Longitude of the point, in degrees.
- `map_url` (text): Google Maps link centred on the point.
- `timezone_id` (text): IANA timezone at the point, e.g. 'America/Los_Angeles'.
- `utc_offset_hours` (number): That timezone's offset from UTC in hours, as reported by the API.

**Example output**

```json
{
  "country_code": "US",
  "latitude": 37.795517,
  "longitude": -122.393693,
  "map_url": "https://maps.google.com/maps?q=37.795517,-122.393693&z=4",
  "timezone_id": "America/Los_Angeles",
  "utc_offset_hours": -7.0
}
```
