api par GET. Les paramètres à transmettre sont les suivants :
object : type d'objet demandé stringcampaign1 : numéro d'identification interne de la campagne mère integerid2 : numéro d'identification interne de l'objet integerkey2: clé servant de jeton d'authentification, propre à la campagne ou au stabtraj public string (22)id est fourniobject = motor
GET planete-sciences.org/espace/spock/api.html?object=campaign&id=42&key=0123456789abcdefABCDEF
GET /api.html?object=campaign&id={campaign_id}&key={campaign_key}
id : numéro d'identification interne unique integername : nom stringyear : année integer (4)owner_id : numéro d'identification interne unique du propriétaire integerowner_name : nom du propriétaire stringrocketry : true si mode rocketry (pages altimètres et arbitrage) booleanshuttle : true si mode navette (page navette) booleanmotors : tableau des numéros d'identification interne uniques des propulseurs proposés array(integer)launchpads : tableau des noms des rampes array(string)projects : tableau des projets array(Project::id => object Project)GET /api.html?object=project&id={project_id}&key={campaign_key}
Tous les projet d'une campagne :
GET /api.html?object=project&campaign={campaign_id}&key={campaign_key}
id : numéro d'identification interne unique integercampaign : numéro d'identification interne unique de la campagne parent integersource_id : numéro d'identification unique dans l'environnement source integersource_name : nom de l'environnement source string
poolzor : Poolzor espacerocketry : SCAE Rocketry Challengecspace : SCAE C'Spacecansat_lycee : SCAE CanSat lycéeninterne : projet créé dans SPOCKtype : type integer
0 : Microfusée1 : Minifusée2 : Rocketry Challenge3 : Fusée expérimentale4 : CanSat5 : Ballonregistration : matricule stringname : nom stringclub : nom du club stringphone : numéro de téléphone stringvehicle : true si le projet est véhiculé booleantime_clubtent : temps de chronologie estimé en tente club, en minutes integertime_launchpad : temps de chronologie estimé en rampe, en minutes integerstabtraj : tableau des stabtrajs array(StabTraj::sheet => object StabTraj)launches : tableau des lancements array(Launch::id => object Launch)rso : tableau des incidents pyro array(RSO::id => object RSO)GET /api.html?object=stabtraj&id={stabtraj_id}&key={campaign_key}
Un StabTraj public en particulier :
GET /api.html?object=stabtraj&id={stabtraj_id}&key={stabtraj_key}
Tous les StabTraj d'une campagne :
GET /api.html?object=stabtraj&campaign={campaign_id}&key={campaign_key}
id : numéro d'identification interne unique integerproject : numéro d'identification interne unique du projet parent integersheet : numéro de feuille integerForme_ogive : forme de l'ogive integer
0 : Parabolique1 : Ogivale2 : ConiqueLong_ogive : longueur de l'ogive en mm integerD_og : diamètre à la base de l'ogive en mm integerD_ref : diamètre de référence en mm integerNb_trans : nombre de transitions integerl_j|r|s1 : longueur de la transition j|r|s en mm integerD1_j|r|s1 : diamètre avant la transition j|r|s en mm integerD2_j|r|s1 : diamètre après la transition j|r|s en mm integerX_j|r|s1 : position de la transition j|r|s en mm integerm_ail|can2 : emplenture des ailerons (canards) en mm integern_ail|can2 : saumon des ailerons (canards) en mm integerp_ail|can2 : flèche des ailerons (canards) en mm integerE_ail|can2 : envergure des ailerons (canards) en mm integerep_ail|can2 : epaisseur des ailerons (canards) en mm integerQ_ail|can2 : nombre d'ailerons (canards) en mm integerX_ail|can2 : position des ailerons (canards) en mm integerD_ail|can2 : diamètre aux ailerons (canards) en mm integerpropu : numéro d'identification interne unique du propulseur integerpropu_name : nom complet du propulseur stringpropu_cat : categorie du propulseur integer
0 : Micro1 : Minif2 : MinifEx3 : FusEx4 : CanSatdep_moteur : choix du délai du propulseur integerdep_reglage : réglage du délai par forage integerpropu_insert : propulseur integer
0 : mesures sans Propulseur1 : mesures avec Propulseur vide2 : mesures avec Propulseur pleinXpropuRef : position du propulseur en mm integerMasseSans : masse en kg floatXcgSans : position du centre de masse en mm integerLong_tot : longueur totale en mm integerCx : cx floatL_rampe : longueur de la rampe en mm floatBeta_rampe : inclinaison de la rampe en ° integerType_rampe : type de rampe integer
0 : Non défini1 : Rail2 : CageT_ini3 : temps initial en s floatV_ini3 : vitesse initiale en m/s integerZ_ini3 : altitude initiale en m integerX_ini3 : position initiale en m integerprop_ini3 : Δt allumage du propulseur après T_ini en s floatF_para|satellite|satellite24 : type de parachute integer
0 : Disque1 : Croix2 : AutreRe_para|satellite|satellite24 : rayon extérieur du parachute OU surface de référence si F_ = autre floatRi_para|satellite|satellite24 : rayon intérieur du parachute en mm integerCx_para|satellite|satellite24 : cx du parachute floatm_satellite|satellite24 : masse du satellite en kg floatt_satellite|satellite24 5 : temps de largage du satellite en s floatcouleur_fusee6 : couleur principale de la fusée stringcouleur_para6 : couleur principale des parachutes stringautonomie6 : autonomie du séquenceur, en minutes integertelem6 : informations concernant la télémétrie stringflag6 : true si une dérogation au cahier des charges est nécéssaire booleannote6 : notes de contrôle stringtime : timestamp de la dernière ouverture integerNb_trans_can indisponibles si Q_can = 0_satellite(2) indisponibles si t_satellite(2) = 0t_satellite = 0, alors t_satellite est fixé à la durée du dépotage propulseursheet > 0
GET /api.html?object=launch&id={launch_id}&key={campaign_key}
Tous les lancements d'une campagne :
GET /api.html?object=launch&campaign={campaign_id}&key={campaign_key}
id : numéro d'identification interne unique integerproject : numéro d'identification interne unique du projet parent integerarrived : timestamp d'arrivée à l'accueil integeraltimeter : numéro d'altimètre - 42 par défaut si Campaign::rocketry = false integersafety_checks_progress : avancée des contrôles, sur 100 integersafety_checks_approved : timestamp de validation des contrôles integervalidator_id : numéro d'identification interne unique du responsable de la qualification integervalidator_name : nom du responsable de la qualification stringready : heure HH:mm à laquelle le projet sera prêt à partir en ZAS stringembarked : true si le projet a quitté la base vie booleanzas : timestamp d'arrivée en ZAS integerlaunchpad : numéro d'ordre de la rampe integerlaunchpad_name : nom correspondant dans la campagne cf Campaign::launchpads stringlaunched : timestamp du lancement integerresult1 : résultat du lancement integer
0 : Non lancé1 : Nominal2 : Disqualifié3 : Balistique4 : Dest. en vol5 : Perdumotors2 : tableau des numéros d'identification interne uniques des propulseurs utilisés array(integer)recovered : true si récupéré booleanlocation : localisation object Locationnote : note associée stringProject::type = 1 (Rocketry).GET /api.html?object=rso&id={rso_id}&key={campaign_key}
Tous les incidents Sauvegarde d'une campagne :
GET /api.html?object=rso&campaign={campaign_id}&key={campaign_key}
id : numéro d'identification interne unique integerproject : numéro d'identification interne unique du projet parent integerignition : timestamp de la mise à feu integermotor : numéro d'identification interne unique du propulseur concerné integerreport : rapport d'incident stringGET /api.html?object=motor&id={motor_id}
Tous les moteurs :
GET /api.html?object=motor
id : numéro d'identification interne unique integercategory : categorie integer
0 : Micro1 : Minif2 : MinifEx3 : FusEx4 : CanSatname_full : nom complet intégrant les informations de délai stringname : nom stringmanufacturer : fabricant stringlength : longueur integerdiameter : diamètre integerweight_total : masse initiale floatweight_burnout : masse après combustion floatdelays : délais disponibles array(integer)delay_settings : réglages de délai disponibles array(integer)burntime : durée de combustion à 95% en s floatitot : impulsion totale en N.s floatimoy : impulsion moyenne en N floatimax : impulsion maximale en N floatisp : impulsion spécifique en s floatthrust : table de poussee object JSONGET /api.html?object=location&id={location_id}&key={campaign_key}
id : numéro d'identification interne unique integerlaunch : numéro d'identification interne unique du lancement parent integerlatitude : latitude GNSS floatlongitude : longitude GNSS floaterror : marge d'erreur GNSS, en mètres floattime : timestamp de création integerProject::id => object Project)
StabTraj::sheet => object StabTraj)Launch::id => object Launch)
RSO::id => object RSO)api par PUT. Les paramètres à transmettre au format JSON dans le corps de la requête sont les suivants :
object : type d'objet demandé stringid : numéro d'identification interne de l'objet integerkey : clé servant de jeton d'authentification, propre à la campagne ou au stabtraj publicstring (22)data : propriétés à modifier de l'objet JSON key/value pairs
PUT
planete-sciences.org/espace/spock/api.html
typenameclubphonevehicletime_clubtenttime_launchpadForme_ogiveLong_ogiveD_ogD_refNb_transl_jD1jD2jX_jl_rD1rD2rX_rl_sD1sD2sX_sm_ailn_ailp_ailE_ailep_ailQ_ailX_ailD_ailm_cann_canp_canE_canep_canQ_canX_canD_canpropudep_moteurdep_reglagepropu_insertXpropuRefMasseSansXcgSansLong_totCxL_rampeBeta_rampeType_rampeT_iniV_iniZ_iniX_iniprop_iniF_paraRe_paraRi_paraCx_param_satellitet_satelliteF_satelliteRe_satelliteRi_satelliteCx_satellitem_satellite2t_satellite2F_satellite2Re_satellite2Ri_satellite2Cx_satellite2couleur_fuseecouleur_paraautonomiealtimeter : modifiable si launchpad = 0 et Campaign::rocketry = true.ready : modifiable sans conditions.embarked : modifiable si safety_checks_approved > 0 et zas = 0.zas : modifiable si embarked = true et launchpad = 0.launchpad : modifiable si zas > 0 et result = 0.recovered : modifiable si result > 0 et Campaign::rocketry = false.error_code : code d'erreur string
bad_request : paramètres obligatoires manquantsunauthorized : l'id de campagne ou la clé d'API fournie est incorrecteforbidden : accès temporairement bloqué suite à un trop grand nombre de tentatives ratéesnot_found : l'objet demandé n'a pas été trouvémethod_not_allowed : l'objet n'accepte pas le type de requête reçuconflict : l'objet a expressement rejeté la requête qu'il ne peut accepter en raison de son étaterror_label : description de l'erreur stringarrived |
altimeter |
safety_checks_progress |
safety_checks_approved |
embarked |
zas |
launchpad |
result |
recovered |
|
| Attendu aux altimètres | - | - | - | - | - | - | - | - | |
| Attendu aux contrôles | - | - | - | - | - | - | - | ||
| En cours de qualification | - | - | - | - | - | - | |||
| Qualifié | - | - | - | - | - | ||||
| En route vers la ZAS | - | - | - | - | |||||
| En ZAS | - | - | - | ||||||
| En rampe | - | - | |||||||
| Lancé | - | ||||||||
| Récupéré / Clos |