Track

Service operation to dynamically query data by a variety of query parameters not specified in this API documentation. See the queryhelp operation (/udl/<datatype>/queryhelp) for more details on valid/required query parameter information.

Request

  • Base URL
    https://unifieddatalibrary.com
  • URL
    https://unifieddatalibrary.com/udl/track
  • Auth
    none declared

Query parameters

tsstring date-time required

Track timestamp in ISO8601 UTC format with microsecond precision. (YYYY-MM-DDTHH:MM:SS.ssssssZ)

firstResultinteger
maxResultsinteger

Response

OK

idstring

Unique identifier of the record, auto-generated by the system.

classificationMarkingstring required

Classification marking of the data in IC/CAPCO Portion-marked format.

cntctstring

Contact information for assets reporting PPLI (Precise Participant Location and Identification). PPLI is a Link 16 message that is used by units to transmit complete location, identification, and limited status information.

createdAtstring date-time

Time the row was created in the database, auto-populated by the system.

createdBystring

Application user who created the row in the database, auto-populated by the system.

msgTsstring date-time

Timestamp when the message was created, in ISO8601 UTC format with microsecond precision.

msnIdstring

Mission ID related to the track.

assetNatstring

Nationality or organization of the tracking/reporting system or platform (e.g. FR, NATO, US, etc.).

assetstring

Id/name of the platform providing the track data (i.e., tail number for air platform, tower ID for tower based sensor, site id for fixed radar).

senstring

Id/name of sensor providing the track data.

senQualstring

Sensor quality.

trkIdstring

UUID identifying the track, which should remain the same on subsequent tracks of the same object.

trkNumstring

The track number (TN) of a surveillance entity. Intended as, but not constrained to, the J-series track number encoded as five character alpha-numeric characters. Users should refer to J-series documentation for specific TN definitions.

trkStatstring

Status of the track (e.g., INITIATING, MAINTAINING, DROPPING, TERMINATED, etc.).

objNatstring

Nationality or organization of the track object (e.g. FR, NATO, US, etc.).

objIdstring

The UID or designation of the tracked object.

objTypestring

The generic classification of the track object/group (e.g., HELICOPTER, TRACKED, WATERCRAFT, WHEELED, etc.). Referenced, but not constrained to, NATO STANAG 4676 object type classifications.

objSpecstring

The object specific type. Intended as, but not constrained to, MIL-STD-6016 environment dependent specific type designations. The specific type can be reported as either a combination of the code and environment (e.g. 155/SURFACE) or as the descriptive representation (e.g. AUDACE DDG), which are equivalent.

objPlatstring

The object platform type. Intended as, but not constrained to, MIL-STD-6016 environment dependent platform type designations. The platform type can be reported as either a combination of the code and environment (e.g. 14/LAND) or as the descriptive representations (e.g. COMBAT VEHICLE), which are equivalent.

objActstring

The activity in which the track object is engaged. Intended as, but not constrained to, MIL-STD-6016 environment dependent activity designations. The activity can be reported as either a combination of the code and environment (e.g. 65/AIR) or as the descriptive enumeration (e.g. DIVERTING), which are equivalent.

objDescriptionstring

This is the free-text, generally human-readable, name of the System or Resource corresponding to this track record.

modTypestring

The type of source information from which the track was derived. Intended as, but not constrained to, NATO STANAG 4676 modality types (AIS, BFT, BIOMETRIC, COMINT, DOPPLER, ELINT, HRR, HUMINT, IMAGE, MASINT, MIXED, OSINT, OTHER):

AIS: Derived from an automated identification system source.

BFT: Derived from a blue force tracking source.

BIOMETRICS: Derived from a biometrics source.

COMINT: Derived from a communications intelligence source.

DOPPLER: Derived from a radar doppler source.

ELINT: Derived from an electronics intelligence source.

HRR: Derived from a radar high range resolution source.

HUMINT: Derived from a human intelligence source.

IMAGE: Derived from a still or motion imagery source.

MASINT: Derived from a measurement and signals intelligence source.

