# The Space Devs API

> The Space Devs returns rocket launch schedules and mission details, available as a workflow and API.

The Space Devs (TSD) lists upcoming worldwide rocket launches, with optional company, country, launch site, and result-count inputs. Get launch returns details for a mission or rocket named as input, including its launch time, status, site, and mission information.

- Page: https://fous.com/workflows/the-space-devs
- Handle: `@the-space-devs`
- Category: [Science](https://fous.com/workflows/category/science)
- Source website: https://thespacedevs.com
- Last verified: Sep 29, 2026
- Fous is not affiliated with The Space Devs.

## Methods

### Get launch

Operation `get_launch`, version 1. 1 credit per call.

Get launch details by mission or rocket name. If several match, selects the next upcoming launch, otherwise the most recent. Public launch data may omit cargo, landing, webcast, or local time details.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `mission` | string | yes | `"Artemis II"` | Mission or rocket name, for example Artemis II or Falcon 9. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "mission"
  ],
  "properties": {
    "mission": {
      "type": "string",
      "description": "Mission or rocket name, for example Artemis II or Falcon 9.",
      "examples": [
        "Artemis II",
        "Crew-10",
        "Falcon 9"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "mission": "Artemis II"
    },
    {
      "mission": "Crew-10"
    },
    {
      "mission": "Falcon 9"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `result` | string | `"success"` | Success, failure, partial failure, or not yet launched |
| `rocket` | string or null | `"Space Launch System Block 1"` | Rocket model |
| `status` | string or null | `"Launch Successful"` | Launch status in words |
| `page_link` | string | `"https://ll.thespacedevs.com/2.3.0/launches/41699701-2ef4-4b0c-ac9d-6757820cde87/"` | Launch detail page URL |
| `image_link` | string or null | `"https://thespacedevs-prod.nyc3.digitaloceanspaces.com/media/images/space_launch_sy_image_20260405204639.jpg"` | Launch image URL |
| `launch_site` | string or null | `"Launch Complex 39B, Kennedy Space Center, FL, USA"` | Launch pad and location |
| `mission_name` | string | `"Artemis II"` | Mission name |
| `target_orbit` | string or null | `"Lunar flyby"` | Target orbit |
| `webcast_link` | string or null | `"https://www.youtube.com/watch?v=Tf_UjBMIzNo"` | Webcast URL |
| `launch_company` | string or null | `"National Aeronautics and Space Administration"` | Launch provider |
| `mission_description` | string or null | `"Artemis II is the first crewed mission as part of the Artemis program. Artemis II will send a crew of 4 - 3 Americans a` | Description of the mission |
| `launch_date_time_utc` | string or null | `"2026-04-01T22:35:12+00:00"` | Launch time in UTC, ISO 8601 |
| `booster_landing_result` | string or null | `"Landed at Landing Zone 1"` | Booster landing outcome or plan in words |
| `launch_date_time_local` | string or null | `"2026-04-01T18:35:12-04:00"` | Launch time at the launch site, ISO 8601 with offset |
| `booster_landing_attempt` | string | `"Not listed"` | Yes, no, or not listed |
| `spacecraft_or_cargo_carried` | array |  | Names of carried spacecraft or payloads listed for this launch. |

**Example input**

```json
{
  "mission": "Artemis II"
}
```

**Example output**

```json
{
  "result": "success",
  "rocket": "Space Launch System Block 1",
  "status": "Launch Successful",
  "page_link": "https://ll.thespacedevs.com/2.3.0/launches/41699701-2ef4-4b0c-ac9d-6757820cde87/",
  "image_link": "https://thespacedevs-prod.nyc3.digitaloceanspaces.com/media/images/space_launch_sy_image_20260405204639.jpg",
  "launch_site": "Launch Complex 39B, Kennedy Space Center, FL, USA",
  "mission_name": "Artemis II",
  "target_orbit": "Lunar flyby",
  "webcast_link": "https://www.youtube.com/watch?v=Tf_UjBMIzNo",
  "launch_company": "National Aeronautics and Space Administration",
  "mission_description": "Artemis II is the first crewed mission as part of the Artemis program. Artemis II will send a crew of 4 - 3 Americans and 1 Canadian around the moon and return them back to Earth.\r\n\r\nThe mission will …",
  "launch_date_time_utc": "2026-04-01T22:35:12+00:00",
  "booster_landing_result": null,
  "launch_date_time_local": "2026-04-01T18:35:12-04:00",
  "booster_landing_attempt": "Not listed",
  "spacecraft_or_cargo_carried": [
    "Orion Integrity"
  ]
}
```

### List upcoming launches

Operation `list_upcoming_launches`, version 1. 1 credit per call.

List upcoming rocket launches worldwide, with launch windows in UTC and local site time. The public development listing can lag the main listing; filters search only the first 20–100 matching launches.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `company` | string | no | `"SpaceX"` | Launch company name, for example SpaceX. |
| `country` | string | no | `"India"` | Launch site country, for example India or United States. |
| `launch_site` | string | no | `"Cape Canaveral"` | Launch site name or part of it, for example Cape Canaveral. |
| `max_results` | integer | no | `3` | Maximum launches to return, for example 10. |

**Input schema**

```json
{
  "type": "object",
  "properties": {
    "company": {
      "type": "string",
      "description": "Launch company name, for example SpaceX.",
      "examples": [
        "SpaceX",
        "MadeUp Rockets"
      ]
    },
    "country": {
      "type": "string",
      "description": "Launch site country, for example India or United States.",
      "examples": [
        "India"
      ]
    },
    "launch_site": {
      "type": "string",
      "description": "Launch site name or part of it, for example Cape Canaveral.",
      "examples": [
        "Cape Canaveral"
      ]
    },
    "max_results": {
      "type": "integer",
      "default": 10,
      "maximum": 50,
      "minimum": 1,
      "description": "Maximum launches to return, for example 10.",
      "x-fous-developer": true,
      "examples": [
        3,
        2
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "country": "India",
      "max_results": 3
    },
    {
      "company": "SpaceX",
      "launch_site": "Cape Canaveral",
      "max_results": 2
    },
    {
      "company": "MadeUp Rockets",
      "max_results": 2
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `launches` | array |  |  |
| `launches[].pad` | string or null | `"Satish Dhawan Space Centre Second Launch Pad"` |  |
| `launches[].rocket` | string or null | `"GSLV Mk. II"` |  |
| `launches[].status` | string or null | `"To Be Determined"` |  |
| `launches[].page_link` | string | `"https://lldev.thespacedevs.com/2.2.0/launch/20d5676e-111b-40e3-8923-b218c3665ca2/?format=json"` |  |
| `launches[].image_link` | string or null | `"https://thespacedevs-dev.nyc3.digitaloceanspaces.com/media/images/gslv2520mk252_image_20240101090337.jpg"` |  |
| `launches[].launch_site` | string or null | `"Satish Dhawan Space Centre, India"` |  |
| `launches[].mission_name` | string | `"IRNSS-1L (NVS-03)"` |  |
| `launches[].target_orbit` | string or null | `"Geostationary Transfer Orbit"` |  |
| `launches[].launch_company` | string or null | `"Indian Space Research Organization"` |  |
| `launches[].window_end_utc` | string or null | `"2026-10-15T00:00:00+00:00"` |  |
| `launches[].livestream_link` | string or null | `"https://x.com/i/broadcasts/1qxvvepEVdRxB"` |  |
| `launches[].window_end_local` | string or null | `"2026-10-15T05:30:00+05:30"` |  |
| `launches[].window_start_utc` | string or null | `"2026-10-15T00:00:00+00:00"` |  |
| `launches[].window_start_local` | string or null | `"2026-10-15T05:30:00+05:30"` |  |
| `launches[].mission_description` | string or null | `"This is a replacement satellite for the Indian Regional Navigation Satellite System. The constellation will provide Ind` |  |

**Example input**

```json
{
  "country": "India",
  "max_results": 3
}
```

**Example output**

```json
{
  "launches": [
    {
      "pad": "Satish Dhawan Space Centre Second Launch Pad",
      "rocket": "GSLV Mk. II",
      "status": "To Be Determined",
      "page_link": "https://lldev.thespacedevs.com/2.2.0/launch/20d5676e-111b-40e3-8923-b218c3665ca2/?format=json",
      "image_link": "https://thespacedevs-dev.nyc3.digitaloceanspaces.com/media/images/gslv2520mk252_image_20240101090337.jpg",
      "launch_site": "Satish Dhawan Space Centre, India",
      "mission_name": "IRNSS-1L (NVS-03)",
      "target_orbit": "Geostationary Transfer Orbit",
      "launch_company": "Indian Space Research Organization",
      "window_end_utc": "2026-10-15T00:00:00+00:00",
      "livestream_link": null,
      "window_end_local": "2026-10-15T05:30:00+05:30",
      "window_start_utc": "2026-10-15T00:00:00+00:00",
      "window_start_local": "2026-10-15T05:30:00+05:30",
      "mission_description": "This is a replacement satellite for the Indian Regional Navigation Satellite System. The constellation will provide India with an alternative to GPS and will be used for military and civilian use. Loc…"
    }
  ]
}
```

## Quick start

Call the API with a Fous API key (`FOUS_API_KEY`). To create one, turn on Developer mode in Fous Studio, then open Keys & connections → API keys (https://app.fous.com/keys).

```bash
# First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
: "${FOUS_API_KEY:?Set FOUS_API_KEY before running this example}"

curl 'https://api.fous.com/v1/query' \
  --fail-with-body --silent --show-error --max-time 120 \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "api": "@the-space-devs",
  "visibility": "public",
  "operation": "get_launch",
  "version": 1,
  "input": {
    "mission": "Artemis II"
  },
  "response": {
    "format": "json"
  }
}'
```

```python
# Save as fous.py and run with python3 fous.py. No packages needed.
# First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
import json
import os
import urllib.error
import urllib.request

api_key = os.environ.get("FOUS_API_KEY")
if not api_key:
    raise RuntimeError("Set FOUS_API_KEY before running this example")

body = json.loads("{\n  \"api\": \"@the-space-devs\",\n  \"visibility\": \"public\",\n  \"operation\": \"get_launch\",\n  \"version\": 1,\n  \"input\": {\n    \"mission\": \"Artemis II\"\n  },\n  \"response\": {\n    \"format\": \"json\"\n  }\n}")
request = urllib.request.Request(
    "https://api.fous.com/v1/query",
    data=json.dumps(body).encode("utf-8"),
    headers={
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
    },
    method="POST",
)
try:
    with urllib.request.urlopen(request, timeout=120) as response:
        result = json.load(response)
except urllib.error.HTTPError as error:
    raise RuntimeError(f"HTTP {error.code}: {error.read().decode('utf-8', errors='replace')}") from error
if result.get("success") is False:
    raise RuntimeError(result.get("error", {}).get("message", "Request failed"))
print(json.dumps(result["data"]["output"], indent=2))
```

```typescript
// Save as fous.mts and run with npx tsx fous.mts.
// First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
const apiKey = process.env.FOUS_API_KEY;
if (!apiKey) throw new Error("Set FOUS_API_KEY before running this example");

const response = await fetch("https://api.fous.com/v1/query", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  signal: AbortSignal.timeout(120_000),
  body: JSON.stringify({
  "api": "@the-space-devs",
  "visibility": "public",
  "operation": "get_launch",
  "version": 1,
  "input": {
    "mission": "Artemis II"
  },
  "response": {
    "format": "json"
  }
}),
});
type ApiResult = { success: boolean; data?: { output: unknown }; error?: { message: string } };
const result: ApiResult = await response.json();
if (!response.ok || result.success === false) {
  throw new Error(result.error?.message ?? `HTTP ${response.status}`);
}
if (!result.data) throw new Error("Missing API response data");
console.log(result.data.output);
```

Or describe the data in plain language: send `{"api":"@the-space-devs","prompt":"Describe the data you need, with every detail"}` to the same URL. Fous fills in the input, runs the method that fits and returns only the fields you asked for; `data.route.calls[].request` is the exact call it made. Routing is free; the run costs the same.

## Use cases

- Track upcoming launches by company or country
- Review launch windows in UTC and local time
- Find launch details by mission or rocket name
- Compare launch sites, providers, and target orbits

## FAQ

### Is Fous affiliated with The Space Devs?

No. Fous is not affiliated with The Space Devs. This workflow reads the public thespacedevs.com website and returns its data.

### How much does it cost?

Each run costs 1 credit. With pay-as-you-go, a credit costs 1¢; monthly plans cost less per credit.

### Do I need a The Space Devs account?

No. You only need a Fous account.

### How current is the data?

Fous gets the data from thespacedevs.com when you run it; repeating the same request within a day may return the saved result. Fous checks this workflow automatically; it last passed a check on Sep 29, 2026.

### What launches are coming up from a company or country?

List upcoming launches returns upcoming launches, with optional company and launch site country filters.

### When is a launch scheduled?

List upcoming launches returns launch windows in UTC and local site time. Get launch returns UTC and local launch times when listed.

### What rocket is carrying a named mission?

Get launch returns rocket and mission details for the mission or rocket name you provide.

## Related

- [NASA API](https://fous.com/workflows/nasa.md): NASA provides astronomy pictures from June 16, 1995 onward, up to 100 media matches, inclusive UTC asteroid approaches, recent approximate natural events, and upcoming ISS sightings for listed cities.
- [Product Hunt API](https://fous.com/workflows/product-hunt.md): Product Hunt provides Pacific-time daily launches, product search, and profiles with reviews, alternatives, and 10 recent launches; ratings may be missing without reviews.
- [Nike API](https://fous.com/workflows/nike.md): Nike returns country-specific listings and details, including prices, sizes, availability and reviews, plus publicly shown upcoming or recently stocked SNKRS releases with local launch times.
- [Hugging Face API](https://fous.com/workflows/hugging-face.md): Hugging Face returns public model, dataset, and demo search results, model details, or weekly trending models; unpublished information may be missing, and demo availability can change.
- [TMDB API](https://fous.com/workflows/tmdb.md): TMDB returns movie and TV details, cast, trailers, releases, viewing services, scheduled upcoming movies, and up to 20 homepage trending titles; future episode details depend on published schedules.
- [Flightradar24 API](https://fous.com/workflows/flightradar24.md): Flightradar24 provides live flight tracking, recent history, flight status and times, plus upcoming airport departures and arrivals; history and schedules are limited to recent and upcoming flights.
- [ElectionGuide API](https://fous.com/workflows/electionguide.md): ElectionGuide provides worldwide election dates and information, including upcoming elections and referendums within six months and the latest held national election or referendum in a specified year, with results when published.
- [Stock Analysis API](https://fous.com/workflows/stock-analysis.md): Stock Analysis returns free-period company statements, statistics current as of its displayed date, typically top-25 ETF holdings, and US IPOs since 2019 with potentially missing prices or returns.
- [All Science workflows](https://fous.com/workflows/category/science)
