All planets and their moons, all dwarfs planets and the main asteroids.
Dimensions, mass, flattening, gravity, inclination and temperature.
Semimajor axis, perihelion, aphelion, eccentricity, orbital period and orbital speed.
Discovery circumstances, discoverer(s), year discovered and provisional designation.
For every body, all its satellites and the ability to navigate between satellites and the star.
Known count of each object type : planets, moons, asteroids, comets.
Added of 15 Jupiter's moons.
Added of 62 Saturne's moons.
Added bodyType.
Values massValue, massExponent, volValue, volExponent are permitted in Filters.
isplanet can be used with true or false value.
Added Mean temperature and orbital characteristics Mean anomaly, Longitude of ascending node and Argument of perihelion.
New endpoint /knowcount
Return the known count of each object type.
Added axial tilt for each planet.
Fix mean radius of the Sun.
Semimajor axis, perihelion and aphelion are now bigint.
Adding 20 Saturn's satellites.
Added temporary designations and English names for all bodies where those informations was missing.
brutData and datas are replaced by rowData and data.
Adding data : volume, density, gravity, escape speed, radius, dimension, perihelion, aphelion and rotation & revolution speed.
Adding mass with two values : mass and the exp 10nkg.
Creation of this website to describe the API. With release notes, API documentation, return data description and Swagger interface.
Adding asteroids and TNO. English names are authorized as keys with a 301 redirection to the French name.
First version of API online with planets and moons. The swagger documentation is online too.
No API with all Solar System data seems to exist. It's time to create one, isn't it?
An URL returns all bodies in the database with all data:
https://api.le-systeme-solaire.net/rest/bodies/
An URL returns all data of one body:
https://api.le-systeme-solaire.net/rest/bodies/{id}
An URL returns all known count for each object type :
https://api.le-systeme-solaire.net/rest/knowncount/
An URL returns known count for the object type :
https://api.le-systeme-solaire.net/rest/knowncount/{id}
# | Parameter | Action |
---|---|---|
1 | data | The data you want to retrieve (comma separated). Example: data=id,semimajorAxis,isPlanet |
2 | exclude | One or more data you want to exclude (comma separated). Example: exclude=id,isPlanet |
3 | order | The sort order data you want to use and the sort direction (comma separated). Example: order=semimajorAxis,asc NB : Only one data is authorized. |
4 | page | Page number (number>=1) and page size (size>=1 with 20 as default) (comma separated). Example: page=1,10 NB: You cannot use "page" without "order"! |
5 | rowData | Transform the objects in records. Example: rowData=true NB: This can also be done client-side in JavaScript! NB: The default value is false. |
6 | filter[] | Filters to be applied. Each filter consists of a data, an operator and a value (comma separated). Example: filter[]=id,eq,mars Accepted operators are:
NB: if any filter is invalid, all filters will be ignored. |
7 | satisfy | Should all filters match (default). Example: satisfy=any NB: the only authorized value is any |
# | Name | Type | Content |
---|---|---|---|
1 | id | string | Id of body in the API. |
2 | name | string | Body name (in french). |
3 | englishName | string | English name. |
4 | isPlanet | boolean | Is it a planet? |
5 | moons [{moon, rel}, ...] |
array [{string, string}, ...] |
Table with all moons. moon: Moon name, rel: moon API url. |
6 | semimajorAxis | integer | Semimajor Axis of the body in kilometres. |
7 | perihelion | integer | Perihelion in kilometres. |
8 | aphelion | integer | Aphelion in kilometres. |
9 | eccentricity | decimal | Orbital eccentricity. |
10 | inclination | decimal | Orbital inclination in degrees. |
11 | mass {massValue, massExponent} |
object {number, integer} |
Boby mass in 10n kg. massValue: body mass, massExponent: exponent 10. |
12 | vol {volValue, volExponent} |
object {number, integer} |
Body volume in 10n km3. volValue: body volume, volExponent: exponant 10. |
13 | density | decimal | Body density in g.cm3. |
14 | gravity | decimal | Surface gravity in m.s-2. |
15 | escape | decimal | Escape speed in m.s-1. |
16 | meanRadius | integer | Mean radius in kilometres. |
17 | equaRadius | integer | Equatorial radius in kilometres. |
18 | polarRadius | integer | Polar radius in kilometres. |
19 | escape | flattening | Flattening. |
20 | dimension | string | Body dimension on the 3 axes X, Y et Z for non-spherical bodies. |
21 | sideralOrbit | decimal | Sideral orbital time for body around another one (the Sun or a planet) in earth day. |
22 | sideralRotation | decimal | Sideral rotation, necessary time to turn around itself, in hour. |
23 | aroundPlanet {planet, rel} |
object {string, string} |
For a moon, the planet around which it is orbiting. planet: Planet name, rel: planet API url. |
24 | discoveredBy | string | Discovery name. |
25 | discoveryDate | string | Discovery date. |
26 | alternativeName | string | Temporary name. |
27 | axialTilt | decimal | Axial tilt. |
28 | avgTemp | integer | Mean temperature in K. |
29 | mainAnomaly | decimal | Mean anomaly in degree. |
30 | argPeriapsis | decimal | Argument of perihelion in degree. |
31 | longAscNode | decimal | Longitude of ascending node in degree. |
32 | bodyType | string | The body type : Star, Planet, Dwarf Planet, Asteroid, Comet or Moon. |
# | Parameter | Action |
---|---|---|
1 | rowData | Transform the objects in records. Example: rowData=true NB: This can also be done client-side in JavaScript! NB: The default value is false. |
# | Name | Type | Content |
---|---|---|---|
1 | id | string | Object type. |
2 | knowncount | integer | Known count. |
3 | updateDate | string | Update date of the Known count. |