Create a new task and schedule it for delivery
POST/tasks
Submit a request to create a task and schedule it for delivery. Tasks, once delivered, will be asynchronously updated by their destined agent.
Request
- application/json
Body
required
Array [
]
Array [
]
Array [
Array [
]
Array [
]
Array [
Array [
]
]
- exactly 1 linear ring with 5 points (starting corner, 3 other corners and start again)
- each point has the same altitude corresponding with the plane of the rectangle
- each point has the same height (either all present and equal, or all not present)
Array [
]
Array [
]
Array [
Array [
]
Array [
]
Array [
]
]
Array [
]
Array [
]
Array [
]
Array [
]
Array [
]
Array [
]
Array [
Array [
Array [
]
Array [
]
Array [
]
]
]
Array [
Array [
]
]
Array [
Array [
]
]
Array [
Array [
]
]
Array [
Array [
]
]
]
If non-empty, will set the requested Task ID, otherwise will generate a new random GUID. Will reject if supplied Task ID does not match [A-Za-z0-9_-.]{5,36}.
Human readable display name for this Task, should be short (<100 chars).
Longer, free form human readable description of this Task.
specification
object
Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.
The type of the serialized message.
Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.
author
object
A Principal is an entity that has authority over this Task.
system
object
System Principal representing some autonomous system.
Name of the service associated with this System.
The Entity ID of the System.
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.
user
object
A User Principal representing a human.
The User ID associated with this User.
team
object
Represents a team of agents
Entity ID of the team
members
object[]
Entity ID of the agent.
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).
relations
object
Relations describes the relationships of this Task, such as assignment, or if the Task has any parents.
assignee
object
Who or what, if anyone, this Task is currently assigned to.
system
object
System Principal representing some autonomous system.
Name of the service associated with this System.
The Entity ID of the System.
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.
user
object
A User Principal representing a human.
The User ID associated with this User.
team
object
Represents a team of agents
Entity ID of the team
members
object[]
Entity ID of the agent.
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).
If this Task is a "sub-Task", what is its parent, none if empty.
If set, then the service will not trigger execution of this task on an agent. Useful for when ingesting tasks from an external system that is triggering execution of tasks on agents.
initialEntities
object[]
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.
entity
object
The entity object represents a single known object within the Lattice operational environment. It contains all data associated with the entity, such as its name, ID, and other relevant components.
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.
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.
Indicates the entity is active and should have a lifecycle state of CREATE or UPDATE. Set this field to true when publishing an entity.
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.
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.
status
object
Human-readable descriptions of what the entity is currently doing.
The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
details
object[]
A list of messages that carry the error details. There is a common set of message types for APIs to use.
The type of the serialized message.
location
object
Geospatial data related to the entity, including its position, kinematics, and orientation.
position
object
see Position definition for details.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
velocityEnu
object
Velocity in an ENU reference frame centered on the corresponding position. All units are meters per second.
Speed is the magnitude of velocity_enu vector [sqrt(e^2 + n^2 + u^2)] when present, measured in m/s.
acceleration
object
The entity's acceleration in meters/s^2.
attitudeEnu
object
quaternion to translate from entity body frame to it's ENU frame
x, y, z are vector portion, w is scalar
locationUncertainty
object
Indicates uncertainty of the entity's position and kinematics.
positionEnuCov
object
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.
velocityEnuCov
object
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.
positionErrorEllipse
object
An ellipse that describes the certainty probability and error boundary for a given geolocation.
Defines the probability in percentage that an entity lies within the given ellipse: 0-1.
Defines the distance from the center point of the ellipse to the furthest distance on the perimeter in meters.
Defines the distance from the center point of the ellipse to the shortest distance on the perimeter in meters.
The orientation of the semi-major relative to true north in degrees from clockwise: 0-180 due to symmetry across the semi-minor axis.
geoShape
object
Geospatial representation of the entity, including entities that cover an area rather than a fixed point.
point
object
A point shaped geo-entity. See https://datatracker.ietf.org/doc/html/rfc7946#section-3.1.2
position
object
WGS84 position. Position includes four altitude references. The data model does not currently support Mean Sea Level (MSL) references, such as the Earth Gravitational Model 1996 (EGM-96) and the Earth Gravitational Model 2008 (EGM-08). If the only altitude reference available to your integration is MSL, convert it to Height Above Ellipsoid (HAE) and populate the altitude_hae_meters field.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
line
object
A line shaped geo-entity. See https://datatracker.ietf.org/doc/html/rfc7946#section-3.1.4
positions
object[]
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
polygon
object
A polygon shaped geo-entity. See https://datatracker.ietf.org/doc/html/rfc7946#section-3.1.6, only canonical representations accepted
rings
object[]
An array of LinearRings where the first item is the exterior ring and subsequent items are interior rings.
positions
object[]
position
object
base position. if no altitude set, its on the ground.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
optional height above base position to extrude in meters. for a given polygon, all points should have a height or none of them. strictly GeoJSON compatible polygons will not have this set.
An extension hint that this polygon is a rectangle. When true this implies several things:
ellipse
object
An ellipse shaped geo-entity. For a circle, the major and minor axis would be the same values. This shape is NOT Geo-JSON compatible.
Defines the distance from the center point of the ellipse to the furthest distance on the perimeter in meters.
Defines the distance from the center point of the ellipse to the shortest distance on the perimeter in meters.
The orientation of the semi-major relative to true north in degrees from clockwise: 0-180 due to symmetry across the semi-minor axis.
Optional height above entity position to extrude in meters. A non-zero value creates an elliptic cylinder
ellipsoid
object
An ellipsoid shaped geo-entity. Principal axis lengths are defined in entity body space This shape is NOT Geo-JSON compatible.
Defines the distance from the center point to the surface along the forward axis
Defines the distance from the center point to the surface along the side axis
Defines the distance from the center point to the surface along the up axis
geoDetails
object
Additional details on what the geospatial area or point represents, along with visual display details.
Possible values: [GEO_TYPE_INVALID
, GEO_TYPE_GENERAL
, GEO_TYPE_HAZARD
, GEO_TYPE_EMERGENCY
, GEO_TYPE_ENGAGEMENT_ZONE
, GEO_TYPE_CONTROL_AREA
, GEO_TYPE_BULLSEYE
]
aliases
object
Entity name displayed in the Lattice UI side panel. Also includes identifiers that other systems can use to reference the same entity.
alternateIds
object[]
Possible values: [ALT_ID_TYPE_INVALID
, ALT_ID_TYPE_TRACK_ID_2
, ALT_ID_TYPE_TRACK_ID_1
, ALT_ID_TYPE_SPI_ID
, ALT_ID_TYPE_NITF_FILE_TITLE
, ALT_ID_TYPE_TRACK_REPO_ALERT_ID
, ALT_ID_TYPE_ASSET_ID
, ALT_ID_TYPE_LINK16_TRACK_NUMBER
, ALT_ID_TYPE_LINK16_JU
, ALT_ID_TYPE_NCCT_MESSAGE_ID
, ALT_ID_TYPE_CALLSIGN
, ALT_ID_TYPE_MMSI_ID
, ALT_ID_TYPE_VMF_URN
, ALT_ID_TYPE_IMO_ID
, ALT_ID_TYPE_VMF_TARGET_NUMBER
, ALT_ID_TYPE_SERIAL_NUMBER
, ALT_ID_TYPE_REGISTRATION_ID
, ALT_ID_TYPE_IBS_GID
, ALT_ID_TYPE_DODAAC
, ALT_ID_TYPE_UIC
, ALT_ID_TYPE_NORAD_CAT_ID
, ALT_ID_TYPE_UNOOSA_NAME
, ALT_ID_TYPE_UNOOSA_ID
]
The best available version of the entity's display name.
tracked
object
If this entity is tracked by another entity, this component contains data related to how it's being tracked.
Quality score, 0-15, nil if none
Sensor hits aggregation on the tracked entity.
numberOfObjects
object
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.
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
Timestamp of the latest tracking measurement for this entity.
lineOfBearing
object
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.
angleOfArrival
object
The direction pointing from this entity to the detection
relativePose
object
Origin (LLA) and attitude (relative to ENU) of a ray pointing towards the detection. The attitude represents a forward-left-up (FLU) frame where the x-axis (1, 0, 0) is pointing towards the target.
pos
object
Geospatial location defined by this Pose.
Meaning of alt. altitude in meters above either WGS84 or EGM96, use altitude_reference to determine what zero means.
Possible values: [ALTITUDE_REFERENCE_INVALID
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_WGS84
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_EGM96
, ALTITUDE_REFERENCE_UNKNOWN
, ALTITUDE_REFERENCE_BAROMETRIC
, ALTITUDE_REFERENCE_ABOVE_SEA_FLOOR
, ALTITUDE_REFERENCE_BELOW_SEA_SURFACE
]
attEnu
object
The quaternion to transform a point in the Pose frame to the ENU frame. The Pose frame could be Body, Turret, etc and is determined by the context in which this Pose is used. The normal convention for defining orientation is to list the frames of transformation, for example att_gimbal_to_enu is the quaternion which transforms a point in the gimbal frame to the body frame, but in this case we truncate to att_enu because the Pose frame isn't defined. A potentially better name for this field would have been att_pose_to_enu.
Implementations of this quaternion should left multiply this quaternion to transform a point from the Pose frame to the enu frame.
Point<Pose> posePt{1,0,0}; Rotation<Enu, Pose> attPoseToEnu{}; Point<Enu> = attPoseToEnu*posePt;
This transformed point represents some vector in ENU space that is aligned with the x axis of the attPoseToEnu matrix.
An alternative matrix expression is as follows: ptEnu = M x ptPose
x, y, z are vector portion, w is scalar
bearingElevationCovarianceRad2
object
Bearing/elevation covariance matrix where bearing is defined in radians CCW+ about the z-axis from the x-axis of FLU frame and elevation is positive down from the FL/XY plane. mxx = bearing variance in rad^2 mxy = bearing/elevation covariance in rad^2 myy = elevation variance in rad^2
rangeEstimateM
object
The estimated distance of the detection
The value of the measurement.
Estimated one standard deviation in same unit as the value.
maxRangeM
object
The maximum distance of the detection
The value of the measurement.
Estimated one standard deviation in same unit as the value.
correlation
object
If this entity has been correlated or decorrelated to another one, this component contains information on the correlation or decorrelation.
primary
object
This entity is the primary of a correlation meaning that it serves as the representative entity of the correlation set.
The secondary entity IDs part of this correlation.
secondary
object
This entity is a secondary of a correlation meaning that it will be represented by the primary of the correlation set.
The primary of this correlation.
metadata
object
Metadata about the correlation.
provenance
object
Who or what added this entity to the (de)correlation.
Name of the integration that produced this entity
Source data type of this entity. Examples: ADSB, Link16, etc.
An ID that allows an element from a source to be uniquely identified
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.
Description of the modification source. In the case of a user this is the email address.
Indicates how the correlation will be distributed. Because a correlation is composed of multiple secondaries, each of which may have been correlated with different replication modes, the distribution of the correlation is composed of distributions of the individual entities within the correlation set. For example, if there are two secondary entities A and B correlated against a primary C, with A having been correlated globally and B having been correlated locally, then the correlation set that is distributed globally than what is known locally in the node.
Possible values: [CORRELATION_REPLICATION_MODE_INVALID
, CORRELATION_REPLICATION_MODE_LOCAL
, CORRELATION_REPLICATION_MODE_GLOBAL
]
What type of (de)correlation was this entity added with.
Possible values: [CORRELATION_TYPE_INVALID
, CORRELATION_TYPE_MANUAL
, CORRELATION_TYPE_AUTOMATED
]
membership
object
If present, this entity is a part of a correlation set.
The ID of the correlation set this entity belongs to.
This entity is the primary of a correlation set meaning that it serves as the representative entity of the correlation set.
This entity is not the primary of the correlation set. Note that there may not be a primary at all.
metadata
object
Additional metadata on this correlation.
provenance
object
Who or what added this entity to the (de)correlation.
Name of the integration that produced this entity
Source data type of this entity. Examples: ADSB, Link16, etc.
An ID that allows an element from a source to be uniquely identified
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.
Description of the modification source. In the case of a user this is the email address.
Indicates how the correlation will be distributed. Because a correlation is composed of multiple secondaries, each of which may have been correlated with different replication modes, the distribution of the correlation is composed of distributions of the individual entities within the correlation set. For example, if there are two secondary entities A and B correlated against a primary C, with A having been correlated globally and B having been correlated locally, then the correlation set that is distributed globally than what is known locally in the node.
Possible values: [CORRELATION_REPLICATION_MODE_INVALID
, CORRELATION_REPLICATION_MODE_LOCAL
, CORRELATION_REPLICATION_MODE_GLOBAL
]
What type of (de)correlation was this entity added with.
Possible values: [CORRELATION_TYPE_INVALID
, CORRELATION_TYPE_MANUAL
, CORRELATION_TYPE_AUTOMATED
]
decorrelation
object
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.
all
object
This will be specified if this entity was decorrelated against all other entities.
metadata
object
Metadata about the decorrelation.
provenance
object
Who or what added this entity to the (de)correlation.
Name of the integration that produced this entity
Source data type of this entity. Examples: ADSB, Link16, etc.
An ID that allows an element from a source to be uniquely identified
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.
Description of the modification source. In the case of a user this is the email address.
Indicates how the correlation will be distributed. Because a correlation is composed of multiple secondaries, each of which may have been correlated with different replication modes, the distribution of the correlation is composed of distributions of the individual entities within the correlation set. For example, if there are two secondary entities A and B correlated against a primary C, with A having been correlated globally and B having been correlated locally, then the correlation set that is distributed globally than what is known locally in the node.
Possible values: [CORRELATION_REPLICATION_MODE_INVALID
, CORRELATION_REPLICATION_MODE_LOCAL
, CORRELATION_REPLICATION_MODE_GLOBAL
]
What type of (de)correlation was this entity added with.
Possible values: [CORRELATION_TYPE_INVALID
, CORRELATION_TYPE_MANUAL
, CORRELATION_TYPE_AUTOMATED
]
decorrelatedEntities
object[]
A list of decorrelated entities that have been explicitly decorrelated against this entity which prevents lower precedence correlations from overriding it in the future. For example, if an operator in the UI decorrelated tracks A and B, any automated correlators would be unable to correlate them since manual decorrelations have higher precedence than automatic ones. Precedence is determined by both correlation type and replication mode.
The entity that was decorrelated against.
metadata
object
Metadata about the decorrelation.
provenance
object
Who or what added this entity to the (de)correlation.
Name of the integration that produced this entity
Source data type of this entity. Examples: ADSB, Link16, etc.
An ID that allows an element from a source to be uniquely identified
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.
Description of the modification source. In the case of a user this is the email address.
Indicates how the correlation will be distributed. Because a correlation is composed of multiple secondaries, each of which may have been correlated with different replication modes, the distribution of the correlation is composed of distributions of the individual entities within the correlation set. For example, if there are two secondary entities A and B correlated against a primary C, with A having been correlated globally and B having been correlated locally, then the correlation set that is distributed globally than what is known locally in the node.
Possible values: [CORRELATION_REPLICATION_MODE_INVALID
, CORRELATION_REPLICATION_MODE_LOCAL
, CORRELATION_REPLICATION_MODE_GLOBAL
]
What type of (de)correlation was this entity added with.
Possible values: [CORRELATION_TYPE_INVALID
, CORRELATION_TYPE_MANUAL
, CORRELATION_TYPE_AUTOMATED
]
milView
object
View of the entity.
Possible values: [DISPOSITION_UNKNOWN
, DISPOSITION_FRIENDLY
, DISPOSITION_HOSTILE
, DISPOSITION_SUSPICIOUS
, DISPOSITION_ASSUMED_FRIENDLY
, DISPOSITION_NEUTRAL
, DISPOSITION_PENDING
]
Possible values: [ENVIRONMENT_UNKNOWN
, ENVIRONMENT_AIR
, ENVIRONMENT_SURFACE
, ENVIRONMENT_SUB_SURFACE
, ENVIRONMENT_LAND
, ENVIRONMENT_SPACE
]
Possible values: [NATIONALITY_INVALID
, NATIONALITY_ALBANIA
, NATIONALITY_ALGERIA
, NATIONALITY_ARGENTINA
, NATIONALITY_ARMENIA
, NATIONALITY_AUSTRALIA
, NATIONALITY_AUSTRIA
, NATIONALITY_AZERBAIJAN
, NATIONALITY_BELARUS
, NATIONALITY_BELGIUM
, NATIONALITY_BOLIVIA
, NATIONALITY_BOSNIA_AND_HERZEGOVINA
, NATIONALITY_BRAZIL
, NATIONALITY_BULGARIA
, NATIONALITY_CAMBODIA
, NATIONALITY_CANADA
, NATIONALITY_CHILE
, NATIONALITY_CHINA
, NATIONALITY_COLOMBIA
, NATIONALITY_CROATIA
, NATIONALITY_CUBA
, NATIONALITY_CYPRUS
, NATIONALITY_CZECH_REPUBLIC
, NATIONALITY_DEMOCRATIC_PEOPLES_REPUBLIC_OF_KOREA
, NATIONALITY_DENMARK
, NATIONALITY_DOMINICAN_REPUBLIC
, NATIONALITY_ECUADOR
, NATIONALITY_EGYPT
, NATIONALITY_ESTONIA
, NATIONALITY_ETHIOPIA
, NATIONALITY_FINLAND
, NATIONALITY_FRANCE
, NATIONALITY_GEORGIA
, NATIONALITY_GERMANY
, NATIONALITY_GREECE
, NATIONALITY_GUATEMALA
, NATIONALITY_GUINEA
, NATIONALITY_HUNGARY
, NATIONALITY_ICELAND
, NATIONALITY_INDIA
, NATIONALITY_INDONESIA
, NATIONALITY_INTERNATIONAL_RED_CROSS
, NATIONALITY_IRAQ
, NATIONALITY_IRELAND
, NATIONALITY_ISLAMIC_REPUBLIC_OF_IRAN
, NATIONALITY_ISRAEL
, NATIONALITY_ITALY
, NATIONALITY_JAMAICA
, NATIONALITY_JAPAN
, NATIONALITY_JORDAN
, NATIONALITY_KAZAKHSTAN
, NATIONALITY_KUWAIT
, NATIONALITY_KYRGHYZ_REPUBLIC
, NATIONALITY_LAO_PEOPLES_DEMOCRATIC_REPUBLIC
, NATIONALITY_LATVIA
, NATIONALITY_LEBANON
, NATIONALITY_LIBERIA
, NATIONALITY_LITHUANIA
, NATIONALITY_LUXEMBOURG
, NATIONALITY_MADAGASCAR
, NATIONALITY_MALAYSIA
, NATIONALITY_MALTA
, NATIONALITY_MEXICO
, NATIONALITY_MOLDOVA
, NATIONALITY_MONTENEGRO
, NATIONALITY_MOROCCO
, NATIONALITY_MYANMAR
, NATIONALITY_NATO
, NATIONALITY_NETHERLANDS
, NATIONALITY_NEW_ZEALAND
, NATIONALITY_NICARAGUA
, NATIONALITY_NIGERIA
, NATIONALITY_NORWAY
, NATIONALITY_PAKISTAN
, NATIONALITY_PANAMA
, NATIONALITY_PARAGUAY
, NATIONALITY_PERU
, NATIONALITY_PHILIPPINES
, NATIONALITY_POLAND
, NATIONALITY_PORTUGAL
, NATIONALITY_REPUBLIC_OF_KOREA
, NATIONALITY_ROMANIA
, NATIONALITY_RUSSIA
, NATIONALITY_SAUDI_ARABIA
, NATIONALITY_SENEGAL
, NATIONALITY_SERBIA
, NATIONALITY_SINGAPORE
, NATIONALITY_SLOVAKIA
, NATIONALITY_SLOVENIA
, NATIONALITY_SOUTH_AFRICA
, NATIONALITY_SPAIN
, NATIONALITY_SUDAN
, NATIONALITY_SWEDEN
, NATIONALITY_SWITZERLAND
, NATIONALITY_SYRIAN_ARAB_REPUBLIC
, NATIONALITY_TAIWAN
, NATIONALITY_TAJIKISTAN
, NATIONALITY_THAILAND
, NATIONALITY_THE_FORMER_YUGOSLAV_REPUBLIC_OF_MACEDONIA
, NATIONALITY_TUNISIA
, NATIONALITY_TURKEY
, NATIONALITY_TURKMENISTAN
, NATIONALITY_UGANDA
, NATIONALITY_UKRAINE
, NATIONALITY_UNITED_KINGDOM
, NATIONALITY_UNITED_NATIONS
, NATIONALITY_UNITED_REPUBLIC_OF_TANZANIA
, NATIONALITY_UNITED_STATES_OF_AMERICA
, NATIONALITY_URUGUAY
, NATIONALITY_UZBEKISTAN
, NATIONALITY_VENEZUELA
, NATIONALITY_VIETNAM
, NATIONALITY_YEMEN
, NATIONALITY_ZIMBABWE
]
ontology
object
Ontology defines an entity's categorization in Lattice, and improves data retrieval and integration. Builds a standardized representation of the entity.
A string that describes the entity's high-level type with natural language.
A string that describes the entity's exact model or type.
The template used when creating this entity. Specifies minimum required components.
Possible values: [TEMPLATE_INVALID
, TEMPLATE_TRACK
, TEMPLATE_SENSOR_POINT_OF_INTEREST
, TEMPLATE_ASSET
, TEMPLATE_GEO
, TEMPLATE_SIGNAL_OF_INTEREST
]
sensors
object
Details an entity's available sensors.
sensors
object[]
This generally is used to indicate a specific type at a more detailed granularity. E.g. COMInt or LWIR
Possible values: [OPERATIONAL_STATE_INVALID
, OPERATIONAL_STATE_OFF
, OPERATIONAL_STATE_NON_OPERATIONAL
, OPERATIONAL_STATE_DEGRADED
, OPERATIONAL_STATE_OPERATIONAL
, OPERATIONAL_STATE_DENIED
]
The type of sensor
Possible values: [SENSOR_TYPE_INVALID
, SENSOR_TYPE_RADAR
, SENSOR_TYPE_CAMERA
, SENSOR_TYPE_TRANSPONDER
, SENSOR_TYPE_RF
, SENSOR_TYPE_GPS
, SENSOR_TYPE_PTU_POS
, SENSOR_TYPE_PERIMETER
, SENSOR_TYPE_SONAR
]
A human readable description of the sensor
rfConfiguraton
object
RF configuration details of the sensor
frequencyRangeHz
object[]
Frequency ranges that are available for this sensor.
minimumFrequencyHz
object
Indicates the lowest measured frequency of a signal (Hz).
frequencyHz
object
Indicates a frequency of a signal (Hz) with its standard deviation.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
maximumFrequencyHz
object
Indicates the maximum measured frequency of a signal (Hz).
frequencyHz
object
Indicates a frequency of a signal (Hz) with its standard deviation.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
bandwidthRangeHz
object[]
Bandwidth ranges that are available for this sensor.
minimumBandwidth
object
Describes the bandwidth of a signal
maximumBandwidth
object
Describes the bandwidth of a signal
Time of the latest detection from the sensor
fieldsOfView
object[]
Multiple fields of view for a single sensor component
The Id for one instance of a FieldOfView, persisted across multiple updates to provide continuity during smoothing. This is relevant for sensors where the dwell schedule is on the order of milliseconds, making multiple FOVs a requirement for proper display of search beams.
The Id of the mount the sensor is on.
projectedFrustum
object
The field of view the sensor projected onto the ground.
upperLeft
object
Upper left point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
upperRight
object
Upper right point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
bottomRight
object
Bottom right point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
bottomLeft
object
Bottom left point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
projectedCenterRay
object
Center ray of the frustum projected onto the ground.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
centerRayPose
object
The origin and direction of the center ray for this sensor relative to the ENU frame. A ray which is aligned with the positive X axis in the sensor frame will be transformed into the ray along the sensor direction in the ENU frame when transformed by the quaternion contained in this pose.
pos
object
Geospatial location defined by this Pose.
Meaning of alt. altitude in meters above either WGS84 or EGM96, use altitude_reference to determine what zero means.
Possible values: [ALTITUDE_REFERENCE_INVALID
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_WGS84
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_EGM96
, ALTITUDE_REFERENCE_UNKNOWN
, ALTITUDE_REFERENCE_BAROMETRIC
, ALTITUDE_REFERENCE_ABOVE_SEA_FLOOR
, ALTITUDE_REFERENCE_BELOW_SEA_SURFACE
]
attEnu
object
The quaternion to transform a point in the Pose frame to the ENU frame. The Pose frame could be Body, Turret, etc and is determined by the context in which this Pose is used. The normal convention for defining orientation is to list the frames of transformation, for example att_gimbal_to_enu is the quaternion which transforms a point in the gimbal frame to the body frame, but in this case we truncate to att_enu because the Pose frame isn't defined. A potentially better name for this field would have been att_pose_to_enu.
Implementations of this quaternion should left multiply this quaternion to transform a point from the Pose frame to the enu frame.
Point<Pose> posePt{1,0,0}; Rotation<Enu, Pose> attPoseToEnu{}; Point<Enu> = attPoseToEnu*posePt;
This transformed point represents some vector in ENU space that is aligned with the x axis of the attPoseToEnu matrix.
An alternative matrix expression is as follows: ptEnu = M x ptPose
x, y, z are vector portion, w is scalar
Horizontal field of view in radians.
Vertical field of view in radians.
Sensor range in meters.
The mode that this sensor is currently in, used to display for context in the UI. Some sensors can emit multiple sensor field of views with different modes, for example a radar can simultaneously search broadly and perform tighter bounded tracking.
Possible values: [SENSOR_MODE_INVALID
, SENSOR_MODE_SEARCH
, SENSOR_MODE_TRACK
, SENSOR_MODE_WEAPON_SUPPORT
, SENSOR_MODE_AUTO
, SENSOR_MODE_MUTE
]
payloads
object
Details an entity's available payloads.
payloadConfigurations
object[]
config
object
Identifying ID for the capability. This ID may be used multiple times to represent payloads that are the same capability but have different operational states
The number of payloads currently available in the configuration.
The target environments the configuration is effective against.
Possible values: [ENVIRONMENT_UNKNOWN
, ENVIRONMENT_AIR
, ENVIRONMENT_SURFACE
, ENVIRONMENT_SUB_SURFACE
, ENVIRONMENT_LAND
, ENVIRONMENT_SPACE
]
The operational state of this payload.
Possible values: [PAYLOAD_OPERATIONAL_STATE_INVALID
, PAYLOAD_OPERATIONAL_STATE_OFF
, PAYLOAD_OPERATIONAL_STATE_NON_OPERATIONAL
, PAYLOAD_OPERATIONAL_STATE_DEGRADED
, PAYLOAD_OPERATIONAL_STATE_OPERATIONAL
, PAYLOAD_OPERATIONAL_STATE_OUT_OF_SERVICE
, PAYLOAD_OPERATIONAL_STATE_UNKNOWN
]
A human readable description of the payload
powerState
object
Details the entity's power source.
sourceIdToState
object
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.
property name*
PowerSource
Represents the state of a single power source that is connected to this entity.
Status of the power source.
Possible values: [POWER_STATUS_INVALID
, POWER_STATUS_UNKNOWN
, POWER_STATUS_NOT_PRESENT
, POWER_STATUS_OPERATING
, POWER_STATUS_DISABLED
, POWER_STATUS_ERROR
]
Used to determine the type of power source.
Possible values: [POWER_TYPE_INVALID
, POWER_TYPE_UNKNOWN
, POWER_TYPE_GAS
, POWER_TYPE_BATTERY
]
powerLevel
object
Power level of the system. If absent, the power level is assumed to be unknown.
Total power capacity of the system.
Remaining power capacity of the system.
Percent of power remaining.
Voltage of the power source subsystem, as reported by the power source. If the source does not report this value this field will be null.
Current in amps of the power source subsystem, as reported by the power source. If the source does not report this value this field will be null.
Estimated minutes until empty. Calculated with consumption at the moment, as reported by the power source. If the source does not report this value this field will be null.
Fuel consumption rate in liters per second.
Set of human-readable messages with status of the power system. Typically this would be used in an error state to provide additional error information. This can also be used for informational messages.
Whether the power source is offloadable. If the value is missing (as opposed to false) then the entity does not report whether the power source is offloadable.
provenance
object
The primary data source provenance for this entity.
Name of the integration that produced this entity
Source data type of this entity. Examples: ADSB, Link16, etc.
An ID that allows an element from a source to be uniquely identified
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.
Description of the modification source. In the case of a user this is the email address.
overrides
object
Provenance of override data.
override
object[]
override request id for an override request
proto field path which is the string representation of a field. example: correlated.primary_entity_id would be primary_entity_id in correlated component
new field value corresponding to field path. In the shape of an empty entity with only the changed value. example: entity: { mil_view: { disposition: Disposition_DISPOSITION_HOSTILE } }
status of the override
Possible values: [OVERRIDE_STATUS_INVALID
, OVERRIDE_STATUS_APPLIED
, OVERRIDE_STATUS_PENDING
, OVERRIDE_STATUS_TIMEOUT
, OVERRIDE_STATUS_REJECTED
, OVERRIDE_STATUS_DELETION_PENDING
]
provenance
object
Data provenance.
Name of the integration that produced this entity
Source data type of this entity. Examples: ADSB, Link16, etc.
An ID that allows an element from a source to be uniquely identified
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.
Description of the modification source. In the case of a user this is the email address.
The type of the override, defined by the stage of the entity lifecycle that the entity was in when the override was requested.
Possible values: [OVERRIDE_TYPE_INVALID
, OVERRIDE_TYPE_LIVE
, OVERRIDE_TYPE_POST_EXPIRY
]
Timestamp of the override request. The timestamp is generated by the Entity Manager instance that receives the request.
indicators
object
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.
Indicates the Entity should be egressed to external sources. Integrations choose how the egressing happens (e.g. if an Entity needs fuzzing).
A signal of arbitrary importance such that the entity should be globally marked for all users
targetPriority
object
The prioritization associated with an entity, such as if it's a threat or a high-value target.
highValueTarget
object
Describes the target priority in relation to high value target lists.
Indicates whether the target matches any description from a high value target list.
The priority associated with the target. If the target's description appears on multiple high value target lists, the priority will be a reflection of the highest priority of all of those list's target description.
A lower value indicates the target is of a higher priority, with 1 being the highest possible priority. A value of 0 indicates there is no priority associated with this target.
targetMatches
object[]
All of the high value target descriptions that the target matches against.
The ID of the high value target list that matches the target description.
The ID of the specific high value target description within a high value target list that was matched against. The ID is considered to be a globally unique identifier across all high value target IDs.
Indicates whether the target is a 'High Payoff Target'. Targets can be one or both of high value and high payoff.
threat
object
Describes whether the entity should be treated as a threat
Indicates that the entity has been determined to be a threat.
signal
object
Describes an entity's signal characteristics, primarily used when an entity is a signal of interest.
frequencyCenter
object
A component for describing frequency.
frequencyHz
object
Indicates a frequency of a signal (Hz) with its standard deviation.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
frequencyRange
object
A component to represent a frequency range.
minimumFrequencyHz
object
Indicates the lowest measured frequency of a signal (Hz).
frequencyHz
object
Indicates a frequency of a signal (Hz) with its standard deviation.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
maximumFrequencyHz
object
Indicates the maximum measured frequency of a signal (Hz).
frequencyHz
object
Indicates a frequency of a signal (Hz) with its standard deviation.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
Indicates the bandwidth of a signal (Hz).
Indicates the signal to noise (SNR) of this signal.
lineOfBearing
object
A line of bearing of a signal.
angleOfArrival
object
The direction pointing from this entity to the detection
relativePose
object
Origin (LLA) and attitude (relative to ENU) of a ray pointing towards the detection. The attitude represents a forward-left-up (FLU) frame where the x-axis (1, 0, 0) is pointing towards the target.
pos
object
Geospatial location defined by this Pose.
Meaning of alt. altitude in meters above either WGS84 or EGM96, use altitude_reference to determine what zero means.
Possible values: [ALTITUDE_REFERENCE_INVALID
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_WGS84
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_EGM96
, ALTITUDE_REFERENCE_UNKNOWN
, ALTITUDE_REFERENCE_BAROMETRIC
, ALTITUDE_REFERENCE_ABOVE_SEA_FLOOR
, ALTITUDE_REFERENCE_BELOW_SEA_SURFACE
]
attEnu
object
The quaternion to transform a point in the Pose frame to the ENU frame. The Pose frame could be Body, Turret, etc and is determined by the context in which this Pose is used. The normal convention for defining orientation is to list the frames of transformation, for example att_gimbal_to_enu is the quaternion which transforms a point in the gimbal frame to the body frame, but in this case we truncate to att_enu because the Pose frame isn't defined. A potentially better name for this field would have been att_pose_to_enu.
Implementations of this quaternion should left multiply this quaternion to transform a point from the Pose frame to the enu frame.
Point<Pose> posePt{1,0,0}; Rotation<Enu, Pose> attPoseToEnu{}; Point<Enu> = attPoseToEnu*posePt;
This transformed point represents some vector in ENU space that is aligned with the x axis of the attPoseToEnu matrix.
An alternative matrix expression is as follows: ptEnu = M x ptPose
x, y, z are vector portion, w is scalar
bearingElevationCovarianceRad2
object
Bearing/elevation covariance matrix where bearing is defined in radians CCW+ about the z-axis from the x-axis of FLU frame and elevation is positive down from the FL/XY plane. mxx = bearing variance in rad^2 mxy = bearing/elevation covariance in rad^2 myy = elevation variance in rad^2
rangeEstimateM
object
The estimated distance of the detection
The value of the measurement.
Estimated one standard deviation in same unit as the value.
maxRangeM
object
The maximum distance of the detection
The value of the measurement.
Estimated one standard deviation in same unit as the value.
A fix of a signal. No extra fields but it is expected that location should be populated when using this report.
emitterNotations
object[]
Emitter notations associated with this entity.
confidence as a percentage that the emitter notation in this component is accurate
length in time of a single pulse
pulseRepetitionInterval
object
length in time between the start of two pulses
pulseRepetitionIntervalS
object
A component that describes some measured value with error.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
scanCharacteristics
object
describes how a signal is observing the environment
Possible values: [SCAN_TYPE_INVALID
, SCAN_TYPE_CIRCULAR
, SCAN_TYPE_BIDIRECTIONAL_HORIZONTAL_SECTOR
, SCAN_TYPE_BIDIRECTIONAL_VERTICAL_SECTOR
, SCAN_TYPE_NON_SCANNING
, SCAN_TYPE_IRREGULAR
, SCAN_TYPE_CONICAL
, SCAN_TYPE_LOBE_SWITCHING
, SCAN_TYPE_RASTER
, SCAN_TYPE_CIRCULAR_VERTICAL_SECTOR
, SCAN_TYPE_CIRCULAR_CONICAL
, SCAN_TYPE_SECTOR_CONICAL
, SCAN_TYPE_AGILE_BEAM
, SCAN_TYPE_UNIDIRECTIONAL_VERTICAL_SECTOR
, SCAN_TYPE_UNIDIRECTIONAL_HORIZONTAL_SECTOR
, SCAN_TYPE_UNIDIRECTIONAL_SECTOR
, SCAN_TYPE_BIDIRECTIONAL_SECTOR
]
transponderCodes
object
A message describing any transponder codes associated with Mode 1, 2, 3, 4, 5, S interrogations. These are related to ADS-B modes.
The mode 1 code assigned to military assets.
The Mode 2 code assigned to military assets.
The Mode 3 code assigned by ATC to the asset.
The validity of the response from the Mode 4 interrogation.
Possible values: [INTERROGATION_RESPONSE_INVALID
, INTERROGATION_RESPONSE_CORRECT
, INTERROGATION_RESPONSE_INCORRECT
, INTERROGATION_RESPONSE_NO_RESPONSE
]
mode5
object
The Mode 5 transponder codes.
The validity of the response from the Mode 5 interrogation.
Possible values: [INTERROGATION_RESPONSE_INVALID
, INTERROGATION_RESPONSE_CORRECT
, INTERROGATION_RESPONSE_INCORRECT
, INTERROGATION_RESPONSE_NO_RESPONSE
]
The Mode 5 code assigned to military assets.
The Mode 5 platform identification code.
modeS
object
The Mode S transponder codes.
Mode S identifier which comprises of 8 alphanumeric characters.
The Mode S ICAO aircraft address. Expected values are between 1 and 16777214 decimal. The Mode S address is considered unique.
dataClassification
object
Describes an entity's security classification levels at an overall classification level and on a per field level.
default
object
The default classification information which should be assumed to apply to everything in the entity unless a specific field level classification is present.
Classification level to be applied to the information in question.
Possible values: [CLASSIFICATION_LEVELS_INVALID
, CLASSIFICATION_LEVELS_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONTROLLED_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONFIDENTIAL
, CLASSIFICATION_LEVELS_SECRET
, CLASSIFICATION_LEVELS_TOP_SECRET
]
Caveats that may further restrict how the information can be disseminated.
fields
object[]
The set of individual field classification information which should always precedence over the default classification information.
Proto field path which is the string representation of a field.
example: signal.bandwidth_hz would be bandwidth_hz in the signal component
classificationInformation
object
The information which makes up the field level classification marking.
Classification level to be applied to the information in question.
Possible values: [CLASSIFICATION_LEVELS_INVALID
, CLASSIFICATION_LEVELS_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONTROLLED_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONFIDENTIAL
, CLASSIFICATION_LEVELS_SECRET
, CLASSIFICATION_LEVELS_TOP_SECRET
]
Caveats that may further restrict how the information can be disseminated.
taskCatalog
object
A catalog of tasks that can be performed by an entity.
taskDefinitions
object[]
Url path must be prefixed with type.googleapis.com/
.
relationships
object
The relationships between this entity and other entities in the common operational picture (COP).
relationships
object[]
The entity ID to which this entity is related.
A unique identifier for this relationship. Allows removing or updating relationships.
relationshipType
object
The relationship type
trackedBy
object
Describes the relationship between the entity being tracked ("tracked entity") and the entity that is performing the tracking ("tracking entity").
activelyTrackingSensors
object
Sensor details of the tracking entity's sensors that were active and tracking the tracked entity. This may be a subset of the total sensors available on the tracking entity.
sensors
object[]
This generally is used to indicate a specific type at a more detailed granularity. E.g. COMInt or LWIR
Possible values: [OPERATIONAL_STATE_INVALID
, OPERATIONAL_STATE_OFF
, OPERATIONAL_STATE_NON_OPERATIONAL
, OPERATIONAL_STATE_DEGRADED
, OPERATIONAL_STATE_OPERATIONAL
, OPERATIONAL_STATE_DENIED
]
The type of sensor
Possible values: [SENSOR_TYPE_INVALID
, SENSOR_TYPE_RADAR
, SENSOR_TYPE_CAMERA
, SENSOR_TYPE_TRANSPONDER
, SENSOR_TYPE_RF
, SENSOR_TYPE_GPS
, SENSOR_TYPE_PTU_POS
, SENSOR_TYPE_PERIMETER
, SENSOR_TYPE_SONAR
]
A human readable description of the sensor
rfConfiguraton
object
RF configuration details of the sensor
frequencyRangeHz
object[]
Frequency ranges that are available for this sensor.
minimumFrequencyHz
object
Indicates the lowest measured frequency of a signal (Hz).
frequencyHz
object
Indicates a frequency of a signal (Hz) with its standard deviation.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
maximumFrequencyHz
object
Indicates the maximum measured frequency of a signal (Hz).
frequencyHz
object
Indicates a frequency of a signal (Hz) with its standard deviation.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
bandwidthRangeHz
object[]
Bandwidth ranges that are available for this sensor.
minimumBandwidth
object
Describes the bandwidth of a signal
maximumBandwidth
object
Describes the bandwidth of a signal
Time of the latest detection from the sensor
fieldsOfView
object[]
Multiple fields of view for a single sensor component
The Id for one instance of a FieldOfView, persisted across multiple updates to provide continuity during smoothing. This is relevant for sensors where the dwell schedule is on the order of milliseconds, making multiple FOVs a requirement for proper display of search beams.
The Id of the mount the sensor is on.
projectedFrustum
object
The field of view the sensor projected onto the ground.
upperLeft
object
Upper left point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
upperRight
object
Upper right point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
bottomRight
object
Bottom right point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
bottomLeft
object
Bottom left point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
projectedCenterRay
object
Center ray of the frustum projected onto the ground.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
centerRayPose
object
The origin and direction of the center ray for this sensor relative to the ENU frame. A ray which is aligned with the positive X axis in the sensor frame will be transformed into the ray along the sensor direction in the ENU frame when transformed by the quaternion contained in this pose.
pos
object
Geospatial location defined by this Pose.
Meaning of alt. altitude in meters above either WGS84 or EGM96, use altitude_reference to determine what zero means.
Possible values: [ALTITUDE_REFERENCE_INVALID
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_WGS84
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_EGM96
, ALTITUDE_REFERENCE_UNKNOWN
, ALTITUDE_REFERENCE_BAROMETRIC
, ALTITUDE_REFERENCE_ABOVE_SEA_FLOOR
, ALTITUDE_REFERENCE_BELOW_SEA_SURFACE
]
attEnu
object
The quaternion to transform a point in the Pose frame to the ENU frame. The Pose frame could be Body, Turret, etc and is determined by the context in which this Pose is used. The normal convention for defining orientation is to list the frames of transformation, for example att_gimbal_to_enu is the quaternion which transforms a point in the gimbal frame to the body frame, but in this case we truncate to att_enu because the Pose frame isn't defined. A potentially better name for this field would have been att_pose_to_enu.
Implementations of this quaternion should left multiply this quaternion to transform a point from the Pose frame to the enu frame.
Point<Pose> posePt{1,0,0}; Rotation<Enu, Pose> attPoseToEnu{}; Point<Enu> = attPoseToEnu*posePt;
This transformed point represents some vector in ENU space that is aligned with the x axis of the attPoseToEnu matrix.
An alternative matrix expression is as follows: ptEnu = M x ptPose
x, y, z are vector portion, w is scalar
Horizontal field of view in radians.
Vertical field of view in radians.
Sensor range in meters.
The mode that this sensor is currently in, used to display for context in the UI. Some sensors can emit multiple sensor field of views with different modes, for example a radar can simultaneously search broadly and perform tighter bounded tracking.
Possible values: [SENSOR_MODE_INVALID
, SENSOR_MODE_SEARCH
, SENSOR_MODE_TRACK
, SENSOR_MODE_WEAPON_SUPPORT
, SENSOR_MODE_AUTO
, SENSOR_MODE_MUTE
]
Latest time that any sensor in actively_tracking_sensors detected the tracked entity.
A GroupChild relationship is a uni-directional relationship indicating that (1) this entity represents an Entity Group and (2) the related entity is a child member of this group. The presence of this relationship alone determines that the type of group is an Entity Group.
A GroupParent relationship is a uni-directional relationship indicating that this entity is a member of the Entity Group represented by the related entity. The presence of this relationship alone determines that the type of group that this entity is a member of is an Entity Group.
A MergedFrom relationship is a uni-directional relationship indicating that this entity is a merged entity whose data has at least partially been merged from the related entity.
visualDetails
object
Visual details associated with the display of an entity in the client.
rangeRings
object
The range rings to display around an entity.
The minimum range ring distance, specified in meters.
The maximum range ring distance, specified in meters.
The count of range rings.
ringLineColor
object
The color of range rings, specified in hex string.
The amount of red in the color as a value in the interval [0, 1].
The amount of green in the color as a value in the interval [0, 1].
The amount of blue in the color as a value in the interval [0, 1].
The fraction of this color that should be applied to the pixel. That is, the final pixel color is defined by the equation:
pixel color = alpha * (this color) + (1.0 - alpha) * (background color)
This means that a value of 1.0 corresponds to a solid color, whereas a value of 0.0 corresponds to a completely transparent color. This uses a wrapper message rather than a simple float scalar so that it is possible to distinguish between a default value and the value being unset. If omitted, this color object is rendered as a solid color (as if the alpha value had been explicitly given a value of 1.0).
dimensions
object
Physical dimensions of the entity.
Length of the entity in meters
routeDetails
object
Additional information about an entity's route.
Free form text giving the name of the entity's destination
Estimated time of arrival at destination
schedules
object
Schedules associated with this entity.
schedules
object[]
windows
object[]
expression that represents this schedule's "ON" state
in UTC, describes when and at what cadence this window starts, in the quartz flavor of cron
examples: This schedule is begins at 7:00:00am UTC everyday between Monday and Friday 0 0 7 ? * MON-FRI * This schedule begins every 5 minutes starting at 12:00:00pm UTC until 8:00:00pm UTC everyday 0 0/5 12-20 * * ? * This schedule begins at 12:00:00pm UTC on March 2nd 2023 0 0 12 2 3 ? 2023
describes the duration
A unique identifier for this schedule.
The schedule type
Possible values: [SCHEDULE_TYPE_INVALID
, SCHEDULE_TYPE_ZONE_ENABLED
, SCHEDULE_TYPE_ZONE_TEMP_ENABLED
]
health
object
Health metrics or connection status reported by the entity.
Status indicating whether the entity is able to communicate with Entity Manager.
Possible values: [CONNECTION_STATUS_INVALID
, CONNECTION_STATUS_ONLINE
, CONNECTION_STATUS_OFFLINE
]
Top-level health status; typically a roll-up of individual component healths.
Possible values: [HEALTH_STATUS_INVALID
, HEALTH_STATUS_HEALTHY
, HEALTH_STATUS_WARN
, HEALTH_STATUS_FAIL
, HEALTH_STATUS_OFFLINE
, HEALTH_STATUS_NOT_READY
]
components
object[]
Health of individual components running on this Entity.
Consistent internal ID for this component.
Display name for this component.
Health for this component.
Possible values: [HEALTH_STATUS_INVALID
, HEALTH_STATUS_HEALTHY
, HEALTH_STATUS_WARN
, HEALTH_STATUS_FAIL
, HEALTH_STATUS_OFFLINE
, HEALTH_STATUS_NOT_READY
]
messages
object[]
Human-readable describing the component state. These messages should be understandable by end users.
The status associated with this message.
Possible values: [HEALTH_STATUS_INVALID
, HEALTH_STATUS_HEALTHY
, HEALTH_STATUS_WARN
, HEALTH_STATUS_FAIL
, HEALTH_STATUS_OFFLINE
, HEALTH_STATUS_NOT_READY
]
The human-readable content of the message.
The last update time for this specific component. If this timestamp is unset, the data is assumed to be most recent
The update time for the top-level health information. If this timestamp is unset, the data is assumed to be most recent
activeAlerts
object[]
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.
Short, machine-readable code that describes this alert. This code is intended to provide systems off-asset with a lookup key to retrieve more detailed information about the alert.
Human-readable description of this alert. The description is intended for display in the UI for human understanding and should not be used for machine processing. If the description is fixed and the vehicle controller provides no dynamic substitutions, then prefer lookup based on alert_code.
Alert level (Warning, Caution, or Advisory).
Possible values: [ALERT_LEVEL_INVALID
, ALERT_LEVEL_ADVISORY
, ALERT_LEVEL_CAUTION
, ALERT_LEVEL_WARNING
]
Time at which this alert was activated.
activeConditions
object[]
Set of conditions which have activated this alert.
Short, machine-readable code that describes this condition. This code is intended to provide systems off-asset with a lookup key to retrieve more detailed information about the condition.
Human-readable description of this condition. The description is intended for display in the UI for human understanding and should not be used for machine processing. If the description is fixed and the vehicle controller provides no dynamic substitutions, then prefer lookup based on condition_code.
Details for the group associated with this entity.
supplies
object
Contains relevant supply information for the entity, such as fuel.
fuel
object[]
unique fuel identifier
long form name of the fuel source.
timestamp the information was reported
amount of gallons on hand
how much the asset is allowed to have available (in gallons)
minimum required for operations (in gallons)
dataClassification
object
fuel in a single asset may have different levels of classification use case: fuel for a SECRET asset while diesel fuel may be UNCLASSIFIED
default
object
The default classification information which should be assumed to apply to everything in the entity unless a specific field level classification is present.
Classification level to be applied to the information in question.
Possible values: [CLASSIFICATION_LEVELS_INVALID
, CLASSIFICATION_LEVELS_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONTROLLED_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONFIDENTIAL
, CLASSIFICATION_LEVELS_SECRET
, CLASSIFICATION_LEVELS_TOP_SECRET
]
Caveats that may further restrict how the information can be disseminated.
fields
object[]
The set of individual field classification information which should always precedence over the default classification information.
Proto field path which is the string representation of a field.
example: signal.bandwidth_hz would be bandwidth_hz in the signal component
classificationInformation
object
The information which makes up the field level classification marking.
Classification level to be applied to the information in question.
Possible values: [CLASSIFICATION_LEVELS_INVALID
, CLASSIFICATION_LEVELS_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONTROLLED_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONFIDENTIAL
, CLASSIFICATION_LEVELS_SECRET
, CLASSIFICATION_LEVELS_TOP_SECRET
]
Caveats that may further restrict how the information can be disseminated.
source of information
orbit
object
Orbit information for space objects.
orbitMeanElements
object
Orbit Mean Elements data, analogous to the Orbit Mean Elements Message in CCSDS 502.0-B-3
metadata
object
Creation date/time in UTC
Creating agency or operator
ID that uniquely identifies a message from a given originator.
Reference frame, assumed to be Earth-centered
Possible values: [ECI_REFERENCE_FRAME_INVALID
, ECI_REFERENCE_FRAME_TEME
]
Reference frame epoch in UTC - mandatory only if not intrinsic to frame definition
Possible values: [MEAN_ELEMENT_THEORY_INVALID
, MEAN_ELEMENT_THEORY_SGP4
]
meanKeplerianElements
object
UTC time of validity
Preferred: semi major axis in kilometers
If using SGP/SGP4, provide the Keplerian Mean Motion in revolutions per day
Angle of inclination in deg
Right ascension of the ascending node in deg
Argument of pericenter in deg
Mean anomaly in deg
Optional: gravitational coefficient (Gravitational Constant x central mass) in kg^3 / s^2
tleParameters
object
Integer specifying TLE ephemeris type
User-defined free-text message classification/caveats of this TLE
Norad catalog number: integer up to nine digits.
Optional: revolution number
Drag parameter for SGP-4 in units 1 / Earth radii
Drag parameter for SGP4-XP in units m^2 / kg
First time derivative of mean motion in rev / day^2
Second time derivative of mean motion in rev / day^3. For use with SGP or PPT3.
Solar radiation pressure coefficient A_gamma / m in m^2 / kg. For use with SGP4-XP.
Indicates that this entity was generated from a snapshot of a live entity.
Responses
- 201
- 400
- 401
Task creation was successful
- application/json
- Schema
- Example (from schema)
Schema
Array [
]
Array [
]
Array [
]
Array [
]
Array [
Array [
]
Array [
]
Array [
Array [
]
]
- exactly 1 linear ring with 5 points (starting corner, 3 other corners and start again)
- each point has the same altitude corresponding with the plane of the rectangle
- each point has the same height (either all present and equal, or all not present)
Array [
]
Array [
]
Array [
Array [
]
Array [
]
Array [
]
]
Array [
]
Array [
]
Array [
]
Array [
]
Array [
]
Array [
]
Array [
Array [
Array [
]
Array [
]
Array [
]
]
]
Array [
Array [
]
]
Array [
Array [
]
]
Array [
Array [
]
]
Array [
Array [
]
]
]
version
object
Version of a Task.
The unique ID for this Task.
Increments on definition (i.e. not TaskStatus) change. 0 is unset, starts at 1 on creation.
Increments on changes to TaskStatus. 0 is unset, starts at 1 on creation.
Human readable display name for this Task, should be short (<100 chars).
specification
object
Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.
The type of the serialized message.
Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.
createdBy
object
A Principal is an entity that has authority over this Task.
system
object
System Principal representing some autonomous system.
Name of the service associated with this System.
The Entity ID of the System.
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.
user
object
A User Principal representing a human.
The User ID associated with this User.
team
object
Represents a team of agents
Entity ID of the team
members
object[]
Entity ID of the agent.
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).
lastUpdatedBy
object
A Principal is an entity that has authority over this Task.
system
object
System Principal representing some autonomous system.
Name of the service associated with this System.
The Entity ID of the System.
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.
user
object
A User Principal representing a human.
The User ID associated with this User.
team
object
Represents a team of agents
Entity ID of the team
members
object[]
Entity ID of the agent.
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).
Records the time of last update.
status
object
TaskStatus is contains information regarding the status of a Task at any given time. Can include related information such as any progress towards Task completion, or any associated results if Task completed.
Status of the Task.
Possible values: [STATUS_INVALID
, STATUS_CREATED
, STATUS_SCHEDULED_IN_MANAGER
, STATUS_SENT
, STATUS_MACHINE_RECEIPT
, STATUS_ACK
, STATUS_WILCO
, STATUS_EXECUTING
, STATUS_WAITING_FOR_UPDATE
, STATUS_DONE_OK
, STATUS_DONE_NOT_OK
, STATUS_REPLACED
, STATUS_CANCEL_REQUESTED
, STATUS_COMPLETE_REQUESTED
, STATUS_VERSION_REJECTED
]
taskError
object
Any errors associated with the Task.
Error code for Task error.
Possible values: [ERROR_CODE_INVALID
, ERROR_CODE_CANCELLED
, ERROR_CODE_REJECTED
, ERROR_CODE_TIMEOUT
, ERROR_CODE_FAILED
]
Descriptive human-readable string regarding this error.
errorDetails
object
Any additional details regarding this error.
The type of the serialized message.
Any additional details regarding this error.
progress
object
Any incremental progress on the Task, should be from the tasks/v*/progress folder.
The type of the serialized message.
Any incremental progress on the Task, should be from the tasks/v*/progress folder.
result
object
Any final result of the Task, should be from tasks/v*/result folder.
The type of the serialized message.
Any final result of the Task, should be from tasks/v*/result folder.
Time the Task began execution, may not be known even for executing Tasks.
estimate
object
Any estimate for how the Task will progress, should be from tasks/v*/estimates folder.
The type of the serialized message.
Any estimate for how the Task will progress, should be from tasks/v*/estimates folder.
allocation
object
Any allocated agents of the Task.
activeAgents
object[]
Agents actively being utilized in a Task.
Entity ID of the agent.
If the Task has been scheduled to execute, what time it should execute at.
relations
object
Relations describes the relationships of this Task, such as assignment, or if the Task has any parents.
assignee
object
Who or what, if anyone, this Task is currently assigned to.
system
object
System Principal representing some autonomous system.
Name of the service associated with this System.
The Entity ID of the System.
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.
user
object
A User Principal representing a human.
The User ID associated with this User.
team
object
Represents a team of agents
Entity ID of the team
members
object[]
Entity ID of the agent.
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).
If this Task is a "sub-Task", what is its parent, none if empty.
Longer, free form human readable description of this Task
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.
Time of Task creation.
replication
object
Any metadata associated with the replication of a Task.
Time by which this Task should be assumed to be stale.
initialEntities
object[]
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.
entity
object
The entity object represents a single known object within the Lattice operational environment. It contains all data associated with the entity, such as its name, ID, and other relevant components.
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.
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.
Indicates the entity is active and should have a lifecycle state of CREATE or UPDATE. Set this field to true when publishing an entity.
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.
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.
status
object
Human-readable descriptions of what the entity is currently doing.
The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
details
object[]
A list of messages that carry the error details. There is a common set of message types for APIs to use.
The type of the serialized message.
location
object
Geospatial data related to the entity, including its position, kinematics, and orientation.
position
object
see Position definition for details.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
velocityEnu
object
Velocity in an ENU reference frame centered on the corresponding position. All units are meters per second.
Speed is the magnitude of velocity_enu vector [sqrt(e^2 + n^2 + u^2)] when present, measured in m/s.
acceleration
object
The entity's acceleration in meters/s^2.
attitudeEnu
object
quaternion to translate from entity body frame to it's ENU frame
x, y, z are vector portion, w is scalar
locationUncertainty
object
Indicates uncertainty of the entity's position and kinematics.
positionEnuCov
object
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.
velocityEnuCov
object
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.
positionErrorEllipse
object
An ellipse that describes the certainty probability and error boundary for a given geolocation.
Defines the probability in percentage that an entity lies within the given ellipse: 0-1.
Defines the distance from the center point of the ellipse to the furthest distance on the perimeter in meters.
Defines the distance from the center point of the ellipse to the shortest distance on the perimeter in meters.
The orientation of the semi-major relative to true north in degrees from clockwise: 0-180 due to symmetry across the semi-minor axis.
geoShape
object
Geospatial representation of the entity, including entities that cover an area rather than a fixed point.
point
object
A point shaped geo-entity. See https://datatracker.ietf.org/doc/html/rfc7946#section-3.1.2
position
object
WGS84 position. Position includes four altitude references. The data model does not currently support Mean Sea Level (MSL) references, such as the Earth Gravitational Model 1996 (EGM-96) and the Earth Gravitational Model 2008 (EGM-08). If the only altitude reference available to your integration is MSL, convert it to Height Above Ellipsoid (HAE) and populate the altitude_hae_meters field.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
line
object
A line shaped geo-entity. See https://datatracker.ietf.org/doc/html/rfc7946#section-3.1.4
positions
object[]
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
polygon
object
A polygon shaped geo-entity. See https://datatracker.ietf.org/doc/html/rfc7946#section-3.1.6, only canonical representations accepted
rings
object[]
An array of LinearRings where the first item is the exterior ring and subsequent items are interior rings.
positions
object[]
position
object
base position. if no altitude set, its on the ground.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
optional height above base position to extrude in meters. for a given polygon, all points should have a height or none of them. strictly GeoJSON compatible polygons will not have this set.
An extension hint that this polygon is a rectangle. When true this implies several things:
ellipse
object
An ellipse shaped geo-entity. For a circle, the major and minor axis would be the same values. This shape is NOT Geo-JSON compatible.
Defines the distance from the center point of the ellipse to the furthest distance on the perimeter in meters.
Defines the distance from the center point of the ellipse to the shortest distance on the perimeter in meters.
The orientation of the semi-major relative to true north in degrees from clockwise: 0-180 due to symmetry across the semi-minor axis.
Optional height above entity position to extrude in meters. A non-zero value creates an elliptic cylinder
ellipsoid
object
An ellipsoid shaped geo-entity. Principal axis lengths are defined in entity body space This shape is NOT Geo-JSON compatible.
Defines the distance from the center point to the surface along the forward axis
Defines the distance from the center point to the surface along the side axis
Defines the distance from the center point to the surface along the up axis
geoDetails
object
Additional details on what the geospatial area or point represents, along with visual display details.
Possible values: [GEO_TYPE_INVALID
, GEO_TYPE_GENERAL
, GEO_TYPE_HAZARD
, GEO_TYPE_EMERGENCY
, GEO_TYPE_ENGAGEMENT_ZONE
, GEO_TYPE_CONTROL_AREA
, GEO_TYPE_BULLSEYE
]
aliases
object
Entity name displayed in the Lattice UI side panel. Also includes identifiers that other systems can use to reference the same entity.
alternateIds
object[]
Possible values: [ALT_ID_TYPE_INVALID
, ALT_ID_TYPE_TRACK_ID_2
, ALT_ID_TYPE_TRACK_ID_1
, ALT_ID_TYPE_SPI_ID
, ALT_ID_TYPE_NITF_FILE_TITLE
, ALT_ID_TYPE_TRACK_REPO_ALERT_ID
, ALT_ID_TYPE_ASSET_ID
, ALT_ID_TYPE_LINK16_TRACK_NUMBER
, ALT_ID_TYPE_LINK16_JU
, ALT_ID_TYPE_NCCT_MESSAGE_ID
, ALT_ID_TYPE_CALLSIGN
, ALT_ID_TYPE_MMSI_ID
, ALT_ID_TYPE_VMF_URN
, ALT_ID_TYPE_IMO_ID
, ALT_ID_TYPE_VMF_TARGET_NUMBER
, ALT_ID_TYPE_SERIAL_NUMBER
, ALT_ID_TYPE_REGISTRATION_ID
, ALT_ID_TYPE_IBS_GID
, ALT_ID_TYPE_DODAAC
, ALT_ID_TYPE_UIC
, ALT_ID_TYPE_NORAD_CAT_ID
, ALT_ID_TYPE_UNOOSA_NAME
, ALT_ID_TYPE_UNOOSA_ID
]
The best available version of the entity's display name.
tracked
object
If this entity is tracked by another entity, this component contains data related to how it's being tracked.
Quality score, 0-15, nil if none
Sensor hits aggregation on the tracked entity.
numberOfObjects
object
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.
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
Timestamp of the latest tracking measurement for this entity.
lineOfBearing
object
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.
angleOfArrival
object
The direction pointing from this entity to the detection
relativePose
object
Origin (LLA) and attitude (relative to ENU) of a ray pointing towards the detection. The attitude represents a forward-left-up (FLU) frame where the x-axis (1, 0, 0) is pointing towards the target.
pos
object
Geospatial location defined by this Pose.
Meaning of alt. altitude in meters above either WGS84 or EGM96, use altitude_reference to determine what zero means.
Possible values: [ALTITUDE_REFERENCE_INVALID
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_WGS84
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_EGM96
, ALTITUDE_REFERENCE_UNKNOWN
, ALTITUDE_REFERENCE_BAROMETRIC
, ALTITUDE_REFERENCE_ABOVE_SEA_FLOOR
, ALTITUDE_REFERENCE_BELOW_SEA_SURFACE
]
attEnu
object
The quaternion to transform a point in the Pose frame to the ENU frame. The Pose frame could be Body, Turret, etc and is determined by the context in which this Pose is used. The normal convention for defining orientation is to list the frames of transformation, for example att_gimbal_to_enu is the quaternion which transforms a point in the gimbal frame to the body frame, but in this case we truncate to att_enu because the Pose frame isn't defined. A potentially better name for this field would have been att_pose_to_enu.
Implementations of this quaternion should left multiply this quaternion to transform a point from the Pose frame to the enu frame.
Point<Pose> posePt{1,0,0}; Rotation<Enu, Pose> attPoseToEnu{}; Point<Enu> = attPoseToEnu*posePt;
This transformed point represents some vector in ENU space that is aligned with the x axis of the attPoseToEnu matrix.
An alternative matrix expression is as follows: ptEnu = M x ptPose
x, y, z are vector portion, w is scalar
bearingElevationCovarianceRad2
object
Bearing/elevation covariance matrix where bearing is defined in radians CCW+ about the z-axis from the x-axis of FLU frame and elevation is positive down from the FL/XY plane. mxx = bearing variance in rad^2 mxy = bearing/elevation covariance in rad^2 myy = elevation variance in rad^2
rangeEstimateM
object
The estimated distance of the detection
The value of the measurement.
Estimated one standard deviation in same unit as the value.
maxRangeM
object
The maximum distance of the detection
The value of the measurement.
Estimated one standard deviation in same unit as the value.
correlation
object
If this entity has been correlated or decorrelated to another one, this component contains information on the correlation or decorrelation.
primary
object
This entity is the primary of a correlation meaning that it serves as the representative entity of the correlation set.
The secondary entity IDs part of this correlation.
secondary
object
This entity is a secondary of a correlation meaning that it will be represented by the primary of the correlation set.
The primary of this correlation.
metadata
object
Metadata about the correlation.
provenance
object
Who or what added this entity to the (de)correlation.
Name of the integration that produced this entity
Source data type of this entity. Examples: ADSB, Link16, etc.
An ID that allows an element from a source to be uniquely identified
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.
Description of the modification source. In the case of a user this is the email address.
Indicates how the correlation will be distributed. Because a correlation is composed of multiple secondaries, each of which may have been correlated with different replication modes, the distribution of the correlation is composed of distributions of the individual entities within the correlation set. For example, if there are two secondary entities A and B correlated against a primary C, with A having been correlated globally and B having been correlated locally, then the correlation set that is distributed globally than what is known locally in the node.
Possible values: [CORRELATION_REPLICATION_MODE_INVALID
, CORRELATION_REPLICATION_MODE_LOCAL
, CORRELATION_REPLICATION_MODE_GLOBAL
]
What type of (de)correlation was this entity added with.
Possible values: [CORRELATION_TYPE_INVALID
, CORRELATION_TYPE_MANUAL
, CORRELATION_TYPE_AUTOMATED
]
membership
object
If present, this entity is a part of a correlation set.
The ID of the correlation set this entity belongs to.
This entity is the primary of a correlation set meaning that it serves as the representative entity of the correlation set.
This entity is not the primary of the correlation set. Note that there may not be a primary at all.
metadata
object
Additional metadata on this correlation.
provenance
object
Who or what added this entity to the (de)correlation.
Name of the integration that produced this entity
Source data type of this entity. Examples: ADSB, Link16, etc.
An ID that allows an element from a source to be uniquely identified
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.
Description of the modification source. In the case of a user this is the email address.
Indicates how the correlation will be distributed. Because a correlation is composed of multiple secondaries, each of which may have been correlated with different replication modes, the distribution of the correlation is composed of distributions of the individual entities within the correlation set. For example, if there are two secondary entities A and B correlated against a primary C, with A having been correlated globally and B having been correlated locally, then the correlation set that is distributed globally than what is known locally in the node.
Possible values: [CORRELATION_REPLICATION_MODE_INVALID
, CORRELATION_REPLICATION_MODE_LOCAL
, CORRELATION_REPLICATION_MODE_GLOBAL
]
What type of (de)correlation was this entity added with.
Possible values: [CORRELATION_TYPE_INVALID
, CORRELATION_TYPE_MANUAL
, CORRELATION_TYPE_AUTOMATED
]
decorrelation
object
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.
all
object
This will be specified if this entity was decorrelated against all other entities.
metadata
object
Metadata about the decorrelation.
provenance
object
Who or what added this entity to the (de)correlation.
Name of the integration that produced this entity
Source data type of this entity. Examples: ADSB, Link16, etc.
An ID that allows an element from a source to be uniquely identified
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.
Description of the modification source. In the case of a user this is the email address.
Indicates how the correlation will be distributed. Because a correlation is composed of multiple secondaries, each of which may have been correlated with different replication modes, the distribution of the correlation is composed of distributions of the individual entities within the correlation set. For example, if there are two secondary entities A and B correlated against a primary C, with A having been correlated globally and B having been correlated locally, then the correlation set that is distributed globally than what is known locally in the node.
Possible values: [CORRELATION_REPLICATION_MODE_INVALID
, CORRELATION_REPLICATION_MODE_LOCAL
, CORRELATION_REPLICATION_MODE_GLOBAL
]
What type of (de)correlation was this entity added with.
Possible values: [CORRELATION_TYPE_INVALID
, CORRELATION_TYPE_MANUAL
, CORRELATION_TYPE_AUTOMATED
]
decorrelatedEntities
object[]
A list of decorrelated entities that have been explicitly decorrelated against this entity which prevents lower precedence correlations from overriding it in the future. For example, if an operator in the UI decorrelated tracks A and B, any automated correlators would be unable to correlate them since manual decorrelations have higher precedence than automatic ones. Precedence is determined by both correlation type and replication mode.
The entity that was decorrelated against.
metadata
object
Metadata about the decorrelation.
provenance
object
Who or what added this entity to the (de)correlation.
Name of the integration that produced this entity
Source data type of this entity. Examples: ADSB, Link16, etc.
An ID that allows an element from a source to be uniquely identified
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.
Description of the modification source. In the case of a user this is the email address.
Indicates how the correlation will be distributed. Because a correlation is composed of multiple secondaries, each of which may have been correlated with different replication modes, the distribution of the correlation is composed of distributions of the individual entities within the correlation set. For example, if there are two secondary entities A and B correlated against a primary C, with A having been correlated globally and B having been correlated locally, then the correlation set that is distributed globally than what is known locally in the node.
Possible values: [CORRELATION_REPLICATION_MODE_INVALID
, CORRELATION_REPLICATION_MODE_LOCAL
, CORRELATION_REPLICATION_MODE_GLOBAL
]
What type of (de)correlation was this entity added with.
Possible values: [CORRELATION_TYPE_INVALID
, CORRELATION_TYPE_MANUAL
, CORRELATION_TYPE_AUTOMATED
]
milView
object
View of the entity.
Possible values: [DISPOSITION_UNKNOWN
, DISPOSITION_FRIENDLY
, DISPOSITION_HOSTILE
, DISPOSITION_SUSPICIOUS
, DISPOSITION_ASSUMED_FRIENDLY
, DISPOSITION_NEUTRAL
, DISPOSITION_PENDING
]
Possible values: [ENVIRONMENT_UNKNOWN
, ENVIRONMENT_AIR
, ENVIRONMENT_SURFACE
, ENVIRONMENT_SUB_SURFACE
, ENVIRONMENT_LAND
, ENVIRONMENT_SPACE
]
Possible values: [NATIONALITY_INVALID
, NATIONALITY_ALBANIA
, NATIONALITY_ALGERIA
, NATIONALITY_ARGENTINA
, NATIONALITY_ARMENIA
, NATIONALITY_AUSTRALIA
, NATIONALITY_AUSTRIA
, NATIONALITY_AZERBAIJAN
, NATIONALITY_BELARUS
, NATIONALITY_BELGIUM
, NATIONALITY_BOLIVIA
, NATIONALITY_BOSNIA_AND_HERZEGOVINA
, NATIONALITY_BRAZIL
, NATIONALITY_BULGARIA
, NATIONALITY_CAMBODIA
, NATIONALITY_CANADA
, NATIONALITY_CHILE
, NATIONALITY_CHINA
, NATIONALITY_COLOMBIA
, NATIONALITY_CROATIA
, NATIONALITY_CUBA
, NATIONALITY_CYPRUS
, NATIONALITY_CZECH_REPUBLIC
, NATIONALITY_DEMOCRATIC_PEOPLES_REPUBLIC_OF_KOREA
, NATIONALITY_DENMARK
, NATIONALITY_DOMINICAN_REPUBLIC
, NATIONALITY_ECUADOR
, NATIONALITY_EGYPT
, NATIONALITY_ESTONIA
, NATIONALITY_ETHIOPIA
, NATIONALITY_FINLAND
, NATIONALITY_FRANCE
, NATIONALITY_GEORGIA
, NATIONALITY_GERMANY
, NATIONALITY_GREECE
, NATIONALITY_GUATEMALA
, NATIONALITY_GUINEA
, NATIONALITY_HUNGARY
, NATIONALITY_ICELAND
, NATIONALITY_INDIA
, NATIONALITY_INDONESIA
, NATIONALITY_INTERNATIONAL_RED_CROSS
, NATIONALITY_IRAQ
, NATIONALITY_IRELAND
, NATIONALITY_ISLAMIC_REPUBLIC_OF_IRAN
, NATIONALITY_ISRAEL
, NATIONALITY_ITALY
, NATIONALITY_JAMAICA
, NATIONALITY_JAPAN
, NATIONALITY_JORDAN
, NATIONALITY_KAZAKHSTAN
, NATIONALITY_KUWAIT
, NATIONALITY_KYRGHYZ_REPUBLIC
, NATIONALITY_LAO_PEOPLES_DEMOCRATIC_REPUBLIC
, NATIONALITY_LATVIA
, NATIONALITY_LEBANON
, NATIONALITY_LIBERIA
, NATIONALITY_LITHUANIA
, NATIONALITY_LUXEMBOURG
, NATIONALITY_MADAGASCAR
, NATIONALITY_MALAYSIA
, NATIONALITY_MALTA
, NATIONALITY_MEXICO
, NATIONALITY_MOLDOVA
, NATIONALITY_MONTENEGRO
, NATIONALITY_MOROCCO
, NATIONALITY_MYANMAR
, NATIONALITY_NATO
, NATIONALITY_NETHERLANDS
, NATIONALITY_NEW_ZEALAND
, NATIONALITY_NICARAGUA
, NATIONALITY_NIGERIA
, NATIONALITY_NORWAY
, NATIONALITY_PAKISTAN
, NATIONALITY_PANAMA
, NATIONALITY_PARAGUAY
, NATIONALITY_PERU
, NATIONALITY_PHILIPPINES
, NATIONALITY_POLAND
, NATIONALITY_PORTUGAL
, NATIONALITY_REPUBLIC_OF_KOREA
, NATIONALITY_ROMANIA
, NATIONALITY_RUSSIA
, NATIONALITY_SAUDI_ARABIA
, NATIONALITY_SENEGAL
, NATIONALITY_SERBIA
, NATIONALITY_SINGAPORE
, NATIONALITY_SLOVAKIA
, NATIONALITY_SLOVENIA
, NATIONALITY_SOUTH_AFRICA
, NATIONALITY_SPAIN
, NATIONALITY_SUDAN
, NATIONALITY_SWEDEN
, NATIONALITY_SWITZERLAND
, NATIONALITY_SYRIAN_ARAB_REPUBLIC
, NATIONALITY_TAIWAN
, NATIONALITY_TAJIKISTAN
, NATIONALITY_THAILAND
, NATIONALITY_THE_FORMER_YUGOSLAV_REPUBLIC_OF_MACEDONIA
, NATIONALITY_TUNISIA
, NATIONALITY_TURKEY
, NATIONALITY_TURKMENISTAN
, NATIONALITY_UGANDA
, NATIONALITY_UKRAINE
, NATIONALITY_UNITED_KINGDOM
, NATIONALITY_UNITED_NATIONS
, NATIONALITY_UNITED_REPUBLIC_OF_TANZANIA
, NATIONALITY_UNITED_STATES_OF_AMERICA
, NATIONALITY_URUGUAY
, NATIONALITY_UZBEKISTAN
, NATIONALITY_VENEZUELA
, NATIONALITY_VIETNAM
, NATIONALITY_YEMEN
, NATIONALITY_ZIMBABWE
]
ontology
object
Ontology defines an entity's categorization in Lattice, and improves data retrieval and integration. Builds a standardized representation of the entity.
A string that describes the entity's high-level type with natural language.
A string that describes the entity's exact model or type.
The template used when creating this entity. Specifies minimum required components.
Possible values: [TEMPLATE_INVALID
, TEMPLATE_TRACK
, TEMPLATE_SENSOR_POINT_OF_INTEREST
, TEMPLATE_ASSET
, TEMPLATE_GEO
, TEMPLATE_SIGNAL_OF_INTEREST
]
sensors
object
Details an entity's available sensors.
sensors
object[]
This generally is used to indicate a specific type at a more detailed granularity. E.g. COMInt or LWIR
Possible values: [OPERATIONAL_STATE_INVALID
, OPERATIONAL_STATE_OFF
, OPERATIONAL_STATE_NON_OPERATIONAL
, OPERATIONAL_STATE_DEGRADED
, OPERATIONAL_STATE_OPERATIONAL
, OPERATIONAL_STATE_DENIED
]
The type of sensor
Possible values: [SENSOR_TYPE_INVALID
, SENSOR_TYPE_RADAR
, SENSOR_TYPE_CAMERA
, SENSOR_TYPE_TRANSPONDER
, SENSOR_TYPE_RF
, SENSOR_TYPE_GPS
, SENSOR_TYPE_PTU_POS
, SENSOR_TYPE_PERIMETER
, SENSOR_TYPE_SONAR
]
A human readable description of the sensor
rfConfiguraton
object
RF configuration details of the sensor
frequencyRangeHz
object[]
Frequency ranges that are available for this sensor.
minimumFrequencyHz
object
Indicates the lowest measured frequency of a signal (Hz).
frequencyHz
object
Indicates a frequency of a signal (Hz) with its standard deviation.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
maximumFrequencyHz
object
Indicates the maximum measured frequency of a signal (Hz).
frequencyHz
object
Indicates a frequency of a signal (Hz) with its standard deviation.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
bandwidthRangeHz
object[]
Bandwidth ranges that are available for this sensor.
minimumBandwidth
object
Describes the bandwidth of a signal
maximumBandwidth
object
Describes the bandwidth of a signal
Time of the latest detection from the sensor
fieldsOfView
object[]
Multiple fields of view for a single sensor component
The Id for one instance of a FieldOfView, persisted across multiple updates to provide continuity during smoothing. This is relevant for sensors where the dwell schedule is on the order of milliseconds, making multiple FOVs a requirement for proper display of search beams.
The Id of the mount the sensor is on.
projectedFrustum
object
The field of view the sensor projected onto the ground.
upperLeft
object
Upper left point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
upperRight
object
Upper right point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
bottomRight
object
Bottom right point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
bottomLeft
object
Bottom left point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
projectedCenterRay
object
Center ray of the frustum projected onto the ground.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
centerRayPose
object
The origin and direction of the center ray for this sensor relative to the ENU frame. A ray which is aligned with the positive X axis in the sensor frame will be transformed into the ray along the sensor direction in the ENU frame when transformed by the quaternion contained in this pose.
pos
object
Geospatial location defined by this Pose.
Meaning of alt. altitude in meters above either WGS84 or EGM96, use altitude_reference to determine what zero means.
Possible values: [ALTITUDE_REFERENCE_INVALID
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_WGS84
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_EGM96
, ALTITUDE_REFERENCE_UNKNOWN
, ALTITUDE_REFERENCE_BAROMETRIC
, ALTITUDE_REFERENCE_ABOVE_SEA_FLOOR
, ALTITUDE_REFERENCE_BELOW_SEA_SURFACE
]
attEnu
object
The quaternion to transform a point in the Pose frame to the ENU frame. The Pose frame could be Body, Turret, etc and is determined by the context in which this Pose is used. The normal convention for defining orientation is to list the frames of transformation, for example att_gimbal_to_enu is the quaternion which transforms a point in the gimbal frame to the body frame, but in this case we truncate to att_enu because the Pose frame isn't defined. A potentially better name for this field would have been att_pose_to_enu.
Implementations of this quaternion should left multiply this quaternion to transform a point from the Pose frame to the enu frame.
Point<Pose> posePt{1,0,0}; Rotation<Enu, Pose> attPoseToEnu{}; Point<Enu> = attPoseToEnu*posePt;
This transformed point represents some vector in ENU space that is aligned with the x axis of the attPoseToEnu matrix.
An alternative matrix expression is as follows: ptEnu = M x ptPose
x, y, z are vector portion, w is scalar
Horizontal field of view in radians.
Vertical field of view in radians.
Sensor range in meters.
The mode that this sensor is currently in, used to display for context in the UI. Some sensors can emit multiple sensor field of views with different modes, for example a radar can simultaneously search broadly and perform tighter bounded tracking.
Possible values: [SENSOR_MODE_INVALID
, SENSOR_MODE_SEARCH
, SENSOR_MODE_TRACK
, SENSOR_MODE_WEAPON_SUPPORT
, SENSOR_MODE_AUTO
, SENSOR_MODE_MUTE
]
payloads
object
Details an entity's available payloads.
payloadConfigurations
object[]
config
object
Identifying ID for the capability. This ID may be used multiple times to represent payloads that are the same capability but have different operational states
The number of payloads currently available in the configuration.
The target environments the configuration is effective against.
Possible values: [ENVIRONMENT_UNKNOWN
, ENVIRONMENT_AIR
, ENVIRONMENT_SURFACE
, ENVIRONMENT_SUB_SURFACE
, ENVIRONMENT_LAND
, ENVIRONMENT_SPACE
]
The operational state of this payload.
Possible values: [PAYLOAD_OPERATIONAL_STATE_INVALID
, PAYLOAD_OPERATIONAL_STATE_OFF
, PAYLOAD_OPERATIONAL_STATE_NON_OPERATIONAL
, PAYLOAD_OPERATIONAL_STATE_DEGRADED
, PAYLOAD_OPERATIONAL_STATE_OPERATIONAL
, PAYLOAD_OPERATIONAL_STATE_OUT_OF_SERVICE
, PAYLOAD_OPERATIONAL_STATE_UNKNOWN
]
A human readable description of the payload
powerState
object
Details the entity's power source.
sourceIdToState
object
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.
property name*
PowerSource
Represents the state of a single power source that is connected to this entity.
Status of the power source.
Possible values: [POWER_STATUS_INVALID
, POWER_STATUS_UNKNOWN
, POWER_STATUS_NOT_PRESENT
, POWER_STATUS_OPERATING
, POWER_STATUS_DISABLED
, POWER_STATUS_ERROR
]
Used to determine the type of power source.
Possible values: [POWER_TYPE_INVALID
, POWER_TYPE_UNKNOWN
, POWER_TYPE_GAS
, POWER_TYPE_BATTERY
]
powerLevel
object
Power level of the system. If absent, the power level is assumed to be unknown.
Total power capacity of the system.
Remaining power capacity of the system.
Percent of power remaining.
Voltage of the power source subsystem, as reported by the power source. If the source does not report this value this field will be null.
Current in amps of the power source subsystem, as reported by the power source. If the source does not report this value this field will be null.
Estimated minutes until empty. Calculated with consumption at the moment, as reported by the power source. If the source does not report this value this field will be null.
Fuel consumption rate in liters per second.
Set of human-readable messages with status of the power system. Typically this would be used in an error state to provide additional error information. This can also be used for informational messages.
Whether the power source is offloadable. If the value is missing (as opposed to false) then the entity does not report whether the power source is offloadable.
provenance
object
The primary data source provenance for this entity.
Name of the integration that produced this entity
Source data type of this entity. Examples: ADSB, Link16, etc.
An ID that allows an element from a source to be uniquely identified
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.
Description of the modification source. In the case of a user this is the email address.
overrides
object
Provenance of override data.
override
object[]
override request id for an override request
proto field path which is the string representation of a field. example: correlated.primary_entity_id would be primary_entity_id in correlated component
new field value corresponding to field path. In the shape of an empty entity with only the changed value. example: entity: { mil_view: { disposition: Disposition_DISPOSITION_HOSTILE } }
status of the override
Possible values: [OVERRIDE_STATUS_INVALID
, OVERRIDE_STATUS_APPLIED
, OVERRIDE_STATUS_PENDING
, OVERRIDE_STATUS_TIMEOUT
, OVERRIDE_STATUS_REJECTED
, OVERRIDE_STATUS_DELETION_PENDING
]
provenance
object
Data provenance.
Name of the integration that produced this entity
Source data type of this entity. Examples: ADSB, Link16, etc.
An ID that allows an element from a source to be uniquely identified
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.
Description of the modification source. In the case of a user this is the email address.
The type of the override, defined by the stage of the entity lifecycle that the entity was in when the override was requested.
Possible values: [OVERRIDE_TYPE_INVALID
, OVERRIDE_TYPE_LIVE
, OVERRIDE_TYPE_POST_EXPIRY
]
Timestamp of the override request. The timestamp is generated by the Entity Manager instance that receives the request.
indicators
object
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.
Indicates the Entity should be egressed to external sources. Integrations choose how the egressing happens (e.g. if an Entity needs fuzzing).
A signal of arbitrary importance such that the entity should be globally marked for all users
targetPriority
object
The prioritization associated with an entity, such as if it's a threat or a high-value target.
highValueTarget
object
Describes the target priority in relation to high value target lists.
Indicates whether the target matches any description from a high value target list.
The priority associated with the target. If the target's description appears on multiple high value target lists, the priority will be a reflection of the highest priority of all of those list's target description.
A lower value indicates the target is of a higher priority, with 1 being the highest possible priority. A value of 0 indicates there is no priority associated with this target.
targetMatches
object[]
All of the high value target descriptions that the target matches against.
The ID of the high value target list that matches the target description.
The ID of the specific high value target description within a high value target list that was matched against. The ID is considered to be a globally unique identifier across all high value target IDs.
Indicates whether the target is a 'High Payoff Target'. Targets can be one or both of high value and high payoff.
threat
object
Describes whether the entity should be treated as a threat
Indicates that the entity has been determined to be a threat.
signal
object
Describes an entity's signal characteristics, primarily used when an entity is a signal of interest.
frequencyCenter
object
A component for describing frequency.
frequencyHz
object
Indicates a frequency of a signal (Hz) with its standard deviation.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
frequencyRange
object
A component to represent a frequency range.
minimumFrequencyHz
object
Indicates the lowest measured frequency of a signal (Hz).
frequencyHz
object
Indicates a frequency of a signal (Hz) with its standard deviation.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
maximumFrequencyHz
object
Indicates the maximum measured frequency of a signal (Hz).
frequencyHz
object
Indicates a frequency of a signal (Hz) with its standard deviation.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
Indicates the bandwidth of a signal (Hz).
Indicates the signal to noise (SNR) of this signal.
lineOfBearing
object
A line of bearing of a signal.
angleOfArrival
object
The direction pointing from this entity to the detection
relativePose
object
Origin (LLA) and attitude (relative to ENU) of a ray pointing towards the detection. The attitude represents a forward-left-up (FLU) frame where the x-axis (1, 0, 0) is pointing towards the target.
pos
object
Geospatial location defined by this Pose.
Meaning of alt. altitude in meters above either WGS84 or EGM96, use altitude_reference to determine what zero means.
Possible values: [ALTITUDE_REFERENCE_INVALID
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_WGS84
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_EGM96
, ALTITUDE_REFERENCE_UNKNOWN
, ALTITUDE_REFERENCE_BAROMETRIC
, ALTITUDE_REFERENCE_ABOVE_SEA_FLOOR
, ALTITUDE_REFERENCE_BELOW_SEA_SURFACE
]
attEnu
object
The quaternion to transform a point in the Pose frame to the ENU frame. The Pose frame could be Body, Turret, etc and is determined by the context in which this Pose is used. The normal convention for defining orientation is to list the frames of transformation, for example att_gimbal_to_enu is the quaternion which transforms a point in the gimbal frame to the body frame, but in this case we truncate to att_enu because the Pose frame isn't defined. A potentially better name for this field would have been att_pose_to_enu.
Implementations of this quaternion should left multiply this quaternion to transform a point from the Pose frame to the enu frame.
Point<Pose> posePt{1,0,0}; Rotation<Enu, Pose> attPoseToEnu{}; Point<Enu> = attPoseToEnu*posePt;
This transformed point represents some vector in ENU space that is aligned with the x axis of the attPoseToEnu matrix.
An alternative matrix expression is as follows: ptEnu = M x ptPose
x, y, z are vector portion, w is scalar
bearingElevationCovarianceRad2
object
Bearing/elevation covariance matrix where bearing is defined in radians CCW+ about the z-axis from the x-axis of FLU frame and elevation is positive down from the FL/XY plane. mxx = bearing variance in rad^2 mxy = bearing/elevation covariance in rad^2 myy = elevation variance in rad^2
rangeEstimateM
object
The estimated distance of the detection
The value of the measurement.
Estimated one standard deviation in same unit as the value.
maxRangeM
object
The maximum distance of the detection
The value of the measurement.
Estimated one standard deviation in same unit as the value.
A fix of a signal. No extra fields but it is expected that location should be populated when using this report.
emitterNotations
object[]
Emitter notations associated with this entity.
confidence as a percentage that the emitter notation in this component is accurate
length in time of a single pulse
pulseRepetitionInterval
object
length in time between the start of two pulses
pulseRepetitionIntervalS
object
A component that describes some measured value with error.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
scanCharacteristics
object
describes how a signal is observing the environment
Possible values: [SCAN_TYPE_INVALID
, SCAN_TYPE_CIRCULAR
, SCAN_TYPE_BIDIRECTIONAL_HORIZONTAL_SECTOR
, SCAN_TYPE_BIDIRECTIONAL_VERTICAL_SECTOR
, SCAN_TYPE_NON_SCANNING
, SCAN_TYPE_IRREGULAR
, SCAN_TYPE_CONICAL
, SCAN_TYPE_LOBE_SWITCHING
, SCAN_TYPE_RASTER
, SCAN_TYPE_CIRCULAR_VERTICAL_SECTOR
, SCAN_TYPE_CIRCULAR_CONICAL
, SCAN_TYPE_SECTOR_CONICAL
, SCAN_TYPE_AGILE_BEAM
, SCAN_TYPE_UNIDIRECTIONAL_VERTICAL_SECTOR
, SCAN_TYPE_UNIDIRECTIONAL_HORIZONTAL_SECTOR
, SCAN_TYPE_UNIDIRECTIONAL_SECTOR
, SCAN_TYPE_BIDIRECTIONAL_SECTOR
]
transponderCodes
object
A message describing any transponder codes associated with Mode 1, 2, 3, 4, 5, S interrogations. These are related to ADS-B modes.
The mode 1 code assigned to military assets.
The Mode 2 code assigned to military assets.
The Mode 3 code assigned by ATC to the asset.
The validity of the response from the Mode 4 interrogation.
Possible values: [INTERROGATION_RESPONSE_INVALID
, INTERROGATION_RESPONSE_CORRECT
, INTERROGATION_RESPONSE_INCORRECT
, INTERROGATION_RESPONSE_NO_RESPONSE
]
mode5
object
The Mode 5 transponder codes.
The validity of the response from the Mode 5 interrogation.
Possible values: [INTERROGATION_RESPONSE_INVALID
, INTERROGATION_RESPONSE_CORRECT
, INTERROGATION_RESPONSE_INCORRECT
, INTERROGATION_RESPONSE_NO_RESPONSE
]
The Mode 5 code assigned to military assets.
The Mode 5 platform identification code.
modeS
object
The Mode S transponder codes.
Mode S identifier which comprises of 8 alphanumeric characters.
The Mode S ICAO aircraft address. Expected values are between 1 and 16777214 decimal. The Mode S address is considered unique.
dataClassification
object
Describes an entity's security classification levels at an overall classification level and on a per field level.
default
object
The default classification information which should be assumed to apply to everything in the entity unless a specific field level classification is present.
Classification level to be applied to the information in question.
Possible values: [CLASSIFICATION_LEVELS_INVALID
, CLASSIFICATION_LEVELS_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONTROLLED_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONFIDENTIAL
, CLASSIFICATION_LEVELS_SECRET
, CLASSIFICATION_LEVELS_TOP_SECRET
]
Caveats that may further restrict how the information can be disseminated.
fields
object[]
The set of individual field classification information which should always precedence over the default classification information.
Proto field path which is the string representation of a field.
example: signal.bandwidth_hz would be bandwidth_hz in the signal component
classificationInformation
object
The information which makes up the field level classification marking.
Classification level to be applied to the information in question.
Possible values: [CLASSIFICATION_LEVELS_INVALID
, CLASSIFICATION_LEVELS_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONTROLLED_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONFIDENTIAL
, CLASSIFICATION_LEVELS_SECRET
, CLASSIFICATION_LEVELS_TOP_SECRET
]
Caveats that may further restrict how the information can be disseminated.
taskCatalog
object
A catalog of tasks that can be performed by an entity.
taskDefinitions
object[]
Url path must be prefixed with type.googleapis.com/
.
relationships
object
The relationships between this entity and other entities in the common operational picture (COP).
relationships
object[]
The entity ID to which this entity is related.
A unique identifier for this relationship. Allows removing or updating relationships.
relationshipType
object
The relationship type
trackedBy
object
Describes the relationship between the entity being tracked ("tracked entity") and the entity that is performing the tracking ("tracking entity").
activelyTrackingSensors
object
Sensor details of the tracking entity's sensors that were active and tracking the tracked entity. This may be a subset of the total sensors available on the tracking entity.
sensors
object[]
This generally is used to indicate a specific type at a more detailed granularity. E.g. COMInt or LWIR
Possible values: [OPERATIONAL_STATE_INVALID
, OPERATIONAL_STATE_OFF
, OPERATIONAL_STATE_NON_OPERATIONAL
, OPERATIONAL_STATE_DEGRADED
, OPERATIONAL_STATE_OPERATIONAL
, OPERATIONAL_STATE_DENIED
]
The type of sensor
Possible values: [SENSOR_TYPE_INVALID
, SENSOR_TYPE_RADAR
, SENSOR_TYPE_CAMERA
, SENSOR_TYPE_TRANSPONDER
, SENSOR_TYPE_RF
, SENSOR_TYPE_GPS
, SENSOR_TYPE_PTU_POS
, SENSOR_TYPE_PERIMETER
, SENSOR_TYPE_SONAR
]
A human readable description of the sensor
rfConfiguraton
object
RF configuration details of the sensor
frequencyRangeHz
object[]
Frequency ranges that are available for this sensor.
minimumFrequencyHz
object
Indicates the lowest measured frequency of a signal (Hz).
frequencyHz
object
Indicates a frequency of a signal (Hz) with its standard deviation.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
maximumFrequencyHz
object
Indicates the maximum measured frequency of a signal (Hz).
frequencyHz
object
Indicates a frequency of a signal (Hz) with its standard deviation.
The value of the measurement.
Estimated one standard deviation in same unit as the value.
bandwidthRangeHz
object[]
Bandwidth ranges that are available for this sensor.
minimumBandwidth
object
Describes the bandwidth of a signal
maximumBandwidth
object
Describes the bandwidth of a signal
Time of the latest detection from the sensor
fieldsOfView
object[]
Multiple fields of view for a single sensor component
The Id for one instance of a FieldOfView, persisted across multiple updates to provide continuity during smoothing. This is relevant for sensors where the dwell schedule is on the order of milliseconds, making multiple FOVs a requirement for proper display of search beams.
The Id of the mount the sensor is on.
projectedFrustum
object
The field of view the sensor projected onto the ground.
upperLeft
object
Upper left point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
upperRight
object
Upper right point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
bottomRight
object
Bottom right point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
bottomLeft
object
Bottom left point of the frustum.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
projectedCenterRay
object
Center ray of the frustum projected onto the ground.
WGS84 geodetic latitude in decimal degrees.
WGS84 longitude in decimal degrees.
altitude as height above ellipsoid (WGS84) in meters. DoubleValue wrapper is used to distinguish optional from default 0.
Altitude as AGL (Above Ground Level) if the upstream data source has this value set. This value represents the entity's height above the terrain. This is typically measured with a radar altimeter or by using a terrain tile set lookup. If the value is not set from the upstream, this value is not set.
Altitude as ASF (Above Sea Floor) if the upstream data source has this value set. If the value is not set from the upstream, this value is not set.
The depth of the entity from the surface of the water through sensor measurements based on differential pressure between the interior and exterior of the vessel. If the value is not set from the upstream, this value is not set.
centerRayPose
object
The origin and direction of the center ray for this sensor relative to the ENU frame. A ray which is aligned with the positive X axis in the sensor frame will be transformed into the ray along the sensor direction in the ENU frame when transformed by the quaternion contained in this pose.
pos
object
Geospatial location defined by this Pose.
Meaning of alt. altitude in meters above either WGS84 or EGM96, use altitude_reference to determine what zero means.
Possible values: [ALTITUDE_REFERENCE_INVALID
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_WGS84
, ALTITUDE_REFERENCE_HEIGHT_ABOVE_EGM96
, ALTITUDE_REFERENCE_UNKNOWN
, ALTITUDE_REFERENCE_BAROMETRIC
, ALTITUDE_REFERENCE_ABOVE_SEA_FLOOR
, ALTITUDE_REFERENCE_BELOW_SEA_SURFACE
]
attEnu
object
The quaternion to transform a point in the Pose frame to the ENU frame. The Pose frame could be Body, Turret, etc and is determined by the context in which this Pose is used. The normal convention for defining orientation is to list the frames of transformation, for example att_gimbal_to_enu is the quaternion which transforms a point in the gimbal frame to the body frame, but in this case we truncate to att_enu because the Pose frame isn't defined. A potentially better name for this field would have been att_pose_to_enu.
Implementations of this quaternion should left multiply this quaternion to transform a point from the Pose frame to the enu frame.
Point<Pose> posePt{1,0,0}; Rotation<Enu, Pose> attPoseToEnu{}; Point<Enu> = attPoseToEnu*posePt;
This transformed point represents some vector in ENU space that is aligned with the x axis of the attPoseToEnu matrix.
An alternative matrix expression is as follows: ptEnu = M x ptPose
x, y, z are vector portion, w is scalar
Horizontal field of view in radians.
Vertical field of view in radians.
Sensor range in meters.
The mode that this sensor is currently in, used to display for context in the UI. Some sensors can emit multiple sensor field of views with different modes, for example a radar can simultaneously search broadly and perform tighter bounded tracking.
Possible values: [SENSOR_MODE_INVALID
, SENSOR_MODE_SEARCH
, SENSOR_MODE_TRACK
, SENSOR_MODE_WEAPON_SUPPORT
, SENSOR_MODE_AUTO
, SENSOR_MODE_MUTE
]
Latest time that any sensor in actively_tracking_sensors detected the tracked entity.
A GroupChild relationship is a uni-directional relationship indicating that (1) this entity represents an Entity Group and (2) the related entity is a child member of this group. The presence of this relationship alone determines that the type of group is an Entity Group.
A GroupParent relationship is a uni-directional relationship indicating that this entity is a member of the Entity Group represented by the related entity. The presence of this relationship alone determines that the type of group that this entity is a member of is an Entity Group.
A MergedFrom relationship is a uni-directional relationship indicating that this entity is a merged entity whose data has at least partially been merged from the related entity.
visualDetails
object
Visual details associated with the display of an entity in the client.
rangeRings
object
The range rings to display around an entity.
The minimum range ring distance, specified in meters.
The maximum range ring distance, specified in meters.
The count of range rings.
ringLineColor
object
The color of range rings, specified in hex string.
The amount of red in the color as a value in the interval [0, 1].
The amount of green in the color as a value in the interval [0, 1].
The amount of blue in the color as a value in the interval [0, 1].
The fraction of this color that should be applied to the pixel. That is, the final pixel color is defined by the equation:
pixel color = alpha * (this color) + (1.0 - alpha) * (background color)
This means that a value of 1.0 corresponds to a solid color, whereas a value of 0.0 corresponds to a completely transparent color. This uses a wrapper message rather than a simple float scalar so that it is possible to distinguish between a default value and the value being unset. If omitted, this color object is rendered as a solid color (as if the alpha value had been explicitly given a value of 1.0).
dimensions
object
Physical dimensions of the entity.
Length of the entity in meters
routeDetails
object
Additional information about an entity's route.
Free form text giving the name of the entity's destination
Estimated time of arrival at destination
schedules
object
Schedules associated with this entity.
schedules
object[]
windows
object[]
expression that represents this schedule's "ON" state
in UTC, describes when and at what cadence this window starts, in the quartz flavor of cron
examples: This schedule is begins at 7:00:00am UTC everyday between Monday and Friday 0 0 7 ? * MON-FRI * This schedule begins every 5 minutes starting at 12:00:00pm UTC until 8:00:00pm UTC everyday 0 0/5 12-20 * * ? * This schedule begins at 12:00:00pm UTC on March 2nd 2023 0 0 12 2 3 ? 2023
describes the duration
A unique identifier for this schedule.
The schedule type
Possible values: [SCHEDULE_TYPE_INVALID
, SCHEDULE_TYPE_ZONE_ENABLED
, SCHEDULE_TYPE_ZONE_TEMP_ENABLED
]
health
object
Health metrics or connection status reported by the entity.
Status indicating whether the entity is able to communicate with Entity Manager.
Possible values: [CONNECTION_STATUS_INVALID
, CONNECTION_STATUS_ONLINE
, CONNECTION_STATUS_OFFLINE
]
Top-level health status; typically a roll-up of individual component healths.
Possible values: [HEALTH_STATUS_INVALID
, HEALTH_STATUS_HEALTHY
, HEALTH_STATUS_WARN
, HEALTH_STATUS_FAIL
, HEALTH_STATUS_OFFLINE
, HEALTH_STATUS_NOT_READY
]
components
object[]
Health of individual components running on this Entity.
Consistent internal ID for this component.
Display name for this component.
Health for this component.
Possible values: [HEALTH_STATUS_INVALID
, HEALTH_STATUS_HEALTHY
, HEALTH_STATUS_WARN
, HEALTH_STATUS_FAIL
, HEALTH_STATUS_OFFLINE
, HEALTH_STATUS_NOT_READY
]
messages
object[]
Human-readable describing the component state. These messages should be understandable by end users.
The status associated with this message.
Possible values: [HEALTH_STATUS_INVALID
, HEALTH_STATUS_HEALTHY
, HEALTH_STATUS_WARN
, HEALTH_STATUS_FAIL
, HEALTH_STATUS_OFFLINE
, HEALTH_STATUS_NOT_READY
]
The human-readable content of the message.
The last update time for this specific component. If this timestamp is unset, the data is assumed to be most recent
The update time for the top-level health information. If this timestamp is unset, the data is assumed to be most recent
activeAlerts
object[]
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.
Short, machine-readable code that describes this alert. This code is intended to provide systems off-asset with a lookup key to retrieve more detailed information about the alert.
Human-readable description of this alert. The description is intended for display in the UI for human understanding and should not be used for machine processing. If the description is fixed and the vehicle controller provides no dynamic substitutions, then prefer lookup based on alert_code.
Alert level (Warning, Caution, or Advisory).
Possible values: [ALERT_LEVEL_INVALID
, ALERT_LEVEL_ADVISORY
, ALERT_LEVEL_CAUTION
, ALERT_LEVEL_WARNING
]
Time at which this alert was activated.
activeConditions
object[]
Set of conditions which have activated this alert.
Short, machine-readable code that describes this condition. This code is intended to provide systems off-asset with a lookup key to retrieve more detailed information about the condition.
Human-readable description of this condition. The description is intended for display in the UI for human understanding and should not be used for machine processing. If the description is fixed and the vehicle controller provides no dynamic substitutions, then prefer lookup based on condition_code.
Details for the group associated with this entity.
supplies
object
Contains relevant supply information for the entity, such as fuel.
fuel
object[]
unique fuel identifier
long form name of the fuel source.
timestamp the information was reported
amount of gallons on hand
how much the asset is allowed to have available (in gallons)
minimum required for operations (in gallons)
dataClassification
object
fuel in a single asset may have different levels of classification use case: fuel for a SECRET asset while diesel fuel may be UNCLASSIFIED
default
object
The default classification information which should be assumed to apply to everything in the entity unless a specific field level classification is present.
Classification level to be applied to the information in question.
Possible values: [CLASSIFICATION_LEVELS_INVALID
, CLASSIFICATION_LEVELS_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONTROLLED_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONFIDENTIAL
, CLASSIFICATION_LEVELS_SECRET
, CLASSIFICATION_LEVELS_TOP_SECRET
]
Caveats that may further restrict how the information can be disseminated.
fields
object[]
The set of individual field classification information which should always precedence over the default classification information.
Proto field path which is the string representation of a field.
example: signal.bandwidth_hz would be bandwidth_hz in the signal component
classificationInformation
object
The information which makes up the field level classification marking.
Classification level to be applied to the information in question.
Possible values: [CLASSIFICATION_LEVELS_INVALID
, CLASSIFICATION_LEVELS_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONTROLLED_UNCLASSIFIED
, CLASSIFICATION_LEVELS_CONFIDENTIAL
, CLASSIFICATION_LEVELS_SECRET
, CLASSIFICATION_LEVELS_TOP_SECRET
]
Caveats that may further restrict how the information can be disseminated.
source of information
orbit
object
Orbit information for space objects.
orbitMeanElements
object
Orbit Mean Elements data, analogous to the Orbit Mean Elements Message in CCSDS 502.0-B-3
metadata
object
Creation date/time in UTC
Creating agency or operator
ID that uniquely identifies a message from a given originator.
Reference frame, assumed to be Earth-centered
Possible values: [ECI_REFERENCE_FRAME_INVALID
, ECI_REFERENCE_FRAME_TEME
]
Reference frame epoch in UTC - mandatory only if not intrinsic to frame definition
Possible values: [MEAN_ELEMENT_THEORY_INVALID
, MEAN_ELEMENT_THEORY_SGP4
]
meanKeplerianElements
object
UTC time of validity
Preferred: semi major axis in kilometers
If using SGP/SGP4, provide the Keplerian Mean Motion in revolutions per day
Angle of inclination in deg
Right ascension of the ascending node in deg
Argument of pericenter in deg
Mean anomaly in deg
Optional: gravitational coefficient (Gravitational Constant x central mass) in kg^3 / s^2
tleParameters
object
Integer specifying TLE ephemeris type
User-defined free-text message classification/caveats of this TLE
Norad catalog number: integer up to nine digits.
Optional: revolution number
Drag parameter for SGP-4 in units 1 / Earth radii
Drag parameter for SGP4-XP in units m^2 / kg
First time derivative of mean motion in rev / day^2
Second time derivative of mean motion in rev / day^3. For use with SGP or PPT3.
Solar radiation pressure coefficient A_gamma / m in m^2 / kg. For use with SGP4-XP.
Indicates that this entity was generated from a snapshot of a live entity.
owner
object
Owner designates the entity responsible for writes of Task data.
Entity ID of the owner.
{
"displayName": "string",
"lastUpdateTime": "2024-07-29T15:51:28.071Z",
"scheduledTime": "2024-07-29T15:51:28.071Z",
"description": "string",
"isExecutedElsewhere": true,
"createTime": "2024-07-29T15:51:28.071Z",
"initialEntities": [
{
"snapshot": true
}
]
}
Bad request
- application/json
- Schema
- Example (from schema)
Schema
{
"code": "string",
"message": "string"
}
Unauthorized to access resource
- application/json
- Schema
- Example (from schema)
Schema
{
"code": "string",
"message": "string"
}