Designation Identifier API
The Designation Identifier API is a REST endpoint, therefore you can use your language of choice to send GET requests to the following URL:
https://data.minorplanetcenter.net/api/query-identifier
You can search for an individual ID, or a list (in JSON format) of up to 100. The response for a list will be a dictionary of responses, using the input ids as keys.
Field Descriptions
The following fields are always returned by the API. If the object lacks one of these ID types, the value will be null.
Field name | Type | Details |
found | Integer | 0 if no match found, 1 if found. If a value above 1 is returned the disambiguation_list will contain the conflicted matches |
object_type | List of two values | [String representation of name, Numeric index of object type] |
orbfit_name | String | Orbfit friendly ID format. It is the iau_designation without spaces. |
name | String | Name assigned to object |
iau_designation | String | IAU designation assigned to object |
permid | String | Permanent ID |
packed_permid | String | Packed Permanent ID |
packed_primary_provisional_designation | String | Packed primary provisional designation |
packed_secondary_provisional_designations | List[str] | List of packed secondary provisional designations |
unpacked_primary_provisional_designation | String | Unpacked primary provisional designation |
unpacked_secondary_provisional_designations | List[str] | List of unpacked secondary provisional designation |
disambiguation_list | List[dict] | Populated when multiple matches were found |
Python Example - Single ID
import requests
import json
response = requests.get("https://data.minorplanetcenter.net/api/query-identifier", data="Ceres")
if response.ok:
print(json.dumps(response.json(), indent=4))
else:
print("Error: ", response.status_code, response.content)
Output
{
"disambiguation_list": null,
"found": 1,
"iau_designation": "1",
"name": "Ceres",
"object_type": [
"Minor Planet",
0
],
"orbfit_name": "1",
"packed_permid": "00001",
"packed_primary_provisional_designation": "I01A00A",
"packed_secondary_provisional_designations": [
"I99O00F",
"J43X00B"
],
"permid": "1",
"unpacked_primary_provisional_designation": "A801 AA",
"unpacked_secondary_provisional_designations": [
"A899 OF",
"1943 XB"
]
}
Python Example - List
import requests
import json
my_list = {"ids": ["Ceres", "2020 AB1"]}
response = requests.get("https://data.minorplanetcenter.net/api/query-identifier", json=my_list)
if response.ok:
print(json.dumps(response.json(), indent=4))
else:
print("Error: ", response.status_code, response.content)
Output
{
"2020 AB1": {
"disambiguation_list": null,
"found": 1,
"iau_designation": "2020 AB1",
"name": null,
"object_type": [
"Minor Planet",
0
],
"orbfit_name": "2020AB1",
"packed_permid": null,
"packed_primary_provisional_designation": "K20A01B",
"packed_secondary_provisional_designations": [
"K16D00O"
],
"permid": null,
"unpacked_primary_provisional_designation": "2020 AB1",
"unpacked_secondary_provisional_designations": [
"2016 DO"
]
},
"Ceres": {
"disambiguation_list": null,
"found": 1,
"iau_designation": "1",
"name": "Ceres",
"object_type": [
"Minor Planet",
0
],
"orbfit_name": "1",
"packed_permid": "00001",
"packed_primary_provisional_designation": "I01A00A",
"packed_secondary_provisional_designations": [
"I99O00F",
"J43X00B"
],
"permid": "1",
"unpacked_primary_provisional_designation": "A801 AA",
"unpacked_secondary_provisional_designations": [
"A899 OF",
"1943 XB"
]
}
}