Zequent Client SDK (Python) — Mission Autonomy API Reference

Beta preview: an unmerged 2.0.x branch replaces this entire interface with an Application → Skill → SkillExecution model — see the 2.0.x Beta reference if you want to see where this is headed. Not on main/the current 1.3.x release yet.

Exhaustive method reference for client.mission_autonomy. For a narrative introduction, see the Mission Autonomy guide. For Java, see client-sdk-mission-autonomy.md; for Go, client-sdk-mission-autonomy-go.md.

Every method is a coroutine. MissionResponse/TaskResponse/SchedulerResponse carry success: bool and error: ErrorInfo | None — they don't raise for a business-level error, only for a transport failure (grpc.aio.AioRpcError). See Mission Autonomy — Error handling.

client.connector has no Mission/Task methods at all in this SDK — unlike Java (where both interfaces have overlapping copies), client.mission_autonomy is the only way to manage missions and tasks in Python, the same as the Go SDK.

Missions

MethodReturnsNotes
create_mission(mission: MissionDTO)MissionResponseRoute-optimized — confirmed against the backend MissionAutonomyGrpcService: runs the mission through missionRouteOptimizer.optimize(...) before writing it
update_mission(mission_id, mission)MissionResponseSame optimization as create_mission
get_mission(mission_id)MissionResponsePlain passthrough — no optimization applies to reads
delete_mission(mission_id)MissionResponse

Tasks

MethodReturnsNotes
create_task(task: TaskDTO)TaskResponseRoute-optimized for a waypoint task with a mission_id (no-fly-zone-aware expansion), same as create_mission
update_task(task_id, task)TaskResponseSame optimization as create_task
get_task(task_id)TaskResponsePlain passthrough
get_task_by_flight_id(flight_id)TaskResponseLook up by the external flight ID an edge adapter assigned the task
delete_task(task_id)TaskResponse

Task execution lifecycle

MethodReturns
start_task(task_id)TaskResponse
stop_task(task_id)TaskResponse
pause_task(task_id)TaskResponse
resume_task(task_id)TaskResponse

These forward a bare task ID to the adapter — works only where the adapter implements the task lifecycle. See Waypoint Missions for the per-adapter picture, including the command-based alternative that doesn't use this lifecycle at all.

Schedulers

MethodReturnsNotes
create_scheduler(scheduler: SchedulerDTO)SchedulerResponse
create_schedulers(schedulers: list[SchedulerDTO])SchedulerResponseCreate several in one call
get_scheduler(scheduler_id)SchedulerResponse
update_scheduler(scheduler_id, scheduler)SchedulerResponse
delete_scheduler(scheduler_id)SchedulerResponse
delete_schedulers(scheduler_ids: list[str])SchedulerResponseDelete several in one call
list_schedulers(task_id: str | None = None)SchedulerResponseResult is in .schedulers. task_id omitted/None lists every scheduler, unfiltered

Identical scheduler methods (same wire messages, same non-raising response convention) also exist on client.connector — see Connector — Error handling. No optimization difference either way; scheduler operations aren't route-related.

Was this page helpful?

© Copyright 2026 Zequent. All rights reserved.