📜API Endpoints Overview
This document tracks all active RESTful endpoints in the UDAI API. For detailed request schemas, response codes, and business logic, click on the respective documentation links.
1. 🔐 Authentication APIs
00. 🔐 Access Control
Docs: Access Control Matrix
Explains the strict 12-module Access Matrix mapping endpoints to users
Details Context-Based Access Control (CBAC) ownership rules
Details Role-Based Access Control (RBAC) membership rules (Owner, Admin, Member)
Maps the 7 different
org_typeclassifications to permissions
01. 🌐 Base URL & Common Responses
Docs: Hostname & Error Codes
Outlines the primary REST endpoints for STG, UAT, and PROD
Defines the unified error schema required for all
4xxand5xxresponsesMaps HTTP status codes used globally across the API
02. 🔑 Authentication Endpoints
Docs: Authentication API
POST /auth/register— Register a new user and create an associated organisationPOST /auth/verify/send-otp— Send verification OTP to unverified email/phonePOST /auth/verify— Verify email/phone using OTPPOST /auth/login/send-otp— Send OTP for password-less loginPOST /auth/login-password— Authenticate using passwordPOST /auth/login-otp— Authenticate using OTPPOST /auth/logout— Invalidate current access tokenPOST /auth/refresh-token— Issue new access token using refresh tokenPOST /auth/forgot-password— Send password reset linkPOST /auth/change-password— Change password for authenticated user
03. 👤 User Management Endpoints
Docs: User Management API
Header Required:
X-Organization-ID
GET /users— Get all members of the organisationGET /users/{user_uuid}— Get specific member's detailsPUT /users/{user_uuid}/role— Update a member's roleDELETE /users/{user_uuid}— Set member's org validation status to INACTIVEPUT /users/{user_uuid}— Update the authenticated user's own profilePOST /users/{user_uuid}/pilot-creds— Create or update the user's pilot credentialsGET /users/{user_uuid}/pilot-creds— Return the user's pilot credentials
04. 🏢 Organisation Endpoints
Docs: Organisation API
GET /organisations/{org_uuid}— Get current user's organisation detailsPUT /organisations/{org_uuid}— Update organisation details
05. 🤝 Organisation Membership Endpoints
Docs: Membership API
Header Required:
X-Organization-ID
POST /users/invite— Invite one or multiple users to the organisationPOST /users/invite/accept— Accept or decline a pending invitationGET /invitations— Get all invitations sent by the organisationGET /invitations/{invitation_uuid}— Get details of a specific invitationDELETE /invitations/{invitation_uuid}— Revoke a pending invitationDELETE /memberships— Remove active members (soft-delete to INACTIVE)
2. 🚁 Fleet APIs
06. 🚁 Drone Model Endpoints
Docs: Drone Model API
Header Required:
X-Organization-ID
POST /drone-models— Create a new drone modelGET /drone-models— Get all drone models from manufacturerGET /drone-models/{drone_uuid}— Get details of a specific drone modelPUT /drone-models/{model_uuid}— Update a drone modelDELETE /drone-models/{drone_uuid}— Update drone model status to INACTIVE
07. 📦 Payload Endpoints
Docs: Payload API
Header Required:
X-Organization-ID
POST /payloads— Register a physical payloadGET /payloads— Get all payloads owned by organisationGET /payloads/{payload_uuid}— Get specific payload detailsPUT /payloads/{payload_uuid}— Update specific payload detailsDELETE /payloads/{payload_uuid}— Remove the payload (soft-delete to INACTIVE)
08. 🚁 Drone Endpoints
Docs: Drone API
Header Required:
X-Organization-ID
POST /drones— Register a single drone into the organisationPOST /drones/bulk— Register multiple drones in bulkGET /drones— Get all drones owned by organisationGET /drones/{drone_uuid}— Get specific drone detailsPUT /drones/{drone_uuid}— Update specific drone detailsDELETE /drones/{drone_uuid}— Remove the drone (soft-delete to INACTIVE)
09. 🔄 Drone Ownership Endpoints
Docs: Drone Ownership API
Header Required:
X-Organization-ID
POST /drone-transfer— Initiate a transfer (single or bulk)POST /drone-transfers/accept— Accept or reject a pending drone transferGET /drone-transfers— List all transfer requests for orgGET /drone-transfers/{transfer_uuid}— Get details of a specific transferGET /drone-ownership— List all active/inactive drone ownershipsGET /drone-ownership/{ownership_uuid}— Get details of a specific ownership recordDELETE /drone-ownership/{ownership_uuid}— Revoke an active drone ownership
3. 📋 Mission APIs
10. 📋 Mission Endpoints
Docs: Mission API
Header Required:
X-Organization-ID
POST /missions— Create a new missionGET /missions— Get all missionsGET /missions/{mission_uuid}— Get specific mission detailsPUT /missions/{mission_uuid}— Update a missionDELETE /missions/{mission_uuid}— Soft delete mission (update status to INACTIVE)POST /permissions?parent_type=MISSION&parent_uuid=\{mission_uuid\}— Request access to an airspace segment for this missionPUT /permissions/\{permission_uuid\}— Grant or deny access to a specific airspace segmentPOST /flight-plans?mission_uuid=\{mission_uuid\}— Create a flight plan under a missionGET /flight-plans?mission_uuid=\{mission_uuid\}— Get all flight plans for a missionGET /flight-plans/\{plan_uuid\}— Get specific flight plan detailsPUT /flight-plans/\{plan_uuid\}— Update a flight planPOST /permissions?parent_type=FLIGHT_PLAN&parent_uuid=\{plan_uuid\}— Request access to an airspace segment for a flight planPUT /permissions/\{permission_uuid\}— Grant or deny access to a specific airspace segment for flight planGET /flight-plans/log?s— Get combined list of all flight plans
4. 📊 Telemetry APIs
11. 🕒 Flight Sessions and Data
Docs: Flight Sessions API
Header Required:
X-Organization-ID
POST /flight-sessions— Initiate a new flight session (ad-hoc or planned)GET /flight-sessions— Get all flight sessionsGET /flight-sessions/{session_uuid}— Get specific flight session detailsPOST /flight-sessions/{session_uuid}/telemetry— Submit Live Telemetry (Placeholder)
12. 🛰️ Airspace Monitoring Management Endpoints
Docs: Airspace Monitoring API
Header Required:
X-Organization-ID
GET /airspace/drones/{drone_uuid}— Get detailed drone information for monitoringGET /airspace/drones/{drone_uuid}/plans— Get all flight plans associated with a droneGET /airspace/drones/{drone_uuid}/plans/{plan_uuid}— Get details of a specific flight plan for a dronePOST /airspace/drones/{drone_uuid}/alert— Trigger or log a flight alert or incident
5. 🗺️ Airspace APIs
13. 🗺️ Airspace Zone Endpoints
Docs: Airspace Zone API
POST /airspaces— Create a new airspace zoneGET /airspaces— List all airspace zonesGET /airspaces/{zone_uuid}— Get specific zone detailsPUT /airspaces/{zone_uuid}— Update a zone
14. 🗺️ Airspace Zone Membership Endpoints
Docs: Airspace Zone Memberships API
POST /airspaces/{zone_uuid}/memberships— Link an org to a zone as Manager/MonitorGET /airspaces/{zone_uuid}/memberships— Get all memberships for a specific zoneGET /airspace-memberships— List all zones an organisation is linked toDELETE /airspaces/{zone_uuid}/memberships/{membership_uuid}— Remove an organisation's link (soft-delete to INACTIVE)
15. 🧱 Constraint Engine Endpoints
Docs: Constraint Engine API
POST /constraints— Create a new spatial constraintGET /constraints/{constraint_uuid}— Get specific constraint detailsPOST /constraints/intersect— Query constraints by geospatial intersection
Last updated