Designation Identifier API¶
The Designation Identifier API returns information about the various designations assigned to small solar system objects.
Endpoint¶
Method: GET
Parameters¶
You can search for up to 100 designations at once. The response will be a dictionary of results, using the input IDs as keys.
Input search terms can be any of the following. You may mix and match input types:
- Unpacked Primary (or Secondary) Provisional Designations, e.g.,
1984 KB,A/2017 U1,S/1900 J 10 - Packed Provisional Designations, e.g.,
J84K00B,AK17U010,SJ00J100 - Names, e.g.,
Jason,ʻOumuamua,Lysithea - Permanent IDs, e.g.,
6063,1I,Jupiter X - Packed Permanent IDs, e.g.,
06063,0001I,J010S
JSON Input Format¶
The following fields are accepted by the API:
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
ids |
List of strings | Yes | NA | List of designations to search for |
comparison |
String | No | None | PSQL comparison operator for fuzzy name searches; one of ['=', 'ILIKE', '%'] |
group |
String | No | None | One of ['Minor Planets', 'Natural Satellites', 'Comets', 'Interstellar']; constrains the name search to a category of objects. |
Note
The comparison and group fields are only applicable in name searches.
Response Fields¶
The following fields are always returned by the API. If the object lacks one of these ID types, the value will be null.
| Field | Type | Description |
|---|---|---|
found |
Integer | 0 if no match, 1 if found, >1 if disambiguation needed |
object_type |
List of two values | An object type identifier: [String name, Numeric index] |
name |
String | Object name (if assigned) |
citation |
String | Citation text (if assigned) |
permid |
String | Permanent ID |
packed_permid |
String | Packed permanent ID |
iau_designation |
String | IAU designation |
orbfit_name |
String | Orbfit-friendly ID (IAU designation without spaces) |
packed_primary_provisional_designation |
String | Packed primary provisional designation |
packed_secondary_provisional_designations |
List of strings | Packed secondary designations |
unpacked_primary_provisional_designation |
String | Unpacked primary provisional designation |
unpacked_secondary_provisional_designations |
List of strings | Unpacked secondary designations |
disambiguation_list |
List of dictionaries | Populated only when multiple matches found |
Examples¶
Python - Basic Query¶
import requests
import json
my_list = {"ids": ["Ceres", "2020 AB1"]}
response = requests.get("https://data.minorplanetcenter.net/api/query-identifier", json=my_list)
response.raise_for_status()
print(json.dumps(response.json(), indent=4))
Output:
{
"2020 AB1": {
"citation": null,
"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": {
"citation": null,
"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 - Fuzzy Name Search¶
import requests
import json
req = {"ids": ["Boriso"], "comparison": "%", "group": "Minor Planets"}
response = requests.get("https://data.minorplanetcenter.net/api/query-identifier", json=req)
response.raise_for_status()
print(json.dumps(response.json(), indent=4))
This returns a disambiguation list for minor planets with names similar to 'Boriso'.