openapi: 3.0.3
info:
title: TheSpaceDevs LL2 Spacewalks 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: Spacewalks
paths:
/2.3.0/spacewalks/:
get:
operationId: spacewalks_list
summary: List Spacewalks
description: '#### Modes
Levels of detail in the response - `list`, `normal`, `detailed`
Example - [/spacewalks/?mode=list](./?mode=list)
#### Filters
Parameters - `astronaut__ids`, `day`, `end`, `end__gt`, `end__gte`, `end__lt`, `end__lte`, `event__ids`, `id`, `ids`, `launch__ids`, `month`, `name`, `name__contains`, `owner__ids`, `program__ids`, `program__name`, `program__name__contains`, `spacestation__ids`, `start__gt`, `start__gte`, `start__lt`, `start__lte`, `year`
Example - [/spacewalks/?program__name=Apollo](./?program__name=Apollo)
#### Search
Fields searched - `crew__astronaut__name`, `location`, `name`, `program__name`
Example - [/spacewalks/?search=Hubble](./?search=Hubble)
#### Ordering
Fields - `duration`, `end`, `id`, `name`, `start`
Example - [/spacewalks/?ordering=-duration](./?ordering=-duration)
#### Number of results
Use `limit` to control the number of objects in the response (max 100)
Example - [/spacewalks/?limit=2](./?limit=2)
#### Format
Switch to JSON output - [/spacewalks/?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: astronaut__ids
schema:
type: array
items:
type: integer
description: Multiple values may be separated by commas.
explode: false
style: form
- 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: end
schema:
type: string
format: date-time
- in: query
name: end__gt
schema:
type: string
format: date-time
- in: query
name: end__gte
schema:
type: string
format: date-time
- in: query
name: end__lt
schema:
type: string
format: date-time
- in: query
name: end__lte
schema:
type: string
format: date-time
- in: query
name: event__ids
schema:
type: array
items:
type: integer
description: Multiple values may be separated by commas.
explode: false
style: form
- in: query
name: id
schema:
type: integer
- in: query
name: ids
schema:
type: array
items:
type: integer
description: Multiple values may be separated by commas.
explode: false
style: form
- in: query
name: launch__ids
schema:
type: array
items:
type: string
format: uuid
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: 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: name__contains
schema:
type: string
- 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: owner__ids
schema:
type: array
items:
type: number
description: Multiple values may be separated by commas.
explode: false
style: form
- in: query
name: program__ids
schema:
type: array
items:
type: integer
description: Multiple values may be separated by commas.
explode: false
style: form
- in: query
name: program__name
schema:
type: string
- in: query
name: program__name__contains
schema:
type: string
- name: search
required: false
in: query
description: A search term.
schema:
type: string
- in: query
name: spacestation__ids
schema:
type: array
items:
type: integer
description: Multiple values may be separated by commas.
explode: false
style: form
- in: query
name: start__gt
schema:
type: string
format: date-time
- in: query
name: start__gte
schema:
type: string
format: date-time
- in: query
name: start__lt
schema:
type: string
format: date-time
- in: query
name: start__lte
schema:
type: string
format: date-time
- in: query
name: year
schema:
type: array
items:
type: number
description: Multiple values may be separated by commas.
explode: false
style: form
tags:
- Spacewalks
security:
- cookieAuth: []
- Token_Authentication: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedPolymorphicSpacewalkEndpointList'
description: ''
/2.3.0/spacewalks/{id}/:
get:
operationId: spacewalks_retrieve
summary: Get Spacewalk
description: '#### Modes
Levels of detail in the response - `list`, `normal`, `detailed`
Example - [/spacewalks/?mode=list](./?mode=list)
#### Filters
Parameters - `astronaut__ids`, `day`, `end`, `end__gt`, `end__gte`, `end__lt`, `end__lte`, `event__ids`, `id`, `ids`, `launch__ids`, `month`, `name`, `name__contains`, `owner__ids`, `program__ids`, `program__name`, `program__name__contains`, `spacestation__ids`, `start__gt`, `start__gte`, `start__lt`, `start__lte`, `year`
Example - [/spacewalks/?program__name=Apollo](./?program__name=Apollo)
#### Search
Fields searched - `crew__astronaut__name`, `location`, `name`, `program__name`
Example - [/spacewalks/?search=Hubble](./?search=Hubble)
#### Ordering
Fields - `duration`, `end`, `id`, `name`, `start`
Example - [/spacewalks/?ordering=-duration](./?ordering=-duration)
#### Number of results
Use `limit` to control the number of objects in the response (max 100)
Example - [/spacewalks/?limit=2](./?limit=2)
#### Format
Switch to JSON output - [/spacewalks/?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 Spacewalk.
required: true
tags:
- Spacewalks
security:
- cookieAuth: []
- Token_Authentication: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SpacewalkEndpointDetailed'
description: ''
components:
schemas:
LandingLocation:
type: object
properties:
id:
type: integer
readOnly: true
name:
type: string
maxLength: 255
active:
type: boolean
abbrev:
type: string
maxLength: 255
description:
type: string
nullable: true
maxLength: 2048
location:
$ref: '#/components/schemas/LocationSerializerNoCelestialBody'
longitude:
type: number
format: double
nullable: true
latitude:
type: number
format: double
nullable: true
image:
allOf:
- $ref: '#/components/schemas/Image'
nullable: true
successful_landings:
type: integer
maximum: 2147483647
minimum: -2147483648
nullable: true
attempted_landings:
type: integer
maximum: 2147483647
minimum: -2147483648
nullable: true
failed_landings:
type: integer
maximum: 2147483647
minimum: -2147483648
nullable: true
celestial_body:
$ref: '#/components/schemas/CelestialBodyNormal'
required:
- celestial_body
- id
- image
- location
ExpeditionMini:
type: object
properties:
id:
type: integer
readOnly: true
url:
type: string
format: uri
readOnly: true
name:
type: string
maxLength: 255
start:
type: string
format: date-time
end:
type: string
format: date-time
nullable: true
required:
- id
- name
- start
- url
AstronautDetailed:
type: object
properties:
id:
type: integer
readOnly: true
url:
type: string
format: uri
readOnly: true
name:
type: string
maxLength: 255
status:
$ref: '#/components/schemas/AstronautStatus'
agency:
allOf:
- $ref: '#/components/schemas/AgencyMini'
nullable: true
image:
allOf:
- $ref: '#/components/schemas/Image'
nullable: true
response_mode:
type: string
readOnly: true
default: list
type:
$ref: '#/components/schemas/AstronautType'
in_space:
type: boolean
time_in_space:
type: string
readOnly: true
nullable: true
eva_time:
type: string
readOnly: true
age:
type: integer
maximum: 2147483647
minimum: -2147483648
nullable: true
date_of_birth:
type: string
format: date
nullable: true
date_of_death:
type: string
format: date
nullable: true
nationality:
type: array
items:
$ref: '#/components/schemas/Country'
bio:
type: string
maxLength: 2048
wiki:
type: string
nullable: true
maxLength: 255
last_flight:
type: string
format: date-time
nullable: true
first_flight:
type: string
format: date-time
nullable: true
social_media_links:
type: array
items:
$ref: '#/components/schemas/SocialMediaLink'
required:
- agency
- bio
- eva_time
- id
- image
- name
- nationality
- response_mode
- social_media_links
- status
- time_in_space
- type
- url
EventMini:
type: object
properties:
id:
type: integer
readOnly: true
url:
type: string
format: uri
readOnly: true
name:
type: string
maxLength: 200
info_urls:
type: array
items:
$ref: '#/components/schemas/InfoURL'
vid_urls:
type: array
items:
$ref: '#/components/schemas/VidURL'
image:
allOf:
- $ref: '#/components/schemas/Image'
nullable: true
date:
type: string
format: date-time
nullable: true
required:
- id
- image
- info_urls
- name
- url
- vid_urls
PayloadType:
type: object
properties:
id:
type: integer
maximum: 2147483647
minimum: -2147483648
name:
type: string
maxLength: 255
required:
- id
RocketNormal:
type: object
properties:
id:
type: integer
readOnly: true
configuration:
$ref: '#/components/schemas/LauncherConfigList'
required:
- configuration
- id
Mission:
type: object
properties:
id:
type: integer
readOnly: true
name:
type: string
maxLength: 255
type:
type: string
readOnly: true
description:
type: string
image:
allOf:
- $ref: '#/components/schemas/Image'
nullable: true
orbit:
$ref: '#/components/schemas/Orbit'
agencies:
type: array
items:
$ref: '#/components/schemas/AgencyDetailed'
info_urls:
type: array
items:
$ref: '#/components/schemas/InfoURL'
vid_urls:
type: array
items:
$ref: '#/components/schemas/VidURL'
required:
- agencies
- id
- image
- info_urls
- name
- orbit
- type
- vid_urls
SpacecraftConfigType:
type: object
properties:
id:
type: integer
readOnly: true
name:
type: string
maxLength: 255
required:
- id
- name
SocialMedia:
type: object
properties:
id:
type: integer
readOnly: true
name:
type: string
maxLength: 255
url:
type: string
format: uri
nullable: true
logo:
allOf:
- $ref: '#/components/schemas/Image'
nullable: true
required:
- id
- logo
- url
InfoURLType:
type: object
properties:
id:
type: integer
readOnly: true
name:
type: string
maxLength: 255
required:
- id
- name
LandingType:
type: object
properties:
id:
type: integer
readOnly: true
name:
type: string
maxLength: 255
abbrev:
type: string
maxLength: 255
description:
type: string
nullable: true
maxLength: 2048
required:
- id
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
SpacecraftConfigNormal:
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: 200
type:
$ref: '#/components/schemas/SpacecraftConfigType'
agency:
$ref: '#/components/schemas/AgencyMini'
family:
type: array
items:
$ref: '#/components/schemas/SpacecraftConfigFamilyNormal'
nullable: true
in_use:
type: boolean
image:
allOf:
- $ref: '#/components/schemas/Image'
nullable: true
required:
- agency
- family
- id
- image
- name
- response_mode
- type
- url
LauncherConfigFamilyMini:
type: object
properties:
response_mode:
type: string
readOnly: true
default: list
id:
type: integer
readOnly: true
name:
type: string
maxLength: 200
required:
- id
- name
- response_mode
SpacecraftFlightDetailed:
type: object
properties:
id:
type: integer
readOnly: true
url:
type: string
format: uri
readOnly: true
destination:
type: string
nullable: true
maxLength: 255
mission_end:
type: string
format: date-time
nullable: true
spacecraft:
$ref: '#/components/schemas/SpacecraftDetailed'
launch:
$ref: '#/components/schemas/LaunchNormal'
landing:
$ref: '#/components/schemas/Landing'
duration:
type: string
readOnly: true
turn_around_time:
type: string
readOnly: true
response_mode:
type: string
readOnly: true
default: detailed
launch_crew:
type: array
items:
$ref: '#/components/schemas/AstronautFlight'
onboard_crew:
type: array
items:
$ref: '#/components/schemas/AstronautFlight'
landing_crew:
type: array
items:
$ref: '#/components/schemas/AstronautFlight'
docking_events:
type: array
items:
$ref: '#/components/schemas/DockingEventForChaserNormal'
required:
- docking_events
- duration
- id
- landing
- landing_crew
- launch
- launch_crew
- onboard_crew
- response_mode
- spacecraft
- turn_around_time
- url
ExpeditionNormalSerializerForSpacewalk:
type: object
properties:
id:
type: integer
readOnly: true
url:
type: string
format: uri
readOnly: true
name:
type: string
maxLength: 255
start:
type: string
format: date-time
end:
type: string
format: date-time
nullable: true
spacestation:
$ref: '#/components/schemas/SpaceStationNormal'
mission_patches:
type: array
items:
$ref: '#/components/schemas/MissionPatch'
required:
- id
- mission_patches
- name
- spacestation
- start
- url
LaunchStatus:
type: object
properties:
id:
type: integer
maximum: 2147483647
minimum: -2147483648
name:
type: string
readOnly: true
abbrev:
type: string
maxLength: 255
description:
type: string
maxLength: 2048
required:
- id
- name
VidURL:
type: object
properties:
priority:
type: integer
maximum: 2147483647
minimum: -2147483648
source:
type: string
nullable: true
maxLength: 200
publisher:
type: string
nullable: true
maxLength: 255
title:
type: string
nullable: true
maxLength: 200
description:
type: string
nullable: true
maxLength: 350
feature_image:
type: string
format: uri
nullable: true
maxLength: 200
url:
type: string
format: uri
type:
allOf:
- $ref: '#/components/schemas/VidURLType'
nullable: true
language:
allOf:
- $ref: '#/components/schemas/Language'
nullable: true
start_time:
type: string
format: date-time
nullable: true
end_time:
type: string
format: date-time
nullable: true
live:
type: boolean
required:
- language
- type
- url
PayloadFlightNormal:
type: object
properties:
response_mode:
type: string
readOnly: true
default: normal
id:
type: integer
readOnly: true
url:
type: string
format: uri
readOnly: true
destination:
type: string
nullable: true
maxLength: 255
amount:
type: integer
maximum: 2147483647
minimum: -2147483648
payload:
$ref: '#/components/schemas/PayloadNormal'
launch:
$ref: '#/components/schemas/LaunchNormal'
landing:
$ref: '#/components/schemas/Landing'
required:
- id
- landing
- launch
- payload
- response_mode
- url
AstronautStatus:
type: object
properties:
id:
type: integer
readOnly: true
name:
type: string
maxLength: 255
required:
- id
- name
AstronautRole:
type: object
properties:
id:
type: integer
readOnly: true
role:
type: string
maxLength: 255
priority:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- id
- role
ImageLicense:
type: object
properties:
id:
type: integer
readOnly: true
name:
type: string
maxLength: 255
priority:
type: integer
maximum: 2147483647
minimum: -2147483648
link:
type: string
format: uri
nullable: true
maxLength: 200
required:
- id
CelestialBodyMini:
type: object
properties:
response_mode:
type: string
readOnly: true
default: list
id:
type: integer
readOnly: true
name:
type: string
maxLength: 255
required:
- id
- name
- response_mode
PolymorphicSpacewalkEndpoint:
oneOf:
- $ref: '#/components/schemas/SpacewalkList'
- $ref: '#/components/schemas/SpacewalkEndpointNormal'
- $ref: '#/components/schemas/SpacewalkEndpointDetailed'
discriminator:
propertyName: response_mode
mapping:
list: '#/components/schemas/SpacewalkList'
normal: '#/components/schemas/SpacewalkEndpointNormal'
detailed: '#/components/schemas/SpacewalkEndpointDetailed'
SpacewalkEndpointNormal:
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
start:
type: string
format: date-time
nullable: true
end:
type: string
format: date-time
nullable: true
duration:
type: string
readOnly: true
nullable: true
location:
type: string
nullable: true
maxLength: 255
crew:
type: array
items:
$ref: '#/components/schemas/AstronautFlight'
spacestation:
allOf:
- $ref: '#/components/schemas/SpaceStationMini'
nullable: true
expedition:
allOf:
- $ref: '#/components/schemas/ExpeditionMini'
nullable: true
spacecraft_flight:
allOf:
- $ref: '#/components/schemas/SpacecraftFlightNormal'
nullable: true
event:
allOf:
- $ref: '#/components/schemas/EventMini'
nullable: true
program:
type: array
items:
$ref: '#/components/schemas/ProgramMini'
required:
- crew
- duration
- event
- expedition
- id
- name
- program
- response_mode
- spacecraft_flight
- spacestation
- url
Location:
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
celestial_body:
$ref: '#/components/schemas/CelestialBodyDetailed'
active:
type: boolean
country:
allOf:
- $ref: '#/components/schemas/Country'
nullable: true
description:
type: string
nullable: true
maxLength: 2048
image:
allOf:
- $ref: '#/components/schemas/Image'
nullable: true
map_image:
type: string
format: uri
nullable: true
longitude:
type: number
format: double
nullable: true
latitude:
type: number
format: double
nullable: true
timezone_name:
type: string
maxLength: 255
total_launch_count:
type: integer
maximum: 2147483647
minimum: -2147483648
nullable: true
total_landing_count:
type: integer
maximum: 2147483647
minimum: -2147483648
nullable: true
required:
- celestial_body
- country
- id
- image
- response_mode
- url
ProgramMini:
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: 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
required:
- id
- image
- name
- response_mode
- 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
DockingLocation:
type: object
properties:
id:
type: integer
readOnly: true
name:
type: string
maxLength: 255
spacestation:
$ref: '#/components/schemas/SpaceStationMini'
spacecraft:
$ref: '#/components/schemas/SpacecraftConfigNormal'
payload:
$ref: '#/components/schemas/PayloadMini'
required:
- id
- name
- payload
- spacecraft
- spacestation
AstronautFlight:
type: object
properties:
id:
type: integer
readOnly: true
role:
$ref: '#/components/schemas/AstronautRole'
astronaut:
$ref: '#/components/schemas/AstronautDetailed'
required:
- astronaut
- id
- role
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:
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: 200
abbrev:
type: string
maxLength: 255
type:
$ref: '#/components/schemas/AgencyType'
featured:
type: boolean
country:
type: array
items:
$ref: '#/components/schemas/Country'
description:
type: string
nullable: true
maxLength: 2048
administrator:
type: string
nullable: true
maxLength: 200
founding_year:
type: integer
maximum: 2147483647
minimum: -2147483648
nullable: true
launchers:
type: string
maxLength: 500
spacecraft:
type: string
maxLength: 500
parent:
type: string
readOnl
# --- truncated at 32 KB (73 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/thespacedevs-ll2-api/refs/heads/main/openapi/thespacedevs-ll2-api-spacewalks-api-openapi.yml