MIXED: Derived from a combination of two or more sources.

OSINT: Derived from an open source intelligence source.

OTHER: Derived from other types of unspecified sources.

trkItmIdstring

UUID of the track item object. Intended for, but not restricted to, STANAG-4676 messages. This ID is used to distinguish an individual track within a message or external system containing multiple tracks on single or multiple targets.

tsstring date-time required

Track timestamp in ISO8601 UTC format with microsecond precision.

trkQualinteger

Value indicating track quality (not standardized).

trkPtTypestring

Means by which the track data was created (e.g., MEASURED, AUTOMATIC PREDICTED, etc.).

objIdentstring

The estimated identity of the track object (ASSUMED FRIEND, FRIEND, HOSTILE, NEUTRAL, PENDING, SUSPECT, UNKNOWN):

ASSUMED FRIEND: Track assumed to be a friend due to the object characteristics, behavior, and/or origin.

FRIEND: Track object supporting friendly forces and belonging to a declared friendly nation or entity.

HOSTILE: Track object belonging to an opposing nation, party, group, or entity deemed to contribute to a threat to friendly forces or their mission due to its behavior, characteristics, nationality, or origin.

NEUTRAL: Track object whose characteristics, behavior, nationality, and/or origin indicate that it is neither supporting nor opposing friendly forces or their mission.

PENDING: Track object which has not been evaluated.

SUSPECT: Track object deemed potentially hostile due to the object characteristics, behavior, nationality, and/or origin.

UNKNOWN: Track object which has been evaluated and does not meet criteria for any standard identity.

identCredinteger

Track object identity credibility.

identRelinteger

Track object identity reliability.

identAmpstring

Additional track object identity/status information, typically used for EXERCISE identity amplification (FAKER, JOKER, KILO, TRAVELLER, ZOMBIE):

FAKER: Friendly track, object, or entity acting as an exercise hostile.

JOKER: Friendly track, object, or entity acting as an exercise suspect.

KILO: Friendly high-value object.

TRAVELLER: Suspect land or surface track following a recognized traffic route.

ZOMBIE: Suspect track, object, or entity of special interest.

envstring

The track environment type (AIR, LAND, SPACE, SUBSURFACE, SURFACE, UNKNOWN):

AIR: Between sea level and the Kármán line, which has an altitude of 100 kilometers (62 miles).

LAND: On the surface of dry land.

SPACE: Above the Kármán line, which has an altitude of 100 kilometers (62 miles).

SURFACE: On the surface of a body of water.

SUBSURFACE: Below the surface of a body of water.

UNKNOWN: Environment is not known.

envConfnumber double

Track environment confidence estimate (not standardized).

trkConfnumber double

Overall track confidence estimate (not standardized, but typically a value between 0 and 1, with 0 indicating lowest confidence).

ecefPosnumber[]

Array of the track object position, [x, y, z], in meters, in the Earth Centered - Earth Fixed (ECEF) reference frame. When provided, array must always contain 3 values.

ecefVelnumber[]

