openapi: 3.0.3
info:
title: TheSpaceDevs LL2 Previous API
version: v2.3.0
description: Rocket launches, space events and crewed spaceflight. The Launch Library 2 API is the official successor of the popular Launch Library API. It keeps its core features whilst also including everything the broader Space Launch Now API had to offer. The result is a large database delivering a more complete experience for each rocket launch and ...
license:
name: Apache License 2.0
servers:
- url: https://ll.thespacedevs.com/
description: Production API (� rate-limited)
- url: https://lldev.thespacedevs.com/
description: Development API (stale and limited data, for development testing only)
tags:
- name: Previous
paths:
/2.3.0/events/previous/:
get:
operationId: events_previous_list
summary: List Previous Events
description: '#### Modes
Levels of detail in the response - `list`, `normal`, `detailed`
Example - [/events/previous/?mode=list](./?mode=list)
#### Filters
Parameters - `agency__ids`, `date__gt`, `date__gt__lt`, `date__gte`, `date__lte`, `day`, `id`, `last_updated__gte`, `last_updated__lte`, `month`, `program`, `slug`, `type`, `type__ids`, `video_url`, `year`
Example - [/events/previous/?type__ids=2,8](./?type__ids=2,8)
#### Search
Fields searched - `name`
Example - [/events/previous/?search=Flyby](./?search=Flyby)
#### Ordering
Fields - `date`, `last_updated`
Example - [/events/previous/?ordering=-last_updated](./?ordering=-last_updated)
#### Number of results
Use `limit` to control the number of objects in the response (max 100)
Example - [/events/previous/?limit=2](./?limit=2)
#### Format
Switch to JSON output - [/events/previous/?format=json](./?format=json)
#### Help
Find all the FAQs and support links on the documentation homepage - [ll.thespacedevs.com/docs](https://ll.thespacedevs.com/docs/)'
parameters:
- in: query
name: agency__ids
schema:
type: array
items:
type: integer
description: Comma-separated agency IDs.
explode: false
style: form
- in: query
name: date__gt
schema:
type: string
format: date-time
description: Date is greater than
- in: query
name: date__gt__lt
schema:
type: string
format: date-time
description: Date is less than
- in: query
name: date__gte
schema:
type: string
format: date-time
description: Date is greater than or equal to
- in: query
name: date__lte
schema:
type: string
format: date-time
description: Date is less than or equal to
- in: query
name: day
schema:
type: array
items:
type: number
description: Multiple values may be separated by commas.
explode: false
style: form
- in: query
name: id
schema:
type: array
items:
type: integer
description: Multiple values may be separated by commas.
explode: false
style: form
- in: query
name: last_updated__gte
schema:
type: string
format: date-time
description: Last Update is greater than or equal to
- in: query
name: last_updated__lte
schema:
type: string
format: date-time
description: Last Update is less than or equal to
- name: limit
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: mode
schema:
type: string
enum:
- detailed
- list
- normal
description: Level of detail in the response.
- in: query
name: month
schema:
type: array
items:
type: number
description: Multiple values may be separated by commas.
explode: false
style: form
- name: offset
required: false
in: query
description: The initial index from which to return the results.
schema:
type: integer
- name: ordering
required: false
in: query
description: Which field to use when ordering the results.
schema:
type: string
- in: query
name: program
schema:
type: array
items:
type: integer
explode: true
style: form
- name: search
required: false
in: query
description: A search term.
schema:
type: string
- in: query
name: slug
schema:
type: string
- in: query
name: type
schema:
type: integer
maximum: 2147483647
minimum: -2147483648
- in: query
name: type__ids
schema:
type: array
items:
type: integer
description: Comma-separated event type IDs.
explode: false
style: form
- in: query
name: video_url
schema:
type: array
items:
type: string
description: Comma-separated video URLs.
explode: false
style: form
- in: query
name: year
schema:
type: array
items:
type: number
description: Multiple values may be separated by commas.
explode: false
style: form
tags:
- Previous
security:
- cookieAuth: []
- Token_Authentication: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedPolymorphicEventsEndpointList'
description: ''
/2.3.0/events/previous/{id}/:
get:
operationId: events_previous_retrieve
summary: Get Previous Event
description: '#### Modes
Levels of detail in the response - `list`, `normal`, `detailed`
Example - [/events/previous/?mode=list](./?mode=list)
#### Filters
Parameters - `agency__ids`, `date__gt`, `date__gt__lt`, `date__gte`, `date__lte`, `day`, `id`, `last_updated__gte`, `last_updated__lte`, `month`, `program`, `slug`, `type`, `type__ids`, `video_url`, `year`
Example - [/events/previous/?type__ids=2,8](./?type__ids=2,8)
#### Search
Fields searched - `name`
Example - [/events/previous/?search=Flyby](./?search=Flyby)
#### Ordering
Fields - `date`, `last_updated`
Example - [/events/previous/?ordering=-last_updated](./?ordering=-last_updated)
#### Number of results
Use `limit` to control the number of objects in the response (max 100)
Example - [/events/previous/?limit=2](./?limit=2)
#### Format
Switch to JSON output - [/events/previous/?format=json](./?format=json)
#### Help
Find all the FAQs and support links on the documentation homepage - [ll.thespacedevs.com/docs](https://ll.thespacedevs.com/docs/)'
parameters:
- in: path
name: id
schema:
type: integer
description: A unique integer value identifying this Event.
required: true
tags:
- Previous
security:
- cookieAuth: []
- Token_Authentication: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/EventEndpointDetailed'
description: ''
/2.3.0/launches/previous/:
get:
operationId: launches_previous_list
summary: List Previous Launches
description: '#### Modes
Levels of detail in the response - `list`, `normal`, `detailed`
Example - [/launches/previous/?mode=list](./?mode=list)
#### Filters
Parameters - `agency_launch_attempt_count`, `agency_launch_attempt_count__gt`, `agency_launch_attempt_count__gte`, `agency_launch_attempt_count__lt`, `agency_launch_attempt_count__lte`, `agency_launch_attempt_count_year`, `agency_launch_attempt_count_year__gt`, `agency_launch_attempt_count_year__gte`, `agency_launch_attempt_count_year__lt`, `agency_launch_attempt_count_year__lte`, `day`, `id`, `include_suborbital`, `is_crewed`, `last_updated__gte`, `last_updated__lte`, `launch_designator`, `launcher_config__id`, `location__ids`, `location_launch_attempt_count`, `location_launch_attempt_count__gt`, `location_launch_attempt_count__gte`, `location_launch_attempt_count__lt`, `location_launch_attempt_count__lte`, `location_launch_attempt_count_year`, `location_launch_attempt_count_year__gt`, `location_launch_attempt_count_year__gte`, `location_launch_attempt_count_year__lt`, `location_launch_attempt_count_year__lte`, `lsp__id`, `lsp__name`, `mission__orbit__celestial_body__id`, `mission__orbit__name`, `mission__orbit__name__icontains`, `month`, `name`, `net__gt`, `net__gte`, `net__lt`, `net__lte`, `orbital_launch_attempt_count`, `orbital_launch_attempt_count__gt`, `orbital_launch_attempt_count__gte`, `orbital_launch_attempt_count__lt`, `orbital_launch_attempt_count__lte`, `orbital_launch_attempt_count_year`, `orbital_launch_attempt_count_year__gt`, `orbital_launch_attempt_count_year__gte`, `orbital_launch_attempt_count_year__lt`, `orbital_launch_attempt_count_year__lte`, `pad`, `pad__location`, `pad__location__celestial_body__id`, `pad_launch_attempt_count`, `pad_launch_attempt_count__gt`, `pad_launch_attempt_count__gte`, `pad_launch_attempt_count__lt`, `pad_launch_attempt_count__lte`, `pad_launch_attempt_count_year`, `pad_launch_attempt_count_year__gt`, `pad_launch_attempt_count_year__gte`, `pad_launch_attempt_count_year__lt`, `pad_launch_attempt_count_year__lte`, `program`, `related_lsp__id`, `related_lsp__name`, `rocket__configuration__full_name`, `rocket__configuration__full_name__icontains`, `rocket__configuration__id`, `rocket__configuration__manufacturer__name`, `rocket__configuration__manufacturer__name__icontains`, `rocket__configuration__name`, `rocket__spacecraftflight__spacecraft__id`, `rocket__spacecraftflight__spacecraft__name`, `rocket__spacecraftflight__spacecraft__name__icontains`, `serial_number`, `slug`, `spacecraft_config__ids`, `status`, `status__ids`, `video_url`, `window_end__gt`, `window_end__gte`, `window_end__lt`, `window_end__lte`, `window_start__gt`, `window_start__gte`, `window_start__lt`, `window_start__lte`, `year`
Example - [/launches/previous/?pad__location=13](./?pad__location=13)
#### Search
Fields searched - `launch_designator`, `launch_service_provider__name`, `mission__name`, `name`, `pad__location__name`, `pad__name`, `rocket__configuration__manufacturer__abbrev`, `rocket__configuration__manufacturer__name`, `rocket__configuration__name`, `rocket__spacecraftflight__spacecraft__name`
Example - [/launches/previous/?search=Starlink](./?search=Starlink)
#### Ordering
Fields - `id`, `last_updated`, `name`, `net`
Example - [/launches/previous/?ordering=-last_updated](./?ordering=-last_updated)
#### Number of results
Use `limit` to control the number of objects in the response (max 100)
Example - [/launches/previous/?limit=2](./?limit=2)
#### Format
Switch to JSON output - [/launches/previous/?format=json](./?format=json)
#### Help
Find all the FAQs and support links on the documentation homepage - [ll.thespacedevs.com/docs](https://ll.thespacedevs.com/docs/)'
parameters:
- in: query
name: agency_launch_attempt_count
schema:
type: integer
- in: query
name: agency_launch_attempt_count__gt
schema:
type: integer
- in: query
name: agency_launch_attempt_count__gte
schema:
type: integer
- in: query
name: agency_launch_attempt_count__lt
schema:
type: integer
- in: query
name: agency_launch_attempt_count__lte
schema:
type: integer
- in: query
name: agency_launch_attempt_count_year
schema:
type: integer
- in: query
name: agency_launch_attempt_count_year__gt
schema:
type: integer
- in: query
name: agency_launch_attempt_count_year__gte
schema:
type: integer
- in: query
name: agency_launch_attempt_count_year__lt
schema:
type: integer
- in: query
name: agency_launch_attempt_count_year__lte
schema:
type: integer
- in: query
name: day
schema:
type: array
items:
type: number
description: Multiple values may be separated by commas.
explode: false
style: form
- in: query
name: id
schema:
type: array
items:
type: string
format: uuid
description: Multiple values may be separated by commas.
explode: false
style: form
- in: query
name: include_suborbital
schema:
type: boolean
- in: query
name: is_crewed
schema:
type: boolean
- in: query
name: last_updated__gte
schema:
type: string
format: date-time
description: Last Update is greater than or equal to
- in: query
name: last_updated__lte
schema:
type: string
format: date-time
description: Last Update is less than or equal to
- in: query
name: launch_designator
schema:
type: array
items:
type: string
description: Comma-separated (COSPAR) international launch designators.
explode: false
style: form
- in: query
name: launcher_config__id
schema:
type: array
items:
type: integer
description: Multiple values may be separated by commas.
explode: false
style: form
- name: limit
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: location__ids
schema:
type: array
items:
type: integer
description: Comma-separated location IDs.
explode: false
style: form
- in: query
name: location_launch_attempt_count
schema:
type: integer
- in: query
name: location_launch_attempt_count__gt
schema:
type: integer
- in: query
name: location_launch_attempt_count__gte
schema:
type: integer
- in: query
name: location_launch_attempt_count__lt
schema:
type: integer
- in: query
name: location_launch_attempt_count__lte
schema:
type: integer
- in: query
name: location_launch_attempt_count_year
schema:
type: integer
- in: query
name: location_launch_attempt_count_year__gt
schema:
type: integer
- in: query
name: location_launch_attempt_count_year__gte
schema:
type: integer
- in: query
name: location_launch_attempt_count_year__lt
schema:
type: integer
- in: query
name: location_launch_attempt_count_year__lte
schema:
type: integer
- in: query
name: lsp__id
schema:
type: array
items:
type: integer
description: Comma-separated launch service provider (agency) IDs.
explode: false
style: form
- in: query
name: lsp__name
schema:
type: array
items:
type: string
description: Comma-separated launch service provider names.
explode: false
style: form
- in: query
name: mission__orbit__celestial_body__id
schema:
type: integer
- in: query
name: mission__orbit__name
schema:
type: string
- in: query
name: mission__orbit__name__icontains
schema:
type: string
- in: query
name: mode
schema:
type: string
enum:
- detailed
- list
- normal
description: Level of detail in the response.
- in: query
name: month
schema:
type: array
items:
type: number
description: Multiple values may be separated by commas.
explode: false
style: form
- in: query
name: name
schema:
type: string
- in: query
name: net__gt
schema:
type: string
format: date-time
description: NET is greater than
- in: query
name: net__gte
schema:
type: string
format: date-time
description: NET is greater than or equal to
- in: query
name: net__lt
schema:
type: string
format: date-time
description: NET is less than
- in: query
name: net__lte
schema:
type: string
format: date-time
description: NET is less than or equal to
- name: offset
required: false
in: query
description: The initial index from which to return the results.
schema:
type: integer
- in: query
name: orbital_launch_attempt_count
schema:
type: integer
- in: query
name: orbital_launch_attempt_count__gt
schema:
type: integer
- in: query
name: orbital_launch_attempt_count__gte
schema:
type: integer
- in: query
name: orbital_launch_attempt_count__lt
schema:
type: integer
- in: query
name: orbital_launch_attempt_count__lte
schema:
type: integer
- in: query
name: orbital_launch_attempt_count_year
schema:
type: integer
- in: query
name: orbital_launch_attempt_count_year__gt
schema:
type: integer
- in: query
name: orbital_launch_attempt_count_year__gte
schema:
type: integer
- in: query
name: orbital_launch_attempt_count_year__lt
schema:
type: integer
- in: query
name: orbital_launch_attempt_count_year__lte
schema:
type: integer
- name: ordering
required: false
in: query
description: Which field to use when ordering the results.
schema:
type: string
- in: query
name: pad
schema:
type: integer
- in: query
name: pad__location
schema:
type: integer
- in: query
name: pad__location__celestial_body__id
schema:
type: integer
- in: query
name: pad_launch_attempt_count
schema:
type: integer
- in: query
name: pad_launch_attempt_count__gt
schema:
type: integer
- in: query
name: pad_launch_attempt_count__gte
schema:
type: integer
- in: query
name: pad_launch_attempt_count__lt
schema:
type: integer
- in: query
name: pad_launch_attempt_count__lte
schema:
type: integer
- in: query
name: pad_launch_attempt_count_year
schema:
type: integer
- in: query
name: pad_launch_attempt_count_year__gt
schema:
type: integer
- in: query
name: pad_launch_attempt_count_year__gte
schema:
type: integer
- in: query
name: pad_launch_attempt_count_year__lt
schema:
type: integer
- in: query
name: pad_launch_attempt_count_year__lte
schema:
type: integer
- in: query
name: program
schema:
type: array
items:
type: integer
explode: true
style: form
- in: query
name: related_lsp__id
schema:
type: array
items:
type: integer
description: Comma-separated agency IDs related to the launch service provider.
explode: false
style: form
- in: query
name: related_lsp__name
schema:
type: array
items:
type: string
description: Comma-separated agency names related to the launch service provider.
explode: false
style: form
- in: query
name: rocket__configuration__full_name
schema:
type: string
- in: query
name: rocket__configuration__full_name__icontains
schema:
type: string
- in: query
name: rocket__configuration__id
schema:
type: integer
- in: query
name: rocket__configuration__manufacturer__name
schema:
type: string
- in: query
name: rocket__configuration__manufacturer__name__icontains
schema:
type: string
- in: query
name: rocket__configuration__name
schema:
type: string
- in: query
name: rocket__spacecraftflight__spacecraft__id
schema:
type: integer
- in: query
name: rocket__spacecraftflight__spacecraft__name
schema:
type: string
- in: query
name: rocket__spacecraftflight__spacecraft__name__icontains
schema:
type: string
- name: search
required: false
in: query
description: A search term.
schema:
type: string
- in: query
name: serial_number
schema:
type: array
items:
type: string
description: Comma-separated first stage booster serial numbers.
explode: false
style: form
- in: query
name: slug
schema:
type: string
- in: query
name: spacecraft_config__ids
schema:
type: array
items:
type: integer
description: Multiple values may be separated by commas.
explode: false
style: form
- in: query
name: status
schema:
type: integer
maximum: 2147483647
minimum: -2147483648
- in: query
name: status__ids
schema:
type: array
items:
type: integer
description: Multiple values may be separated by commas.
explode: false
style: form
- in: query
name: video_url
schema:
type: array
items:
type: string
description: Comma-separated video URLs.
explode: false
style: form
- in: query
name: window_end__gt
schema:
type: string
format: date-time
description: Window End is greater than
- in: query
name: window_end__gte
schema:
type: string
format: date-time
description: Window End is greater than or equal to
- in: query
name: window_end__lt
schema:
type: string
format: date-time
description: Window End is less than
- in: query
name: window_end__lte
schema:
type: string
format: date-time
description: Window End is less than or equal to
- in: query
name: window_start__gt
schema:
type: string
format: date-time
description: Window Start is greater than
- in: query
name: window_start__gte
schema:
type: string
format: date-time
description: Window Start is greater than or equal to
- in: query
name: window_start__lt
schema:
type: string
format: date-time
description: Window Start is less than
- in: query
name: window_start__lte
schema:
type: string
format: date-time
description: Window Start is less than or equal to
- in: query
name: year
schema:
type: array
items:
type: number
description: Multiple values may be separated by commas.
explode: false
style: form
tags:
- Previous
security:
- cookieAuth: []
- Token_Authentication: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedPolymorphicLaunchEndpointList'
description: ''
/2.3.0/launches/previous/{id}/:
get:
operationId: launches_previous_retrieve
summary: Get Previous Launch
description: '#### Modes
Levels of detail in the response - `list`, `normal`, `detailed`
Example - [/launches/previous/?mode=list](./?mode=list)
#### Filters
Parameters - `agency_launch_attempt_count`, `agency_launch_attempt_count__gt`, `agency_launch_attempt_count__gte`, `agency_launch_attempt_count__lt`, `agency_launch_attempt_count__lte`, `agency_launch_attempt_count_year`, `agency_launch_attempt_count_year__gt`, `agency_launch_attempt_count_year__gte`, `agency_launch_attempt_count_year__lt`, `agency_launch_attempt_count_year__lte`, `day`, `id`, `include_suborbital`, `is_crewed`, `last_updated__gte`, `last_updated__lte`, `launch_designator`, `launcher_config__id`, `location__ids`, `location_launch_attempt_count`, `location_launch_attempt_count__gt`, `location_launch_attempt_count__gte`, `location_launch_attempt_count__lt`, `location_launch_attempt_count__lte`, `location_launch_attempt_count_year`, `location_launch_attempt_count_year__gt`, `location_launch_attempt_count_year__gte`, `location_launch_attempt_count_year__lt`, `location_launch_attempt_count_year__lte`, `lsp__id`, `lsp__name`, `mission__orbit__celestial_body__id`, `mission__orbit__name`, `mission__orbit__name__icontains`, `month`, `name`, `net__gt`, `net__gte`, `net__lt`, `net__lte`, `orbital_launch_attempt_count`, `orbital_launch_attempt_count__gt`, `orbital_launch_attempt_count__gte`, `orbital_launch_attempt_count__lt`, `orbital_launch_attempt_count__lte`, `orbital_launch_attempt_count_year`, `orbital_launch_attempt_count_year__gt`, `orbital_launch_attempt_count_year__gte`, `orbital_launch_attempt_count_year__lt`, `orbital_launch_attempt_count_year__lte`, `pad`, `pad__location`, `pad__location__celestial_body__id`, `pad_launch_attempt_count`, `pad_launch_attempt_count__gt`, `pad_launch_attempt_count__gte`, `pad_launch_attempt_count__lt`, `pad_launch_attempt_count__lte`, `pad_launch_attempt_count_year`, `pad_launch_attempt_count_year__gt`, `pad_launch_attempt_count_year__gte`, `pad_launch_attempt_count_year__lt`, `pad_launch_attempt_count_year__lte`, `program`, `related_lsp__id`, `related_lsp__name`, `rocket__configuration__full_name`, `rocket__configuration__full_name__icontains`, `rocket__configuration__id`, `rocket__configuration__manufacturer__name`, `rocket__configuration__manufacturer__name__icontains`, `rocket__configuration__name`, `rocket__spacecraftflight__spacecraft__id`, `rocket__spacecraftflight__spacecraft__name`, `rocket__spacecraftflight__spacecraft__name__icontains`, `serial_number`, `slug`, `spacecraft_config__ids`, `status`, `status__ids`, `video_url`, `window_end__gt`, `window_end__gte`, `window_end__lt`, `window_end__lte`, `window_start__gt`, `window_start__gte`, `window_start__lt`, `window_start__lte`, `year`
Example - [/launches/previous/?pad__location=13](./?pad__location=13)
#### Search
Fields searched - `launch_designator`, `launch_service_provider__name`, `mission__name`, `name`, `pad__location__name`, `pad__name`, `rocket__configuration__manufacturer__abbrev`, `rocket__configuration__manufacturer__name`, `rocket__configuration__name`, `rocket__spacecraftflight__spacecraft__name`
Example - [/launches/previous/?search=Starlink](./?search=Starlink)
#### Ordering
Fields - `id`, `last_updated`, `name`, `net`
Example - [/launches/previous/?ordering=-last_updated](./?ordering=-last_updated)
#### Number of results
Use `limit` to control the number of objects in the response (max 100)
Example - [/launches/previous/?limit=2](./?limit=2)
#### Format
Switch to JSON output - [/launches/previous/?format=json](./?format=json)
#### Help
Find all the FAQs and support links on the documentation homepage - [ll.thespacedevs.com/docs](https://ll.thespacedevs.com/docs/)'
parameters:
- in: path
name: id
schema:
type: string
format: uuid
description: A UUID string identifying this Launch.
required: true
tags:
- Previous
security:
- cookieAuth: []
- Token_Authentication: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/LaunchDetailed'
description: ''
components:
schemas:
ProgramNormal:
type: object
properties:
response_mode:
type: string
readOnly: true
default: normal
id:
type: integer
readOnly: true
url:
type: string
format: uri
readOnly: true
name:
type: string
maxLength: 255
image:
allOf:
- $ref: '#/components/schemas/Image'
nullable: true
info_url:
type: string
format: uri
nullable: true
maxLength: 200
wiki_url:
type: string
format: uri
nullable: true
maxLength: 200
description:
type: string
nullable: true
maxLength: 40000
agencies:
type: array
items:
$ref: '#/components/schemas/AgencyMini'
start_date:
type: string
format: date-time
nullable: true
end_date:
type: string
format: date-time
nullable: true
mission_patches:
type: array
items:
$ref: '#/components/schemas/MissionPatch'
type:
$ref: '#/components/schemas/ProgramType'
required:
- agencies
- id
- image
- mission_patches
- name
- response_mode
- type
- url
Country:
type: object
properties:
id:
type: integer
readOnly: true
name:
type: string
maxLength: 255
alpha_2_code:
type: string
description: ISO 3166-1 alpha-2
maxLength: 2
alpha_3_code:
type: string
description: ISO 3166-1 alpha-3
maxLength: 3
nationality_name:
type: string
description: e.g. French
maxLength: 255
nationality_name_composed:
type: string
description: e.g. Franco
maxLength: 255
required:
- id
LauncherConfigList:
type: object
properties:
response_mode:
type: string
readOnly: true
default: list
id:
type: integer
readOnly: true
url:
type: string
format: uri
readOnly: true
name:
type: string
maxLength: 200
families:
type: array
items:
$ref: '#/components/schemas/LauncherConfigFamilyMini'
nullable: true
full_name:
type: string
maxLength: 200
variant:
type: string
maxLength: 200
required:
- families
- id
- name
- response_mode
- url
AgencyDetailed:
# --- truncated at 32 KB (115 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/thespacedevs-ll2-api/refs/heads/main/openapi/thespacedevs-ll2-api-previous-api-openapi.yml