# Launch Library 2 (The Space Devs) Rocket Launches Scraper (`parseforge/ll-spacedevs-launch-scraper`) Actor

Track upcoming and historical orbital rocket launches across every active provider (SpaceX, ULA, Roscosmos, ISRO, ESA, CNSA, Rocket Lab, Blue Origin and more). Returns mission, rocket, pad coordinates, status, weather, programs and agency profiles.

- **URL**: https://apify.com/parseforge/ll-spacedevs-launch-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Business, Automation, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $25.13 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

![ParseForge Banner](https://github.com/ParseForge/apify-assets/blob/ad35ccc13ddd068b9d6cba33f323962e39aed5b2/banner.jpg?raw=true)

## 🚀 Launch Library 2 Rocket Launches Scraper

> 🚀 **Export the global rocket launch manifest in seconds.** Track every upcoming and historical orbital launch across **all major providers** (SpaceX, ULA, Roscosmos, ISRO, ESA, CASC, Rocket Lab, Blue Origin, Arianespace, Northrop Grumman, JAXA, Firefly, Relativity, and more). No login, no API key, no manual schedule wrangling.

> 🕒 **Last updated:** 2026-05-15 · **📊 70 fields** per record · **🚀 All major launch providers** · **🌍 Worldwide coverage** · **📅 Upcoming + Historical**

The **Launch Library 2 Rocket Launches Scraper** pulls the community-maintained Launch Library 2 catalog, curated by The Space Devs network of spaceflight enthusiasts and analysts, and returns **70 fields per launch**, including launch name, status, NET window, rocket configuration, mission details, pad coordinates, agencies, programs, weather concerns, and full provider profiles with success/failure tallies. Launch Library 2 is the reference open dataset behind dozens of community apps including Go4Liftoff, Space Launch Now, and Next Spaceflight.

The catalog covers **every active orbital launch provider worldwide**, both upcoming and historical, including SpaceX, United Launch Alliance, Rocket Lab, Blue Origin, Arianespace, Northrop Grumman, Roscosmos, CASC, ISRO, JAXA, MHI, Firefly Aerospace, Relativity Space, Astra Space, Galactic Energy, CAS Space, LandSpace, and more. This Actor exports the manifest as CSV, Excel, JSON, or XML. Filter by provider, country, status, search term, or launch window, all server-side.

| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Space-news editors, launch streamers, mission-planning teams, satellite operators, analysts, app developers, educators, hobbyists | Launch calendars, embed widgets, mission dashboards, manifest analytics, provider scorecards, watch-party scheduling, weather-window monitoring |

---

### 📋 What the Launch Library 2 Scraper does

Six filtering workflows in a single run:

- 🔭 **Upcoming or historical mode.** Pull the forward manifest, or the past success/failure record.
- 🆔 **Single-launch lookup.** Fetch one launch by its UUID for deep-dive enrichment.
- 🏢 **Provider filter.** Restrict to one launch service provider (SpaceX, ULA, ISRO, ESA, etc.).
- 🌍 **Country filter.** Restrict to one launch site country (USA, RUS, CHN, IND, FRA, JPN, GBR, NZL, etc.).
- 🚦 **Status filter.** Go for Launch, TBD, TBC, Hold, In Flight, Success, Failure, or Partial Failure.
- 📅 **Window filter.** Bound the search to a custom NET window (start ≥ X, end ≤ Y) and sort by NET or last-updated.

Each launch carries the rocket name, family, full configuration, mission name and description, orbit and inclination class, pad coordinates and country, location timezone, launch attempt counts (all-time and current year, by provider, location, pad, and orbital), program memberships, hashtag, weather concerns, and live-webcast flag.

> 💡 **Why it matters:** the launch manifest moves daily as missions slip, scrub, or get added. Building your own pipeline means polling, deduping, and reconciling status changes. This Actor delivers a clean per-launch record on every run, ready for calendars, dashboards, or alerting.

---

### 🎬 Full Demo

_🚧 Coming soon: a 3-minute walkthrough showing how to go from sign-up to a downloaded launch manifest._

---

### ⚙️ Input

<table>
<thead>
<tr><th>Input</th><th>Type</th><th>Default</th><th>Behavior</th></tr>
</thead>
<tbody>
<tr><td><code>maxItems</code></td><td>integer</td><td><code>10</code></td><td>Records to return. Free plan caps at 10, paid plan at 1,000,000.</td></tr>
<tr><td><code>mode</code></td><td>enum</td><td><code>"upcoming"</code></td><td><code>upcoming</code> or <code>previous</code> (historical).</td></tr>
<tr><td><code>launchId</code></td><td>string (UUID)</td><td><code>""</code></td><td>Fetch one launch by ID; bypasses all other filters.</td></tr>
<tr><td><code>search</code></td><td>string</td><td><code>""</code></td><td>Free-text search over launch, mission, and rocket name.</td></tr>
<tr><td><code>launchServiceProvider</code></td><td>enum</td><td><code>""</code></td><td>One of 21 provider presets, plus an "Other" escape hatch.</td></tr>
<tr><td><code>customProvider</code></td><td>string</td><td><code>""</code></td><td>Free-text provider name; overrides the dropdown if set.</td></tr>
<tr><td><code>countryCode</code></td><td>enum</td><td><code>""</code></td><td>ISO 3-letter launch site country (USA, RUS, CHN, IND, FRA, JPN, GBR, NZL, KOR, IRN, ISR, PRK).</td></tr>
<tr><td><code>status</code></td><td>enum</td><td><code>""</code></td><td>Go, TBD, TBC, Hold, In Flight, Success, Failure, Partial Failure.</td></tr>
<tr><td><code>windowStartGte</code>, <code>windowEndLte</code></td><td>string (YYYY-MM-DD)</td><td><code>""</code></td><td>NET window bounds.</td></tr>
<tr><td><code>ordering</code></td><td>enum</td><td><code>"net"</code></td><td>Sort by launch time or last-updated, ascending or descending.</td></tr>
</tbody>
</table>

**Example: next 50 SpaceX launches.**

```json
{
    "maxItems": 50,
    "mode": "upcoming",
    "launchServiceProvider": "SpaceX",
    "ordering": "net"
}
````

**Example: every successful Indian launch since 2020.**

```json
{
    "maxItems": 200,
    "mode": "previous",
    "countryCode": "IND",
    "status": "Success",
    "windowStartGte": "2020-01-01",
    "ordering": "-net"
}
```

> ⚠️ **Good to Know:** upcoming launch dates carry a precision flag (`netPrecision`) ranging from "Day" or "Hour" for confirmed missions down to "Month" or "Quarter" for early manifest entries. Treat NET as a no-earlier-than estimate, not a guaranteed liftoff time.

***

### 📊 Output

Each launch record contains **70 fields**. Download the dataset as CSV, Excel, JSON, or XML.

#### 🧾 Schema

| Field | Type | Example |
|---|---|---|
| 🖼️ `imageUrl` | string | null | `"https://thespacedevs-prod.nyc3.digitaloceanspaces.com/media/images/falcon9.png"` |
| 📌 `name` | string | `"Falcon 9 Block 5 \| Starlink Group 12-1"` |
| 🏷️ `slug` | string | `"falcon-9-block-5-starlink-group-12-1"` |
| 🆔 `launchId` | string (UUID) | `"e60aa241-1f2c-4459-ba94-2f576c3e5632"` |
| 🔗 `detailUrl` | string | `"https://thespacedevs.com/launch/e60aa241..."` |
| 🚦 `status` / `statusAbbrev` / `statusDescription` | string | `"Go for Launch"` / `"Go"` / `"Vehicle is on track..."` |
| 📂 `mode` | string | `"upcoming"` |
| 🕒 `net` / `windowStart` / `windowEnd` | ISO 8601 | `"2026-05-16T03:21:00Z"` |
| 📏 `netPrecision` | string | null | `"Hour"` |
| 📊 `probability` | number | null | `80` |
| 🌦️ `weatherConcerns` | string | null | `"Cumulus Cloud Rule"` |
| 📝 `holdReason` / `failReason` | string | null | `null` |
| 🏷️ `hashtag` | string | null | `"#Starlink"` |
| 📺 `webcastLive` | boolean | null | `false` |
| 🏢 `launchServiceProvider*` (12 fields) | string / number / null | name, type, abbrev, country, totalLaunches, successful, failed, pending, foundingYear, infoUrl, wikiUrl, logoUrl |
| 🚀 `rocketName` / `rocketFamily` / `rocketFullName` / `rocketVariant` | string | null | `"Falcon 9"` / `"Falcon"` / `"Falcon 9 Block 5"` |
| 🎯 `missionName` / `missionDescription` / `missionType` | string | null | `"Starlink Group 12-1"` / `"..."` / `"Communications"` |
| 🛰️ `orbitName` / `orbitAbbrev` | string | null | `"Low Earth Orbit"` / `"LEO"` |
| 🏢 `missionAgencies` | array | `[{"name":"SpaceX","type":"Commercial","countryCode":"USA"}]` |
| 📍 `padName` / `padDescription` / `padWikiUrl` / `padMapUrl` / `padLatitude` / `padLongitude` / `padCountryCode` / `padTotalLaunchCount` | mixed | full pad profile |
| 📍 `locationName` / `locationCountryCode` / `locationTimezone` / `locationTotalLaunchCount` / `locationTotalLandingCount` | mixed | full location profile |
| 📦 `programs` | array | `[{"name":"Starlink","type":"Constellation"}]` |
| 🖼️ `infographicUrl` | string | null | (when published) |
| 🔢 `orbitalLaunchAttemptCount` / `locationLaunchAttemptCount` / `padLaunchAttemptCount` / `agencyLaunchAttemptCount` (all-time + year variants) | number | null | running counters |
| 🏷️ `launchType` | string | null | `"detailed"` |
| 🕒 `lastUpdated` / `scrapedAt` | ISO 8601 | `"2026-05-15T12:00:00Z"` |
| ❌ `error` | string | undefined | (only when a record fails) |

#### 📦 Sample records

<details>
<summary><strong>🚀 Upcoming SpaceX Falcon 9 Starlink mission</strong></summary>

```json
{
    "imageUrl": "https://thespacedevs-prod.nyc3.digitaloceanspaces.com/media/images/falcon9.png",
    "name": "Falcon 9 Block 5 | Starlink Group 12-1",
    "slug": "falcon-9-block-5-starlink-group-12-1",
    "launchId": "e60aa241-1f2c-4459-ba94-2f576c3e5632",
    "detailUrl": "https://thespacedevs.com/launch/e60aa241-1f2c-4459-ba94-2f576c3e5632",
    "status": "Go for Launch",
    "statusAbbrev": "Go",
    "statusDescription": "Vehicle is on track for launch and the vehicle is on the pad.",
    "mode": "upcoming",
    "net": "2026-05-16T03:21:00Z",
    "windowStart": "2026-05-16T03:21:00Z",
    "windowEnd": "2026-05-16T07:21:00Z",
    "netPrecision": "Hour",
    "probability": 80,
    "weatherConcerns": "Cumulus Cloud Rule",
    "holdReason": null,
    "failReason": null,
    "hashtag": "#Starlink",
    "webcastLive": false,
    "launchServiceProviderName": "SpaceX",
    "launchServiceProviderType": "Commercial",
    "launchServiceProviderAbbrev": "SpX",
    "launchServiceProviderCountry": "USA",
    "launchServiceProviderTotalLaunches": 412,
    "launchServiceProviderSuccessfulLaunches": 401,
    "launchServiceProviderFailedLaunches": 10,
    "launchServiceProviderPendingLaunches": 76,
    "launchServiceProviderFoundingYear": "2002",
    "launchServiceProviderInfoUrl": "https://www.spacex.com/",
    "launchServiceProviderWikiUrl": "https://en.wikipedia.org/wiki/SpaceX",
    "launchServiceProviderLogoUrl": "https://thespacedevs-prod.nyc3.digitaloceanspaces.com/media/images/spacex_logo.png",
    "rocketName": "Falcon 9",
    "rocketFamily": "Falcon",
    "rocketFullName": "Falcon 9 Block 5",
    "rocketVariant": "Block 5",
    "missionName": "Starlink Group 12-1",
    "missionDescription": "A batch of 23 satellites for the Starlink mega-constellation.",
    "missionType": "Communications",
    "orbitName": "Low Earth Orbit",
    "orbitAbbrev": "LEO",
    "missionAgencies": [{"name": "SpaceX", "type": "Commercial", "countryCode": "USA"}],
    "padName": "Space Launch Complex 40",
    "padDescription": "Used by SpaceX for Falcon 9 launches",
    "padWikiUrl": "https://en.wikipedia.org/wiki/Cape_Canaveral_Space_Launch_Complex_40",
    "padMapUrl": "https://www.google.com/maps?q=28.561857,-80.577366",
    "padLatitude": 28.561857,
    "padLongitude": -80.577366,
    "padCountryCode": "USA",
    "padTotalLaunchCount": 235,
    "locationName": "Cape Canaveral SFS, FL, USA",
    "locationCountryCode": "USA",
    "locationTimezone": "America/New_York",
    "locationTotalLaunchCount": 936,
    "locationTotalLandingCount": 49,
    "programs": [{"name": "Starlink", "type": "Constellation"}],
    "infographicUrl": null,
    "orbitalLaunchAttemptCount": 7126,
    "locationLaunchAttemptCount": 936,
    "padLaunchAttemptCount": 235,
    "agencyLaunchAttemptCount": 412,
    "orbitalLaunchAttemptCountYear": 91,
    "locationLaunchAttemptCountYear": 25,
    "padLaunchAttemptCountYear": 19,
    "agencyLaunchAttemptCountYear": 47,
    "launchType": "detailed",
    "lastUpdated": "2026-05-14T22:11:09Z",
    "scrapedAt": "2026-05-15T00:00:00Z"
}
```

</details>

<details>
<summary><strong>🛸 Historical ISRO PSLV launch (Success)</strong></summary>

```json
{
    "imageUrl": "https://thespacedevs-prod.nyc3.digitaloceanspaces.com/media/images/pslv.png",
    "name": "PSLV-C56 | DS-SAR & 6 rideshares",
    "slug": "pslv-c56-ds-sar",
    "launchId": "5f3e1a2b-9c4d-4a76-bc12-9e84720e3a11",
    "status": "Launch Successful",
    "statusAbbrev": "Success",
    "mode": "previous",
    "net": "2023-07-30T01:01:00Z",
    "launchServiceProviderName": "Indian Space Research Organization",
    "launchServiceProviderAbbrev": "ISRO",
    "launchServiceProviderCountry": "IND",
    "rocketName": "PSLV",
    "rocketFamily": "PSLV",
    "rocketFullName": "PSLV CA",
    "missionName": "DS-SAR",
    "orbitName": "Sun-Synchronous Orbit",
    "orbitAbbrev": "SSO",
    "padName": "First Launch Pad",
    "padCountryCode": "IND",
    "locationName": "Satish Dhawan Space Centre, India",
    "scrapedAt": "2026-05-15T00:00:00Z"
}
```

</details>

***

### ✨ Why choose this Actor

| | Capability |
|---|---|
| 🌍 | **Global coverage.** Every active orbital provider worldwide, both upcoming and historical. |
| 🏢 | **70 fields per launch.** Mission, rocket, pad, location, programs, agencies, plus full provider scorecards. |
| 📐 | **Server-side filters.** Provider, country, status, free-text search, and NET window all combine in one run. |
| 🎯 | **Pad coordinates.** Lat/lon for every launch site so you can plot a global map without geocoding. |
| 📊 | **Built-in analytics fields.** All-time and current-year launch counts at orbital, location, pad, and agency level. |
| 🔁 | **Always fresh.** Every run pulls the latest manifest, with status changes, slips, and additions reflected. |
| 🚫 | **No authentication.** Works on the public Launch Library 2 catalog. No login or token required. |

> 📊 The launch manifest is the operating calendar of the global spaceflight industry, and this Actor turns it into a structured dataset in seconds.

***

### 📈 How it compares to alternatives

| Approach | Cost | Coverage | Refresh | Filters | Setup |
|---|---|---|---|---|---|
| **⭐ Launch Library 2 Scraper** *(this Actor)* | $5 free credit, then pay-per-use | **All major providers worldwide** | **Live per run** | provider, country, status, window, search | ⚡ 2 min |
| Hand-curated launch calendars | Free | Subset, English-only | Manual updates | None | 🐢 Hours |
| Paid commercial space data | $$$$ | Global, deep telemetry | Streaming | Many | ⏳ Weeks |
| Provider-by-provider press releases | Free | Per-provider only | Per-PR | None | 🕒 Variable |

Pick this Actor when you want a clean, multi-provider launch manifest with rich pad and provider context, ready for a calendar, dashboard, or alert pipeline.

***

### 🚀 How to use

1. 📝 **Sign up.** [Create a free account with $5 credit](https://console.apify.com/sign-up?fpr=vmoqkp) (takes 2 minutes).
2. 🌐 **Open the Actor.** Go to the Launch Library 2 Rocket Launches Scraper page on the Apify Store.
3. 🎯 **Set input.** Pick a mode (upcoming or previous), filter by provider, country, status, or window, and set `maxItems`.
4. 🚀 **Run it.** Click **Start** and let the Actor collect your data.
5. 📥 **Download.** Grab your results in the **Dataset** tab as CSV, Excel, JSON, or XML.

> ⏱️ Total time from signup to downloaded dataset: **3-5 minutes.** No coding required.

***

### 💼 Business use cases

<table>
<tr>
<td width="50%" valign="top">

#### 📰 Space news and content

- Daily and weekly upcoming-launch round-ups
- Calendar widgets and embeds for news sites
- Watch-party scheduling for streamers
- Newsletter automation with hashtag tracking

</td>
<td width="50%" valign="top">

#### 🛰️ Mission planning and operators

- Pad utilization and conflict analysis
- Rideshare-payload manifest tracking
- Provider scorecards (success/failure rates)
- Window analytics for launch insurance

</td>
</tr>
<tr>
<td width="50%" valign="top">

#### 📊 Analyst and investor reporting

- Constellation deployment cadence
- National launch attempt counts by year
- Provider market-share dashboards
- Launch-cost benchmarking inputs

</td>
<td width="50%" valign="top">

#### 🎓 Education and outreach

- Classroom launch trackers
- Planetarium daily preview boards
- University spaceflight courseware
- Museum kiosks with live next-launch displays

</td>
</tr>
</table>

***

### 🔌 Automating Launch Library 2 Scraper

Control the scraper programmatically for scheduled runs and pipeline integrations:

- 🟢 **Node.js.** Install the `apify-client` NPM package.
- 🐍 **Python.** Use the `apify-client` PyPI package.
- 📚 See the [Apify API documentation](https://docs.apify.com/api/v2) for full details.

The [Apify Schedules feature](https://docs.apify.com/platform/schedules) lets you trigger this Actor on any cron interval. Hourly refreshes catch every status change; daily refreshes are enough for newsletters and editorial calendars.

***

### 🌟 Beyond business use cases

Launch data powers more than commercial workflows. The same structured records support research, education, civic projects, and personal initiatives.

<table>
<tr>
<td width="50%">

#### 🎓 Research and academia

- Reproducible launch-cadence analyses
- Coursework on orbital mechanics and mission design
- Long-term provider reliability studies
- Cross-national comparative spaceflight history

</td>
<td width="50%">

#### 🎨 Personal and creative

- Custom desktop next-launch widgets
- Smart-home displays counting down to liftoff
- Hobbyist launch databases and visualizations
- Watch-party invite generators

</td>
</tr>
<tr>
<td width="50%">

#### 🤝 Non-profit and civic

- Public-broadcast launch alerting
- Investigative journalism on debris and mishaps
- Open dashboards for spaceflight transparency
- Museum education programs

</td>
<td width="50%">

#### 🧪 Experimentation

- Train ML models on historical launch outcomes
- Prototype launch-window optimizers
- Build agent pipelines that summarize the next launch
- Validate dashboard concepts with real manifest data

</td>
</tr>
</table>

***

### 🤖 Ask an AI assistant about this scraper

Open a ready-to-send prompt about this ParseForge actor in the AI of your choice:

- 💬 [**ChatGPT**](https://chat.openai.com/?q=How%20do%20I%20use%20the%20Launch%20Library%202%20Rocket%20Launches%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🧠 [**Claude**](https://claude.ai/new?q=How%20do%20I%20use%20the%20Launch%20Library%202%20Rocket%20Launches%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🔍 [**Perplexity**](https://perplexity.ai/search?q=How%20do%20I%20use%20the%20Launch%20Library%202%20Rocket%20Launches%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🅒 [**Copilot**](https://copilot.microsoft.com/?q=How%20do%20I%20use%20the%20Launch%20Library%202%20Rocket%20Launches%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)

***

### ❓ Frequently Asked Questions

#### 🧩 How does it work?

Pick a mode (upcoming or previous), narrow with provider, country, status, or window filters, and the Actor pulls the matching launches and emits one clean structured record per launch. Server-side filtering keeps your dataset focused.

#### 🏢 Which launch providers are covered?

All major active orbital providers worldwide, including SpaceX, ULA, Rocket Lab, Blue Origin, Arianespace, Northrop Grumman, Roscosmos, CASC, ISRO, JAXA, MHI, Galactic Energy, CAS Space, LandSpace, Firefly Aerospace, Relativity Space, Astra Space, Virgin Orbit, Iran Space Agency, ABL Space Systems, plus a free-text "customProvider" field for anything else.

#### 📅 How accurate are the upcoming launch dates?

Each upcoming entry includes a `netPrecision` flag ranging from "Day" or "Hour" for confirmed missions down to "Month" or "Quarter" for early manifest entries. Treat NET as a no-earlier-than estimate, not a guaranteed liftoff time.

#### 🔁 How often is the manifest refreshed?

The community catalog is updated continuously as missions slip, scrub, or get added. Every Actor run pulls the latest state.

#### 🆔 Can I pull just one launch?

Yes. Set `launchId` to a Launch Library 2 UUID. All other filters are ignored.

#### 📊 What analytics fields are included?

All-time and current-year launch counts at four levels (orbital, location, pad, agency), provider success/failure tallies, and a launch probability percentage when published.

#### ⏰ Can I schedule regular runs?

Yes. Use Apify Schedules to refresh the manifest on any cron interval (hourly, every 4 hours, daily) and keep your downstream calendar or dashboard in sync.

#### ⚖️ Is this data legal to use?

Launch Library 2 is published as an open community catalog under permissive terms. Always credit The Space Devs when you redistribute the data verbatim. Review the downstream terms of your specific use case.

#### 💼 Can I use this data commercially?

Yes. The underlying launch metadata is open. You are responsible for crediting the source on redistribution and complying with any downstream regulatory requirements.

#### 💳 Do I need a paid Apify plan to use this Actor?

No. The free Apify plan is enough for testing and small runs (10 records per run). A paid plan lifts the limit and gives you access to scheduling, higher concurrency, and larger datasets.

#### 🔁 What happens if a run fails or gets interrupted?

Apify automatically retries transient errors. If a run still fails, you can inspect the log in the Runs tab, fix the input, and re-run. Partial datasets from failed runs are preserved so you never lose progress.

#### 🆘 What if I need help?

Our support team is here to help. Contact us through the Apify platform or use the Tally form linked below.

***

### 🔌 Integrate with any app

Launch Library 2 Rocket Launches Scraper connects to any cloud service via [Apify integrations](https://apify.com/integrations):

- [**Make**](https://docs.apify.com/platform/integrations/make) - Automate multi-step workflows
- [**Zapier**](https://docs.apify.com/platform/integrations/zapier) - Connect with 5,000+ apps
- [**Slack**](https://docs.apify.com/platform/integrations/slack) - Get next-launch alerts in your channels
- [**n8n**](https://docs.apify.com/platform/integrations/n8n) - Drop runs into self-hosted workflows
- [**Pipedream**](https://docs.apify.com/platform/integrations/pipedream) - Trigger event-driven pipelines
- [**Airbyte**](https://docs.apify.com/platform/integrations/airbyte) - Pipe launch data into your warehouse
- [**GitHub**](https://docs.apify.com/platform/integrations/github) - Trigger runs from commits and releases
- [**Google Drive**](https://docs.apify.com/platform/integrations/drive) - Export datasets straight to Sheets

You can also use webhooks to trigger downstream actions when a run finishes. Push the next launch into your CMS, alert Slack the moment status flips to Go, or refresh the calendar widget on your news site.

***

### 🔗 Recommended Actors

- [**🛰️ CelesTrak Satellites Orbital Catalog Scraper**](https://apify.com/parseforge/celestrak-tle-satellites-scraper) - 47 satellite groups with full orbital elements
- [**🌌 NASA Astronomy Picture of the Day Scraper**](https://apify.com/parseforge/apod-nasa-images-scraper) - Daily astronomy archive back to 1995
- [**🌍 EONET Natural Events Scraper**](https://apify.com/parseforge/eonet-natural-events-scraper) - NASA's open natural-event tracker
- [**✈️ OpenSky Flights Scraper**](https://apify.com/parseforge/opensky-flights-scraper) - Live aircraft state vectors worldwide
- [**🛬 OurAirports Scraper**](https://apify.com/parseforge/ourairports-scraper) - 85,000+ airports, heliports, and airfields

> 💡 **Pro Tip:** browse the complete [ParseForge collection](https://apify.com/parseforge) for more reference-data scrapers.

***

**🆘 Need Help?** [**Open our contact form**](https://tally.so/r/BzdKgA) to request a new scraper, propose a custom data project, or report an issue.

***

> **⚠️ Disclaimer:** this Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by The Space Devs, Launch Library 2, or any of the launch providers mentioned. All trademarks mentioned are the property of their respective owners. Only publicly available open spaceflight data is collected.

# Actor input Schema

## `mode` (type: `string`):

Which launch catalog to query. 'Upcoming' returns scheduled and to-be-determined launches, 'Previous' returns historical launches (success, failure, partial failure).

## `launchId` (type: `string`):

Optional. Fetch a single launch by its UUID (e.g. e60aa241-1f2c-4459-ba94-2f576c3e5632). When set, all other filters are ignored.

## `search` (type: `string`):

Free-text search over launch name, mission name, rocket name. Example: 'Starlink', 'Crew Dragon', 'Soyuz'.

## `launchServiceProvider` (type: `string`):

Filter by launch service provider name. Free-text match against provider name (e.g. 'SpaceX', 'United Launch Alliance', 'Arianespace').

## `customProvider` (type: `string`):

If your provider isn't in the list above, type the exact name here. Overrides the dropdown.

## `countryCode` (type: `string`):

Filter by launch site country (ISO 3-letter code). Example: USA, RUS, CHN, IND, FRA, JPN.

## `status` (type: `string`):

Filter by launch status. Upcoming-mode statuses: Go, TBD, TBC, Hold, In Flight. Previous-mode statuses: Success, Failure, Partial Failure.

## `windowStartGte` (type: `string`):

Only include launches with window\_start on or after this date.

## `windowEndLte` (type: `string`):

Only include launches with window\_end on or before this date.

## `rocketConfigId` (type: `integer`):

Numeric rocket configuration ID for exact-match filtering (e.g. Falcon 9 = 164). Useful for tracking a specific vehicle.

## `missionId` (type: `integer`):

Numeric mission ID for exact-match filtering. Useful when monitoring a known mission.

## `agencyId` (type: `integer`):

Numeric launch service provider (agency) ID, takes precedence over the Provider name dropdown when set.

## `hideRecentPrevious` (type: `boolean`):

When true (and Mode = Upcoming), hide launches whose window already closed in the recent past.

## `ordering` (type: `string`):

Sort order. 'net' = ascending by launch time, '-net' = newest first.

## `maxItems` (type: `integer`):

Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000

## Actor input object example

```json
{
  "mode": "upcoming",
  "launchId": "",
  "search": "",
  "launchServiceProvider": "",
  "customProvider": "",
  "countryCode": "",
  "status": "",
  "hideRecentPrevious": false,
  "ordering": "net",
  "maxItems": 10
}
```

# Actor output Schema

## `overview` (type: `string`):

Overview of scraped data

## `fullData` (type: `string`):

Complete dataset

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "mode": "upcoming",
    "launchId": "",
    "search": "",
    "launchServiceProvider": "",
    "customProvider": "",
    "countryCode": "",
    "status": "",
    "ordering": "net",
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/ll-spacedevs-launch-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "mode": "upcoming",
    "launchId": "",
    "search": "",
    "launchServiceProvider": "",
    "customProvider": "",
    "countryCode": "",
    "status": "",
    "ordering": "net",
    "maxItems": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/ll-spacedevs-launch-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "mode": "upcoming",
  "launchId": "",
  "search": "",
  "launchServiceProvider": "",
  "customProvider": "",
  "countryCode": "",
  "status": "",
  "ordering": "net",
  "maxItems": 10
}' |
apify call parseforge/ll-spacedevs-launch-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=parseforge/ll-spacedevs-launch-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Launch Library 2 (The Space Devs) Rocket Launches Scraper",
        "description": "Track upcoming and historical orbital rocket launches across every active provider (SpaceX, ULA, Roscosmos, ISRO, ESA, CNSA, Rocket Lab, Blue Origin and more). Returns mission, rocket, pad coordinates, status, weather, programs and agency profiles.",
        "version": "0.0",
        "x-build-id": "CJU098ncn0wDcCzSj"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/parseforge~ll-spacedevs-launch-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-parseforge-ll-spacedevs-launch-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/parseforge~ll-spacedevs-launch-scraper/runs": {
            "post": {
                "operationId": "runs-sync-parseforge-ll-spacedevs-launch-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/parseforge~ll-spacedevs-launch-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-parseforge-ll-spacedevs-launch-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "upcoming",
                            "previous"
                        ],
                        "type": "string",
                        "description": "Which launch catalog to query. 'Upcoming' returns scheduled and to-be-determined launches, 'Previous' returns historical launches (success, failure, partial failure).",
                        "default": "upcoming"
                    },
                    "launchId": {
                        "title": "Launch ID",
                        "type": "string",
                        "description": "Optional. Fetch a single launch by its UUID (e.g. e60aa241-1f2c-4459-ba94-2f576c3e5632). When set, all other filters are ignored.",
                        "default": ""
                    },
                    "search": {
                        "title": "Search Query",
                        "type": "string",
                        "description": "Free-text search over launch name, mission name, rocket name. Example: 'Starlink', 'Crew Dragon', 'Soyuz'.",
                        "default": ""
                    },
                    "launchServiceProvider": {
                        "title": "Launch Service Provider",
                        "enum": [
                            "",
                            "SpaceX",
                            "United Launch Alliance",
                            "Rocket Lab",
                            "Blue Origin",
                            "Arianespace",
                            "Northrop Grumman Innovation Systems",
                            "Roscosmos",
                            "China Aerospace Science and Technology Corporation",
                            "Indian Space Research Organization",
                            "Japan Aerospace Exploration Agency",
                            "Mitsubishi Heavy Industries",
                            "Galactic Energy",
                            "CAS Space",
                            "LandSpace",
                            "Firefly Aerospace",
                            "Relativity Space",
                            "Astra Space",
                            "Virgin Orbit",
                            "Iran Space Agency",
                            "ABL Space Systems",
                            "Other"
                        ],
                        "type": "string",
                        "description": "Filter by launch service provider name. Free-text match against provider name (e.g. 'SpaceX', 'United Launch Alliance', 'Arianespace').",
                        "default": ""
                    },
                    "customProvider": {
                        "title": "Custom Provider Name",
                        "type": "string",
                        "description": "If your provider isn't in the list above, type the exact name here. Overrides the dropdown.",
                        "default": ""
                    },
                    "countryCode": {
                        "title": "Country Code",
                        "enum": [
                            "",
                            "USA",
                            "RUS",
                            "CHN",
                            "IND",
                            "FRA",
                            "JPN",
                            "GBR",
                            "NZL",
                            "KOR",
                            "IRN",
                            "ISR",
                            "PRK"
                        ],
                        "type": "string",
                        "description": "Filter by launch site country (ISO 3-letter code). Example: USA, RUS, CHN, IND, FRA, JPN.",
                        "default": ""
                    },
                    "status": {
                        "title": "Launch Status",
                        "enum": [
                            "",
                            "Go",
                            "TBD",
                            "TBC",
                            "Hold",
                            "In Flight",
                            "Success",
                            "Failure",
                            "Partial Failure"
                        ],
                        "type": "string",
                        "description": "Filter by launch status. Upcoming-mode statuses: Go, TBD, TBC, Hold, In Flight. Previous-mode statuses: Success, Failure, Partial Failure.",
                        "default": ""
                    },
                    "windowStartGte": {
                        "title": "Window Start After (YYYY-MM-DD)",
                        "type": "string",
                        "description": "Only include launches with window_start on or after this date."
                    },
                    "windowEndLte": {
                        "title": "Window End Before (YYYY-MM-DD)",
                        "type": "string",
                        "description": "Only include launches with window_end on or before this date."
                    },
                    "rocketConfigId": {
                        "title": "Rocket Configuration ID",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Numeric rocket configuration ID for exact-match filtering (e.g. Falcon 9 = 164). Useful for tracking a specific vehicle."
                    },
                    "missionId": {
                        "title": "Mission ID",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Numeric mission ID for exact-match filtering. Useful when monitoring a known mission."
                    },
                    "agencyId": {
                        "title": "Agency ID",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Numeric launch service provider (agency) ID, takes precedence over the Provider name dropdown when set."
                    },
                    "hideRecentPrevious": {
                        "title": "Hide Recent Previous",
                        "type": "boolean",
                        "description": "When true (and Mode = Upcoming), hide launches whose window already closed in the recent past.",
                        "default": false
                    },
                    "ordering": {
                        "title": "Ordering",
                        "enum": [
                            "net",
                            "-net",
                            "last_updated",
                            "-last_updated"
                        ],
                        "type": "string",
                        "description": "Sort order. 'net' = ascending by launch time, '-net' = newest first.",
                        "default": "net"
                    },
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 1,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000"
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
