Developer Documentation
Learn how to integrate the complex RF Drone Classification engine into your Software Defined Radio (SDR) scripts and edge nodes.
How Classification Works
Simply upload a raw RF capture file from any Software Defined Radio (SDR) device. Our AI pipeline handles all the heavy lifting — signal processing, feature extraction, and neural inference — and returns a clean JSON result in milliseconds.
1. Upload Signal
Send your raw SDR binary file via the API
2. AI Analysis
Deep learning model analyses the RF spectrum pattern
3. Get Results
Receive drone class, confidence score, and spectrogram
The API accepts raw binary files containing interleaved float32 I/Q samples — the standard output format of SDR tools like GNU Radio, SDR#, and RTL-SDR.
Credit Balance Operations
- Registration Gift: Newly created accounts immediately receive 100.0 free credits ($1.00 USD equivalent) to test integration scripts.
- Prediction Expenditure: Each prediction call to `/api/v1/predict` consumes exactly 5.0 credits ($0.05 USD value).
- Recharges: Add credits via the Billing portal by selecting tiers or entering custom slider volumes. Standard billing rate is 100 credits per $1.00 USD.
- Billing Errors: If an account credit balance falls below 5.0, subsequent calls return a standard
HTTP 402 Payment Requiredstatus. Revoked or invalid developer keys returnHTTP 401 Unauthorized.
REST API Endpoint
POST /api/v1/predict
Request Headers
| Header Name | Value Type | Description |
|---|---|---|
| X-API-Key | String | Your secret API key (e.g. dr_sk_live_xxxx...). Required for authorization. |
Request Body (multipart/form-data)
| Param Name | Type | Requirement | Description |
|---|---|---|---|
| file | Binary File | Required | Raw SDR file containing complex interleaving float32 I/Q baseband samples: [I0, Q0, I1, Q1, ...]. |
Response Schema (application/json)
{
"success": true,
"predicted_class": "DJI Mavic Pro",
"confidence": 0.9458,
"probabilities": {
"DJI Mavic Pro": 0.9458,
"DJI Phantom 4": 0.0215,
"Parrot Bebop 2": 0.0084,
"Yuneec Typhoon H": 0.0102,
"DJI Inspire 2": 0.0051,
"DIY Custom Drone (F450)": 0.0062,
"Background Noise (No Drone)": 0.0028
},
"latency_ms": 7.42,
"spectrogram_image": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO...",
"sample_count": 20480
}