Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
openapi: 3.2.0
info:
title: Propeller Public Position Monitoring API
description: The Propeller Public API provides programmatic, read-oriented access to Propeller Aero drone-survey and earthworks-analytics data for construction, mining, aggregates, and waste sites.
version: '1.0'
contact:
name: Propeller Aero
url: https://www.propelleraero.com/
x-endpointsModeled: true
x-endpointsModeledNote: Paths and methods are confirmed from Propeller's public API reference / llms.txt. Response schemas are illustrative models of the documented resources, not verified field-by-field against live payloads.
servers:
- url: https://api.propelleraero.com/v1
description: Propeller Public API
security:
- bearerAuth: []
- oidc: []
tags:
- name: Position Monitoring
description: DirtMate position-monitoring configs and recorded epochs.
paths:
/position_monitoring_configs:
get:
operationId: listPositionMonitoringConfigs
tags:
- Position Monitoring
summary: List position monitoring configs
description: Lists DirtMate devices configured as position monitors.
responses:
'200':
description: A list of position monitoring configs.
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/PositionMonitoringConfig'
/position_monitoring_configs/{id}:
get:
operationId: getPositionMonitoringConfig
tags:
- Position Monitoring
summary: Get a position monitoring config
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: A position monitoring config.
content:
application/json:
schema:
$ref: '#/components/schemas/PositionMonitoringConfig'
'404':
$ref: '#/components/responses/NotFound'
/position_monitoring_epochs:
get:
operationId: listPositionMonitoringEpochs
tags:
- Position Monitoring
summary: List position monitoring epochs
description: Lists the position measurements (epochs) recorded by position-monitoring DirtMates.
parameters:
- name: position_monitoring_config_id
in: query
required: false
schema:
type: string
description: Filter epochs to a single monitoring config / DirtMate.
responses:
'200':
description: A list of position monitoring epochs.
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/PositionMonitoringEpoch'
/position_monitoring_epochs/{id}:
get:
operationId: getPositionMonitoringEpoch
tags:
- Position Monitoring
summary: Get a position monitoring epoch
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: A position monitoring epoch.
content:
application/json:
schema:
$ref: '#/components/schemas/PositionMonitoringEpoch'
'404':
$ref: '#/components/responses/NotFound'
components:
schemas:
Error:
type: object
properties:
error:
type: string
message:
type: string
PositionMonitoringConfig:
type: object
properties:
id:
type: string
name:
type: string
deviceId:
type: string
description: Identifier of the DirtMate device configured as a position monitor.
siteId:
type: string
PositionMonitoringEpoch:
type: object
properties:
id:
type: string
positionMonitoringConfigId:
type: string
recordedAt:
type: string
format: date-time
latitude:
type: number
format: double
longitude:
type: number
format: double
elevation:
type: number
format: double
responses:
NotFound:
description: The requested resource was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: 'Access token generated under Settings > Public API in the Propeller portal, sent as Authorization: Bearer <access_token>.'
oidc:
type: openIdConnect
openIdConnectUrl: https://api.propelleraero.com/auth/oidc/.well-known/openid-configuration