Aloft Missions API

Missions

OpenAPI Specification

aloft-missions-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Aloft API V1 Accounts Missions API
  contact:
    email: support@aloft.ai
  version: 1.0.0
  description: Accounts
tags:
- name: Missions
  description: Missions
paths:
  /v1/account/{account_id}/missions:
    get:
      tags:
      - Missions
      summary: Get missions
      description: Get a list of missions.
      operationId: abc3ff81f7cd9419a51187f92af91a30
      parameters:
      - name: account_id
        in: path
        required: true
        schema:
          $ref: '#components/schemas/model_id'
      - name: owner_id
        in: query
        description: The user id of the mission owner
        required: false
        schema:
          type: integer
      - name: search
        in: query
        description: Search by the title field.
        schema:
          type: string
      - name: order_by
        in: query
        description: The field to order the data by. Distance requires you to provide a center parameter to be used.
        schema:
          type: string
          enum:
          - title
          - distance
          - stops_at
          - starts_at
          - updated_at
          - created_at
          - pilot_in_command
      - name: order
        in: query
        schema:
          $ref: '#components/schemas/order_direction'
      - name: airspace[]
        in: query
        schema:
          type: array
          items:
            description: status
            type: string
            enum:
            - Restricted
            - Caution
            - Clear
            - Authorization
      - name: starts_at_before
        in: query
        description: The starts_at_before timestamp must be greater than the starts_at timestamp.
        schema:
          type: integer
      - name: starts_at_after
        in: query
        description: The starts_at_after timestamp must be less than the starts_at timestamp.
        schema:
          type: integer
      - name: status[]
        in: query
        description: A list of mission status
        schema:
          type: array
          items:
            description: status
            type: string
            enum:
            - REQUESTED
            - PENDING
            - APPROVED
            - DENIED
            - COMPLETED
            - CANCELED
      - name: tags_required
        in: query
        description: When true, all tags must be connected to the object
        schema:
          type: boolean
      - name: tags[]
        in: query
        description: array of tag ids
        schema:
          type: array
          items:
            description: A tag id
            type: integer
      - name: mission_participants[]
        in: query
        description: array of user ids
        schema:
          type: array
          items:
            description: A user id
            type: integer
      - name: withBounds
        in: query
        description: Puts the SW and NE Lat Lng into the response's meta data
        schema:
          type: integer
          enum:
          - 1
          - 0
      - name: center
        in: query
        description: 'Latitude and longitude to sort the distance by when ordering by distance. Ex: ''36.1627,-86.7816'''
        schema:
          type: string
      - name: bounds
        in: query
        description: 'SW and NE Lat Lng for drawing a bounding box. Ex: ''36.1065372323778,-86.83319091796875,-86.69998168945312,36.2077150185580'''
        schema:
          type: string
      - name: has_laanc_auth
        in: query
        description: When true, only return missions with LAANC authorizations. When false, only return missions without LAANC authorizations.
        schema:
          type: boolean
      - name: appends[]
        in: query
        description: Array of appendable resource names
        schema:
          type: array
          items:
            description: A list of models to attach
            type: string
            enum:
            - address
            - airspace
            - flights
            - flight_path
            - mission_area
            - measurements
            - mission_participants
            - mission_participants.is_compliant
            - mission_participants.is_retired
            - mission_participants.is_recent
            - pre_assigned_aircraft
            - pre_assigned_aircraft.is_compliant
            - pre_assigned_batteries
            - risk_score
            - tags
            - weather
            - workflow
            - workflow.workflow_steps
            - workflow.workflow_steps.workflow_step_id
            - distance
            - default_workflow
            - default_workflow.workflow_steps
            - default_workflow.workflow_steps.workflow_step_id
            - planning_workflow_execution
            - flight_count
            - total_flight_duration
            - laanc_auth_count
            - laanc_auths
            - airspace_clearances
            - airspace_clearances.pilot
      - name: page
        in: query
        schema:
          type: integer
      - name: page_length
        in: query
        schema:
          type: integer
      responses:
        '403':
          description: Access Denied
        '401':
          description: Unauthorized
        '200':
          description: Successful operation
          content:
            application/json: {}
            application/csv: {}
      security:
      - Aloft Token: []
    post:
      tags:
      - Missions
      summary: Create a mission
      description: Create a mission
      operationId: 59b00413e043a3e9aace60258958aac6
      parameters:
      - name: account_id
        in: path
        required: true
        schema:
          $ref: '#components/schemas/mode_id'
      - name: appends[]
        in: query
        description: Array of appendable resource names
        schema:
          type: array
          items:
            description: A list of models to attach
            type: string
            enum:
            - address
            - airspace
            - flights
            - mission_area
            - flight_path
            - measurements
            - mission_participants
            - mission_participants.is_compliant
            - mission_participants.is_retired
            - mission_participants.is_recent
            - pre_assigned_aircraft
            - pre_assigned_aircraft.is_compliant
            - pre_assigned_batteries
            - risk_score
            - tags
            - weather
            - workflow
            - workflow.workflow_steps
            - workflow.workflow_steps.workflow_step_id
            - distance
            - default_workflow
            - default_workflow.workflow_steps
            - default_workflow.workflow_steps.workflow_step_id
            - planning_workflow_execution
            - flight_count
            - total_flight_duration
            - laanc_auth_count
            - laanc_auths
            - airspace_clearances
            - airspace_clearances.pilot
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#components/schemas/mission_create'
      responses:
        '403':
          description: Access Denied
        '401':
          description: Unauthorized
        '422':
          description: Unprocessable Content
        '200':
          description: Successful operation
      security:
      - Aloft Token: []
  /v1/account/{account_id}/missions/{mission_id}:
    get:
      tags:
      - Missions
      summary: Get a mission
      description: Get a mission
      operationId: 9c7d33e3fa3125c9185f0b558c8dbfec
      parameters:
      - name: account_id
        in: path
        required: true
        schema:
          $ref: '#components/schemas/model_id'
      - name: appends[]
        in: query
        description: Array of appendable resource names
        schema:
          type: array
          items:
            description: A list of models to attach
            type: string
            enum:
            - address
            - airspace
            - flights
            - flight_path
            - mission_area
            - measurements
            - mission_participants
            - mission_participants.is_compliant
            - mission_participants.is_retired
            - mission_participants.is_recent
            - pre_assigned_aircraft
            - pre_assigned_aircraft.is_compliant
            - pre_assigned_batteries
            - risk_score
            - tags
            - weather
            - workflow
            - workflow.workflow_steps
            - workflow.workflow_steps.workflow_step_id
            - distance
            - default_workflow
            - default_workflow.workflow_steps
            - default_workflow.workflow_steps.workflow_step_id
            - planning_workflow_execution
            - flight_count
            - total_flight_duration
            - laanc_auth_count
            - laanc_auths
            - airspace_clearances
            - airspace_clearances.pilot
      - name: center
        in: query
        description: 'Latitude and longitude to use when calculating distance. Ex: ''36.1627,-86.7816''. Required for distance to be appended.'
        schema:
          type: string
      - name: mission_id
        in: path
        description: The mission id
        required: true
        schema:
          type: integer
      responses:
        '403':
          description: Access Denied
        '401':
          description: Unauthorized
        '200':
          description: Successful operation
      security:
      - Aloft Token: []
    put:
      tags:
      - Missions
      summary: Update a mission
      description: Update a mission
      operationId: 972565a99475893fb8dcf5ef2068f916
      parameters:
      - name: account_id
        in: path
        required: true
        schema:
          $ref: '#components/schemas/model_id'
      - name: mission_id
        in: path
        description: The mission id
        required: true
        schema:
          type: integer
      - name: appends[]
        in: query
        description: Array of appendable resource names
        schema:
          type: array
          items:
            description: A list of models to attach
            type: string
            enum:
            - address
            - airspace
            - flights
            - mission_area
            - flight_path
            - measurements
            - mission_participants
            - mission_participants.is_compliant
            - mission_participants.is_retired
            - mission_participants.is_recent
            - pre_assigned_aircraft
            - pre_assigned_aircraft.is_compliant
            - pre_assigned_batteries
            - risk_score
            - tags
            - weather
            - workflow
            - workflow.workflow_steps
            - workflow.workflow_steps.workflow_step_id
            - distance
            - default_workflow
            - default_workflow.workflow_steps
            - default_workflow.workflow_steps.workflow_step_id
            - planning_workflow_execution
            - flight_count
            - total_flight_duration
            - laanc_auth_count
            - laanc_auths
            - airspace_clearances
            - airspace_clearances.pilot
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#components/schemas/mission_update'
      responses:
        '403':
          description: Access Denied
        '401':
          description: Unauthorized
        '422':
          description: Unprocessable Content
        '200':
          description: Successful operation
      security:
      - Aloft Token: []
    delete:
      tags:
      - Missions
      summary: Delete a mission
      description: Delete a mission
      operationId: 7240ae56f1311e27d0951bf98d1961be
      parameters:
      - name: account_id
        in: path
        required: true
        schema:
          $ref: '#components/schemas/model_id'
      - name: mission_id
        in: path
        description: The mission id
        required: true
        schema:
          type: integer
      responses:
        '403':
          description: Access Denied
        '401':
          description: Unauthorized
        '204':
          description: Successful operation
      security:
      - Aloft Token: []
  /v1/account/{account_id}/missions/{mission_uuid}/offline-transitions/completed:
    post:
      tags:
      - Missions
      summary: Transfer the state of a mission
      description: Transfer the state of a mission to complete when working in offline mode.
      operationId: a093a296e00a6630a5464e55ad74e2d5
      parameters:
      - name: account_id
        in: path
        required: true
        schema:
          $ref: '#components/schemas/model_id'
      - name: mission_uuid
        in: path
        description: The mission UUID
        required: true
        schema:
          type: string
      responses:
        '403':
          description: Access Denied
        '401':
          description: Unauthorized
        '304':
          description: Not Modified
        '200':
          description: Successful operation
      security:
      - Aloft Token: []
  /v1/account/{account_id}/missions/{mission_id}/{to_state}:
    post:
      tags:
      - Missions
      summary: Transfer the state of a mission
      description: Transfer the state of a mission
      operationId: 069352b0f96c28128844ac0c53403d4a
      parameters:
      - name: account_id
        in: path
        required: true
        schema:
          $ref: '#components/schemas/model_id'
      - name: mission_id
        in: path
        description: The mission id
        required: true
        schema:
          type: integer
      - name: reset_planning
        in: query
        description: Delete all the planning checklist execution, risk assessment executions, and workflow executions.
        required: true
        schema:
          type: boolean
      - name: appends[]
        in: query
        description: Array of appendable resource names
        schema:
          type: array
          items:
            description: A list of models to attach
            type: string
            enum:
            - address
            - airspace
            - flights
            - mission_area
            - mission_participants
            - pre_assigned_aircraft
            - pre_assigned_batteries
            - risk_score
            - tags
            - weather
            - workflow
            - workflow.workflow_steps
            - workflow.workflow_steps.workflow_step_id
            - distance
            - default_workflow
            - default_workflow.workflow_steps
            - planning_workflow_execution
            - laanc_auth_count
            - laanc_auths
            - airspace_clearances
      - name: to_state
        in: path
        description: The state of the mission.
        required: true
        schema:
          type: string
          enum:
          - REQUESTED
          - PENDING
          - APPROVED
          - DENIED
          - COMPLETED
          - CANCELED
      responses:
        '403':
          description: Access Denied
        '401':
          description: Unauthorized
        '304':
          description: Not Modified
        '200':
          description: Successful operation
      security:
      - Aloft Token: []
components:
  securitySchemes:
    Aloft Token:
      type: http
      name: Aloft Token
      in: header
      scheme: bearer