Array of the track object velocity, [x', y', z'], in meters per second, in the Earth Centered - Earth Fixed (ECEF) reference frame. When provided, array must always contain 3 values.

ecefAccnumber[]

Array of the track object acceleration, [x'', y'', z''], in meters per second squared, in the Earth Centered - Earth Fixed (ECEF) reference frame. When provided, array must always contain 3 values.

latnumber double

WGS-84 latitude of the track object, in degrees. -90 to 90 degrees (negative values south of equator).

lonnumber double

WGS-84 longitude of the track object, in degrees. -180 to 180 degrees (negative values west of Prime Meridian).

altnumber double

Track point altitude relative to WGS-84 ellipsoid, in meters. Positive values indicate a track object height above ellipsoid, and negative values indicate a track object below ellipsoid, applicable to the depth estimate for a subsurface track.

spdnumber double

Track object speed, in its environment, in meters per second. For example, this would be air speed for an aircraft.

grndSpdnumber double

Target ground speed, as opposed to air speed, in meters per second.

hdngnumber double

The track object heading, in degrees clockwise from true North at the object location (0-360 degrees).

coursenumber double

The track object course-over-ground, in degrees clockwise from true North at the object location (0-360 degrees).

wanderAngnumber double

The angle by which the Inertial Navigation System (INS) rotates the geodetic frame about the axis to avoid the introduction of a singularity at the North pole when it is calculating vehicle location.

lconumber[]

Origin of a local coordinate system [lat, lon, altitude]. When provided, array must always contain 3 values.

lcsnumber[]

The x, y, and z-axis rotations (degrees) about ECEF that define a local cartesian system. When provided, array must always contain 3 values.

lcPosnumber[]

Estimate of the position, [x, y, z], of the track object in the defined cartesian system, in meters. When provided, array must always contain 3 values.

lcVelnumber[]

Estimate of the velocity, [x', y', z'], of the track object in the defined cartesian system, in meters per second. When provided, array must always contain 3 values.

lcAccnumber[]

Estimate of the acceleration, [x'', y'', z''], of the track object in the defined cartesian system, in meters per second squared. When provided, array must always contain 3 values.

eNUVelnumber[]

East, North, Up velocity components, in meters per second. When provided, array must always contain 3 values.

eNUGroundVelnumber[]

East, North, Up ground velocity components, in meters per second. When provided, array must always contain 3 values.

eNUPosnumber[]

East, North, Up position components, in meters. When provided, array must always contain 3 values.

eNUAccnumber[]

East, North, Up acceleration components, in meters per second squared. When provided, array must always contain 3 values defining the acceleration.

covnumber[]

Covariance matrix, in meter and second based units, for the defined cartesian system.

The array values represent the lower triangular half of the position-velocity covariance matrix. The size of the covariance matrix is dynamic. The values are output as an array of values corresponding to the position-velocity covariance element positions, ordered as follows:

          x    y    z   x'   y'   z'

x         1

y         2    3

z         4    5    6

x'        7    8    9   10

y'       11   12   13   14   15

z'       16   17   18   19   20   21

The covariance matrix will be as large as the last element needed, and with unused values zero-filled to maintain proper element positioning in the array. For example, for a 2D (x, y) position-only covariance, the covariance matrix will be 2x2 and the array would contain the 3 elements corresponding to the x, and y position. Another example, now for a 2D (x, y) position-velocity covariance, the covariance matrix will be 5x5 and the array would contain the 15 elements corresponding to the relevant x, y, x', and y' values (with the z-row and z-column being all zeros). The cov array should contain only the lower left triangle values from top left down to bottom right, in order.

covReferenceFrame'ENU' | 'ECR/ECEF' | 'LOCAL' | 'LAT-LONG' | 'LAT-LONG-ALT'

The reference frame of the covariance matrix elements (ENU, ECR/ECEF, LOCAL, LAT-LONG, LAT-LONG-ALT). If the covReferenceFrame is null it is assumed to be ECR/ECEF.

errEllpnumber[]

Uncertainty ellipsoid [semi-major axis (meters), semi-minor axis (meters), orientation (degrees)]. When provided, array must always contain 3 values.

vertUncnumber double

The vertical uncertainty represents the 1-sigma position uncertainty perpendicular to the error Ellipse surface in the up (+) / down (-) direction measured in meters.

attitudenumber[]

The attitude (Yaw, Pitch, and Roll), in degrees, of the track object. When provided, the array must always contain 3 values defining the attitude and may specify an optional timestamp indicating when the data was measured, last known to be correct and/or predicted to occur. These values represent the vehicle's rotation about the vertical, lateral, and longitudinal axes, respectively, in a locally level, East, North, Up "right handed" coordinate system centered on the vehicle. Yaw is measured in degrees and ranges from -180 to 180. Pitch is measured in degrees and ranges from -90 to 90. Roll is measured in degrees and ranges from -180 to 180.

attitudeRatenumber[]

The attitude rate (Yaw Rate, Pitch Rate, and Roll Rate), in degrees per second, of the track object. When provided, the array must always contain 3 values defining the attitude rate and may specify an optional timestamp indicating when the data was measured, last known to be correct and/or predicted to occur. These values represent the rate of change of the vehicle's rotation about the vertical, lateral, and longitudinal axes, respectively, in a locally level, East, North, Up "right handed" coordinate system centered on the vehicle.

srcTypsstring[]

Array of UDL record types (POI, MTI, TRACK, GROUNDIMAGE) that contributed to the generation of this fused track. See the associated 'srcIds' array for the record UUIDs, positionally corresponding to the record types in this array, used in the track fusion. The 'srcTyps' and 'srcIds' arrays must match in size.

srcIdsstring[]

Array of UUIDs of the UDL data records that contributed to the generation of this fused track. See the associated 'srcTyps' array for the specific types of data, positionally corresponding to the UUIDs in this array, used in the track fusion. The 'srcTyps' and 'srcIds' arrays must match in size. See the corresponding srcTyps array element for the data type of the UUID and use the appropriate API operation to retrieve that object (e.g. /udl/poi/{uuid}).

callSignstring

The call sign currently assigned to this track object.

multiSourceboolean

Flag indicating that this track is fused from multiple sensor sources.

jSeriesstring

The J-series message type, if this track is derived from a J-series message.

strengthinteger

The number of objects or units moving as a group and represented as a single entity in this track message. If null, the track is assumed to represent a single object. Note that if this track derives from a J-series message then special definitions apply for the following values: 13 indicates an estimated 2-7 units, 14 indicates an estimated more than 7 units, and 15 indicates an estimated more than 12 units.

m1integer

Mode-1 interrogation response (mission code), indicating mission or aircraft type. Assume leading 0's for any inputs that are less than 2 digits.

m1vinteger

Mode-1 validity status.

m2integer

Mode-2 interrogation response (military identification code). Assume leading 0's for any inputs that are less than 4 digits.

m2vinteger

Mode-2 validity status.

m3ainteger

Mode-3/A interrogation response (aircraft identification), provides a 4-digit octal identification code for the aircraft, assigned by the air traffic controller. Mode-3/A is shared military/civilian use. Assume leading 0's for any inputs that are less than 4 digits.

m3avinteger

Mode-3/A validity status.

tagsstring[]

Optional array of provider/source specific tags for this data, where each element is no longer than 32 characters, used for implementing data owner conditional access controls to restrict access to the data. Should be left null by data providers unless conditional access controls are coordinated with the UDL team.

contextKeysstring[]

An optional string array containing additional data (keys) representing relevant items for context of fields not specifically defined in this schema. This array is paired with the contextValues string array and must contain the same number of items. Please note these fields are intended for contextual use only and do not pertain to core schema information. To ensure proper integration and avoid misuse, coordination of how these fields are populated and consumed is required during onboarding.

contextValuesstring[]

An optional string array containing the values associated with the contextKeys array. This array is paired with the contextKeys string array and must contain the same number of items. Please note these fields are intended for contextual use only and do not pertain to core schema information. To ensure proper integration and avoid misuse, coordination of how these fields are populated and consumed is required during onboarding.

sourceDLstring

The source data library from which this record was received. This could be a remote or tactical UDL or another data library. If null, the record should be assumed to have originated from the primary Enterprise UDL.

sourcestring required

Source of the data.

originstring

Originating system or organization which produced the data, if different from the source. The origin may be different than the source if the source was a mediating system which forwarded the data on behalf of the origin system. If null, the source may be assumed to be the origin.

dataMode'REAL' | 'TEST' | 'SIMULATED' | 'EXERCISE' required

Indicator of whether the data is REAL, TEST, EXERCISE, or SIMULATED data:

REAL: Data collected or produced that pertains to real-world objects, events, and analysis.

TEST: Specific datasets used to evaluate compliance with specifications and requirements, and for validating technical, functional, and performance characteristics.

EXERCISE: Data pertaining to a government or military exercise. The data may include both real and simulated data.

SIMULATED: Synthetic data generated by a model to mimic real-world datasets.

origNetworkstring

The originating source network on which this record was created, auto-populated by the system.

Example response

[
  {
    "id": "TRACK-ID",
    "classificationMarking": "U",
    "cntct": "Contact Info",
    "createdAt": "2018-01-01T16:00:00.123Z",
    "createdBy": "some.user",
    "msgTs": "2021-01-01T01:01:01.123456Z",
    "msnId": "msnId",
    "assetNat": "US",
    "asset": "asset",
    "sen": "sen",
    "senQual": "senQual",
    "trkId": "trkId",
    "trkNum": "trkNum",
    "trkStat": "INITIATING",
    "objNat": "NATO",
    "objId": "objId",
    "objType": "WATERCRAFT",
    "objSpec": "LIGHT_TANK",
    "objPlat": "COMBAT_VEHICLE",
    "objAct": "HOLDING",
    "objDescription": "Object description text.",
    "modType": "MASINT",
    "trkItmId": "38f3a71f-4bba-4d58-9765-c1b93212aff1",
    "ts": "2021-06-07T14:17:39.653043Z",
    "trkPtType": "MEASURED",
    "objIdent": "FRIEND",
    "identAmp": "ZOMBIE",
    "env": "LAND",
    "envConf": 1.23,
    "trkConf": 0.67,
    "ecefPos": [
      -1273011.47,
      -48108810.77,
      3979360.49
    ],
    "ecefVel": [
      25.635,
      -1.097,
      57.373
    ],
    "ecefAcc": [
      -0.0265,
      -0.2764,
      -0.1773
    ],
    "lat": 38.8353,
    "lon": -104.8216,
    "alt": 2024.15,
    "spd": 62.9921,
    "grndSpd": 60.23,
    "hdng": 215.7,
    "course": 215.2,
    "wanderAng": 1.23,
    "lco": [
      1.23,
      2.34,
      3.45
    ],
    "lcs": [
      1.23,
      2.34,
      3.45
    ],
    "lcPos": [
      1.23,
      2.34,
      3.45
    ],
    "lcVel": [
      1.23,
      2.34,
      3.45
    ],
    "lcAcc": [
      1.23,
      2.34,
      3.45
    ],
    "eNUVel": [
      1.23,
      2.34,
      3.45
    ],
    "eNUGroundVel": [
      1.23,
      2.34,
      3.45
    ],
    "eNUPos": [
      1.23,
      2.34,
      3.45
    ],
    "eNUAcc": [
      0.0003,
      0.014,
      0.0003
    ],
    "cov": [
      1.1,
      2.2,
      3.3
    ],
    "covReferenceFrame": "ECR/ECEF",
    "errEllp": [
      1.23,
      2.34,
      3.45
    ],
    "vertUnc": 4.56,
    "attitude": [
      10.1,
      0.1,
      1.1
    ],
    "attitudeRate": [
      0.0003,
      1e-7,
      0.00003
    ],
    "srcTyps": [
      "MTI",
      "POI"
    ],
    "srcIds": [
      "f7c70cc8-f9b7-4467-b4ad-3904e360e842",
      "1da3fab000014e3133709830937387405"
    ],
    "callSign": "callSign",
    "multiSource": true,
    "jSeries": "J12.5",
    "strength": 14,
    "m1": 11,
    "m1v": 1,
    "m2": 1234,
    "m2v": 1,
    "m3a": 2636,
    "m3av": 1,
    "tags": [
      "TAG1",
      "TAG2"
    ],
    "contextKeys": [
      "MsnID_DescLabel",
      "msnVer",
      "serVer",
      "velTs",
      "accelTs"
    ],
    "contextValues": [
      "MissionID Descriptive Label text",
      "1",
      "001.9b",
      "2024-06-07T14:17:39.234Z",
      "2024-06-07T14:17:39.123Z"
    ],
    "sourceDL": "AXE",
    "source": "Bluestaq",
    "origin": "THIRD_PARTY_DATASOURCE",
    "dataMode": "TEST",
    "origNetwork": "OPS1"
  }
]

Changes

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

Some revisions have not been checked yet.