Raad Guides

Data Models

Schema definitions for API resources

Overview

All API responses follow the JSON:API specification. Each resource is returned with an id, type, and attributes object. Attribute names use camelCase formatting (e.g. createdAt, fileType). Relationships are included conditionally on detail (show) endpoints.

User

Represents an authenticated API user.

AttributeTypeDescription
iduuidUnique identifier
emailstringEmail address
rolestringclient, pilot, or admin
accountRolestringRole within the account
shortNamestringInitials / short display name
firstNamestringFirst name
lastNamestringLast name
fullNamestringFull display name
niceNamestringFriendly display name
primaryColorstringHex color for UI theming
secondaryColorstringSecondary hex color
totalPointsintegerGamification points
pilotProfileCompletedbooleanPilot profile complete?
clientProfileCompletedbooleanClient profile complete?
createdAtdatetimeISO 8601 creation timestamp
updatedAtdatetimeISO 8601 last updated

Relationships: account

Campaign

Represents an aerial data collection request.

AttributeTypeDescription
iduuidUnique identifier
namestringCampaign name
descriptionstringCampaign description
dueAtdateDue date
earliestFlightAtdateEarliest acceptable flight date
statestringWorkflow state
clientRequestedPriceintegerRequested price in cents
clientNamestringClient name
companyNamestringCompany name
nearestDueDatedateNearest due date across missions
missionIndustryNamesarrayIndustry tags
createdAtdatetimeISO 8601 creation timestamp
updatedAtdatetimeISO 8601 last updated

Relationships: account, site, missions

Site

Represents a physical location for data collection.

AttributeTypeDescription
iduuidUnique identifier
namestringSite name
descriptionstringSite description
address1stringStreet address line 1
address2stringStreet address line 2
citystringCity
statestringState / province
zipCodestringPostal code
countrystringCountry code
siteTypestringType (solar, construction, etc.)
latitudedecimalCenter latitude
longitudedecimalCenter longitude
fullAddressstringFormatted full address
areadecimalBoundary area in km²
geometryGeoJSONBoundary polygon as GeoJSON (null if not set)
statusstringCurrent status
faaRestrictionsSummarystringFAA airspace summary
createdAtdatetimeISO 8601 creation timestamp
updatedAtdatetimeISO 8601 last updated

Relationships: account, user, metroArea, campaigns

Artifact

Represents a piece of collected aerial data (photo, video, point cloud).

AttributeTypeDescription
iduuidUnique identifier
titlestringFile name or title
fileTypestringJPEG, RAW, MP4, GeoTIFF, etc.
latitudedecimalCapture latitude
longitudedecimalCapture longitude
altitudedecimalAbsolute altitude (m)
relativeAltitudedecimalAGL altitude (m)
cameraMakestringCamera manufacturer
cameraModelstringCamera model
droneModelstringDrone model name
imageWidthintegerWidth in pixels
imageHeightintegerHeight in pixels
photoTakenAtdatetimeCapture time (from EXIF)
isProcessedbooleanProcessing complete?
imageUrlstringFull-resolution URL
thumbnailUrlstring400×400 thumbnail URL
createdAtdatetimeISO 8601 creation timestamp
updatedAtdatetimeISO 8601 last updated

Relationships: coverageGroup