---
title: "POST /udl/poi"
method: POST
path: "/udl/poi"
tags: ["Report and Activity"]
---

# POST /udl/poi

`POST /udl/poi`

## Request

- Base URL: `https://unifieddatalibrary.com`
- URL: `https://unifieddatalibrary.com/udl/poi`
- Auth: none declared

Service operation to take a single POI as a POST body and ingest into the database. A specific role is required to perform this service operation. Please contact the UDL team for assistance.

## Request body

- POIIngest: A Point of Interest is loosely based on the MITRE CoT (Cursor on Target) schema (https://www.mitre.org/publications/technical-papers/cursorontarget-message-router-users-guide) and provides a simple way to specify a point on the earth for a variety of purposes (tasking, targeting, etc).
  - `id` string: Unique identifier of the record, auto-generated by the system.
  - `classificationMarking` string, required: Classification marking of the data in IC/CAPCO Portion-marked format.
  - `pps` string: The purpose of this Point of Interest record (e.g., BDA, EQPT, EVENT, GEOL, HZRD, PPLI, SHOTBOX, SURVL, TGT, TSK, WTHR).
  - `msnid` string: Optional mission ID related to the POI.
  - `pri` integer: Priority of the POI target object.
  - `trkid` string: Optional ID of an associated track related to the POI object, if applicable. This track ID should correlate the Point of Interest to a track from the Track service.
  - `idWeatherReport` string[]: Array of one or more unique identifiers of weather records associated with this POI. Each element in array must be 36 characters or less in length.
  - `poiid` string, required: Identifier of the actual Point of Interest or target object, which should remain the same on subsequent POI records of the same Point of Interest.
  - `name` string, required: Name of the POI target object.
  - `desc` string: Description of the POI target object.
  - `spec` string: Specific point/object type (e.g., 82/GROUND, LIGHT_TANK, etc.).
  - `ident` string: Estimated identity of the point/object (e.g., FRIEND, HOSTILE, SUSPECT, ASSUMED_FRIEND, UNKNOWN, etc.).
  - `env` string: POI environment type (e.g., LAND, SURFACE, SUBSURFACE, UNKNOWN, etc.).
  - `plat` string: POI/object platform type (e.g., 14/GROUND, COMBAT_VEHICLE, etc.).
  - `activity` string: The activity in which the POI subject 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. 30/LAND) or as the descriptive enumeration (e.g. TRAINING), which are equivalent.
  - `ts` string, date-time, required: Activity/POI timestamp in ISO8601 UTC format.
  - `start` string, date-time: Start time of event validity (optional), in ISO8601 UTC format.
  - `stale` string, date-time: Stale timestamp (optional), in ISO8601 UTC format.
  - `how` string: How the event point was generated, in CoT object heirarchy notation (optional, CoT).
  - `type` string: Event type, in CoT object heirarchy notation (optional, CoT).
  - `lat` number, double: WGS-84 latitude of the POI, in degrees (+N, -S), -90 to 90.
  - `lon` number, double: WGS-84 longitude of the POI, in degrees (+E, -W), -180 to 180.
  - `alt` number, double: Point height above ellipsoid (WGS-84), in meters.
  - `az` number, double: Target object pointing azimuth angle, in degrees (for target with sensing or emitting capability).
  - `el` number, double: Target object pointing elevation angle, in degrees (for target with sensing or emitting capability).
  - `le` number, double: Height above lat/lon point, in meters (1-sigma, if representing linear error).
  - `ce` number, double: Radius of circular area about lat/lon point, in meters (1-sigma, if representing error).
  - `elle` number[]: Elliptical area about the lat/lon point, specified as [semi-major axis (m), semi-minor axis (m), orientation (deg) off true North at POI].
  - `cntct` string: 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.
  - `conf` number, double: POI confidence estimate (not standardized, but typically a value between 0 and 1, with 0 indicating lowest confidence.
  - `urls` string[]: List of URLs to before/after images of this Point of Interest entity.
  - `area` string: Optional geographical region or polygon (lat/lon pairs) of the area surrounding the Point of Interest as projected on the ground.
  - `atext` string: Geographical region or polygon (lon/lat pairs), as depicted by the Well-Known Text representation of the geometry/geography, of the image as projected on the ground. WKT reference: https://www.opengeospatial.org/standards/wkt-crs. Ignored if included with a POST or PUT request that also specifies a valid 'area' field.
  - `agjson` string: Geographical region or polygon (lat/lon pairs), as depicted by the GeoJSON representation of the geometry/geography, of the image as projected on the ground. GeoJSON Reference: https://geojson.org/. Ignored if included with a POST or PUT request that also specifies a valid 'area' or 'atext' field.
  - `atype` string: Type of region as projected on the ground.
  - `andims` integer: Number of dimensions of the geometry depicted by region.
  - `asrid` integer: Geographical spatial_ref_sys for region.
  - `createdAt` string, date-time: Time the row was created in the database.
  - `createdBy` string: Application user who created the row in the database.
  - `sourceDL` string: 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.
  - `source` string, required: Source of the data.
  - `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.
  - `origin` string: 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.
  - `groups` string[]: Optional array of groups used when a POI msg originates from a TAK server. Each group must be no longer than 256 characters. Groups identify a set of users targeted by the cot/poi msg.
  - `asset` string: ID/name of the platform or entity providing the POI data.
  - `tags` string[]: 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.
  - `srcTyps` string[]: Array of UDL record types (GROUNDIMAGE, RFOBS) that are related to the determination of this Point of Interest. See the associated 'srcIds' array for the record UUIDs, positionally corresponding to the record types in this array. The 'srcTyps' and 'srcIds' arrays must match in size.
  - `srcIds` string[]: Array of UUIDs of the UDL data records that are related to the determination of this Point of Interest. See the associated 'srcTyps' array for the specific types of data, positionally corresponding to the UUIDs in this array. 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/rfobservation/{uuid}).
  - `beNumber` string: The Basic Encyclopedia Number associated with the POI, if applicable.
  - `orientation` number, double: The orientation of a vehicle, platform or other entity described by the POI. The orientation is defined as the pointing direction of the front/nose of the object in degrees clockwise from true North at the object point.
  - `origNetwork` string: The originating source network on which this record was created, auto-populated by the system.
  - `transactionId` string: Optional identifier to track a commercial or marketplace transaction executed to produce this data.

## Response `201`

Success

## Other responses

- `400`: Bad Request
- `401`: Invalid/Missing User Credentials
- `403`: User Is Not Authorized
- `405`: Method Not Allowed
- `415`: MediaType Unsupported
- `429`: Rate of Requests Exceeds Allowed Limit
- `500`: Internal Server Error

## Changes

> 12 revisions in range; 1 could not be searched.

- **2025-09-26** `45631f9bb3f0`: 1 info
  - the request optional property `area` became write-only
- **2025-04-16** `75f764c843a9`: 1 breaking, 2 info
  - request body became required
  - api operation id `create_88` removed and replaced with ``
  - the endpoint scheme security `BasicAuth` was removed from the API

[Operation history](https://skmtc.dev/bluestaq/apis/unified-data-library-services-api/changes/udl/poi/post.md)

---

[API](https://skmtc.dev/bluestaq/apis/unified-data-library-services-api.md) - [All operations](https://skmtc.dev/bluestaq/apis/unified-data-library-services-api/llms.txt) - [OpenAPI document](https://skmtc.dev/bluestaq/apis/unified-data-library-services-api/revisions/bd17bc53681e?raw)
