This guide gets you up-and-running with the AirMap Aircraft API. Get drone aircraft information by manufacturer and model.

Get Aircraft Manufacturer Information
## Get manufacturer information with the [`/aircraft/manufacturer`](https://developers.airmap.com/reference#aircraft-makes) endpoint. Optionally, include a `q` search parameter to filter results by manufacturer name:
curl -X "GET" "https://api.airmap.com/aircraft/v2/manufacturer?q=dji" \
-H "X-API-Key: {YOUR API KEY}"
## The response includes the `id`, `name` and `url`, if available:
{
"status": "success",
"data": [
{
"id": "2a55b47e-ca49-4b7e-99c7-dee9cd784ec9",
"name": "DJI"
}
]
}
// List All Manufacturers
AirMap.listManufacturers { result in
switch result {
case .error(let error):
// Handle error case
print(error)
case .value(let manufacturers):
// Handle success case
}
}
// Search Manufacturers
AirMap.searchManufacturers(by: <#T##String#>) { result in
switch result {
case .error(let error):
// Handle error case
print(error)
case .value(let manufacturers):
// Handle success case
}
}
AirMap.getManufacturers(new AirMapCallback<List<AirMapAircraftManufacturer>>() {
@Override
protected void onSuccess(List<AirMapAircraftManufacturer> manufacturers) {
// Handle success
}
@Override
protected void onError(AirMapException e) {
// Handle error
}
});
var request = require('superagent');
request
.get('https://api.airmap.com/aircraft/v2/manufacturer')
.set('X-API-Key', '{YOUR API KEY}')
.query({"q":"dji"})
.redirects(0)
.end(function(err, res){
if (err || !res.ok) {
console.log('Oh no! error');
} else {
console.log('yay got ' + JSON.stringify(res.body));
}
});
import requests
def send_request():
try:
response = requests.get(
url="https://api.airmap.com/aircraft/v2/manufacturer",
params={
"q": "dji",
},
headers={
"X-API-Key": "{YOUR API KEY}",
},
)
print('Response HTTP Status Code: {status_code}'.format(
status_code=response.status_code))
print('Response HTTP Response Body: {content}'.format(
content=response.content))
except requests.exceptions.RequestException:
print('HTTP Request failed')
require 'net/http'
require 'net/https'
def send_request
begin
uri = URI('https://api.airmap.com/aircraft/v2/manufacturer?q=dji')
# Create client
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_PEER
# Create Request
req = Net::HTTP::Get.new(uri)
# Add headers
req.add_field "X-API-Key", "{YOUR API KEY}"
# Fetch Request
res = http.request(req)
puts "Response HTTP Status Code: #{res.code}"
puts "Response HTTP Response Body: #{res.body}"
rescue StandardError => e
puts "HTTP Request failed (#{e.message})"
end
end
For full API reference, click here.
Get Aircraft Models
## Get a list of available drone models with the [`/aircraft/model`](https://developers.airmap.com/reference#aircraft-models) endpoint. Optionally, filter results by including a `manufacturer` parameter utilizing the id from the `/aircraft/manufacturer/` route, and/or `q` search parameter to filter results by model name:
curl -X "GET" "https://api.airmap.com/aircraft/v2/model?manufacturer=2a55b47e-ca49-4b7e-99c7-dee9cd784ec9&q=phantom" \
-H "X-API-Key: {YOUR API KEY}"
## The response includes a list of matching drone models, including manufacturer information:
{
"status": "success",
"data": [
{
"id": "0bdc3e35-75ba-4e02-9040-d336d11f5202",
"name": "Phantom 1",
"manufacturer": {
"id": "2a55b47e-ca49-4b7e-99c7-dee9cd784ec9",
"name": "DJI"
}
},
{
"id": "240df9a0-fd43-448e-bb05-31a5f0158893",
"name": "Matrice",
"manufacturer": {
"id": "2a55b47e-ca49-4b7e-99c7-dee9cd784ec9",
"name": "DJI"
}
},
{
"id": "ba5ae61b-5c2e-4511-8b16-c49699ab2988",
"name": "Agras MG-1",
"manufacturer": {
"id": "2a55b47e-ca49-4b7e-99c7-dee9cd784ec9",
"name": "DJI"
}
},
{
"id": "e55127bc-1d55-4d3d-a760-cd82c3d86ac3",
"name": "Inspire 1",
"manufacturer": {
"id": "2a55b47e-ca49-4b7e-99c7-dee9cd784ec9",
"name": "DJI"
}
},
{
"id": "91e20850-40ff-40af-99cf-262c019260e3",
"name": "Spreading Wings S1000+",
"manufacturer": {
"id": "2a55b47e-ca49-4b7e-99c7-dee9cd784ec9",
"name": "DJI"
}
},
{
"id": "692fb4f0-fcf7-4f6b-9943-4292b061f09e",
"name": "Phantom 2",
"manufacturer": {
"id": "2a55b47e-ca49-4b7e-99c7-dee9cd784ec9",
"name": "DJI"
}
},
{
"id": "b3b1c26f-06da-4eae-9390-667c90039175",
"name": "Phantom 3",
"manufacturer": {
"id": "2a55b47e-ca49-4b7e-99c7-dee9cd784ec9",
"name": "DJI"
}
},
{
"id": "ea3ad477-ff17-44d5-9fe9-cbdbac256af8",
"name": "Spreading Wings S900",
"manufacturer": {
"id": "2a55b47e-ca49-4b7e-99c7-dee9cd784ec9",
"name": "DJI"
}
},
{
"id": "786bbd91-0509-4a36-94eb-f9fa46d1d20b",
"name": "Phantom 4",
"manufacturer": {
"id": "2a55b47e-ca49-4b7e-99c7-dee9cd784ec9",
"name": "DJI"
}
}
]
}
// List models by manufacter id
AirMap.listModels(by:<#T##manufacterId: String##String#>) { result in
switch result {
case .error(let error):
// Handle error case
print(error)
case .value(let models):
// Handle success case
}
}
// Search for a list of models by model name
AirMap.searchModels(by: <#T##String#>, <#T##modelId: String##String#>) { result in
switch result {
case .error(let error):
// Handle error case
print(error)
case .value(let models):
// Handle success case
}
}
AirMap.getModels(manufacturerId, new AirMapCallback<List<AirMapAircraftModel>>() {
@Override
protected void onSuccess(List<AirMapAircraftModel> models) {
// Handle success
}
@Override
protected void onError(AirMapException e) {
// Handle error
}
});
var request = require('superagent');
request
.get('https://api.airmap.com/aircraft/v2/model')
.set('X-API-Key', '{YOUR API KEY}')
.query({"manufacturer":"2a55b47e-ca49-4b7e-99c7-dee9cd784ec9"})
.query({"q":"phantom"})
.redirects(0)
.end(function(err, res){
if (err || !res.ok) {
console.log('Oh no! error');
} else {
console.log('yay got ' + JSON.stringify(res.body));
}
});
import requests
def send_request():
try:
response = requests.get(
url="https://api.airmap.com/aircraft/v2/model",
params={
"manufacturer": "2a55b47e-ca49-4b7e-99c7-dee9cd784ec9",
"q": "phantom",
},
headers={
"X-API-Key": "{YOUR API KEY}",
},
)
print('Response HTTP Status Code: {status_code}'.format(
status_code=response.status_code))
print('Response HTTP Response Body: {content}'.format(
content=response.content))
except requests.exceptions.RequestException:
print('HTTP Request failed')
require 'net/http'
require 'net/https'
def send_request
begin
uri = URI('https://api.airmap.com/aircraft/v2/model?manufacturer=2a55b47e-ca49-4b7e-99c7-dee9cd784ec9&q=phantom')
# Create client
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_PEER
# Create Request
req = Net::HTTP::Get.new(uri)
# Add headers
req.add_field "X-API-Key", "{YOUR API KEY}"
# Fetch Request
res = http.request(req)
puts "Response HTTP Status Code: #{res.code}"
puts "Response HTTP Response Body: #{res.body}"
rescue StandardError => e
puts "HTTP Request failed (#{e.message})"
end
end
For full API reference, click here.
Get Aircraft Model Details
## Get the details of a specific drone model with the [`/aircraft/model:id`](https://developers.airmap.com/reference#aircraft-details) endpoint. This endpoint allows you to access the model details by providing the model id found in the `/aircraft/model/` search route listed above.
curl -X "GET" "https://api.airmap.com/aircraft/v2/model/786bbd91-0509-4a36-94eb-f9fa46d1d20b" \
-H "X-API-Key: {YOUR API KEY}"
## The response includes details of the drone model requested:
{
"status": "success",
"data": {
"id": "786bbd91-0509-4a36-94eb-f9fa46d1d20b",
"name": "Phantom 4",
"manufacturer": {
"id": "2a55b47e-ca49-4b7e-99c7-dee9cd784ec9",
"name": "DJI"
}
}
}
AirMap.getModel(<#T##modelId: String##String#>) { result in
switch result {
case .error(let error):
// Handle error case
print(error)
case .value(let model):
// Handle success case
}
}
AirMap.getModel(modelId, new AirMapCallback<List<AirMapAircraftModel>>() {
@Override
protected void onSuccess(List<AirMapAircraftModel> response) {
// Handle success
}
@Override
protected void onError(AirMapException e) {
// Handle error
}
});
var request = require('superagent);
request
.get('https://api.airmap.com/aircraft/v2/model/786bbd91-0509-4a36-94eb-f9fa46d1d20b')
.set('X-API-Key', '{YOUR API KEY}')
.redirects(0)
.end(function(err, res){
if (err || !res.ok) {
console.log('Oh no! error');
} else {
console.log('yay got ' + JSON.stringify(res.body));
}
});
import requests
def send_request():
try:
response = requests.get(
url="https://api.airmap.com/aircraft/v2/model/786bbd91-0509-4a36-94eb-f9fa46d1d20b",
headers={
"X-API-Key": "{YOUR API KEY}",
},
)
print('Response HTTP Status Code: {status_code}'.format(
status_code=response.status_code))
print('Response HTTP Response Body: {content}'.format(
content=response.content))
except requests.exceptions.RequestException:
print('HTTP Request failed')
require 'net/http'
require 'net/https'
def send_request
begin
uri = URI('https://api.airmap.com/aircraft/v2/model/786bbd91-0509-4a36-94eb-f9fa46d1d20b')
# Create client
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_PEER
# Create Request
req = Net::HTTP::Get.new(uri)
# Add headers
req.add_field "X-API-Key", "{YOUR API KEY}"
# Fetch Request
res = http.request(req)
puts "Response HTTP Status Code: #{res.code}"
puts "Response HTTP Response Body: #{res.body}"
rescue StandardError => e
puts "HTTP Request failed (#{e.message})"
end
end
For full API reference, click here.
Updated 5 years ago