Skip to main content

ListenAsAgent

Stream Tasks ready for RPC Agent execution that match agent selector (ex: entity_ids). Intended for use by Taskable Agents that need to receive Tasks ready for execution by RPC.

ListenAsAgentRequestRequest

Request for streaming Tasks ready for agent execution.

    listenasagent.entity_idsEntityIds

    The requesting agent will only receive Agent Tasks in the stream that have any of these specified entity ids as the task's assignee

      listenasagent.entity_ids.entity_idsrepeated string
ListenAsAgentResponseResponse

Response for streaming Tasks ready for agent execution.

    listenasagent.execute_requestExecuteRequest
      listenasagent.execute_request.taskTask

      Task to execute.

        listenasagent.execute_request.task.versionTaskVersion

        Version of this Task.

          listenasagent.execute_request.task.version.task_idstring

          The unique ID for this Task.

          listenasagent.execute_request.task.version.definition_versionuint32

          Increments on definition (i.e. not TaskStatus) change. 0 is unset, starts at 1 on creation.

          listenasagent.execute_request.task.version.status_versionuint32

          Increments on changes to TaskStatus. 0 is unset, starts at 1 on creation.

        listenasagent.execute_request.task.display_namestring

        Human readable display name for this Task, should be short (<100 chars).

        listenasagent.execute_request.task.specificationAny

        Full Task parameterization, must be a message under anduril/tasks/v*/

        listenasagent.execute_request.task.created_byPrincipal

        Records who created this Task. This field will not change after the Task has been created.

          listenasagent.execute_request.task.created_by.systemSystem
            listenasagent.execute_request.task.created_by.system.service_namestring

            Name of the service associated with this System.

            listenasagent.execute_request.task.created_by.system.entity_idstring

            The Entity ID of the System.

            listenasagent.execute_request.task.created_by.system.manages_own_schedulingbool

            Whether the System Principal (for example, an Asset) can own scheduling. This means we bypass manager-owned scheduling and defer to the system Principal to handle scheduling and give us status updates for the Task. Regardless of the value defined by the client, the Task Manager will determine and set this value appropriately.

          listenasagent.execute_request.task.created_by.userUser
            listenasagent.execute_request.task.created_by.user.user_idstring

            The User ID associated with this User.

          listenasagent.execute_request.task.created_by.teamTeam
            listenasagent.execute_request.task.created_by.team.entity_idstring

            Entity ID of the team

            listenasagent.execute_request.task.created_by.team.membersrepeated Agent
              listenasagent.execute_request.task.created_by.team.members.entity_idstring

              Entity ID of the agent.

          listenasagent.execute_request.task.created_by.on_behalf_ofPrincipal

          The Principal this Principal is acting on behalf of.

          Likely only populated once in the nesting (i.e. the "on_behalf_of" Principal would not have another "on_behalf_of" in most cases).

            listenasagent.execute_request.task.created_by.on_behalf_of.systemSystem
              listenasagent.execute_request.task.created_by.on_behalf_of.system.service_namestring

              Name of the service associated with this System.

              listenasagent.execute_request.task.created_by.on_behalf_of.system.entity_idstring

              The Entity ID of the System.

              listenasagent.execute_request.task.created_by.on_behalf_of.system.manages_own_schedulingbool

              Whether the System Principal (for example, an Asset) can own scheduling. This means we bypass manager-owned scheduling and defer to the system Principal to handle scheduling and give us status updates for the Task. Regardless of the value defined by the client, the Task Manager will determine and set this value appropriately.

            listenasagent.execute_request.task.created_by.on_behalf_of.userUser
              listenasagent.execute_request.task.created_by.on_behalf_of.user.user_idstring

              The User ID associated with this User.

            listenasagent.execute_request.task.created_by.on_behalf_of.teamTeam
              listenasagent.execute_request.task.created_by.on_behalf_of.team.entity_idstring

              Entity ID of the team

              listenasagent.execute_request.task.created_by.on_behalf_of.team.membersrepeated Agent
              Nesting depth limit reached
            listenasagent.execute_request.task.created_by.on_behalf_of.on_behalf_ofPrincipal

            The Principal this Principal is acting on behalf of.

            Likely only populated once in the nesting (i.e. the "on_behalf_of" Principal would not have another "on_behalf_of" in most cases).

              listenasagent.execute_request.task.created_by.on_behalf_of.on_behalf_of.systemSystem
              Nesting depth limit reached
              listenasagent.execute_request.task.created_by.on_behalf_of.on_behalf_of.userUser
              Nesting depth limit reached
              listenasagent.execute_request.task.created_by.on_behalf_of.on_behalf_of.teamTeam
              Nesting depth limit reached
              listenasagent.execute_request.task.created_by.on_behalf_of.on_behalf_of.on_behalf_ofPrincipal
              Nesting depth limit reached

              The Principal this Principal is acting on behalf of.

              Likely only populated once in the nesting (i.e. the "on_behalf_of" Principal would not have another "on_behalf_of" in most cases).

        listenasagent.execute_request.task.last_updated_byPrincipal

        Records who updated this Task last.

          listenasagent.execute_request.task.last_updated_by.systemSystem
            listenasagent.execute_request.task.last_updated_by.system.service_namestring

            Name of the service associated with this System.

            listenasagent.execute_request.task.last_updated_by.system.entity_idstring

            The Entity ID of the System.

            listenasagent.execute_request.task.last_updated_by.system.manages_own_schedulingbool

            Whether the System Principal (for example, an Asset) can own scheduling. This means we bypass manager-owned scheduling and defer to the system Principal to handle scheduling and give us status updates for the Task. Regardless of the value defined by the client, the Task Manager will determine and set this value appropriately.

          listenasagent.execute_request.task.last_updated_by.userUser
            listenasagent.execute_request.task.last_updated_by.user.user_idstring

            The User ID associated with this User.

          listenasagent.execute_request.task.last_updated_by.teamTeam
            listenasagent.execute_request.task.last_updated_by.team.entity_idstring

            Entity ID of the team

            listenasagent.execute_request.task.last_updated_by.team.membersrepeated Agent
              listenasagent.execute_request.task.last_updated_by.team.members.entity_idstring

              Entity ID of the agent.

          listenasagent.execute_request.task.last_updated_by.on_behalf_ofPrincipal

          The Principal this Principal is acting on behalf of.

          Likely only populated once in the nesting (i.e. the "on_behalf_of" Principal would not have another "on_behalf_of" in most cases).

            listenasagent.execute_request.task.last_updated_by.on_behalf_of.systemSystem
              listenasagent.execute_request.task.last_updated_by.on_behalf_of.system.service_namestring

              Name of the service associated with this System.

              listenasagent.execute_request.task.last_updated_by.on_behalf_of.system.entity_idstring

              The Entity ID of the System.

              listenasagent.execute_request.task.last_updated_by.on_behalf_of.system.manages_own_schedulingbool

              Whether the System Principal (for example, an Asset) can own scheduling. This means we bypass manager-owned scheduling and defer to the system Principal to handle scheduling and give us status updates for the Task. Regardless of the value defined by the client, the Task Manager will determine and set this value appropriately.

            listenasagent.execute_request.task.last_updated_by.on_behalf_of.userUser
              listenasagent.execute_request.task.last_updated_by.on_behalf_of.user.user_idstring

              The User ID associated with this User.

            listenasagent.execute_request.task.last_updated_by.on_behalf_of.teamTeam
              listenasagent.execute_request.task.last_updated_by.on_behalf_of.team.entity_idstring

              Entity ID of the team

              listenasagent.execute_request.task.last_updated_by.on_behalf_of.team.membersrepeated Agent
              Nesting depth limit reached
            listenasagent.execute_request.task.last_updated_by.on_behalf_of.on_behalf_ofPrincipal

            The Principal this Principal is acting on behalf of.

            Likely only populated once in the nesting (i.e. the "on_behalf_of" Principal would not have another "on_behalf_of" in most cases).

              listenasagent.execute_request.task.last_updated_by.on_behalf_of.on_behalf_of.systemSystem
              Nesting depth limit reached
              listenasagent.execute_request.task.last_updated_by.on_behalf_of.on_behalf_of.userUser
              Nesting depth limit reached
              listenasagent.execute_request.task.last_updated_by.on_behalf_of.on_behalf_of.teamTeam
              Nesting depth limit reached
              listenasagent.execute_request.task.last_updated_by.on_behalf_of.on_behalf_of.on_behalf_ofPrincipal
              Nesting depth limit reached

              The Principal this Principal is acting on behalf of.

              Likely only populated once in the nesting (i.e. the "on_behalf_of" Principal would not have another "on_behalf_of" in most cases).

        listenasagent.execute_request.task.last_update_timeTimestamp

        Records the time of last update.

        listenasagent.execute_request.task.statusTaskStatus

        The status of this Task.

          listenasagent.execute_request.task.status.statusStatus

          Status of the Task.

            STATUS_INVALID = 0

            STATUS_CREATED = 1

            Initial creation Status.

            STATUS_SCHEDULED_IN_MANAGER = 2

            Scheduled within Task Manager to be sent at a future time.

            STATUS_SENT = 3

            Sent to another system (Asset), no receipt yet.

            STATUS_MACHINE_RECEIPT = 4

            Task was sent to Assignee, and some system was reachable and responded. However, the system responsible for execution on the Assignee has not yet acknowledged the Task.

            STATUS_ACK = 5

            System responsible for execution on the Assignee has acknowledged the Task.

          listenasagent.execute_request.task.status.task_errorTaskError

          Any errors associated with the Task.

            listenasagent.execute_request.task.status.task_error.codeErrorCode

            Error code for Task error.

              ERROR_CODE_INVALID = 0

              ERROR_CODE_CANCELLED = 1

              Task was cancelled by requester.

              ERROR_CODE_REJECTED = 2

              Task was rejected by assignee, see message for details.

              ERROR_CODE_TIMEOUT = 3

              Task Manager gave up waiting for a receipt/ack from assignee.

              ERROR_CODE_FAILED = 4

              Task attempted to execute, but failed.

            listenasagent.execute_request.task.status.task_error.messagestring

            Descriptive human-readable string regarding this error.

            listenasagent.execute_request.task.status.task_error.error_detailsAny

            Any additional details regarding this error.

          listenasagent.execute_request.task.status.progressAny

          Any incremental progress on the Task, should be from the tasks/v*/progress folder.

          listenasagent.execute_request.task.status.resultAny

          Any final result of the Task, should be from tasks/v*/result folder.

          listenasagent.execute_request.task.status.start_timeTimestamp

          Time the Task began execution, may not be known even for executing Tasks.

          listenasagent.execute_request.task.status.estimateAny

          Any estimate for how the Task will progress, should be from tasks/v*/estimates folder.

          listenasagent.execute_request.task.status.allocationAllocation

          Any allocated agents of the Task.

            listenasagent.execute_request.task.status.allocation.active_agentsrepeated Agent

            Agents actively being utilized in a Task.

              listenasagent.execute_request.task.status.allocation.active_agents.entity_idstring

              Entity ID of the agent.

        listenasagent.execute_request.task.scheduled_timeTimestamp

        If the Task has been scheduled to execute, what time it should execute at.

        listenasagent.execute_request.task.relationsRelations

        Any related Tasks associated with this, typically includes an assignee for this Task and/or a parent.

          listenasagent.execute_request.task.relations.assigneePrincipal

          Who or what, if anyone, this Task is currently assigned to.

            listenasagent.execute_request.task.relations.assignee.systemSystem
              listenasagent.execute_request.task.relations.assignee.system.service_namestring

              Name of the service associated with this System.

              listenasagent.execute_request.task.relations.assignee.system.entity_idstring

              The Entity ID of the System.

              listenasagent.execute_request.task.relations.assignee.system.manages_own_schedulingbool

              Whether the System Principal (for example, an Asset) can own scheduling. This means we bypass manager-owned scheduling and defer to the system Principal to handle scheduling and give us status updates for the Task. Regardless of the value defined by the client, the Task Manager will determine and set this value appropriately.

            listenasagent.execute_request.task.relations.assignee.userUser
              listenasagent.execute_request.task.relations.assignee.user.user_idstring

              The User ID associated with this User.

            listenasagent.execute_request.task.relations.assignee.teamTeam
              listenasagent.execute_request.task.relations.assignee.team.entity_idstring

              Entity ID of the team

              listenasagent.execute_request.task.relations.assignee.team.membersrepeated Agent
              Nesting depth limit reached
            listenasagent.execute_request.task.relations.assignee.on_behalf_ofPrincipal

            The Principal this Principal is acting on behalf of.

            Likely only populated once in the nesting (i.e. the "on_behalf_of" Principal would not have another "on_behalf_of" in most cases).

              listenasagent.execute_request.task.relations.assignee.on_behalf_of.systemSystem
              Nesting depth limit reached
              listenasagent.execute_request.task.relations.assignee.on_behalf_of.userUser
              Nesting depth limit reached
              listenasagent.execute_request.task.relations.assignee.on_behalf_of.teamTeam
              Nesting depth limit reached
              listenasagent.execute_request.task.relations.assignee.on_behalf_of.on_behalf_ofPrincipal
              Nesting depth limit reached

              The Principal this Principal is acting on behalf of.

              Likely only populated once in the nesting (i.e. the "on_behalf_of" Principal would not have another "on_behalf_of" in most cases).

          listenasagent.execute_request.task.relations.parent_task_idstring

          If this Task is a "sub-Task", what is its parent, none if empty.

        listenasagent.execute_request.task.descriptionstring

        Longer, free form human readable description of this Task

        listenasagent.execute_request.task.is_executed_elsewherebool

        If set, execution of this Task is managed elsewhere, not by Task Manager. In other words, Task manager will not attempt to update the assigned agent with execution instructions.

        listenasagent.execute_request.task.create_timeTimestamp

        Time of Task creation.

        listenasagent.execute_request.task.replicationReplication

        If populated, designates this to be a replicated Task.

          listenasagent.execute_request.task.replication.stale_timeTimestamp

          Time by which this Task should be assumed to be stale.

        listenasagent.execute_request.task.initial_entitiesrepeated TaskEntity

        If populated, indicates an initial set of entities that can be used to execute an entity aware task For example, an entity Objective, an entity Keep In Zone, etc. These will not be updated during execution. If a taskable agent needs continuous updates on the entities from the COP, can call entity-manager, or use an AlternateId escape hatch.

          listenasagent.execute_request.task.initial_entities.entityEntity

          The wrapped entity-manager entity.

            listenasagent.execute_request.task.initial_entities.entity.entity_idstring

            A Globally Unique Identifier (GUID) for your entity. If this field is empty, the Entity Manager API automatically generates an ID when it creates the entity.

            listenasagent.execute_request.task.initial_entities.entity.descriptionstring

            A human-readable entity description that's helpful for debugging purposes and human traceability. If this field is empty, the Entity Manager API generates one for you.

            listenasagent.execute_request.task.initial_entities.entity.is_livebool

            Indicates the entity is active and should have a lifecycle state of CREATE or UPDATE. Set this field to true when publishing an entity.

            listenasagent.execute_request.task.initial_entities.entity.created_timeTimestamp

            The time when the entity was first known to the entity producer. If this field is empty, the Entity Manager API uses the current timestamp of when the entity is first received. For example, when a drone is first powered on, it might report its startup time as the created time. The timestamp doesn't change for the lifetime of an entity.

            listenasagent.execute_request.task.initial_entities.entity.expiry_timeTimestamp

            Future time that expires an entity and updates the is_live flag. For entities that are constantly updating, the expiry time also updates. In some cases, this may differ from is_live. Example: Entities with tasks exported to an external system must remain active even after they expire. This field is required when publishing a prepopulated entity. The expiry time must be in the future, but less than 30 days from the current time.

            listenasagent.execute_request.task.initial_entities.entity.statusStatus

            Human-readable descriptions of what the entity is currently doing.

              listenasagent.execute_request.task.initial_entities.entity.status.platform_activitystring

              A string that describes the activity that the entity is performing. Examples include "RECONNAISSANCE", "INTERDICTION", "RETURN TO BASE (RTB)", "PREPARING FOR LAUNCH".

              listenasagent.execute_request.task.initial_entities.entity.status.rolestring

              A human-readable string that describes the role the entity is currently performing. E.g. "Team Member", "Commander".

            listenasagent.execute_request.task.initial_entities.entity.locationLocation

            Geospatial data related to the entity, including its position, kinematics, and orientation.

              listenasagent.execute_request.task.initial_entities.entity.location.positionPosition
              Nesting depth limit reached

              see Position definition for details.

              listenasagent.execute_request.task.initial_entities.entity.location.velocity_enuENU
              Nesting depth limit reached

              Velocity in an ENU reference frame centered on the corresponding position. All units are meters per second.

              listenasagent.execute_request.task.initial_entities.entity.location.speed_mpsDoubleValue

              Speed is the magnitude of velocity_enu vector [sqrt(e^2 + n^2 + u^2)] when present, measured in m/s.

              listenasagent.execute_request.task.initial_entities.entity.location.accelerationENU
              Nesting depth limit reached

              The entity's acceleration in meters/s^2.

              listenasagent.execute_request.task.initial_entities.entity.location.attitude_enuQuaternion
              Nesting depth limit reached

              quaternion to translate from entity body frame to it's ENU frame

            listenasagent.execute_request.task.initial_entities.entity.location_uncertaintyLocationUncertainty

            Indicates uncertainty of the entity's position and kinematics.

              listenasagent.execute_request.task.initial_entities.entity.location_uncertainty.position_enu_covTMat3
              Nesting depth limit reached

              Positional covariance represented by the upper triangle of the covariance matrix. It is valid to populate only the diagonal of the matrix if the full covariance matrix is unknown.

              listenasagent.execute_request.task.initial_entities.entity.location_uncertainty.velocity_enu_covTMat3
              Nesting depth limit reached

              Velocity covariance represented by the upper triangle of the covariance matrix. It is valid to populate only the diagonal of the matrix if the full covariance matrix is unknown.

              listenasagent.execute_request.task.initial_entities.entity.location_uncertainty.position_error_ellipseErrorEllipse
              Nesting depth limit reached

              An ellipse that describes the certainty probability and error boundary for a given geolocation.

            listenasagent.execute_request.task.initial_entities.entity.geo_shapeGeoShape

            Geospatial representation of the entity, including entities that cover an area rather than a fixed point.

              listenasagent.execute_request.task.initial_entities.entity.geo_shape.pointGeoPoint
              Nesting depth limit reached
              listenasagent.execute_request.task.initial_entities.entity.geo_shape.lineGeoLine
              Nesting depth limit reached
              listenasagent.execute_request.task.initial_entities.entity.geo_shape.polygonGeoPolygon
              Nesting depth limit reached
              listenasagent.execute_request.task.initial_entities.entity.geo_shape.ellipseGeoEllipse
              Nesting depth limit reached
              listenasagent.execute_request.task.initial_entities.entity.geo_shape.ellipsoidGeoEllipsoid
              Nesting depth limit reached
            listenasagent.execute_request.task.initial_entities.entity.geo_detailsGeoDetails

            Additional details on what the geospatial area or point represents, along with visual display details.

              listenasagent.execute_request.task.initial_entities.entity.geo_details.typeGeoType
                GEO_TYPE_INVALID = 0

                GEO_TYPE_GENERAL = 1

                GEO_TYPE_HAZARD = 2

                GEO_TYPE_EMERGENCY = 3

                GEO_TYPE_ENGAGEMENT_ZONE = 5

                Engagement zones allow for engaging an entity if it comes within the zone of another entity.

                GEO_TYPE_CONTROL_AREA = 6

            listenasagent.execute_request.task.initial_entities.entity.aliasesAliases

            Entity name displayed in the Lattice UI side panel. Also includes identifiers that other systems can use to reference the same entity.

              listenasagent.execute_request.task.initial_entities.entity.aliases.alternate_idsrepeated AlternateId
              [anduril.entitymanager.v1.overridable = true]
              Nesting depth limit reached
              listenasagent.execute_request.task.initial_entities.entity.aliases.namestring
              [anduril.entitymanager.v1.overridable = true]

              The best available version of the entity's display name.

            listenasagent.execute_request.task.initial_entities.entity.trackedTracked

            If this entity is tracked by another entity, this component contains data related to how it's being tracked.

              listenasagent.execute_request.task.initial_entities.entity.tracked.track_quality_wrapperInt32Value

              Quality score, 0-15, nil if none

              listenasagent.execute_request.task.initial_entities.entity.tracked.sensor_hitsInt32Value

              Sensor hits aggregation on the tracked entity.

              listenasagent.execute_request.task.initial_entities.entity.tracked.number_of_objectsUInt32Range
              Nesting depth limit reached

              Estimated number of objects or units that are represented by this entity. Known as Strength in certain contexts (Link16) if UpperBound == LowerBound; (strength = LowerBound) If both UpperBound and LowerBound are defined; strength is between LowerBound and UpperBound (represented as string "Strength: 4-5") If UpperBound is defined only (LowerBound unset), Strength ≤ UpperBound If LowerBound is defined only (UpperBound unset), LowerBound ≤ Strength 0 indicates unset.

              listenasagent.execute_request.task.initial_entities.entity.tracked.radar_cross_sectionDoubleValue

              The radar cross section (RCS) is a measure of how detectable an object is by radar. A large RCS indicates an object is more easily detected. The unit is “decibels per square meter,” or dBsm

              listenasagent.execute_request.task.initial_entities.entity.tracked.last_measurement_timeTimestamp

              Timestamp of the latest tracking measurement for this entity.

              listenasagent.execute_request.task.initial_entities.entity.tracked.line_of_bearingLineOfBearing
              Nesting depth limit reached

              The relative position of a track with respect to the entity that is tracking it. Used for tracks that do not yet have a 3D position. For this entity (A), being tracked by some entity (B), this LineOfBearing would express a ray from B to A.

            listenasagent.execute_request.task.initial_entities.entity.correlationCorrelation

            If this entity has been correlated or decorrelated to another one, this component contains information on the correlation or decorrelation.

              listenasagent.execute_request.task.initial_entities.entity.correlation.primaryPrimaryCorrelation
              Nesting depth limit reached

              This entity is the primary of a correlation meaning that it serves as the representative entity of the correlation set.

              listenasagent.execute_request.task.initial_entities.entity.correlation.secondarySecondaryCorrelation
              Nesting depth limit reached

              This entity is a secondary of a correlation meaning that it will be represented by the primary of the correlation set.

              listenasagent.execute_request.task.initial_entities.entity.correlation.membershipCorrelationMembership
              Nesting depth limit reached

              If present, this entity is a part of a correlation set.

              listenasagent.execute_request.task.initial_entities.entity.correlation.decorrelationDecorrelation
              Nesting depth limit reached

              If present, this entity was explicitly decorrelated from one or more entities. An entity can be both correlated and decorrelated as long as they are disjoint sets. An example would be if a user in the UI decides that two tracks are not actually the same despite an automatic correlator having correlated them. The user would then decorrelate the two tracks and this decorrelation would be preserved preventing the correlator from re-correlating them at a later time.

            listenasagent.execute_request.task.initial_entities.entity.mil_viewMilView

            View of the entity.

              listenasagent.execute_request.task.initial_entities.entity.mil_view.dispositionDisposition
              [anduril.entitymanager.v1.overridable = true]
                DISPOSITION_UNKNOWN = 0

                DISPOSITION_FRIENDLY = 1

                DISPOSITION_HOSTILE = 2

                DISPOSITION_SUSPICIOUS = 3

                DISPOSITION_ASSUMED_FRIENDLY = 4

                DISPOSITION_NEUTRAL = 5

              listenasagent.execute_request.task.initial_entities.entity.mil_view.environmentEnvironment
              [anduril.entitymanager.v1.overridable = true]
                ENVIRONMENT_UNKNOWN = 0

                ENVIRONMENT_AIR = 1

                ENVIRONMENT_SURFACE = 2

                ENVIRONMENT_SUB_SURFACE = 3

                ENVIRONMENT_LAND = 4

                ENVIRONMENT_SPACE = 5

              listenasagent.execute_request.task.initial_entities.entity.mil_view.nationalityNationality
              [anduril.entitymanager.v1.overridable = true]
                NATIONALITY_INVALID = 0

                NATIONALITY_ALBANIA = 1

                NATIONALITY_ALGERIA = 62

                NATIONALITY_ARGENTINA = 79

                NATIONALITY_ARMENIA = 2

                NATIONALITY_AUSTRALIA = 3

            listenasagent.execute_request.task.initial_entities.entity.ontologyOntology

            Ontology defines an entity's categorization in Lattice, and improves data retrieval and integration. Builds a standardized representation of the entity.

              listenasagent.execute_request.task.initial_entities.entity.ontology.platform_typestring
              [anduril.entitymanager.v1.overridable = true]

              A string that describes the entity's high-level type with natural language.

              listenasagent.execute_request.task.initial_entities.entity.ontology.specific_typestring
              [anduril.entitymanager.v1.overridable = true]

              A string that describes the entity's exact model or type.

              listenasagent.execute_request.task.initial_entities.entity.ontology.templateTemplate

              The template used when creating this entity. Specifies minimum required components.

                TEMPLATE_INVALID = 0

                TEMPLATE_TRACK = 1

                additional track required components: * location * mil_view

                TEMPLATE_SENSOR_POINT_OF_INTEREST = 2

                additional SPI required components: * location * mil_view * produced_by

                TEMPLATE_ASSET = 3

                additional asset required components: * location * mil_view * ontology

                TEMPLATE_GEO = 4

                additional geo required components: * geo_shape * geo_details

                TEMPLATE_SIGNAL_OF_INTEREST = 5

                additional SOI required components: * signal * location field should be populated if there is a fix. * mil_view * ontology

            listenasagent.execute_request.task.initial_entities.entity.sensorsSensors

            Details an entity's available sensors.

              listenasagent.execute_request.task.initial_entities.entity.sensors.sensorsrepeated Sensor
              Nesting depth limit reached
            listenasagent.execute_request.task.initial_entities.entity.payloadsPayloads

            Details an entity's available payloads.

              listenasagent.execute_request.task.initial_entities.entity.payloads.payload_configurationsrepeated Payload
              [anduril.entitymanager.v1.overridable = true]
              Nesting depth limit reached
            listenasagent.execute_request.task.initial_entities.entity.power_statePowerState

            Details the entity's power source.

              listenasagent.execute_request.task.initial_entities.entity.power_state.source_id_to_staterepeated SourceIdToStateEntry
              Nesting depth limit reached

              This is a map where the key is a unique id of the power source and the value is additional information about the power source.

            listenasagent.execute_request.task.initial_entities.entity.provenanceProvenance

            The primary data source provenance for this entity.

              listenasagent.execute_request.task.initial_entities.entity.provenance.integration_namestring

              Name of the integration that produced this entity

              listenasagent.execute_request.task.initial_entities.entity.provenance.data_typestring

              Source data type of this entity. Examples: ADSB, Link16, etc.

              listenasagent.execute_request.task.initial_entities.entity.provenance.source_idstring

              An ID that allows an element from a source to be uniquely identified

              listenasagent.execute_request.task.initial_entities.entity.provenance.source_update_timeTimestamp

              The time, according to the source system, that the data in the entity was last modified. Generally, this should be the time that the source-reported time of validity of the data in the entity. This field must be updated with every change to the entity or else Entity Manager will discard the update.

              listenasagent.execute_request.task.initial_entities.entity.provenance.source_descriptionstring

              Description of the modification source. In the case of a user this is the email address.

            listenasagent.execute_request.task.initial_entities.entity.overridesOverrides

            Provenance of override data.

              listenasagent.execute_request.task.initial_entities.entity.overrides.overriderepeated Override
              Nesting depth limit reached
            listenasagent.execute_request.task.initial_entities.entity.indicatorsIndicators

            Describes an entity's specific characteristics and the operations that can be performed on the entity. For example, "simulated" informs the operator that the entity is from a simulation, and "deletable" informs the operator (and system) that the delete operation is valid against the entity.

              listenasagent.execute_request.task.initial_entities.entity.indicators.simulatedBoolValue
              listenasagent.execute_request.task.initial_entities.entity.indicators.exerciseBoolValue
              listenasagent.execute_request.task.initial_entities.entity.indicators.emergencyBoolValue
              listenasagent.execute_request.task.initial_entities.entity.indicators.c2BoolValue
              listenasagent.execute_request.task.initial_entities.entity.indicators.egressableBoolValue
              [anduril.entitymanager.v1.overridable = true]

              Indicates the Entity should be egressed to external sources. Integrations choose how the egressing happens (e.g. if an Entity needs fuzzing).

              listenasagent.execute_request.task.initial_entities.entity.indicators.starredBoolValue
              [anduril.entitymanager.v1.overridable = true]

              A signal of arbitrary importance such that the entity should be globally marked for all users

            listenasagent.execute_request.task.initial_entities.entity.target_priorityTargetPriority

            The prioritization associated with an entity, such as if it's a threat or a high-value target.

              listenasagent.execute_request.task.initial_entities.entity.target_priority.high_value_targetHighValueTarget
              [anduril.entitymanager.v1.overridable = true]
              Nesting depth limit reached

              Describes the target priority in relation to high value target lists.

              listenasagent.execute_request.task.initial_entities.entity.target_priority.threatThreat
              Nesting depth limit reached

              Describes whether the entity should be treated as a threat

            listenasagent.execute_request.task.initial_entities.entity.signalSignal

            Describes an entity's signal characteristics, primarily used when an entity is a signal of interest.

              listenasagent.execute_request.task.initial_entities.entity.signal.frequency_centerFrequency
              Nesting depth limit reached
              listenasagent.execute_request.task.initial_entities.entity.signal.frequency_rangeFrequencyRange
              Nesting depth limit reached
              listenasagent.execute_request.task.initial_entities.entity.signal.bandwidth_hzDoubleValue

              Indicates the bandwidth of a signal (Hz).

              listenasagent.execute_request.task.initial_entities.entity.signal.signal_to_noise_ratioDoubleValue

              Indicates the signal to noise (SNR) of this signal.

              listenasagent.execute_request.task.initial_entities.entity.signal.line_of_bearingLineOfBearing
              Nesting depth limit reached
              listenasagent.execute_request.task.initial_entities.entity.signal.fixedFixed
              Nesting depth limit reached
              listenasagent.execute_request.task.initial_entities.entity.signal.emitter_notationsrepeated EmitterNotation
              Nesting depth limit reached

              Emitter notations associated with this entity.

              listenasagent.execute_request.task.initial_entities.entity.signal.pulse_width_sDoubleValue

              length in time of a single pulse

              listenasagent.execute_request.task.initial_entities.entity.signal.pulse_repetition_intervalPulseRepetitionInterval
              Nesting depth limit reached

              length in time between the start of two pulses

              listenasagent.execute_request.task.initial_entities.entity.signal.scan_characteristicsScanCharacteristics
              Nesting depth limit reached

              describes how a signal is observing the environment

            listenasagent.execute_request.task.initial_entities.entity.transponder_codesTransponderCodes

            A message describing any transponder codes associated with Mode 1, 2, 3, 4, 5, S interrogations. These are related to ADS-B modes.

              listenasagent.execute_request.task.initial_entities.entity.transponder_codes.mode1uint32
              [anduril.entitymanager.v1.overridable = true]

              The mode 1 code assigned to military assets.

              listenasagent.execute_request.task.initial_entities.entity.transponder_codes.mode2uint32
              [anduril.entitymanager.v1.overridable = true]

              The Mode 2 code assigned to military assets.

              listenasagent.execute_request.task.initial_entities.entity.transponder_codes.mode3uint32
              [anduril.entitymanager.v1.overridable = true]

              The Mode 3 code assigned by ATC to the asset.

              listenasagent.execute_request.task.initial_entities.entity.transponder_codes.mode4_interrogation_responseInterrogationResponse
              [anduril.entitymanager.v1.overridable = true]

              The validity of the response from the Mode 4 interrogation.

                INTERROGATION_RESPONSE_INVALID = 0

                Note that INTERROGATION_INVALID indicates that the target has not been interrogated.

                INTERROGATION_RESPONSE_CORRECT = 1

                INTERROGATION_RESPONSE_INCORRECT = 2

                INTERROGATION_RESPONSE_NO_RESPONSE = 3

              listenasagent.execute_request.task.initial_entities.entity.transponder_codes.mode5Mode5
              [anduril.entitymanager.v1.overridable = true]
              Nesting depth limit reached

              The Mode 5 transponder codes.

              listenasagent.execute_request.task.initial_entities.entity.transponder_codes.mode_sModeS
              [anduril.entitymanager.v1.overridable = true]
              Nesting depth limit reached

              The Mode S transponder codes.

            listenasagent.execute_request.task.initial_entities.entity.data_classificationClassification

            Describes an entity's security classification levels at an overall classification level and on a per field level.

              listenasagent.execute_request.task.initial_entities.entity.data_classification.defaultClassificationInformation
              Nesting depth limit reached

              The default classification information which should be assumed to apply to everything in the entity unless a specific field level classification is present.

              listenasagent.execute_request.task.initial_entities.entity.data_classification.fieldsrepeated FieldClassificationInformation
              Nesting depth limit reached

              The set of individual field classification information which should always precedence over the default classification information.

            listenasagent.execute_request.task.initial_entities.entity.task_catalogTaskCatalog

            A catalog of tasks that can be performed by an entity.

              listenasagent.execute_request.task.initial_entities.entity.task_catalog.task_definitionsrepeated TaskDefinition
              Nesting depth limit reached
            listenasagent.execute_request.task.initial_entities.entity.relationshipsRelationships

            The relationships between this entity and other entities in the common operational picture (COP).

              listenasagent.execute_request.task.initial_entities.entity.relationships.relationshipsrepeated Relationship
              Nesting depth limit reached
            listenasagent.execute_request.task.initial_entities.entity.visual_detailsVisualDetails

            Visual details associated with the display of an entity in the client.

              listenasagent.execute_request.task.initial_entities.entity.visual_details.range_ringsRangeRings
              [anduril.entitymanager.v1.overridable = true]
              Nesting depth limit reached

              The range rings to display around an entity.

            listenasagent.execute_request.task.initial_entities.entity.dimensionsDimensions

            Physical dimensions of the entity.

              listenasagent.execute_request.task.initial_entities.entity.dimensions.length_mfloat

              Length of the entity in meters

            listenasagent.execute_request.task.initial_entities.entity.route_detailsRouteDetails

            Additional information about an entity's route.

              listenasagent.execute_request.task.initial_entities.entity.route_details.destination_namestring

              Free form text giving the name of the entity's destination

              listenasagent.execute_request.task.initial_entities.entity.route_details.estimated_arrival_timeTimestamp

              Estimated time of arrival at destination

            listenasagent.execute_request.task.initial_entities.entity.schedulesSchedules

            Schedules associated with this entity.

              listenasagent.execute_request.task.initial_entities.entity.schedules.schedulesrepeated Schedule
              Nesting depth limit reached
            listenasagent.execute_request.task.initial_entities.entity.healthHealth

            Health metrics or connection status reported by the entity.

              listenasagent.execute_request.task.initial_entities.entity.health.connection_statusConnectionStatus

              Status indicating whether the entity is able to communicate with Entity Manager.

                CONNECTION_STATUS_INVALID = 0

                CONNECTION_STATUS_ONLINE = 1

                CONNECTION_STATUS_OFFLINE = 2

              listenasagent.execute_request.task.initial_entities.entity.health.health_statusHealthStatus

              Top-level health status; typically a roll-up of individual component healths.

                HEALTH_STATUS_INVALID = 0

                HEALTH_STATUS_HEALTHY = 1

                Indicates that the component is operating as intended.

                HEALTH_STATUS_WARN = 2

                Indicates that the component is at risk of transitioning into a HEALTH_STATUS_FAIL state or that the component is operating in a degraded state.

                HEALTH_STATUS_FAIL = 3

                Indicates that the component is not functioning as intended.

                HEALTH_STATUS_OFFLINE = 4

                Indicates that the component is offline.

                HEALTH_STATUS_NOT_READY = 5

                Indicates that the component is not yet functioning, but it is transitioning into a HEALTH_STATUS_HEALTHY state. A component should only report this state temporarily.

              listenasagent.execute_request.task.initial_entities.entity.health.componentsrepeated ComponentHealth
              Nesting depth limit reached

              Health of individual components running on this Entity.

              listenasagent.execute_request.task.initial_entities.entity.health.update_timeTimestamp

              The update time for the top-level health information. If this timestamp is unset, the data is assumed to be most recent

              listenasagent.execute_request.task.initial_entities.entity.health.active_alertsrepeated Alert
              Nesting depth limit reached

              Active alerts indicate a critical change in system state sent by the asset that must be made known to an operator or consumer of the common operating picture. Alerts are different from ComponentHealth messages--an active alert does not necessarily indicate a component is in an unhealthy state. For example, an asset may trigger an active alert based on fuel levels running low. Alerts should be removed from this list when their conditions are cleared. In other words, only active alerts should be reported here.

            listenasagent.execute_request.task.initial_entities.entity.group_detailsGroupDetails

            Details for the group associated with this entity.

            listenasagent.execute_request.task.initial_entities.entity.suppliesSupplies

            Contains relevant supply information for the entity, such as fuel.

              listenasagent.execute_request.task.initial_entities.entity.supplies.fuelrepeated Fuel
              [anduril.entitymanager.v1.overridable = true]
              Nesting depth limit reached
            listenasagent.execute_request.task.initial_entities.entity.orbitOrbit

            Orbit information for space objects.

              listenasagent.execute_request.task.initial_entities.entity.orbit.orbit_mean_elementsOrbitMeanElements
              Nesting depth limit reached

              Orbit Mean Elements data, analogous to the Orbit Mean Elements Message in CCSDS 502.0-B-3

          listenasagent.execute_request.task.initial_entities.snapshotbool

          Indicates that this entity was generated from a snapshot of a live entity.

        listenasagent.execute_request.task.ownerOwner

        The networked owner of this Task. It is used to ensure that linear writes occur on the node responsible for replication of task data to other nodes running Task Manager.

          listenasagent.execute_request.task.owner.entity_idstring

          Entity ID of the owner.

    listenasagent.cancel_requestCancelRequest
      listenasagent.cancel_request.task_idstring

      ID of the Task to cancel.

      listenasagent.cancel_request.assigneePrincipal

      The assignee of the Task. Useful for agent routing where an endpoint owns multiple agents, especially onBehalfOf assignees.

        listenasagent.cancel_request.assignee.systemSystem
          listenasagent.cancel_request.assignee.system.service_namestring

          Name of the service associated with this System.

          listenasagent.cancel_request.assignee.system.entity_idstring

          The Entity ID of the System.

          listenasagent.cancel_request.assignee.system.manages_own_schedulingbool

          Whether the System Principal (for example, an Asset) can own scheduling. This means we bypass manager-owned scheduling and defer to the system Principal to handle scheduling and give us status updates for the Task. Regardless of the value defined by the client, the Task Manager will determine and set this value appropriately.

        listenasagent.cancel_request.assignee.userUser
          listenasagent.cancel_request.assignee.user.user_idstring

          The User ID associated with this User.

        listenasagent.cancel_request.assignee.teamTeam
          listenasagent.cancel_request.assignee.team.entity_idstring

          Entity ID of the team

          listenasagent.cancel_request.assignee.team.membersrepeated Agent
            listenasagent.cancel_request.assignee.team.members.entity_idstring

            Entity ID of the agent.

        listenasagent.cancel_request.assignee.on_behalf_ofPrincipal

        The Principal this Principal is acting on behalf of.

        Likely only populated once in the nesting (i.e. the "on_behalf_of" Principal would not have another "on_behalf_of" in most cases).

          listenasagent.cancel_request.assignee.on_behalf_of.systemSystem
            listenasagent.cancel_request.assignee.on_behalf_of.system.service_namestring

            Name of the service associated with this System.

            listenasagent.cancel_request.assignee.on_behalf_of.system.entity_idstring

            The Entity ID of the System.

            listenasagent.cancel_request.assignee.on_behalf_of.system.manages_own_schedulingbool

            Whether the System Principal (for example, an Asset) can own scheduling. This means we bypass manager-owned scheduling and defer to the system Principal to handle scheduling and give us status updates for the Task. Regardless of the value defined by the client, the Task Manager will determine and set this value appropriately.

          listenasagent.cancel_request.assignee.on_behalf_of.userUser
            listenasagent.cancel_request.assignee.on_behalf_of.user.user_idstring

            The User ID associated with this User.

          listenasagent.cancel_request.assignee.on_behalf_of.teamTeam
            listenasagent.cancel_request.assignee.on_behalf_of.team.entity_idstring

            Entity ID of the team

            listenasagent.cancel_request.assignee.on_behalf_of.team.membersrepeated Agent
              listenasagent.cancel_request.assignee.on_behalf_of.team.members.entity_idstring

              Entity ID of the agent.

          listenasagent.cancel_request.assignee.on_behalf_of.on_behalf_ofPrincipal

          The Principal this Principal is acting on behalf of.

          Likely only populated once in the nesting (i.e. the "on_behalf_of" Principal would not have another "on_behalf_of" in most cases).

            listenasagent.cancel_request.assignee.on_behalf_of.on_behalf_of.systemSystem
              listenasagent.cancel_request.assignee.on_behalf_of.on_behalf_of.system.service_namestring

              Name of the service associated with this System.

              listenasagent.cancel_request.assignee.on_behalf_of.on_behalf_of.system.entity_idstring

              The Entity ID of the System.

              listenasagent.cancel_request.assignee.on_behalf_of.on_behalf_of.system.manages_own_schedulingbool

              Whether the System Principal (for example, an Asset) can own scheduling. This means we bypass manager-owned scheduling and defer to the system Principal to handle scheduling and give us status updates for the Task. Regardless of the value defined by the client, the Task Manager will determine and set this value appropriately.

            listenasagent.cancel_request.assignee.on_behalf_of.on_behalf_of.userUser
              listenasagent.cancel_request.assignee.on_behalf_of.on_behalf_of.user.user_idstring

              The User ID associated with this User.

            listenasagent.cancel_request.assignee.on_behalf_of.on_behalf_of.teamTeam
              listenasagent.cancel_request.assignee.on_behalf_of.on_behalf_of.team.entity_idstring

              Entity ID of the team

              listenasagent.cancel_request.assignee.on_behalf_of.on_behalf_of.team.membersrepeated Agent
              Nesting depth limit reached
            listenasagent.cancel_request.assignee.on_behalf_of.on_behalf_of.on_behalf_ofPrincipal

            The Principal this Principal is acting on behalf of.

            Likely only populated once in the nesting (i.e. the "on_behalf_of" Principal would not have another "on_behalf_of" in most cases).

              listenasagent.cancel_request.assignee.on_behalf_of.on_behalf_of.on_behalf_of.systemSystem
              Nesting depth limit reached
              listenasagent.cancel_request.assignee.on_behalf_of.on_behalf_of.on_behalf_of.userUser
              Nesting depth limit reached
              listenasagent.cancel_request.assignee.on_behalf_of.on_behalf_of.on_behalf_of.teamTeam
              Nesting depth limit reached
              listenasagent.cancel_request.assignee.on_behalf_of.on_behalf_of.on_behalf_of.on_behalf_ofPrincipal
              Nesting depth limit reached

              The Principal this Principal is acting on behalf of.

              Likely only populated once in the nesting (i.e. the "on_behalf_of" Principal would not have another "on_behalf_of" in most cases).

    listenasagent.complete_requestCompleteRequest
      listenasagent.complete_request.task_idstring

      ID of the task to complete.