curl --request POST \
--url https://api.valar.space/operations/spacecraft \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"absorption": 0.4,
"bodyShape": "BOX",
"dragArea": 5,
"dragCoefficient": 2.2,
"launchMass": 500,
"name": "Sentinel-1A",
"reflectivityCoefficient": 1.5,
"specularReflection": 0.3,
"srpArea": 5,
"boxX": 1.5,
"boxY": 1,
"boxZ": 2,
"catalogueNoradId": 500000,
"color": "#FF5733",
"cosparId": "2024-001A",
"dryMass": 450,
"externalKey": "PARTNER-SAT-001",
"inertiaIxx": 1500,
"inertiaIyy": 1700,
"inertiaIzz": 2100,
"noradId": 43013,
"notYetCatalogued": true,
"panels": [
{
"absorption": 0.3,
"doubleSided": true,
"lengthM": 2,
"mountAxisPreset": "PLUS_Z",
"mountPositionX": -1.5,
"mountPositionY": 0,
"mountPositionZ": 0.25,
"name": "Port array",
"rotationDeg": 90,
"specularReflection": 0.2,
"widthM": 1,
"mountAxisCustomX": 0,
"mountAxisCustomY": 0,
"mountAxisCustomZ": 5
}
],
"payloads": [
{
"boresight": "Z+",
"fovShape": "CONICAL",
"name": "EO Camera",
"positionX": 0.1,
"positionY": 0,
"positionZ": -0.2,
"focalLengthMm": 120,
"halfAngleDeg": 30,
"halfHeightDeg": 20,
"halfWidthDeg": 10,
"offNadirAlongTrackDeg": 18,
"offNadirCrossTrackDeg": 30,
"pixelPitchUm": 5.5,
"radiusDeg": 30,
"sides": 6
}
],
"prismAxis": "Z",
"prismDiameter": 0.866025,
"prismDiameterMeasure": "INSCRIBED",
"prismHeightM": 1,
"prismSides": 6
}
'import requests
url = "https://api.valar.space/operations/spacecraft"
payload = {
"absorption": 0.4,
"bodyShape": "BOX",
"dragArea": 5,
"dragCoefficient": 2.2,
"launchMass": 500,
"name": "Sentinel-1A",
"reflectivityCoefficient": 1.5,
"specularReflection": 0.3,
"srpArea": 5,
"boxX": 1.5,
"boxY": 1,
"boxZ": 2,
"catalogueNoradId": 500000,
"color": "#FF5733",
"cosparId": "2024-001A",
"dryMass": 450,
"externalKey": "PARTNER-SAT-001",
"inertiaIxx": 1500,
"inertiaIyy": 1700,
"inertiaIzz": 2100,
"noradId": 43013,
"notYetCatalogued": True,
"panels": [
{
"absorption": 0.3,
"doubleSided": True,
"lengthM": 2,
"mountAxisPreset": "PLUS_Z",
"mountPositionX": -1.5,
"mountPositionY": 0,
"mountPositionZ": 0.25,
"name": "Port array",
"rotationDeg": 90,
"specularReflection": 0.2,
"widthM": 1,
"mountAxisCustomX": 0,
"mountAxisCustomY": 0,
"mountAxisCustomZ": 5
}
],
"payloads": [
{
"boresight": "Z+",
"fovShape": "CONICAL",
"name": "EO Camera",
"positionX": 0.1,
"positionY": 0,
"positionZ": -0.2,
"focalLengthMm": 120,
"halfAngleDeg": 30,
"halfHeightDeg": 20,
"halfWidthDeg": 10,
"offNadirAlongTrackDeg": 18,
"offNadirCrossTrackDeg": 30,
"pixelPitchUm": 5.5,
"radiusDeg": 30,
"sides": 6
}
],
"prismAxis": "Z",
"prismDiameter": 0.866025,
"prismDiameterMeasure": "INSCRIBED",
"prismHeightM": 1,
"prismSides": 6
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
absorption: 0.4,
bodyShape: 'BOX',
dragArea: 5,
dragCoefficient: 2.2,
launchMass: 500,
name: 'Sentinel-1A',
reflectivityCoefficient: 1.5,
specularReflection: 0.3,
srpArea: 5,
boxX: 1.5,
boxY: 1,
boxZ: 2,
catalogueNoradId: 500000,
color: '#FF5733',
cosparId: '2024-001A',
dryMass: 450,
externalKey: 'PARTNER-SAT-001',
inertiaIxx: 1500,
inertiaIyy: 1700,
inertiaIzz: 2100,
noradId: 43013,
notYetCatalogued: true,
panels: [
{
absorption: 0.3,
doubleSided: true,
lengthM: 2,
mountAxisPreset: 'PLUS_Z',
mountPositionX: -1.5,
mountPositionY: 0,
mountPositionZ: 0.25,
name: 'Port array',
rotationDeg: 90,
specularReflection: 0.2,
widthM: 1,
mountAxisCustomX: 0,
mountAxisCustomY: 0,
mountAxisCustomZ: 5
}
],
payloads: [
{
boresight: 'Z+',
fovShape: 'CONICAL',
name: 'EO Camera',
positionX: 0.1,
positionY: 0,
positionZ: -0.2,
focalLengthMm: 120,
halfAngleDeg: 30,
halfHeightDeg: 20,
halfWidthDeg: 10,
offNadirAlongTrackDeg: 18,
offNadirCrossTrackDeg: 30,
pixelPitchUm: 5.5,
radiusDeg: 30,
sides: 6
}
],
prismAxis: 'Z',
prismDiameter: 0.866025,
prismDiameterMeasure: 'INSCRIBED',
prismHeightM: 1,
prismSides: 6
})
};
fetch('https://api.valar.space/operations/spacecraft', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.valar.space/operations/spacecraft",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'absorption' => 0.4,
'bodyShape' => 'BOX',
'dragArea' => 5,
'dragCoefficient' => 2.2,
'launchMass' => 500,
'name' => 'Sentinel-1A',
'reflectivityCoefficient' => 1.5,
'specularReflection' => 0.3,
'srpArea' => 5,
'boxX' => 1.5,
'boxY' => 1,
'boxZ' => 2,
'catalogueNoradId' => 500000,
'color' => '#FF5733',
'cosparId' => '2024-001A',
'dryMass' => 450,
'externalKey' => 'PARTNER-SAT-001',
'inertiaIxx' => 1500,
'inertiaIyy' => 1700,
'inertiaIzz' => 2100,
'noradId' => 43013,
'notYetCatalogued' => true,
'panels' => [
[
'absorption' => 0.3,
'doubleSided' => true,
'lengthM' => 2,
'mountAxisPreset' => 'PLUS_Z',
'mountPositionX' => -1.5,
'mountPositionY' => 0,
'mountPositionZ' => 0.25,
'name' => 'Port array',
'rotationDeg' => 90,
'specularReflection' => 0.2,
'widthM' => 1,
'mountAxisCustomX' => 0,
'mountAxisCustomY' => 0,
'mountAxisCustomZ' => 5
]
],
'payloads' => [
[
'boresight' => 'Z+',
'fovShape' => 'CONICAL',
'name' => 'EO Camera',
'positionX' => 0.1,
'positionY' => 0,
'positionZ' => -0.2,
'focalLengthMm' => 120,
'halfAngleDeg' => 30,
'halfHeightDeg' => 20,
'halfWidthDeg' => 10,
'offNadirAlongTrackDeg' => 18,
'offNadirCrossTrackDeg' => 30,
'pixelPitchUm' => 5.5,
'radiusDeg' => 30,
'sides' => 6
]
],
'prismAxis' => 'Z',
'prismDiameter' => 0.866025,
'prismDiameterMeasure' => 'INSCRIBED',
'prismHeightM' => 1,
'prismSides' => 6
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.valar.space/operations/spacecraft"
payload := strings.NewReader("{\n \"absorption\": 0.4,\n \"bodyShape\": \"BOX\",\n \"dragArea\": 5,\n \"dragCoefficient\": 2.2,\n \"launchMass\": 500,\n \"name\": \"Sentinel-1A\",\n \"reflectivityCoefficient\": 1.5,\n \"specularReflection\": 0.3,\n \"srpArea\": 5,\n \"boxX\": 1.5,\n \"boxY\": 1,\n \"boxZ\": 2,\n \"catalogueNoradId\": 500000,\n \"color\": \"#FF5733\",\n \"cosparId\": \"2024-001A\",\n \"dryMass\": 450,\n \"externalKey\": \"PARTNER-SAT-001\",\n \"inertiaIxx\": 1500,\n \"inertiaIyy\": 1700,\n \"inertiaIzz\": 2100,\n \"noradId\": 43013,\n \"notYetCatalogued\": true,\n \"panels\": [\n {\n \"absorption\": 0.3,\n \"doubleSided\": true,\n \"lengthM\": 2,\n \"mountAxisPreset\": \"PLUS_Z\",\n \"mountPositionX\": -1.5,\n \"mountPositionY\": 0,\n \"mountPositionZ\": 0.25,\n \"name\": \"Port array\",\n \"rotationDeg\": 90,\n \"specularReflection\": 0.2,\n \"widthM\": 1,\n \"mountAxisCustomX\": 0,\n \"mountAxisCustomY\": 0,\n \"mountAxisCustomZ\": 5\n }\n ],\n \"payloads\": [\n {\n \"boresight\": \"Z+\",\n \"fovShape\": \"CONICAL\",\n \"name\": \"EO Camera\",\n \"positionX\": 0.1,\n \"positionY\": 0,\n \"positionZ\": -0.2,\n \"focalLengthMm\": 120,\n \"halfAngleDeg\": 30,\n \"halfHeightDeg\": 20,\n \"halfWidthDeg\": 10,\n \"offNadirAlongTrackDeg\": 18,\n \"offNadirCrossTrackDeg\": 30,\n \"pixelPitchUm\": 5.5,\n \"radiusDeg\": 30,\n \"sides\": 6\n }\n ],\n \"prismAxis\": \"Z\",\n \"prismDiameter\": 0.866025,\n \"prismDiameterMeasure\": \"INSCRIBED\",\n \"prismHeightM\": 1,\n \"prismSides\": 6\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.valar.space/operations/spacecraft")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"absorption\": 0.4,\n \"bodyShape\": \"BOX\",\n \"dragArea\": 5,\n \"dragCoefficient\": 2.2,\n \"launchMass\": 500,\n \"name\": \"Sentinel-1A\",\n \"reflectivityCoefficient\": 1.5,\n \"specularReflection\": 0.3,\n \"srpArea\": 5,\n \"boxX\": 1.5,\n \"boxY\": 1,\n \"boxZ\": 2,\n \"catalogueNoradId\": 500000,\n \"color\": \"#FF5733\",\n \"cosparId\": \"2024-001A\",\n \"dryMass\": 450,\n \"externalKey\": \"PARTNER-SAT-001\",\n \"inertiaIxx\": 1500,\n \"inertiaIyy\": 1700,\n \"inertiaIzz\": 2100,\n \"noradId\": 43013,\n \"notYetCatalogued\": true,\n \"panels\": [\n {\n \"absorption\": 0.3,\n \"doubleSided\": true,\n \"lengthM\": 2,\n \"mountAxisPreset\": \"PLUS_Z\",\n \"mountPositionX\": -1.5,\n \"mountPositionY\": 0,\n \"mountPositionZ\": 0.25,\n \"name\": \"Port array\",\n \"rotationDeg\": 90,\n \"specularReflection\": 0.2,\n \"widthM\": 1,\n \"mountAxisCustomX\": 0,\n \"mountAxisCustomY\": 0,\n \"mountAxisCustomZ\": 5\n }\n ],\n \"payloads\": [\n {\n \"boresight\": \"Z+\",\n \"fovShape\": \"CONICAL\",\n \"name\": \"EO Camera\",\n \"positionX\": 0.1,\n \"positionY\": 0,\n \"positionZ\": -0.2,\n \"focalLengthMm\": 120,\n \"halfAngleDeg\": 30,\n \"halfHeightDeg\": 20,\n \"halfWidthDeg\": 10,\n \"offNadirAlongTrackDeg\": 18,\n \"offNadirCrossTrackDeg\": 30,\n \"pixelPitchUm\": 5.5,\n \"radiusDeg\": 30,\n \"sides\": 6\n }\n ],\n \"prismAxis\": \"Z\",\n \"prismDiameter\": 0.866025,\n \"prismDiameterMeasure\": \"INSCRIBED\",\n \"prismHeightM\": 1,\n \"prismSides\": 6\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.valar.space/operations/spacecraft")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"absorption\": 0.4,\n \"bodyShape\": \"BOX\",\n \"dragArea\": 5,\n \"dragCoefficient\": 2.2,\n \"launchMass\": 500,\n \"name\": \"Sentinel-1A\",\n \"reflectivityCoefficient\": 1.5,\n \"specularReflection\": 0.3,\n \"srpArea\": 5,\n \"boxX\": 1.5,\n \"boxY\": 1,\n \"boxZ\": 2,\n \"catalogueNoradId\": 500000,\n \"color\": \"#FF5733\",\n \"cosparId\": \"2024-001A\",\n \"dryMass\": 450,\n \"externalKey\": \"PARTNER-SAT-001\",\n \"inertiaIxx\": 1500,\n \"inertiaIyy\": 1700,\n \"inertiaIzz\": 2100,\n \"noradId\": 43013,\n \"notYetCatalogued\": true,\n \"panels\": [\n {\n \"absorption\": 0.3,\n \"doubleSided\": true,\n \"lengthM\": 2,\n \"mountAxisPreset\": \"PLUS_Z\",\n \"mountPositionX\": -1.5,\n \"mountPositionY\": 0,\n \"mountPositionZ\": 0.25,\n \"name\": \"Port array\",\n \"rotationDeg\": 90,\n \"specularReflection\": 0.2,\n \"widthM\": 1,\n \"mountAxisCustomX\": 0,\n \"mountAxisCustomY\": 0,\n \"mountAxisCustomZ\": 5\n }\n ],\n \"payloads\": [\n {\n \"boresight\": \"Z+\",\n \"fovShape\": \"CONICAL\",\n \"name\": \"EO Camera\",\n \"positionX\": 0.1,\n \"positionY\": 0,\n \"positionZ\": -0.2,\n \"focalLengthMm\": 120,\n \"halfAngleDeg\": 30,\n \"halfHeightDeg\": 20,\n \"halfWidthDeg\": 10,\n \"offNadirAlongTrackDeg\": 18,\n \"offNadirCrossTrackDeg\": 30,\n \"pixelPitchUm\": 5.5,\n \"radiusDeg\": 30,\n \"sides\": 6\n }\n ],\n \"prismAxis\": \"Z\",\n \"prismDiameter\": 0.866025,\n \"prismDiameterMeasure\": \"INSCRIBED\",\n \"prismHeightM\": 1,\n \"prismSides\": 6\n}"
response = http.request(request)
puts response.read_body{
"absorption": 0.4,
"bodyShape": "BOX",
"boxX": 1.5,
"boxY": 1,
"boxZ": 2,
"catalogueNoradId": 123,
"color": "#FF5733",
"cosparId": "2024-001A",
"createdAt": "2023-11-07T05:31:56Z",
"dragArea": 5,
"dragCoefficient": 2.2,
"dryMass": 450,
"externalKey": "PARTNER-SAT-001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"inertiaIxx": 1500,
"inertiaIyy": 1700,
"inertiaIzz": 2100,
"launchMass": 500,
"lifecycleStatus": "Active",
"maneuverCapabilities": {
"allowedWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"availableManeuverPowerWatts": 123,
"blackoutWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"minimumManeuverSeparationSeconds": 123,
"schemaVersion": 123,
"thrusters": [
{
"alignmentError": {
"xRadians": 123,
"yRadians": 123,
"zRadians": 123
},
"allowedDirections": [
"RADIAL_OUT"
],
"combinedSteeringAllowed": true,
"dutyCycleWindowSeconds": 123,
"eclipsePolicy": "SUNLIGHT_ONLY",
"maximumDutyCycle": 123,
"minimumBurnSeconds": 123,
"minimumImpulseNewtonSeconds": 123,
"overheadBurns": [
{
"anchor": "BEFORE_MAIN_BURN",
"direction": "RADIAL_OUT",
"durationSeconds": 123,
"offsetSeconds": 123,
"thrusterId": "<string>"
}
],
"requiredPowerWatts": 123,
"settlingSeconds": 123,
"thrusterId": "<string>"
}
]
},
"name": "Sentinel-1A",
"noradId": 43013,
"notYetCatalogued": true,
"organizationId": "VALAR",
"panels": [
{
"absorption": 0.3,
"derivedNormal": {
"x": 1,
"y": 0,
"z": 0
},
"doubleSided": true,
"lengthM": 2,
"mountAxisCustomX": 0,
"mountAxisCustomY": 0,
"mountAxisCustomZ": 5,
"mountAxisPreset": "PLUS_Z",
"mountPositionX": -1.5,
"mountPositionY": 0,
"mountPositionZ": 0.25,
"name": "Port array",
"panelIndex": 0,
"rotationDeg": 90,
"specularReflection": 0.2,
"widthM": 1
}
],
"prismAxis": "Z",
"prismComplementaryDiameter": 1,
"prismDiameter": 0.866025,
"prismDiameterMeasure": "INSCRIBED",
"prismEdgeM": 0.5,
"prismHeightM": 1,
"prismSides": 6,
"reflectivityCoefficient": 1,
"specularReflection": 0.3,
"srpArea": 5,
"updatedAt": "2023-11-07T05:31:56Z"
}{
"absorption": 0.4,
"bodyShape": "BOX",
"boxX": 1.5,
"boxY": 1,
"boxZ": 2,
"catalogueNoradId": 123,
"color": "#FF5733",
"cosparId": "2024-001A",
"createdAt": "2023-11-07T05:31:56Z",
"dragArea": 5,
"dragCoefficient": 2.2,
"dryMass": 450,
"externalKey": "PARTNER-SAT-001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"inertiaIxx": 1500,
"inertiaIyy": 1700,
"inertiaIzz": 2100,
"launchMass": 500,
"lifecycleStatus": "Active",
"maneuverCapabilities": {
"allowedWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"availableManeuverPowerWatts": 123,
"blackoutWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"minimumManeuverSeparationSeconds": 123,
"schemaVersion": 123,
"thrusters": [
{
"alignmentError": {
"xRadians": 123,
"yRadians": 123,
"zRadians": 123
},
"allowedDirections": [
"RADIAL_OUT"
],
"combinedSteeringAllowed": true,
"dutyCycleWindowSeconds": 123,
"eclipsePolicy": "SUNLIGHT_ONLY",
"maximumDutyCycle": 123,
"minimumBurnSeconds": 123,
"minimumImpulseNewtonSeconds": 123,
"overheadBurns": [
{
"anchor": "BEFORE_MAIN_BURN",
"direction": "RADIAL_OUT",
"durationSeconds": 123,
"offsetSeconds": 123,
"thrusterId": "<string>"
}
],
"requiredPowerWatts": 123,
"settlingSeconds": 123,
"thrusterId": "<string>"
}
]
},
"name": "Sentinel-1A",
"noradId": 43013,
"notYetCatalogued": true,
"organizationId": "VALAR",
"panels": [
{
"absorption": 0.3,
"derivedNormal": {
"x": 1,
"y": 0,
"z": 0
},
"doubleSided": true,
"lengthM": 2,
"mountAxisCustomX": 0,
"mountAxisCustomY": 0,
"mountAxisCustomZ": 5,
"mountAxisPreset": "PLUS_Z",
"mountPositionX": -1.5,
"mountPositionY": 0,
"mountPositionZ": 0.25,
"name": "Port array",
"panelIndex": 0,
"rotationDeg": 90,
"specularReflection": 0.2,
"widthM": 1
}
],
"prismAxis": "Z",
"prismComplementaryDiameter": 1,
"prismDiameter": 0.866025,
"prismDiameterMeasure": "INSCRIBED",
"prismEdgeM": 0.5,
"prismHeightM": 1,
"prismSides": 6,
"reflectivityCoefficient": 1,
"specularReflection": 0.3,
"srpArea": 5,
"updatedAt": "2023-11-07T05:31:56Z"
}{
"absorption": 0.4,
"bodyShape": "BOX",
"boxX": 1.5,
"boxY": 1,
"boxZ": 2,
"catalogueNoradId": 123,
"color": "#FF5733",
"cosparId": "2024-001A",
"createdAt": "2023-11-07T05:31:56Z",
"dragArea": 5,
"dragCoefficient": 2.2,
"dryMass": 450,
"externalKey": "PARTNER-SAT-001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"inertiaIxx": 1500,
"inertiaIyy": 1700,
"inertiaIzz": 2100,
"launchMass": 500,
"lifecycleStatus": "Active",
"maneuverCapabilities": {
"allowedWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"availableManeuverPowerWatts": 123,
"blackoutWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"minimumManeuverSeparationSeconds": 123,
"schemaVersion": 123,
"thrusters": [
{
"alignmentError": {
"xRadians": 123,
"yRadians": 123,
"zRadians": 123
},
"allowedDirections": [
"RADIAL_OUT"
],
"combinedSteeringAllowed": true,
"dutyCycleWindowSeconds": 123,
"eclipsePolicy": "SUNLIGHT_ONLY",
"maximumDutyCycle": 123,
"minimumBurnSeconds": 123,
"minimumImpulseNewtonSeconds": 123,
"overheadBurns": [
{
"anchor": "BEFORE_MAIN_BURN",
"direction": "RADIAL_OUT",
"durationSeconds": 123,
"offsetSeconds": 123,
"thrusterId": "<string>"
}
],
"requiredPowerWatts": 123,
"settlingSeconds": 123,
"thrusterId": "<string>"
}
]
},
"name": "Sentinel-1A",
"noradId": 43013,
"notYetCatalogued": true,
"organizationId": "VALAR",
"panels": [
{
"absorption": 0.3,
"derivedNormal": {
"x": 1,
"y": 0,
"z": 0
},
"doubleSided": true,
"lengthM": 2,
"mountAxisCustomX": 0,
"mountAxisCustomY": 0,
"mountAxisCustomZ": 5,
"mountAxisPreset": "PLUS_Z",
"mountPositionX": -1.5,
"mountPositionY": 0,
"mountPositionZ": 0.25,
"name": "Port array",
"panelIndex": 0,
"rotationDeg": 90,
"specularReflection": 0.2,
"widthM": 1
}
],
"prismAxis": "Z",
"prismComplementaryDiameter": 1,
"prismDiameter": 0.866025,
"prismDiameterMeasure": "INSCRIBED",
"prismEdgeM": 0.5,
"prismHeightM": 1,
"prismSides": 6,
"reflectivityCoefficient": 1,
"specularReflection": 0.3,
"srpArea": 5,
"updatedAt": "2023-11-07T05:31:56Z"
}{
"absorption": 0.4,
"bodyShape": "BOX",
"boxX": 1.5,
"boxY": 1,
"boxZ": 2,
"catalogueNoradId": 123,
"color": "#FF5733",
"cosparId": "2024-001A",
"createdAt": "2023-11-07T05:31:56Z",
"dragArea": 5,
"dragCoefficient": 2.2,
"dryMass": 450,
"externalKey": "PARTNER-SAT-001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"inertiaIxx": 1500,
"inertiaIyy": 1700,
"inertiaIzz": 2100,
"launchMass": 500,
"lifecycleStatus": "Active",
"maneuverCapabilities": {
"allowedWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"availableManeuverPowerWatts": 123,
"blackoutWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"minimumManeuverSeparationSeconds": 123,
"schemaVersion": 123,
"thrusters": [
{
"alignmentError": {
"xRadians": 123,
"yRadians": 123,
"zRadians": 123
},
"allowedDirections": [
"RADIAL_OUT"
],
"combinedSteeringAllowed": true,
"dutyCycleWindowSeconds": 123,
"eclipsePolicy": "SUNLIGHT_ONLY",
"maximumDutyCycle": 123,
"minimumBurnSeconds": 123,
"minimumImpulseNewtonSeconds": 123,
"overheadBurns": [
{
"anchor": "BEFORE_MAIN_BURN",
"direction": "RADIAL_OUT",
"durationSeconds": 123,
"offsetSeconds": 123,
"thrusterId": "<string>"
}
],
"requiredPowerWatts": 123,
"settlingSeconds": 123,
"thrusterId": "<string>"
}
]
},
"name": "Sentinel-1A",
"noradId": 43013,
"notYetCatalogued": true,
"organizationId": "VALAR",
"panels": [
{
"absorption": 0.3,
"derivedNormal": {
"x": 1,
"y": 0,
"z": 0
},
"doubleSided": true,
"lengthM": 2,
"mountAxisCustomX": 0,
"mountAxisCustomY": 0,
"mountAxisCustomZ": 5,
"mountAxisPreset": "PLUS_Z",
"mountPositionX": -1.5,
"mountPositionY": 0,
"mountPositionZ": 0.25,
"name": "Port array",
"panelIndex": 0,
"rotationDeg": 90,
"specularReflection": 0.2,
"widthM": 1
}
],
"prismAxis": "Z",
"prismComplementaryDiameter": 1,
"prismDiameter": 0.866025,
"prismDiameterMeasure": "INSCRIBED",
"prismEdgeM": 0.5,
"prismHeightM": 1,
"prismSides": 6,
"reflectivityCoefficient": 1,
"specularReflection": 0.3,
"srpArea": 5,
"updatedAt": "2023-11-07T05:31:56Z"
}{
"absorption": 0.4,
"bodyShape": "BOX",
"boxX": 1.5,
"boxY": 1,
"boxZ": 2,
"catalogueNoradId": 123,
"color": "#FF5733",
"cosparId": "2024-001A",
"createdAt": "2023-11-07T05:31:56Z",
"dragArea": 5,
"dragCoefficient": 2.2,
"dryMass": 450,
"externalKey": "PARTNER-SAT-001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"inertiaIxx": 1500,
"inertiaIyy": 1700,
"inertiaIzz": 2100,
"launchMass": 500,
"lifecycleStatus": "Active",
"maneuverCapabilities": {
"allowedWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"availableManeuverPowerWatts": 123,
"blackoutWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"minimumManeuverSeparationSeconds": 123,
"schemaVersion": 123,
"thrusters": [
{
"alignmentError": {
"xRadians": 123,
"yRadians": 123,
"zRadians": 123
},
"allowedDirections": [
"RADIAL_OUT"
],
"combinedSteeringAllowed": true,
"dutyCycleWindowSeconds": 123,
"eclipsePolicy": "SUNLIGHT_ONLY",
"maximumDutyCycle": 123,
"minimumBurnSeconds": 123,
"minimumImpulseNewtonSeconds": 123,
"overheadBurns": [
{
"anchor": "BEFORE_MAIN_BURN",
"direction": "RADIAL_OUT",
"durationSeconds": 123,
"offsetSeconds": 123,
"thrusterId": "<string>"
}
],
"requiredPowerWatts": 123,
"settlingSeconds": 123,
"thrusterId": "<string>"
}
]
},
"name": "Sentinel-1A",
"noradId": 43013,
"notYetCatalogued": true,
"organizationId": "VALAR",
"panels": [
{
"absorption": 0.3,
"derivedNormal": {
"x": 1,
"y": 0,
"z": 0
},
"doubleSided": true,
"lengthM": 2,
"mountAxisCustomX": 0,
"mountAxisCustomY": 0,
"mountAxisCustomZ": 5,
"mountAxisPreset": "PLUS_Z",
"mountPositionX": -1.5,
"mountPositionY": 0,
"mountPositionZ": 0.25,
"name": "Port array",
"panelIndex": 0,
"rotationDeg": 90,
"specularReflection": 0.2,
"widthM": 1
}
],
"prismAxis": "Z",
"prismComplementaryDiameter": 1,
"prismDiameter": 0.866025,
"prismDiameterMeasure": "INSCRIBED",
"prismEdgeM": 0.5,
"prismHeightM": 1,
"prismSides": 6,
"reflectivityCoefficient": 1,
"specularReflection": 0.3,
"srpArea": 5,
"updatedAt": "2023-11-07T05:31:56Z"
}Register a new spacecraft
Creates a spacecraft.
curl --request POST \
--url https://api.valar.space/operations/spacecraft \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"absorption": 0.4,
"bodyShape": "BOX",
"dragArea": 5,
"dragCoefficient": 2.2,
"launchMass": 500,
"name": "Sentinel-1A",
"reflectivityCoefficient": 1.5,
"specularReflection": 0.3,
"srpArea": 5,
"boxX": 1.5,
"boxY": 1,
"boxZ": 2,
"catalogueNoradId": 500000,
"color": "#FF5733",
"cosparId": "2024-001A",
"dryMass": 450,
"externalKey": "PARTNER-SAT-001",
"inertiaIxx": 1500,
"inertiaIyy": 1700,
"inertiaIzz": 2100,
"noradId": 43013,
"notYetCatalogued": true,
"panels": [
{
"absorption": 0.3,
"doubleSided": true,
"lengthM": 2,
"mountAxisPreset": "PLUS_Z",
"mountPositionX": -1.5,
"mountPositionY": 0,
"mountPositionZ": 0.25,
"name": "Port array",
"rotationDeg": 90,
"specularReflection": 0.2,
"widthM": 1,
"mountAxisCustomX": 0,
"mountAxisCustomY": 0,
"mountAxisCustomZ": 5
}
],
"payloads": [
{
"boresight": "Z+",
"fovShape": "CONICAL",
"name": "EO Camera",
"positionX": 0.1,
"positionY": 0,
"positionZ": -0.2,
"focalLengthMm": 120,
"halfAngleDeg": 30,
"halfHeightDeg": 20,
"halfWidthDeg": 10,
"offNadirAlongTrackDeg": 18,
"offNadirCrossTrackDeg": 30,
"pixelPitchUm": 5.5,
"radiusDeg": 30,
"sides": 6
}
],
"prismAxis": "Z",
"prismDiameter": 0.866025,
"prismDiameterMeasure": "INSCRIBED",
"prismHeightM": 1,
"prismSides": 6
}
'import requests
url = "https://api.valar.space/operations/spacecraft"
payload = {
"absorption": 0.4,
"bodyShape": "BOX",
"dragArea": 5,
"dragCoefficient": 2.2,
"launchMass": 500,
"name": "Sentinel-1A",
"reflectivityCoefficient": 1.5,
"specularReflection": 0.3,
"srpArea": 5,
"boxX": 1.5,
"boxY": 1,
"boxZ": 2,
"catalogueNoradId": 500000,
"color": "#FF5733",
"cosparId": "2024-001A",
"dryMass": 450,
"externalKey": "PARTNER-SAT-001",
"inertiaIxx": 1500,
"inertiaIyy": 1700,
"inertiaIzz": 2100,
"noradId": 43013,
"notYetCatalogued": True,
"panels": [
{
"absorption": 0.3,
"doubleSided": True,
"lengthM": 2,
"mountAxisPreset": "PLUS_Z",
"mountPositionX": -1.5,
"mountPositionY": 0,
"mountPositionZ": 0.25,
"name": "Port array",
"rotationDeg": 90,
"specularReflection": 0.2,
"widthM": 1,
"mountAxisCustomX": 0,
"mountAxisCustomY": 0,
"mountAxisCustomZ": 5
}
],
"payloads": [
{
"boresight": "Z+",
"fovShape": "CONICAL",
"name": "EO Camera",
"positionX": 0.1,
"positionY": 0,
"positionZ": -0.2,
"focalLengthMm": 120,
"halfAngleDeg": 30,
"halfHeightDeg": 20,
"halfWidthDeg": 10,
"offNadirAlongTrackDeg": 18,
"offNadirCrossTrackDeg": 30,
"pixelPitchUm": 5.5,
"radiusDeg": 30,
"sides": 6
}
],
"prismAxis": "Z",
"prismDiameter": 0.866025,
"prismDiameterMeasure": "INSCRIBED",
"prismHeightM": 1,
"prismSides": 6
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
absorption: 0.4,
bodyShape: 'BOX',
dragArea: 5,
dragCoefficient: 2.2,
launchMass: 500,
name: 'Sentinel-1A',
reflectivityCoefficient: 1.5,
specularReflection: 0.3,
srpArea: 5,
boxX: 1.5,
boxY: 1,
boxZ: 2,
catalogueNoradId: 500000,
color: '#FF5733',
cosparId: '2024-001A',
dryMass: 450,
externalKey: 'PARTNER-SAT-001',
inertiaIxx: 1500,
inertiaIyy: 1700,
inertiaIzz: 2100,
noradId: 43013,
notYetCatalogued: true,
panels: [
{
absorption: 0.3,
doubleSided: true,
lengthM: 2,
mountAxisPreset: 'PLUS_Z',
mountPositionX: -1.5,
mountPositionY: 0,
mountPositionZ: 0.25,
name: 'Port array',
rotationDeg: 90,
specularReflection: 0.2,
widthM: 1,
mountAxisCustomX: 0,
mountAxisCustomY: 0,
mountAxisCustomZ: 5
}
],
payloads: [
{
boresight: 'Z+',
fovShape: 'CONICAL',
name: 'EO Camera',
positionX: 0.1,
positionY: 0,
positionZ: -0.2,
focalLengthMm: 120,
halfAngleDeg: 30,
halfHeightDeg: 20,
halfWidthDeg: 10,
offNadirAlongTrackDeg: 18,
offNadirCrossTrackDeg: 30,
pixelPitchUm: 5.5,
radiusDeg: 30,
sides: 6
}
],
prismAxis: 'Z',
prismDiameter: 0.866025,
prismDiameterMeasure: 'INSCRIBED',
prismHeightM: 1,
prismSides: 6
})
};
fetch('https://api.valar.space/operations/spacecraft', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.valar.space/operations/spacecraft",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'absorption' => 0.4,
'bodyShape' => 'BOX',
'dragArea' => 5,
'dragCoefficient' => 2.2,
'launchMass' => 500,
'name' => 'Sentinel-1A',
'reflectivityCoefficient' => 1.5,
'specularReflection' => 0.3,
'srpArea' => 5,
'boxX' => 1.5,
'boxY' => 1,
'boxZ' => 2,
'catalogueNoradId' => 500000,
'color' => '#FF5733',
'cosparId' => '2024-001A',
'dryMass' => 450,
'externalKey' => 'PARTNER-SAT-001',
'inertiaIxx' => 1500,
'inertiaIyy' => 1700,
'inertiaIzz' => 2100,
'noradId' => 43013,
'notYetCatalogued' => true,
'panels' => [
[
'absorption' => 0.3,
'doubleSided' => true,
'lengthM' => 2,
'mountAxisPreset' => 'PLUS_Z',
'mountPositionX' => -1.5,
'mountPositionY' => 0,
'mountPositionZ' => 0.25,
'name' => 'Port array',
'rotationDeg' => 90,
'specularReflection' => 0.2,
'widthM' => 1,
'mountAxisCustomX' => 0,
'mountAxisCustomY' => 0,
'mountAxisCustomZ' => 5
]
],
'payloads' => [
[
'boresight' => 'Z+',
'fovShape' => 'CONICAL',
'name' => 'EO Camera',
'positionX' => 0.1,
'positionY' => 0,
'positionZ' => -0.2,
'focalLengthMm' => 120,
'halfAngleDeg' => 30,
'halfHeightDeg' => 20,
'halfWidthDeg' => 10,
'offNadirAlongTrackDeg' => 18,
'offNadirCrossTrackDeg' => 30,
'pixelPitchUm' => 5.5,
'radiusDeg' => 30,
'sides' => 6
]
],
'prismAxis' => 'Z',
'prismDiameter' => 0.866025,
'prismDiameterMeasure' => 'INSCRIBED',
'prismHeightM' => 1,
'prismSides' => 6
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.valar.space/operations/spacecraft"
payload := strings.NewReader("{\n \"absorption\": 0.4,\n \"bodyShape\": \"BOX\",\n \"dragArea\": 5,\n \"dragCoefficient\": 2.2,\n \"launchMass\": 500,\n \"name\": \"Sentinel-1A\",\n \"reflectivityCoefficient\": 1.5,\n \"specularReflection\": 0.3,\n \"srpArea\": 5,\n \"boxX\": 1.5,\n \"boxY\": 1,\n \"boxZ\": 2,\n \"catalogueNoradId\": 500000,\n \"color\": \"#FF5733\",\n \"cosparId\": \"2024-001A\",\n \"dryMass\": 450,\n \"externalKey\": \"PARTNER-SAT-001\",\n \"inertiaIxx\": 1500,\n \"inertiaIyy\": 1700,\n \"inertiaIzz\": 2100,\n \"noradId\": 43013,\n \"notYetCatalogued\": true,\n \"panels\": [\n {\n \"absorption\": 0.3,\n \"doubleSided\": true,\n \"lengthM\": 2,\n \"mountAxisPreset\": \"PLUS_Z\",\n \"mountPositionX\": -1.5,\n \"mountPositionY\": 0,\n \"mountPositionZ\": 0.25,\n \"name\": \"Port array\",\n \"rotationDeg\": 90,\n \"specularReflection\": 0.2,\n \"widthM\": 1,\n \"mountAxisCustomX\": 0,\n \"mountAxisCustomY\": 0,\n \"mountAxisCustomZ\": 5\n }\n ],\n \"payloads\": [\n {\n \"boresight\": \"Z+\",\n \"fovShape\": \"CONICAL\",\n \"name\": \"EO Camera\",\n \"positionX\": 0.1,\n \"positionY\": 0,\n \"positionZ\": -0.2,\n \"focalLengthMm\": 120,\n \"halfAngleDeg\": 30,\n \"halfHeightDeg\": 20,\n \"halfWidthDeg\": 10,\n \"offNadirAlongTrackDeg\": 18,\n \"offNadirCrossTrackDeg\": 30,\n \"pixelPitchUm\": 5.5,\n \"radiusDeg\": 30,\n \"sides\": 6\n }\n ],\n \"prismAxis\": \"Z\",\n \"prismDiameter\": 0.866025,\n \"prismDiameterMeasure\": \"INSCRIBED\",\n \"prismHeightM\": 1,\n \"prismSides\": 6\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.valar.space/operations/spacecraft")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"absorption\": 0.4,\n \"bodyShape\": \"BOX\",\n \"dragArea\": 5,\n \"dragCoefficient\": 2.2,\n \"launchMass\": 500,\n \"name\": \"Sentinel-1A\",\n \"reflectivityCoefficient\": 1.5,\n \"specularReflection\": 0.3,\n \"srpArea\": 5,\n \"boxX\": 1.5,\n \"boxY\": 1,\n \"boxZ\": 2,\n \"catalogueNoradId\": 500000,\n \"color\": \"#FF5733\",\n \"cosparId\": \"2024-001A\",\n \"dryMass\": 450,\n \"externalKey\": \"PARTNER-SAT-001\",\n \"inertiaIxx\": 1500,\n \"inertiaIyy\": 1700,\n \"inertiaIzz\": 2100,\n \"noradId\": 43013,\n \"notYetCatalogued\": true,\n \"panels\": [\n {\n \"absorption\": 0.3,\n \"doubleSided\": true,\n \"lengthM\": 2,\n \"mountAxisPreset\": \"PLUS_Z\",\n \"mountPositionX\": -1.5,\n \"mountPositionY\": 0,\n \"mountPositionZ\": 0.25,\n \"name\": \"Port array\",\n \"rotationDeg\": 90,\n \"specularReflection\": 0.2,\n \"widthM\": 1,\n \"mountAxisCustomX\": 0,\n \"mountAxisCustomY\": 0,\n \"mountAxisCustomZ\": 5\n }\n ],\n \"payloads\": [\n {\n \"boresight\": \"Z+\",\n \"fovShape\": \"CONICAL\",\n \"name\": \"EO Camera\",\n \"positionX\": 0.1,\n \"positionY\": 0,\n \"positionZ\": -0.2,\n \"focalLengthMm\": 120,\n \"halfAngleDeg\": 30,\n \"halfHeightDeg\": 20,\n \"halfWidthDeg\": 10,\n \"offNadirAlongTrackDeg\": 18,\n \"offNadirCrossTrackDeg\": 30,\n \"pixelPitchUm\": 5.5,\n \"radiusDeg\": 30,\n \"sides\": 6\n }\n ],\n \"prismAxis\": \"Z\",\n \"prismDiameter\": 0.866025,\n \"prismDiameterMeasure\": \"INSCRIBED\",\n \"prismHeightM\": 1,\n \"prismSides\": 6\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.valar.space/operations/spacecraft")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"absorption\": 0.4,\n \"bodyShape\": \"BOX\",\n \"dragArea\": 5,\n \"dragCoefficient\": 2.2,\n \"launchMass\": 500,\n \"name\": \"Sentinel-1A\",\n \"reflectivityCoefficient\": 1.5,\n \"specularReflection\": 0.3,\n \"srpArea\": 5,\n \"boxX\": 1.5,\n \"boxY\": 1,\n \"boxZ\": 2,\n \"catalogueNoradId\": 500000,\n \"color\": \"#FF5733\",\n \"cosparId\": \"2024-001A\",\n \"dryMass\": 450,\n \"externalKey\": \"PARTNER-SAT-001\",\n \"inertiaIxx\": 1500,\n \"inertiaIyy\": 1700,\n \"inertiaIzz\": 2100,\n \"noradId\": 43013,\n \"notYetCatalogued\": true,\n \"panels\": [\n {\n \"absorption\": 0.3,\n \"doubleSided\": true,\n \"lengthM\": 2,\n \"mountAxisPreset\": \"PLUS_Z\",\n \"mountPositionX\": -1.5,\n \"mountPositionY\": 0,\n \"mountPositionZ\": 0.25,\n \"name\": \"Port array\",\n \"rotationDeg\": 90,\n \"specularReflection\": 0.2,\n \"widthM\": 1,\n \"mountAxisCustomX\": 0,\n \"mountAxisCustomY\": 0,\n \"mountAxisCustomZ\": 5\n }\n ],\n \"payloads\": [\n {\n \"boresight\": \"Z+\",\n \"fovShape\": \"CONICAL\",\n \"name\": \"EO Camera\",\n \"positionX\": 0.1,\n \"positionY\": 0,\n \"positionZ\": -0.2,\n \"focalLengthMm\": 120,\n \"halfAngleDeg\": 30,\n \"halfHeightDeg\": 20,\n \"halfWidthDeg\": 10,\n \"offNadirAlongTrackDeg\": 18,\n \"offNadirCrossTrackDeg\": 30,\n \"pixelPitchUm\": 5.5,\n \"radiusDeg\": 30,\n \"sides\": 6\n }\n ],\n \"prismAxis\": \"Z\",\n \"prismDiameter\": 0.866025,\n \"prismDiameterMeasure\": \"INSCRIBED\",\n \"prismHeightM\": 1,\n \"prismSides\": 6\n}"
response = http.request(request)
puts response.read_body{
"absorption": 0.4,
"bodyShape": "BOX",
"boxX": 1.5,
"boxY": 1,
"boxZ": 2,
"catalogueNoradId": 123,
"color": "#FF5733",
"cosparId": "2024-001A",
"createdAt": "2023-11-07T05:31:56Z",
"dragArea": 5,
"dragCoefficient": 2.2,
"dryMass": 450,
"externalKey": "PARTNER-SAT-001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"inertiaIxx": 1500,
"inertiaIyy": 1700,
"inertiaIzz": 2100,
"launchMass": 500,
"lifecycleStatus": "Active",
"maneuverCapabilities": {
"allowedWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"availableManeuverPowerWatts": 123,
"blackoutWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"minimumManeuverSeparationSeconds": 123,
"schemaVersion": 123,
"thrusters": [
{
"alignmentError": {
"xRadians": 123,
"yRadians": 123,
"zRadians": 123
},
"allowedDirections": [
"RADIAL_OUT"
],
"combinedSteeringAllowed": true,
"dutyCycleWindowSeconds": 123,
"eclipsePolicy": "SUNLIGHT_ONLY",
"maximumDutyCycle": 123,
"minimumBurnSeconds": 123,
"minimumImpulseNewtonSeconds": 123,
"overheadBurns": [
{
"anchor": "BEFORE_MAIN_BURN",
"direction": "RADIAL_OUT",
"durationSeconds": 123,
"offsetSeconds": 123,
"thrusterId": "<string>"
}
],
"requiredPowerWatts": 123,
"settlingSeconds": 123,
"thrusterId": "<string>"
}
]
},
"name": "Sentinel-1A",
"noradId": 43013,
"notYetCatalogued": true,
"organizationId": "VALAR",
"panels": [
{
"absorption": 0.3,
"derivedNormal": {
"x": 1,
"y": 0,
"z": 0
},
"doubleSided": true,
"lengthM": 2,
"mountAxisCustomX": 0,
"mountAxisCustomY": 0,
"mountAxisCustomZ": 5,
"mountAxisPreset": "PLUS_Z",
"mountPositionX": -1.5,
"mountPositionY": 0,
"mountPositionZ": 0.25,
"name": "Port array",
"panelIndex": 0,
"rotationDeg": 90,
"specularReflection": 0.2,
"widthM": 1
}
],
"prismAxis": "Z",
"prismComplementaryDiameter": 1,
"prismDiameter": 0.866025,
"prismDiameterMeasure": "INSCRIBED",
"prismEdgeM": 0.5,
"prismHeightM": 1,
"prismSides": 6,
"reflectivityCoefficient": 1,
"specularReflection": 0.3,
"srpArea": 5,
"updatedAt": "2023-11-07T05:31:56Z"
}{
"absorption": 0.4,
"bodyShape": "BOX",
"boxX": 1.5,
"boxY": 1,
"boxZ": 2,
"catalogueNoradId": 123,
"color": "#FF5733",
"cosparId": "2024-001A",
"createdAt": "2023-11-07T05:31:56Z",
"dragArea": 5,
"dragCoefficient": 2.2,
"dryMass": 450,
"externalKey": "PARTNER-SAT-001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"inertiaIxx": 1500,
"inertiaIyy": 1700,
"inertiaIzz": 2100,
"launchMass": 500,
"lifecycleStatus": "Active",
"maneuverCapabilities": {
"allowedWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"availableManeuverPowerWatts": 123,
"blackoutWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"minimumManeuverSeparationSeconds": 123,
"schemaVersion": 123,
"thrusters": [
{
"alignmentError": {
"xRadians": 123,
"yRadians": 123,
"zRadians": 123
},
"allowedDirections": [
"RADIAL_OUT"
],
"combinedSteeringAllowed": true,
"dutyCycleWindowSeconds": 123,
"eclipsePolicy": "SUNLIGHT_ONLY",
"maximumDutyCycle": 123,
"minimumBurnSeconds": 123,
"minimumImpulseNewtonSeconds": 123,
"overheadBurns": [
{
"anchor": "BEFORE_MAIN_BURN",
"direction": "RADIAL_OUT",
"durationSeconds": 123,
"offsetSeconds": 123,
"thrusterId": "<string>"
}
],
"requiredPowerWatts": 123,
"settlingSeconds": 123,
"thrusterId": "<string>"
}
]
},
"name": "Sentinel-1A",
"noradId": 43013,
"notYetCatalogued": true,
"organizationId": "VALAR",
"panels": [
{
"absorption": 0.3,
"derivedNormal": {
"x": 1,
"y": 0,
"z": 0
},
"doubleSided": true,
"lengthM": 2,
"mountAxisCustomX": 0,
"mountAxisCustomY": 0,
"mountAxisCustomZ": 5,
"mountAxisPreset": "PLUS_Z",
"mountPositionX": -1.5,
"mountPositionY": 0,
"mountPositionZ": 0.25,
"name": "Port array",
"panelIndex": 0,
"rotationDeg": 90,
"specularReflection": 0.2,
"widthM": 1
}
],
"prismAxis": "Z",
"prismComplementaryDiameter": 1,
"prismDiameter": 0.866025,
"prismDiameterMeasure": "INSCRIBED",
"prismEdgeM": 0.5,
"prismHeightM": 1,
"prismSides": 6,
"reflectivityCoefficient": 1,
"specularReflection": 0.3,
"srpArea": 5,
"updatedAt": "2023-11-07T05:31:56Z"
}{
"absorption": 0.4,
"bodyShape": "BOX",
"boxX": 1.5,
"boxY": 1,
"boxZ": 2,
"catalogueNoradId": 123,
"color": "#FF5733",
"cosparId": "2024-001A",
"createdAt": "2023-11-07T05:31:56Z",
"dragArea": 5,
"dragCoefficient": 2.2,
"dryMass": 450,
"externalKey": "PARTNER-SAT-001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"inertiaIxx": 1500,
"inertiaIyy": 1700,
"inertiaIzz": 2100,
"launchMass": 500,
"lifecycleStatus": "Active",
"maneuverCapabilities": {
"allowedWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"availableManeuverPowerWatts": 123,
"blackoutWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"minimumManeuverSeparationSeconds": 123,
"schemaVersion": 123,
"thrusters": [
{
"alignmentError": {
"xRadians": 123,
"yRadians": 123,
"zRadians": 123
},
"allowedDirections": [
"RADIAL_OUT"
],
"combinedSteeringAllowed": true,
"dutyCycleWindowSeconds": 123,
"eclipsePolicy": "SUNLIGHT_ONLY",
"maximumDutyCycle": 123,
"minimumBurnSeconds": 123,
"minimumImpulseNewtonSeconds": 123,
"overheadBurns": [
{
"anchor": "BEFORE_MAIN_BURN",
"direction": "RADIAL_OUT",
"durationSeconds": 123,
"offsetSeconds": 123,
"thrusterId": "<string>"
}
],
"requiredPowerWatts": 123,
"settlingSeconds": 123,
"thrusterId": "<string>"
}
]
},
"name": "Sentinel-1A",
"noradId": 43013,
"notYetCatalogued": true,
"organizationId": "VALAR",
"panels": [
{
"absorption": 0.3,
"derivedNormal": {
"x": 1,
"y": 0,
"z": 0
},
"doubleSided": true,
"lengthM": 2,
"mountAxisCustomX": 0,
"mountAxisCustomY": 0,
"mountAxisCustomZ": 5,
"mountAxisPreset": "PLUS_Z",
"mountPositionX": -1.5,
"mountPositionY": 0,
"mountPositionZ": 0.25,
"name": "Port array",
"panelIndex": 0,
"rotationDeg": 90,
"specularReflection": 0.2,
"widthM": 1
}
],
"prismAxis": "Z",
"prismComplementaryDiameter": 1,
"prismDiameter": 0.866025,
"prismDiameterMeasure": "INSCRIBED",
"prismEdgeM": 0.5,
"prismHeightM": 1,
"prismSides": 6,
"reflectivityCoefficient": 1,
"specularReflection": 0.3,
"srpArea": 5,
"updatedAt": "2023-11-07T05:31:56Z"
}{
"absorption": 0.4,
"bodyShape": "BOX",
"boxX": 1.5,
"boxY": 1,
"boxZ": 2,
"catalogueNoradId": 123,
"color": "#FF5733",
"cosparId": "2024-001A",
"createdAt": "2023-11-07T05:31:56Z",
"dragArea": 5,
"dragCoefficient": 2.2,
"dryMass": 450,
"externalKey": "PARTNER-SAT-001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"inertiaIxx": 1500,
"inertiaIyy": 1700,
"inertiaIzz": 2100,
"launchMass": 500,
"lifecycleStatus": "Active",
"maneuverCapabilities": {
"allowedWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"availableManeuverPowerWatts": 123,
"blackoutWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"minimumManeuverSeparationSeconds": 123,
"schemaVersion": 123,
"thrusters": [
{
"alignmentError": {
"xRadians": 123,
"yRadians": 123,
"zRadians": 123
},
"allowedDirections": [
"RADIAL_OUT"
],
"combinedSteeringAllowed": true,
"dutyCycleWindowSeconds": 123,
"eclipsePolicy": "SUNLIGHT_ONLY",
"maximumDutyCycle": 123,
"minimumBurnSeconds": 123,
"minimumImpulseNewtonSeconds": 123,
"overheadBurns": [
{
"anchor": "BEFORE_MAIN_BURN",
"direction": "RADIAL_OUT",
"durationSeconds": 123,
"offsetSeconds": 123,
"thrusterId": "<string>"
}
],
"requiredPowerWatts": 123,
"settlingSeconds": 123,
"thrusterId": "<string>"
}
]
},
"name": "Sentinel-1A",
"noradId": 43013,
"notYetCatalogued": true,
"organizationId": "VALAR",
"panels": [
{
"absorption": 0.3,
"derivedNormal": {
"x": 1,
"y": 0,
"z": 0
},
"doubleSided": true,
"lengthM": 2,
"mountAxisCustomX": 0,
"mountAxisCustomY": 0,
"mountAxisCustomZ": 5,
"mountAxisPreset": "PLUS_Z",
"mountPositionX": -1.5,
"mountPositionY": 0,
"mountPositionZ": 0.25,
"name": "Port array",
"panelIndex": 0,
"rotationDeg": 90,
"specularReflection": 0.2,
"widthM": 1
}
],
"prismAxis": "Z",
"prismComplementaryDiameter": 1,
"prismDiameter": 0.866025,
"prismDiameterMeasure": "INSCRIBED",
"prismEdgeM": 0.5,
"prismHeightM": 1,
"prismSides": 6,
"reflectivityCoefficient": 1,
"specularReflection": 0.3,
"srpArea": 5,
"updatedAt": "2023-11-07T05:31:56Z"
}{
"absorption": 0.4,
"bodyShape": "BOX",
"boxX": 1.5,
"boxY": 1,
"boxZ": 2,
"catalogueNoradId": 123,
"color": "#FF5733",
"cosparId": "2024-001A",
"createdAt": "2023-11-07T05:31:56Z",
"dragArea": 5,
"dragCoefficient": 2.2,
"dryMass": 450,
"externalKey": "PARTNER-SAT-001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"inertiaIxx": 1500,
"inertiaIyy": 1700,
"inertiaIzz": 2100,
"launchMass": 500,
"lifecycleStatus": "Active",
"maneuverCapabilities": {
"allowedWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"availableManeuverPowerWatts": 123,
"blackoutWindows": [
{
"end": "2023-11-07T05:31:56Z",
"start": "2023-11-07T05:31:56Z"
}
],
"minimumManeuverSeparationSeconds": 123,
"schemaVersion": 123,
"thrusters": [
{
"alignmentError": {
"xRadians": 123,
"yRadians": 123,
"zRadians": 123
},
"allowedDirections": [
"RADIAL_OUT"
],
"combinedSteeringAllowed": true,
"dutyCycleWindowSeconds": 123,
"eclipsePolicy": "SUNLIGHT_ONLY",
"maximumDutyCycle": 123,
"minimumBurnSeconds": 123,
"minimumImpulseNewtonSeconds": 123,
"overheadBurns": [
{
"anchor": "BEFORE_MAIN_BURN",
"direction": "RADIAL_OUT",
"durationSeconds": 123,
"offsetSeconds": 123,
"thrusterId": "<string>"
}
],
"requiredPowerWatts": 123,
"settlingSeconds": 123,
"thrusterId": "<string>"
}
]
},
"name": "Sentinel-1A",
"noradId": 43013,
"notYetCatalogued": true,
"organizationId": "VALAR",
"panels": [
{
"absorption": 0.3,
"derivedNormal": {
"x": 1,
"y": 0,
"z": 0
},
"doubleSided": true,
"lengthM": 2,
"mountAxisCustomX": 0,
"mountAxisCustomY": 0,
"mountAxisCustomZ": 5,
"mountAxisPreset": "PLUS_Z",
"mountPositionX": -1.5,
"mountPositionY": 0,
"mountPositionZ": 0.25,
"name": "Port array",
"panelIndex": 0,
"rotationDeg": 90,
"specularReflection": 0.2,
"widthM": 1
}
],
"prismAxis": "Z",
"prismComplementaryDiameter": 1,
"prismDiameter": 0.866025,
"prismDiameterMeasure": "INSCRIBED",
"prismEdgeM": 0.5,
"prismHeightM": 1,
"prismSides": 6,
"reflectivityCoefficient": 1,
"specularReflection": 0.3,
"srpArea": 5,
"updatedAt": "2023-11-07T05:31:56Z"
}Authorizations
API Key (format: vsp_sk_...)
Body
Request payload for creating a new spacecraft
Optical absorption coefficient α (dimensionless). Range (0.0, 1.0]. MLI default 0.4.
0 < x < 10.4
Spacecraft body-shape primitive (DKR-2 §2.1). Determines which dimension columns are populated.
BOX, REGULAR_PRISM "BOX"
Operator-typed drag cross-sectional area in m² (DKR-1 §3.6a).
0 < x < 100005
Drag coefficient (typical values: 1.0-3.0)
0.1 < x < 102.2
Total mass at launch in kg
0.001 < x < 100000500
Name of the spacecraft
1 - 100^[a-zA-Z0-9\s_-]+$"Sentinel-1A"
Reflectivity coefficient (1=pure absorber, 2=pure specular reflector)
1 < x < 21.5
Optical specular-reflection coefficient ρs (dimensionless). Range [0.0, 1.0). MLI default 0.3. Energy conservation: absorption + specularReflection <= 1.0.
0 < x < 10.3
Operator-typed solar-radiation-pressure cross-sectional area in m² (DKR-1 §3.6a).
0 < x < 100005
Spacecraft box/bus X dimension (width) in meters. Required when bodyShape=BOX.
0.001 < x < 10001.5
Spacecraft box/bus Y dimension (height) in meters. Required when bodyShape=BOX.
0.001 < x < 10001
Spacecraft box/bus Z dimension (length) in meters. Required when bodyShape=BOX.
0.001 < x < 10002
Selected public catalogue NORAD key; the server derives both identifiers.
1 <= x <= 999999Spacecraft color in hex format (with or without #)
^#?[0-9A-Fa-f]{6}$"#FF5733"
COSPAR international designator
20^\d{4}-\d{1,3}[A-HJ-NP-Z]{1,15}$"2024-001A"
Mass without propellant in kg
0.001 < x < 100000450
Caller-assigned external reference key (letters, digits, and. _ : - ; up to 64 chars). Optional; unique within your organization; immutable once set.
64^[A-Za-z0-9._:-]{1,64}$"PARTNER-SAT-001"
Principal moment of inertia about the body's primary principal axis (kg·m²). Optional; null when inertia is not configured.
1500
Principal moment of inertia about the body's secondary principal axis (kg·m²). Optional; null when inertia is not configured.
1700
Principal moment of inertia about the body's tertiary principal axis (kg·m²). Optional; null when inertia is not configured.
2100
NORAD catalog number
1 <= x <= 99999943013
Explicitly not yet catalogued. Omit only for legacy API clients or unrelated updates.
Advanced-geometry solar panels attached to this spacecraft. 0..8 entries; per-panel validation cascades via @Valid.
8One independent solar / radiator panel (DKR-1 §2).
Show child attributes
Show child attributes
Payloads (sensors) attached to this spacecraft. 0..8 entries; per-payload validation cascades via @Valid.
8One payload (sensor): boresight axis + four-shape field of view (DKR-1 §3.3).
Show child attributes
Show child attributes
Extrusion axis of the regular prism (DKR-1 §3.4). Defaults to Z. Populated only when bodyShape = REGULAR_PRISM.
X, Y, Z "Z"
Operator-supplied cross-section diameter D in meters (DKR-1 §3.4). Converted to the canonical edge length per prismDiameterMeasure. Populated only when bodyShape = REGULAR_PRISM; null otherwise.
0.001 < x < 10000.866025
Whether prismDiameter is the inscribed (across-flats) or circumscribed (across-vertices) circle diameter (DKR-1 §3.4). Populated only when bodyShape = REGULAR_PRISM; null otherwise.
INSCRIBED, CIRCUMSCRIBED "INSCRIBED"
Regular-prism height L along the extrusion axis in meters (DKR-1 §3.4). Populated only when bodyShape = REGULAR_PRISM; null otherwise.
0.001 < x < 10001
Number of regular-polygon sides N (DKR-1 §3.4). Populated only when bodyShape = REGULAR_PRISM; null otherwise. Range [3, 12].
3 <= x <= 126
Response
Spacecraft successfully registered
Response containing spacecraft details
Optical absorption coefficient α (dimensionless). Range (0.0, 1.0].
0.4
Body geometry primitive (BOX or REGULAR_PRISM).
BOX, REGULAR_PRISM "BOX"
Spacecraft box/bus X dimension (width) in meters
1.5
Spacecraft box/bus Y dimension (height) in meters
1
Spacecraft box/bus Z dimension (length) in meters
2
Spacecraft color in hex format
"#FF5733"
COSPAR international designator
"2024-001A"
Timestamp when the spacecraft was created
Operator-typed drag cross-sectional area in m² (null for pre-migration spacecraft)
5
Drag coefficient
2.2
Mass without propellant in kg
450
Caller-assigned external reference key (unique within your organization; immutable once set). Null when no key has been assigned.
"PARTNER-SAT-001"
Unique identifier of the spacecraft
"550e8400-e29b-41d4-a716-446655440000"
Principal moment of inertia about the body's primary principal axis (kg·m²). Optional; null when inertia is not configured.
1500
Principal moment of inertia about the body's secondary principal axis (kg·m²). Optional; null when inertia is not configured.
1700
Principal moment of inertia about the body's tertiary principal axis (kg·m²). Optional; null when inertia is not configured.
2100
Total mass at launch in kg
500
Lifecycle status of the spacecraft
"Active"
Reusable declared maneuver capabilities; null means not configured, not unrestricted.
Show child attributes
Show child attributes
Name of the spacecraft
"Sentinel-1A"
NORAD catalog number
43013
Organization ID that owns this spacecraft
"VALAR"
Per-panel rows (0..8). Each entry carries dimensions, attachment face, and orientation angles.
Show child attributes
Show child attributes
Extrusion axis of the regular prism (DKR-1 §3.4). Populated only when bodyShape=REGULAR_PRISM; null otherwise.
X, Y, Z "Z"
Cross-section diameter in the OTHER datum (the complement of prismDiameterMeasure), computed from edge + sides (DKR-1 §3.4). Populated only when bodyShape=REGULAR_PRISM; null otherwise.
1
Cross-section diameter in the operator's chosen datum (prismDiameterMeasure), computed from edge + sides (DKR-1 §3.4). Populated only when bodyShape=REGULAR_PRISM; null otherwise.
0.866025
Which diameter datum the operator used to size the cross-section (DKR-1 §3.4). Populated only when bodyShape=REGULAR_PRISM; null otherwise.
INSCRIBED, CIRCUMSCRIBED "INSCRIBED"
Canonical regular-polygon edge length a in meters (DKR-1 §6) — the persisted source-of-truth cross-section dimension. Populated only when bodyShape=REGULAR_PRISM; null otherwise.
0.5
Regular-prism height L along the extrusion axis in meters. Populated only when bodyShape=REGULAR_PRISM; null otherwise.
1
Number of regular-polygon sides N (DKR-1 §3.4). Populated only when bodyShape=REGULAR_PRISM; null otherwise.
6
Reflectivity coefficient
1
Optical specular-reflection coefficient ρs (dimensionless). Range [0.0, 1.0).
0.3
Operator-typed SRP cross-sectional area in m² (null for pre-migration spacecraft)
5
Timestamp when the spacecraft was last updated
Was this page helpful?