---
title: "Update an existing feature by Id with a partial item definition"
method: PATCH
path: "/collections/{collectionId}/items/{featureId}"
tags: ["Transaction"]
---

# Update an existing feature by Id with a partial item definition

`PATCH /collections/{collectionId}/items/{featureId}`

Use this method to update an existing feature. Requires a GeoJSON fragment (containing the fields to be updated) be submitted.

## Headers

- `If-Match` string

## Request body

- PartialItem
  - `stac_version` string
  - `stac_extensions` union[]
    - union
      - string, uri
      - string
  - `id` string — Provider identifier, a unique ID.
  - `bbox` union — Only features that have a geometry that intersects the bounding box are selected. The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (elevation or depth): * Lower left corner, coordinate axis 1 * Lower left corner, coordinate axis 2 * Lower left corner, coordinate axis 3 (optional) * Upper right corner, coordinate axis 1 * Upper right corner, coordinate axis 2 * Upper right corner, coordinate axis 3 (optional) The coordinate reference system of the values is WGS84 longitude/latitude (http://www.opengis.net/def/crs/OGC/1.3/CRS84). For WGS84 longitude/latitude the values are in most cases the sequence of minimum longitude, minimum latitude, maximum longitude and maximum latitude. However, in cases where the box spans the antimeridian the first value (west-most box edge) is larger than the third value (east-most box edge). If a feature has multiple spatial geometry properties, it is the decision of the server whether only a single spatial geometry property is used to determine the extent or all relevant geometries. Example: The bounding box of the New Zealand Exclusive Economic Zone in WGS 84 (from 160.6°E to 170°W and from 55.95°S to 25.89°S) would be represented in JSON as `[160.6, -55.95, -170, -25.89]` and in a query as `bbox=160.6,-55.95,-170,-25.89`.
    - number[]
    - number[]
  - `geometry` union
    - PointGeoJSON
      - `type` 'Point', required
      - `coordinates` number[], required
    - MultipointGeoJSON
      - `type` 'MultiPoint', required
      - `coordinates` array[], required
        - number[]
    - LinestringGeoJSON
      - `type` 'LineString', required
      - `coordinates` array[], required
        - number[]
    - MultilinestringGeoJSON
      - `type` 'MultiLineString', required
      - `coordinates` array[], required
        - array[]
          - number[]
    - PolygonGeoJSON
      - `type` 'Polygon', required
      - `coordinates` array[], required
        - array[]
          - number[]
    - MultipolygonGeoJSON
      - `type` 'MultiPolygon', required
      - `coordinates` array[], required
        - array[]
          - array[]
            - number[]
    - GeometrycollectionGeoJSON
      - `type` 'GeometryCollection', required
      - `geometries` GeometryGeoJSON[], required
  - `type` 'Feature' — The GeoJSON type
  - `properties` PartialItemProperties — allows for partial collections of metadata fields
    - `datetime` string, date-time, nullable — The searchable date and time of the assets, in UTC. It is formatted according to [RFC 3339, section 5.6](https://tools.ietf.org/html/rfc3339#section-5.6). `null` is allowed, but requires `start_datetime` and `end_datetime` from common metadata to be set.
  - `links` Link[]
    - `href` string, uri, required — The location of the resource
    - `rel` string, required — Relation type of the link
    - `type` string — The media type of the resource
    - `title` string — Title of the resource
    - `method` 'GET' | 'POST' — Specifies the HTTP method that the resource expects
    - `headers` object — Object key values pairs they map to headers
    - `body` object — For POST requests, the resource can specify the HTTP body as a JSON object.
    - `merge` boolean — This is only valid when the server is responding to POST request. If merge is true, the client is expected to merge the body value into the current request body before following the link. This avoids passing large post bodies back and forth when following links, particularly for navigating pages through the `POST /search` endpoint. NOTE: To support form encoding it is expected that a client be able to merge in the key value pairs specified as JSON `{"next": "token"}` will become `&next=token`.
  - `assets` Assets

## Response `204`

Status of the update request.

## Other responses

- `400` — The request was malformed or semantically invalid
- `404` — The requested URI was not found.
- `500` — A server error occurred.
- `default` — An error occurred.

---

[API](https://skmtc.net/radiantearth/apis/stac-api.md) · [All operations](https://skmtc.net/radiantearth/apis/stac-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/radiantearth/stac-api/versions/11248209cf8c/schema)
