Kayhan Space Conjunction API
The Conjunction API from Kayhan Space — 8 operation(s) for conjunction.
The Conjunction API from Kayhan Space — 8 operation(s) for conjunction.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/kayhan-space-conjunction-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Satcat Service Authentication Conjunction API
description: '
Kayhan Space''s Satcat Service API.
## Features
* **View** historical CDM data for an object.
* **View** latest CDM data for an object.
'
contact:
email: help@kayhan.space
version: 1.0.0
servers:
- url: /api/satcat
tags:
- name: Conjunction
paths:
/conjunction_messages:
get:
tags:
- Conjunction
summary: List Conjunction Messages
description: List the conjunction messages to which the currently authenticated user has read access.
operationId: list_conjunction_messages_conjunction_messages_get
security:
- Oauth2Scheme: []
parameters:
- name: latest_for
in: query
required: false
schema:
type: string
description: key or cdm_id of conjunction message to get latest data for
title: Latest For
description: key or cdm_id of conjunction message to get latest data for
- name: history_for
in: query
required: false
schema:
type: string
description: key or cdm_id of conjunction message to get history data for
title: History For
description: key or cdm_id of conjunction message to get history data for
- name: operational
in: query
required: false
schema:
type: boolean
description: Whether to include only CDMs with designation 'OPERATIONAL' in the result; defaults to true
default: true
title: Operational
description: Whether to include only CDMs with designation 'OPERATIONAL' in the result; defaults to true
- name: filters
in: query
required: false
schema:
anyOf:
- type: string
contentMediaType: application/json
contentSchema: {}
- type: 'null'
title: Filters
- name: sort_field
in: query
required: false
schema:
type: string
default: creation_date
title: Sort Field
- name: sort_direction
in: query
required: false
schema:
$ref: '#/components/schemas/SortDirection'
default: desc
- name: offset
in: query
required: false
schema:
type: integer
default: 0
title: Offset
- name: count
in: query
required: false
schema:
type: integer
default: 0
title: Count
- name: fields
in: query
required: false
schema:
type: string
title: Fields
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/OffsetPageResult_ConjunctionListRead_'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
post:
tags:
- Conjunction
summary: Upload Cdms
description: Upload one or more CDMs as a Super Admin.
operationId: upload_cdms_conjunction_messages_post
security:
- Oauth2Scheme: []
parameters:
- name: group_slug
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Group Slug
requestBody:
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/Body_upload_cdms_conjunction_messages_post'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ConjunctionRead'
title: Response Upload Cdms Conjunction Messages Post
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/conjunction_messages/ccsds:
get:
tags:
- Conjunction
summary: List Conjunction Messages
description: List the conjunction messages to which the currently authenticated user has read access in CCSDS format.
operationId: list_conjunction_messages_conjunction_messages_ccsds_get
security:
- Oauth2Scheme: []
parameters:
- name: latest_for
in: query
required: false
schema:
type: string
description: key or cdm_id of conjunction message to get latest data for
title: Latest For
description: key or cdm_id of conjunction message to get latest data for
- name: history_for
in: query
required: false
schema:
type: string
description: key or cdm_id of conjunction message to get history data for
title: History For
description: key or cdm_id of conjunction message to get history data for
- name: operational
in: query
required: false
schema:
type: boolean
description: Whether to include only CDMs with designation 'OPERATIONAL' in the result; defaults to true
default: true
title: Operational
description: Whether to include only CDMs with designation 'OPERATIONAL' in the result; defaults to true
- name: filters
in: query
required: false
schema:
anyOf:
- type: string
contentMediaType: application/json
contentSchema: {}
- type: 'null'
title: Filters
- name: sort_field
in: query
required: false
schema:
type: string
default: creation_date
title: Sort Field
- name: sort_direction
in: query
required: false
schema:
$ref: '#/components/schemas/SortDirection'
default: desc
- name: offset
in: query
required: false
schema:
type: integer
default: 0
title: Offset
- name: count
in: query
required: false
schema:
type: integer
default: 0
title: Count
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/OffsetPageResult'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/events:
get:
tags:
- Conjunction
summary: List Events
description: List the events to which the currently authenticated user has read access.
operationId: list_events_events_get
security:
- Oauth2Scheme: []
parameters:
- name: filters
in: query
required: false
schema:
anyOf:
- type: string
contentMediaType: application/json
contentSchema: {}
- type: 'null'
title: Filters
- name: sort_field
in: query
required: false
schema:
type: string
default: created_at
title: Sort Field
- name: sort_direction
in: query
required: false
schema:
$ref: '#/components/schemas/SortDirection'
default: desc
- name: offset
in: query
required: false
schema:
type: integer
default: 0
title: Offset
- name: count
in: query
required: false
schema:
type: integer
default: 0
title: Count
- name: fields
in: query
required: false
schema:
type: string
title: Fields
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/OffsetPageResult_EventRead_'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/events/{event_key}/ccsds_cdm:
post:
tags:
- Conjunction
summary: Add Cdm To Event
description: Add a CCSDS JSON CDM to an event. The CDM must have the same primary and secondary objects as the associated event. Returns the created conjunction.
operationId: add_cdm_to_event_events__event_key__ccsds_cdm_post
security:
- Oauth2Scheme: []
parameters:
- name: event_key
in: path
required: true
schema:
type: string
description: key of the event to add the CDM to
title: Event Key
description: key of the event to add the CDM to
requestBody:
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/Body_add_cdm_to_event_events__event_key__ccsds_cdm_post'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ConjunctionRead'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/conjunction_messages/{cdm_id}/file:
get:
tags:
- Conjunction
summary: Get Cdm File
description: Retrieve raw conjunction messages with given key or cdm_id.
operationId: get_cdm_file_conjunction_messages__cdm_id__file_get
security:
- Oauth2Scheme: []
parameters:
- name: cdm_id
in: path
required: true
schema:
type: string
description: key or cdm_id of conjunction message
title: Cdm Id
description: key or cdm_id of conjunction message
- name: updated
in: query
required: false
schema:
type: boolean
default: false
title: Updated
- name: file_format
in: query
required: false
schema:
$ref: '#/components/schemas/CDMWriteFormat'
default: JSON
responses:
'200':
description: Successful Response
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/conjunction_messages/{cdm_id}:
get:
tags:
- Conjunction
summary: Get Conjunction Message By Id
description: Retrieve all conjunction messages with given key, cdm_id (18th SDS), or Satcat UUID.
operationId: get_conjunction_message_by_id_conjunction_messages__cdm_id__get
security:
- Oauth2Scheme: []
parameters:
- name: cdm_id
in: path
required: true
schema:
type: string
description: key, cdm_id, or uuid of conjunction message
title: Cdm Id
description: key, cdm_id, or uuid of conjunction message
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ConjunctionRead'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/conjunction_messages/{cdm_id}/ccsds:
get:
tags:
- Conjunction
summary: Get Conjunction Message By Id
description: Retrieve conjunction message with given key or cdm_id in CCSDS format.
operationId: get_conjunction_message_by_id_conjunction_messages__cdm_id__ccsds_get
security:
- Oauth2Scheme: []
parameters:
- name: cdm_id
in: path
required: true
schema:
type: string
description: key or cdm_id of conjunction message
title: Cdm Id
description: key or cdm_id of conjunction message
responses:
'200':
description: Successful Response
content:
application/json:
schema:
type: object
additionalProperties: true
title: Response Get Conjunction Message By Id Conjunction Messages Cdm Id Ccsds Get
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/conjunction_messages/{cdm_id}/pc_remediation:
post:
tags:
- Conjunction
summary: Request Pc Remediation
description: Manually request remediation of a CDM's collision probability value. Returns the updated conjunction message in CCSDS JSON format.
operationId: request_pc_remediation_conjunction_messages__cdm_id__pc_remediation_post
security:
- Oauth2Scheme: []
parameters:
- name: cdm_id
in: path
required: true
schema:
type: string
description: key or cdm_id of conjunction message
title: Cdm Id
description: key or cdm_id of conjunction message
- name: method
in: query
required: false
schema:
$ref: '#/components/schemas/PCRemediationMethod'
default: hall
responses:
'200':
description: Successful Response
content:
application/json:
schema:
type: object
additionalProperties: true
title: Response Request Pc Remediation Conjunction Messages Cdm Id Pc Remediation Post
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
satcat__schemas__common__Designation:
type: string
enum:
- OPERATIONAL
- THEORETICAL
- PREDICTED
- DEFINITIVE
title: Designation
EventRead:
properties:
id:
type: string
format: uuid
title: Id
key:
type: string
title: Key
created_at:
type: string
format: date-time
title: Created At
updated_at:
type: string
format: date-time
title: Updated At
tca_range_start:
type: string
format: date-time
title: Tca Range Start
tca_range_end:
type: string
format: date-time
title: Tca Range End
auto_intent_enabled:
type: boolean
title: Auto Intent Enabled
default_cdm:
$ref: '#/components/schemas/ConjunctionRead'
type: object
required:
- id
- key
- created_at
- updated_at
- tca_range_start
- tca_range_end
- auto_intent_enabled
- default_cdm
title: EventRead
OffsetPageResult_ConjunctionListRead_:
properties:
pagination:
$ref: '#/components/schemas/OffsetPagination'
items:
items:
$ref: '#/components/schemas/ConjunctionListRead'
type: array
title: Items
total_count:
type: integer
title: Total Count
type: object
required:
- pagination
- items
- total_count
title: OffsetPageResult[ConjunctionListRead]
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
PCRemediationMethod:
type: string
enum:
- frisbee
- hall
- multistep
title: PCRemediationMethod
Body_upload_cdms_conjunction_messages_post:
properties:
cdm_files:
items:
type: string
contentMediaType: application/octet-stream
type: array
title: Cdm Files
type: object
required:
- cdm_files
title: Body_upload_cdms_conjunction_messages_post
EventReadSimple:
properties:
id:
type: string
format: uuid
title: Id
key:
type: string
title: Key
type: object
required:
- id
- key
title: EventReadSimple
RSOMetadataRead:
properties:
norad_id:
anyOf:
- type: integer
- type: 'null'
title: Norad Id
country:
anyOf:
- type: string
- type: 'null'
title: Country
satname:
anyOf:
- type: string
- type: 'null'
title: Satname
type: object
title: RSOMetadataRead
SpacecraftConjunctionStateRead:
properties:
id:
anyOf:
- type: string
format: uuid
- type: 'null'
title: Id
created_at:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Created At
comment_screening_data_source:
anyOf:
- type: string
- type: 'null'
title: Comment Screening Data Source
ephemeris_name:
anyOf:
- type: string
- type: 'null'
title: Ephemeris Name
covariance_method:
anyOf:
- type: string
- type: 'null'
title: Covariance Method
ref_frame:
anyOf:
- type: string
- type: 'null'
title: Ref Frame
gravity_model:
anyOf:
- type: string
- type: 'null'
title: Gravity Model
atmospheric_model:
anyOf:
- type: string
- type: 'null'
title: Atmospheric Model
n_body_perturbations:
anyOf:
- type: string
- type: 'null'
title: N Body Perturbations
solar_rad_pressure:
anyOf:
- type: string
- type: 'null'
title: Solar Rad Pressure
earth_tides:
anyOf:
- type: string
- type: 'null'
title: Earth Tides
intrack_thrust:
anyOf:
- type: string
- type: 'null'
title: Intrack Thrust
comment_covariance_scale_factor:
anyOf:
- type: string
- type: 'null'
title: Comment Covariance Scale Factor
comment_exclusion_volume_radius:
anyOf:
- type: string
- type: 'null'
title: Comment Exclusion Volume Radius
hbr_m:
anyOf:
- type: number
- type: 'null'
title: Hbr M
time_lastob_start:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Time Lastob Start
time_lastob_end:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Time Lastob End
recommended_od_span:
anyOf:
- type: number
- type: 'null'
title: Recommended Od Span
actual_od_span:
anyOf:
- type: number
- type: 'null'
title: Actual Od Span
obs_available:
anyOf:
- type: integer
- type: 'null'
title: Obs Available
obs_used:
anyOf:
- type: integer
- type: 'null'
title: Obs Used
tracks_available:
anyOf:
- type: integer
- type: 'null'
title: Tracks Available
tracks_used:
anyOf:
- type: integer
- type: 'null'
title: Tracks Used
residuals_accepted:
anyOf:
- type: integer
- type: 'null'
title: Residuals Accepted
weighted_rms:
anyOf:
- type: number
- type: 'null'
title: Weighted Rms
od_quality_rating:
anyOf:
- additionalProperties:
additionalProperties: true
type: object
type: object
- type: 'null'
title: Od Quality Rating
comment_apogee:
anyOf:
- type: string
- type: 'null'
title: Comment Apogee
comment_perigee:
anyOf:
- type: string
- type: 'null'
title: Comment Perigee
comment_inclination:
anyOf:
- type: string
- type: 'null'
title: Comment Inclination
comment_operator_hard_body_radius:
anyOf:
- type: string
- type: 'null'
title: Comment Operator Hard Body Radius
area_pc:
anyOf:
- type: number
- type: 'null'
title: Area Pc
cd_area_over_mass:
anyOf:
- type: number
- type: 'null'
title: Cd Area Over Mass
cr_area_over_mass:
anyOf:
- type: number
- type: 'null'
title: Cr Area Over Mass
thrust_acceleration_m:
anyOf:
- type: number
- type: 'null'
title: Thrust Acceleration M
sedr:
anyOf:
- type: number
- type: 'null'
title: Sedr
x_km:
type: number
title: X Km
y_km:
type: number
title: Y Km
z_km:
type: number
title: Z Km
x_dot_km:
type: number
title: X Dot Km
y_dot_km:
type: number
title: Y Dot Km
z_dot_km:
type: number
title: Z Dot Km
comment_dcp_density_forecast_uncertainty:
anyOf:
- type: string
- type: 'null'
title: Comment Dcp Density Forecast Uncertainty
comment_dcp_sensitivity_vector_position:
anyOf:
- type: string
- type: 'null'
title: Comment Dcp Sensitivity Vector Position
comment_dcp_sensitivity_vector_velocity:
anyOf:
- type: string
- type: 'null'
title: Comment Dcp Sensitivity Vector Velocity
cr_r:
anyOf:
- type: number
- type: 'null'
title: Cr R
ct_r:
anyOf:
- type: number
- type: 'null'
title: Ct R
ct_t:
anyOf:
- type: number
- type: 'null'
title: Ct T
cn_r:
anyOf:
- type: number
- type: 'null'
title: Cn R
cn_t:
anyOf:
- type: number
- type: 'null'
title: Cn T
cn_n:
anyOf:
- type: number
- type: 'null'
title: Cn N
crdot_r:
anyOf:
- type: number
- type: 'null'
title: Crdot R
crdot_t:
anyOf:
- type: number
- type: 'null'
title: Crdot T
crdot_n:
anyOf:
- type: number
- type: 'null'
title: Crdot N
crdot_rdot:
anyOf:
- type: number
- type: 'null'
title: Crdot Rdot
ctdot_r:
anyOf:
- type: number
- type: 'null'
title: Ctdot R
ctdot_t:
anyOf:
- type: number
- type: 'null'
title: Ctdot T
ctdot_n:
anyOf:
- type: number
- type: 'null'
title: Ctdot N
ctdot_rdot:
anyOf:
- type: number
- type: 'null'
title: Ctdot Rdot
ctdot_tdot:
anyOf:
- type: number
- type: 'null'
title: Ctdot Tdot
cndot_r:
anyOf:
- type: number
- type: 'null'
title: Cndot R
cndot_t:
anyOf:
- type: number
- type: 'null'
title: Cndot T
cndot_n:
anyOf:
- type: number
- type: 'null'
title: Cndot N
cndot_rdot:
anyOf:
- type: number
- type: 'null'
title: Cndot Rdot
cndot_tdot:
anyOf:
- type: number
- type: 'null'
title: Cndot Tdot
cndot_ndot:
anyOf:
- type: number
- type: 'null'
title: Cndot Ndot
cdrg_r:
anyOf:
- type: number
- type: 'null'
title: Cdrg R
cdrg_t:
anyOf:
- type: number
- type: 'null'
title: Cdrg T
cdrg_n:
anyOf:
- type: number
- type: 'null'
title: Cdrg N
cdrg_rdot:
anyOf:
- type: number
- type: 'null'
title: Cdrg Rdot
cdrg_tdot:
anyOf:
- type: number
- type: 'null'
title: Cdrg Tdot
cdrg_ndot:
anyOf:
- type: number
- type: 'null'
title: Cdrg Ndot
cdrg_drg:
anyOf:
- type: number
- type: 'null'
title: Cdrg Drg
csrp_r:
anyOf:
- type: number
- type: 'null'
title: Csrp R
csrp_t:
anyOf:
- type: number
- type: 'null'
title: Csrp T
csrp_n:
anyOf:
- type: number
- type: 'null'
title: Csrp N
csrp_rdot:
anyOf:
- type: number
- type: 'null'
title: Csrp Rdot
csrp_tdot:
anyOf:
- type: number
- type: 'null'
title: Csrp Tdot
csrp_ndot:
anyOf:
- type: number
- type: 'null'
title: Csrp Ndot
csrp_drg:
anyOf:
- type: number
- type: 'null'
title: Csrp Drg
csrp_srp:
anyOf:
- type: number
- type: 'null'
title: Csrp Srp
ephemeris_id:
anyOf:
- type: string
format: uuid
- type: 'null'
title: Ephemeris Id
screening_id:
anyOf:
- type: string
format: uuid
- type: 'null'
title: Screening Id
derived_from_spacecraft_state_id:
anyOf:
- type: string
format: uuid
- type: 'null'
title: Derived From Spacecraft State Id
rso_id:
anyOf:
- type: string
format: uuid
- type: 'null'
title: Rso Id
altitude_km:
anyOf:
- type: number
- type: 'null'
title: Altitude Km
type: object
required:
- x_km
- y_km
- z_km
- x_dot_km
- y_dot_km
- z_dot_km
title: SpacecraftConjunctionStateRead
ConjunctionListRead:
properties:
key:
type: string
title: Key
cdm_id:
anyOf:
- type: integer
- type: 'null'
title: Cdm Id
primary:
$ref: '#/components/schemas/RSORead'
secondary:
$ref: '#/components/schemas/RSORead'
miss_distance_km:
type: number
title: Miss Distance Km
event_id:
anyOf:
- type: string
format: uuid
- type: 'null'
title: Event Id
creation_date:
type: string
format: date-time
title: Creation Date
originator:
anyOf:
- type: string
- type: 'null'
title: Originator
tca:
type: string
format: date-time
title: Tca
collision_probability:
anyOf:
- type: number
- type: 'null'
title: Collision Probability
collision_probability_method:
anyOf:
- type: string
- type: 'null'
title: Collision Probability Method
original_collision_probability_method:
anyOf:
- type: string
- type: 'null'
title: Original Collision Probability Method
original_collision_probability:
anyOf:
- type: number
- type: 'null'
title: Original Collision Probability
collision_probability_valid:
anyOf:
- type: boolean
- type: 'null'
title: Collision Probability Valid
failing_vailidity_cause:
anyOf:
- $ref: '#/components/schemas/FailingValidityCause'
- type: 'null'
pc_validity_state:
anyOf:
- $ref: '#/components/schemas/PCValidityState'
- type: 'null'
recommendation_jsonb:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Recommendation Jsonb
type: object
required:
- key
- primary
- secondary
- miss_distance_km
- creation_date
- tca
title: ConjunctionListRead
Body_add_cdm_to_event_events__event_key__ccsds_cdm_post:
properties:
cdm_file:
type: string
contentMediaType: application/octet-stream
title: Cdm File
description: the CCSDS JSON CDM file to be added to the event
type: object
required:
- cdm_file
title: Body_add_cdm_to_event_events__event_key__ccsds_cdm_post
SortDirection:
type: string
enum:
- asc
- desc
title: SortDirection
OffsetPageResult:
properties:
pagination:
$ref: '#/components/schemas/OffsetPagination'
items:
items: {}
type: array
title: Items
total_count:
type: integer
title: Total Count
type: object
required:
- pagination
- items
- total_count
title: OffsetPageResult
ConjunctionRead:
properties:
id:
anyOf:
- type: string
format: uuid
- type: 'null'
title: Id
key:
anyOf:
- type: string
- type: 'null'
title: Key
event_id:
anyOf:
- type: string
format: uuid
- type: 'null'
title: Event Id
event:
anyOf:
- $ref: '#/components/schemas/EventReadSimple'
- type: 'null'
created_at:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Created At
updated_at:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Updated At
designation:
$ref: '#/components/schemas/satcat__schemas__common__Designation'
cdm_id:
anyOf:
- type: integer
- type: 'null'
title: Cdm Id
key_number:
type: integer
title: Key Number
filename:
anyOf:
- type: string
- type: 'null'
title: Filename
insert_epoch:
type: string
format: date-time
title: Insert Epoch
creation_date:
type: string
format: date-time
title: Creation Date
originator:
anyOf:
# --- truncated at 32 KB (39 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/kayhan-space/refs/heads/main/openapi/kayhan-space-conjunction-api-openapi.yml