> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cognite.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Cognite API changelog

> Track all notable changes, updates, and deprecations for the Cognite Data Fusion (CDF) API v1, organized by release date and API area.

export const project_0 = undefined

export const documentId_0 = undefined

export const pageNumber_0 = undefined

<Note>This is a single changelog for all published Cognite Data Fusion API bundles (stable, beta, and alpha). Entries are tagged by release channel.</Note>

<Update tags={["Stable", "Beta", "Alpha"]} label="2026-05-06" description="Cognite Functions — 2026-05-06">
  ### Cognite Functions

  **Added**

  * Added `functionType` as a get-only field on Cognite Functions so you can tell `classic` functions from `functionApp` functions.
</Update>

<Update tags={["Beta"]} label="2026-05-05" description="Signals API — 2026-05-05">
  ### Signals API

  **Changed**

  * The Signals API is now available in the beta API (`cdf-version: beta`). It was previously available only under the alpha API reference.
</Update>

<Update tags={["Stable", "Beta", "Alpha"]} label="2026-05-05" description="Seismic API">
  ### Seismic API

  **Removed**

  * The Seismic API has been removed.
</Update>

<Update tags={["Stable"]} label="2026-04-15" description="Data Modeling API — 2026-04-15">
  ### Data Modeling API

  **Added**

  * New debug notice `intractableCursorWithNestedFilter` (grade D, warning): emitted when a query supplies both a cursor and a nested filter on the same result set expression. The additional join required by the nested filter can prevent efficient index-backed pagination.
</Update>

<Update tags={["Stable"]} label="2026-04-10" description="Cognite Functions — 2026-04-10">
  ### Cognite Functions

  **Added**

  * Added functionsAcl:RUN action, which grants permission to call functions without the ability to create or delete them. functionsAcl:WRITE continues to include call access in addition to create and delete permissions.
</Update>

<Update tags={["Stable"]} label="2026-03-25" description="Streams and Records API — 2026-03-25">
  ### Streams and Records API

  **Changed**

  Stricter validation in aggregate records request:

  * Aggregate identifiers can no longer contain the `.` character.
  * Values `_count` and `_bucket_count` can no longer be used as aggregate identifiers.
  * Duplicate aggregate identifiers within the aggregate tree are no longer allowed.
</Update>

<Update tags={["Stable"]} label="2026-03-24" description="Data Modeling API — 2026-03-24">
  ### Data Modeling API

  **Changed**

  * Added `EnumProperty` to `RecordContainerPropertyTypeDefinition`, enabling enum properties in containers with `usedFor` set to `record`.
  * Updated the supported storage types description for record container properties to include `enum`.
</Update>

<Update tags={["Stable"]} label="2026-03-23" description="Streams and Records API — 2026-03-23">
  ### Streams and Records API

  **Changed**

  * Fixed maximum number of active streams created from `BasicLiveData` template to match what we actually allow.
</Update>

<Update tags={["Beta"]} label="2026-03-20" description="Data Workflows — 2026-03-20">
  ### Data Workflows

  **Added**

  * Added new `functionApp` task type, enabling workflows to invoke HTTP endpoints on Cognite Function Apps. Supports built-in system paths (e.g. `/__health__`, `/__routes__`) and user-defined routes.
</Update>

<Update tags={["Stable"]} label="2026-03-17" description="Transformations — 2026-03-17">
  ### Transformations

  **Added**

  Added `autoCreate` field to `ViewDataSource` and `DataModelSource` destination configurations for transformations. The `autoCreate` field accepts an `AutoCreateOptions` object with three boolean properties:

  * `startNodes`: Controls automatic creation of missing start nodes when creating edges (default: true)
  * `endNodes`: Controls automatic creation of missing end nodes when creating edges (default: true)
  * `directRelations`: Controls automatic creation of missing direct relation targets (default: true) When set to false, the transformation will validate node/relation references and return a 400 error if referenced instances do not exist.
</Update>

<Update tags={["Beta"]} label="2026-03-12" description="3D API — 2026-03-12">
  ### 3D API

  **Deprecated**

  * Deprecated `ContextualizeImage360AnnotationBody` and `DeleteContextualizedImage360AnnotationsBody` request bodies for the 360 image contextualization endpoints. These will be removed before the endpoints are released. Use the RC (Release Candidate) variants (`ContextualizeImage360AnnotationRCBody` and `DeleteContextualizedImage360AnnotationsRCBody`) instead.
</Update>

<Update tags={["Beta"]} label="2026-03-09" description="Agent APIs — 2026-03-09">
  ### Agent APIs

  **Added**

  * New OpenAI models: `azure/gpt-5.2`, `azure/gpt-5.4`

  Note: Availability of models may differ between the chosen cloud provider and region of the CDF cluster.
</Update>

<Update tags={["Beta"]} label="2026-03-06" description="Agent APIs — 2026-03-06">
  ### Agent APIs

  **Changed**

  * Changed the default Query Knowledge Graph (QKG) Tool strategy from v1 to v2.
</Update>

<Update tags={["Beta"]} label="2026-03-04" description="Agent APIs — 2026-03-04">
  ### Agent APIs

  **Added**

  * Added `stream` parameter to `AgentSessionRequest` to enable progress message streaming.
</Update>

<Update tags={["Stable"]} label="2026-01-20" description="Data Modeling API — 2026-01-20">
  ### Data Modeling API

  **Added**

  Added 3 new endpoints to trigger revalidation of failed constraints or indexes.

  * `/models/containers/constraints/retry` for container-level constraints (`requires`, `uniqueness`)
  * `/models/containers/indexes/retry` for indexes
  * `/models/containers/properties/retry` for property-level constraints (`nullable`, `maxListSize`, `maxTextSize`)
</Update>

<Update tags={["Stable"]} label="2026-01-15" description="Data Workflows — 2026-01-15">
  ### Data Workflows

  **Added**

  * Added `maxConcurrentExecutions` field to workflows to limit concurrent executions.
</Update>

<Update tags={["Stable"]} label="2026-01-13" description="Hosted Extractors — 2026-01-13">
  ### Hosted Extractors

  **Added**

  * Added support for client credentials authentication to eventhub sources.
</Update>

<Update tags={["Beta"]} label="2026-01-06" description="3D API — 2026-01-06">
  ### 3D API

  **Added**

  * Added (beta) documentation for a new `/3d/contextualization/cad` endpoint, for contextualization of CAD nodes and asset instanceIds in DataModelOnly projects. This endpoint is preferred over the legacy `/3d/models/{modelId}/revisions/{revisionId}/mappings` endpoint.
</Update>

<Update tags={["Stable"]} label="2025-12-06" description="Data Workflows — 2025-12-06">
  ### Data Workflows

  **Added**

  * Added `parentTaskExternalId` field to `TaskExecution` schema to identify the parent task for tasks within dynamic tasks or subworkflows. The field is null for top-level tasks.
</Update>

<Update tags={["Beta"]} label="2025-12-05" description="3D API — 2025-12-05">
  ### 3D API

  **Added**

  * Added (beta) documentation for the optional `pipelineConfiguration` property for the 3D API create revision endpoint, for point cloud processing in Hybrid CDF projects. The settings within that property controls opt-in point cloud processing steps such as 360-images extraction, point cloud classification and point cloud volume suggestions.
</Update>

<Update tags={["Stable"]} label="2025-11-25" description="Data Workflows — 2025-11-25">
  ### Data Workflows

  **Added**

  * Added `/workflows/triggers/{triggerExternalId}/pause` endpoint to pause triggers. A paused trigger will not create new workflow executions until resumed.
  * Added `/workflows/triggers/{triggerExternalId}/resume` endpoint to resume a previously paused trigger.
</Update>

<Update tags={["Stable"]} label="2025-11-28" description="Data Modeling API — 2025-11-28">
  ### Data Modeling API

  **Added**

  * Added `record` value that can be specified for the container's `usedFor` property
</Update>

<Update tags={["Beta"]} label="2025-11-26" description="Agent APIs — 2025-11-26">
  ### Agent APIs

  **Added**

  * Within Agent CRUD requests, under the agent objects `tools` section, a description of each tool is now rendered above the selected `type` that explains what the tool is about.
</Update>

<Update tags={["Beta"]} label="2025-11-26" description="3D API — 2025-11-26">
  ### 3D API

  **Added**

  * Added more detailed documentation for the OptimizerJob type in the 3d/jobs endpoint, especially configuration for Point cloud processing. This will be available as Beta documentation.
</Update>

<Update tags={["Stable"]} label="2025-11-21" description="Hosted extractors API — 2025-11-21">
  ### Hosted extractors API

  **Added**

  Added `authCertificate` to REST sources.

  **Deprecated**

  * Deprecated eventhub `keyName` and `keyValue` in favor of `authentication`.`username` and `password` with basic authentication replaces the old fields. This is to make room for other forms of authentication.
</Update>

<Update tags={["Beta"]} label="2025-11-20" description="Agent APIs — 2025-11-20">
  ### Agent APIs

  **Added**

  * Added `runtimeVersion` field to agent creation, update, and response schemas. The runtime version defines the complete execution environment including system prompt, available tools, and core features. Defaults to version 1.0.2.
  * Added `examineDataSemantically`(alpha) to the list of available tools for agents.
  * Added new AWS model:`aws/claude-4.5-sonnet`.
</Update>

<Update tags={["Stable"]} label="2025-11-18" description="Simulator integration API — 2025-11-18">
  ### Simulator integration API

  **Added**

  * Added `kind` field to simulator routines and routine revisions (beta) to classify routines by size and complexity; use `long` for routines that require more inputs, outputs, and script steps than usual.
  * Added `kind` filter to the simulator routines list endpoint (`POST /simulators/routines/list`) and routine revisions list endpoint (`POST /simulators/routines/revisions/list`), allowing filtering of routines by kind. In the revisions listing (`POST /simulators/routines/revisions/list`),`includeAllFields=true` returns all fields but omits 'long' routines and cannot be combined with the `kind` filter.
</Update>

<Update tags={["Stable"]} label="2025-11-13" description="3D API — 2025-11-13">
  ### 3D API

  **Added**

  Added 3D API endpoints to create and delete image 360 contextualization connections to CogniteAsset instances. These endpoints are only available in DataModelOnly projects. Currently available in beta

  * `POST /3d/contextualization/image360` define image360 contextualizations towards assets
  * `POST /3d/contextualization/image360/delete` remove image360 contextualizations towards assets
</Update>

<Update tags={["Stable"]} label="2025-11-11" description="Streams and Records API — 2025-11-11">
  ### Streams and Records API

  **Changed**

  * Changed format of partial success response for record ingest, upsert and delete operations.
</Update>

<Update tags={["Stable"]} label="2025-11-06" description="Simulator integration API — 2025-11-06">
  ### Simulator integration API

  * Added `simulatorExternalIds` filter to the simulator model revisions list endpoint (`POST /simulators/models/revisions/list`), allowing filtering of model revisions by simulator external IDs.
</Update>

<Update tags={["Stable"]} label="2025-11-04" description="Streams and Records API — 2025-11-04">
  ### Streams and Records API

  **Added**

  The Streams and Records API is now in General Availability (GA).

  The following endpoints are now available:

  * `POST /streams` to create a stream.
  * `DELETE /streams/{streamId}` to delete a stream.
  * `GET /streams` to list all streams.
  * `GET /streams/{streamId}` to retrieve a specific stream.
  * `POST /streams/{streamId}/records` to create new records into a stream.
  * `POST /streams/{streamId}/records/upsert` to create new or update existing records in a mutable stream.
  * `POST /streams/{streamId}/records/delete` to delete records in a mutable stream.
  * `POST /streams/{streamId}/records/filter` to retrieve records from a stream.
  * `POST /streams/{streamId}/records/sync` to sync records from a stream.
  * `POST /streams/{streamId}/records/aggregate` to aggregate record data from a stream.
</Update>

<Update tags={["Stable"]} label="2025-10-29" description="Simulator integration API — 2025-10-29">
  ### Simulator integration API

  **Added**

  * Added `simulatorExternalIds` filter to the simulator routines list endpoint (`POST /simulators/routines/list`), allowing filtering of routines by simulator external IDs.
  * Added support for simulator routines aggregation (`POST /simulators/routines/aggregate`)
</Update>

<Update tags={["Stable"]} label="2025-10-07" description="Agents API — 2025-10-07">
  ### Agents API

  **Added**

  * Added support for interactive message types in the Agent API, enabling bidirectional communication between agents and clients. Agents can now request clients to execute actions, and clients can respond with action messages containing the results.
</Update>

<Update tags={["Stable"]} label="2025-10-03" description="Cognite Functions — 2025-10-03">
  ### Cognite Functions

  **Removed**

  * Python 3.9 (py39) is no longer supported as a runtime argument for Cognite functions.
</Update>

<Update tags={["Beta"]} label="2025-10-02" description="Agent APIs — 2025-10-02">
  ### Agent APIs

  * Gemini 2.0 Flash and Claude 3 Haiku have been retired as model options.
</Update>

<Update tags={["Stable"]} label="2025-10-01" description="Data Modeling API — 2025-10-01">
  ### Data Modeling API

  **Added**

  * Added `state` field to constraints returned from the service, describing whether the constraint is validated or failed.
  * Added `state` field to indexes returned from the service, describing whether the index is successfully built, or if building failed.
  * Added fields `maxListSize` and `maxTextSize` to the `constraintState` field in properties returned from the service, describing whether the associated property-level constraints are valdiated or failed.
</Update>

<Update tags={["Beta"]} label="2025-09-29" description="Agent APIs — 2025-09-29">
  ### Agent APIs

  **Deprecated**

  `agentId` in the `/ai/agents/chat` endpoint has been deprecated in favor of `agentExternalId`. `agentId` will be retired from 2025-11-29.

  **Removed**

  * Gemini 1.5 Pro and Gemini 1.5 Flash have been retired as model options.
</Update>

<Update tags={["Stable"]} label="2025-09-26" description="Time Series API — 2025-09-26">
  ### Time Series API

  **Changed**

  * Increased the maximum length of string data points from 255 characters to 1023 bytes (UTF-8 encoded).
</Update>

<Update tags={["Stable"]} label="2025-09-09" description="Data Modeling API — 2025-09-09">
  ### Data Modeling API

  **Added**

  * Added field `constraintState` to properties returned from the service, describing the state of any property-level constraints. Currently includes the field `nullability` which tracks the state of any non-null constraint.
</Update>

<Update tags={["Stable"]} label="2025-09-08" description="Default runtime in Cognite functions — 2025-09-08">
  ### Default runtime in Cognite functions

  **Changed**

  * Default Python runtime in Cognite functions has been updated from Python 3.11 (py311) to Python 3.12 (py312).
</Update>

<Update tags={["Stable"]} label="2025-09-02" description="Data Modeling API — 2025-09-02">
  ### Data Modeling API

  **Added**

  * Added a `debug` parameter to the `/models/instances/query`, `/models/instances/sync`, and `/models/instances/list` endpoints.
  * The feature returns `notices` providing insights into query execution, which can be used for performance analysis and optimization.
</Update>

<Update tags={["Stable"]} label="2025-08-26" description="Data sets API — 2025-08-26">
  ### Data sets API

  **Fixed**

  * Add length constraints on `name` and `description` fields for the `POST /datasets/update` endpoint to disallow empty strings.
</Update>

<Update tags={["Stable"]} label="2025-09-02" description="3D API — 2025-09-02">
  ### 3D API

  **Added**

  Added 3D API endpoints to create and delete point cloud volume contextualization connections to CogniteAsset instances. These endpoints are only available in DataModelOnly projects. Currently available in beta.

  * `POST /3d/contextualization/pointcloud`
  * `POST /3d/contextualization/pointcloud/delete`
</Update>

<Update tags={["Beta"]} label="2025-08-28" description="Agent APIs — 2025-08-28">
  ### Agent APIs

  **Added**

  * New OpenAI models: `azure/o3`, `azure/o4-mini`, `azure/gpt-4.1`, `azure/gpt-4.1-nano`, `azure/gpt-4.1-mini`, `azure/gpt-5`, `azure/gpt-5-mini`, `azure/gpt-5-nano`
  * New Gemini models: `gcp/gemini-2.5-pro`, `gcp/gemini-2.5-flash`
  * New AWS models: `aws/claude-4-sonnet`, `aws/claude-4-opus`, `aws/claude-4.1-opus`

  Note: Availability of models may differ between the chosen cloud provider and region of the CDF cluster.

  **Improved**

  * Various improvements to the Agent APIs after feedback from the initial alpha release. The Agent APIs (`/ai/agents`) to programmatically build and interact with Atlas agents are now in beta state.
</Update>

<Update tags={["Stable"]} label="2025-08-29" description="Simulator integration API — 2025-08-29">
  ### Simulator integration API

  **Changed**

  * Introduced limits for number of simulator nodes and edges in a simulator model revision flowsheet, as well as number of properties per node. (Alpha feature)
  * Support multiple flowsheets in a simulator model revision data. (Alpha feature)
</Update>

<Update tags={["Stable"]} label="2025-09-02" description="IAM (Identity and access management) — 2025-09-02">
  ### IAM (Identity and access management)

  **Added**

  The following endpoints (all under [https://auth.cognite.com](https://auth.cognite.com/)) are added:

  * `/api/v1/orgs/{org}/principals/{principal}/sessions`: List login sessions for a user principal in an organization.
  * `/api/v1/orgs/{org}/principals/{principal}/sessions/revoke`: Revoke one or more login sessions for a user principal in an organization.
</Update>

<Update tags={["Stable"]} label="2025-08-20" description="3D API — 2025-08-20">
  ### 3D API

  **Added**

  * Added support in the create 3D asset mappings endpoint for creating asset mappings for 3D CAD `nodeId` and CogniteAsset `assetInstanceId` pairs. This creates connections between instances in data modelling and 3D CAD nodes. Only available in Hybrid and DMSFirst CDF projects.
  * Added support in the list 3D asset mappings endpoint for listing `assetInstanceId` based mappings, enabled with the `getDmsInstances=true` parameter.
</Update>

<Update tags={["Stable"]} label="2025-07-21" description="Data Modeling API — 2025-07-21">
  ### Data Modeling API

  **Added**

  Added `mode` to table expressions in the `/sync` endpoint, to select between sync modes:

  * `onePhase` (default, current behavior): All instances are returned while following the cursor
  * `twoPhase`: Existing instances are returned first, then new instances are returned by following the cursor
  * `noBackfill`: Existing instances are not returned, only new instances are yielded by following the cursor.
</Update>

<Update tags={["Stable"]} label="2025-07-18" description="Data Modeling API — 2025-07-18">
  ### Data Modeling API

  **Added**

  * Added `backfillSort` to table expressions in the `/sync` endpoint, to optionally specify how to sort existing instances with `syncMode: twoPhase`.
  * Add `timezone` property to the `/trigger` endpoint.
</Update>

<Update tags={["Stable"]} label="2025-07-04" description="IAM (Identity and access management) — 2025-07-04">
  ### IAM (Identity and access management)

  **Added**

  * Added `attributes` to group creation in the POST `/api/v1/projects/:project/groups` endpoint to set attributes for groups.
</Update>

<Update tags={["Stable"]} label="2025-06-30" description="Data Modeling API — 2025-06-30">
  ### Data Modeling API

  **Added**

  * Add `allowExpiredCursorsAndAcceptMissedDeletes` flag to the `/sync` endpoint.
</Update>

<Update tags={["Stable"]} label="2025-05-21" description="Multiple API fixes for Agents and Documents AI">
  ### Agents API

  **Fixed**

  * Removed the duplicate `/api/v1/projects/{projectName}` prefix from all agents endpoints.

  ### Documents AI API

  **Fixed**

  * Removed the duplicate `/api/v1/projects/{projectName}` prefix from all documents AI endpoints.
</Update>

<Update tags={["Stable"]} label="2025-05-26" description="Simulator integration API request size limits">
  ### Simulator integration API

  **Changed**

  * Introduced request body size limits for the simulator integration API endpoints.
    * `POST /simulators/routines/revisions` to create simulator routines revisions: 50KB
    * `POST /simulators/run` to run a simulation: 50KB
    * In addition, the simulator connector won't be able to send more than 100KB of data in a single run. See the [Simulator integration API documentation](/api-reference/concepts/20230101/simulators) for more details.
</Update>

<Update tags={["Stable"]} label="2025-05-21" description="Simulator integration API accepts empty strings for simulation values">
  ### Simulator integration API

  **Changed**

  * The API now accepts empty strings for simulation values (inputs and outputs). Previous restriction on "STRING" values to have a minimum length of 1 character has been removed.
</Update>

<Update tags={["Stable"]} label="2025-05-15" description="3D API bounding box filtering support">
  ### 3D API

  **Added**

  * The 3D API now supports filtering nodes within a boundingbox in dm-only projects.
    * The following endpoint is now available:
      * `POST /3d/nodes/list` to filter nodes within an area definition.
</Update>

<Update tags={["Stable"]} label="2025-05-09" description="3D Jobs API result and rejection endpoints">
  ### 3D API

  **Added**

  * The 3D Jobs API is extended to include the job result and job result rejections endpoints.
    * The following endpoints are now available:
      * `POST /3d/job/results/list` to list the results of a job
      * `POST /3d/job/result/rejections` to add or remove job result rejections
      * `POST /3d/job/result/rejections/list` to list job result rejections
</Update>

<Update tags={["Stable"]} label="2025-04-30" description="3D Jobs API available in DM-Only Projects">
  ### 3D API

  **Added**

  * The 3D Jobs API is now available in DM-Only Projects
    * The following endpoints are now available:
      * `POST /3d/jobs` to create a 3d job
      * `POST /3d/jobs/list` to list jobs
      * `POST /3d/jobs/delete` to delete jobs
</Update>

<Update tags={["Stable"]} label="2025-04-23" description="Entity Matching request limits enforcement">
  ### Entity Matching

  **Changed**

  * Enforcement of request limits.
    * `POST /context/entitymatching/byids` can retrieve max 1000 models per request.
    * `POST /context/entitymatching/update` can update max 1000 models per request.
    * `POST /context/entitymatching/delete` can delete max 1000 models per request.
</Update>

<Update tags={["Alpha"]} label="2025-03-25" description="Agents API availability in Alpha">
  ### Agents API

  **Added**

  * The Agents API is now available in Alpha.
    * The following endpoints are now available:
      * `POST /ai/agents` to create or update one or more agents
      * `GET /ai/agents` to list all agents
      * `POST /ai/agents/ids` to retrieve one or more agents by externalId
      * `POST /ai/agents/delete` to delete one or more agents by externalId
      * `POST /ai/agents/chat` to send messages new messages and receive an answer to a specific agent
</Update>

<Update tags={["Stable"]} label="2025-03-25" description="Documents AI new field for specifying language">
  ### Documents AI

  **Added**

  * A new field for specifying the language that the answer should be in, added to Documents Summarize endpoint (`/ai/tools/documents/summarize`).
</Update>

<Update tags={["Stable"]} label="2025-03-13" description="Documents API filtering on space and externalId">
  ### Documents API

  **Added**

  * Added ability to filter on the `space` and `externalId` properties of an `instanceId` object.
</Update>

<Update tags={["Stable"]} label="2025-03-12" description="Time Series API new aggregates">
  ### Time Series API

  **Added**

  * New aggregates `maxDatapoint` and `minDatapoint`, that gives back both the value and the timestamp of the maximum/minimum data point.
</Update>

<Update tags={["Stable"]} label="2025-02-17" description="PostgreSQL Gateway API GA">
  ### PostgreSQL Gateway API

  **Added**

  * The PostgreSQL Gateway API is now in General Availability (GA).
    * The following endpoints are now available:
      * `POST /postgresgateway` to create postgres users.
      * `POST /postgresgateway/delete` to delete postgres users.
      * `POST /postgresgateway/list` to filter postgres users.
      * `GET /postgresgateway` to list postgres users.
      * `POST /postgresgateway/byids` to retrieve postgres users by their username.
      * `POST /postgresgateway/update` to update postgres users.
      * `POST /postgresgateway/tables/{username}` to create postgres foreign tables.
      * `POST /postgresgateway/tables/{username}/delete` to delete postgres foreign tables.
      * `GET /postgresgateway/tables/{username}` to list postgres foreign tables.
      * `POST /postgresgateway/tables/{username}/byids` to retrieve postgres foreign tables by name.
</Update>

<Update tags={["Stable"]} label="2025-02-15" description="Principals API GA">
  ### Principals API

  **Added**

  * The Principals API is now generally available.

  **Deprecated**

  * The User profiles API is deprecated in favor of the Principals API, which offers a superset of the functionality.
    The User profiles API will be removed in a future release.
</Update>

<Update tags={["Stable"]} label="2025-01-20" description="Hosted Extractors API clientCredentials auth">
  ### Hosted Extractors API

  **Added**

  * Added support for `clientCredentials` auth to kafka sources.
</Update>

<Update tags={["Stable"]} label="2024-12-03" description="SAP Writeback API GA">
  ### SAP Writeback API

  **Added**

  * SAP writeback API reaches General Availability (GA).
    * The following endpoints are now available:
      * `GET /writeback/sap/instances` to list SAP instance destinations
      * `POST /writeback/sap/instances` to create SAP instance destinations
      * `POST /writeback/sap/instances/delete` to delete SAP instance destinations
      * `POST /writeback/sap/instances/byids` to retrieve SAP instance destinations by externalId
      * `GET /writeback/sap/endpoints` to list SAP endpoint destinations
      * `POST /writeback/sap/endpoints` to create SAP endpoint destinations
      * `POST /writeback/sap/endpoints/delete` to delete SAP endpoint destinations
      * `POST /writeback/sap/endpoints/byids` to retrieve SAP instance destinations by externalId
      * `POST /writeback/sap/endpoints/verify` to verify connectivity between CDF and the SAP endpoint destination
      * `GET /writeback/sap/mappings` to list schema mappings
      * `POST /writeback/sap/mappings` to create schema mappings
      * `POST /writeback/sap/mappings/delete` to delete schema mappings
      * `POST /writeback/sap/mappings/byids` to retrieve schema mappings destinations by externalId
      * `GET /writeback/sap/requests` to list writeback requests
      * `POST /writeback/sap/requests` to create writeback requests. Maximum concurrent limit of 50 requests per CDF project.
      * `POST /writeback/sap/requests/byids` to retrieve writeback requests by externalId
</Update>

<Update tags={["Stable"]} label="2024-11-19" description="Simulator integration API GA">
  ### Hosted Extractors API

  **Added**

  * `REST` and `EventHub` sources and jobs are now in GA.
</Update>

<Update tags={["Stable"]} label="2024-11-14" description="User profiles organization principals">
  ### User profiles

  **Added**

  * Organization principals: get calling principal's profile

  **Deprecated**

  * `GET /api/v1/{projectName}/profiles/me` is deprecated in favor of the new endpoint.
</Update>

<Update tags={["Stable"]} label="2024-11-12" description="Organizations and Projects updated">
  ### Organizations and Projects

  **Updated**

  * `GET /api/v1/orgs/{org}/projects?includeAdminProperties=true` now includes `state` and `deletionTime`
</Update>

<Update tags={["Beta"]} label="2024-10-22" description="Hosted Extractors API stabilization">
  ### Hosted Extractors API

  **Added**

  * Stabilized the API for `Sources`, `Mappings`, `Destinations` and `Jobs`, for MQTT and Kafka extractors.
  * Promote Rest and EventHub extractors to public beta.
  * Support data models in hosted extractors.
</Update>

<Update tags={["Stable"]} label="2024-10-14" description="AWS Cognito support">
  ### AWS Cognito support

  **Added**

  * Support creating organization with AWS Cognito as IdP.
    * `POST /api/v1/orgs/{orgId}/orgs` can be called to create organization with AWS Cognito as IdP.
</Update>

<Update tags={["Stable"]} label="2024-10-11" description="Organizations and Projects added">
  ### Organizations and Projects

  **Added**

  * Allow non-admin users to list all projects in an organization.
    * `GET /api/v1/orgs/{orgId}/projects` can be called by all users of an organization.
  * Include `apiUrl` when listing projects in an organization.
    * `GET /api/v1/orgs/{orgId}/projects` will include `apiUrl` for each project.
</Update>

<Update tags={["Stable"]} label="2024-09-31" description="Time Series API managed by Data modeling">
  ### Time Series API

  **Added**

  * Introduced support for time series managed by Data modeling in data point subscriptions.
    * `GET subscriptions/members` can contain members with `instanceId`.
    * `POST subscriptions` can be used to create subscriptions with an defined set of instance ids.
    * `POST subscriptions/update` can be used to add/remove/set the instance id time series members.
</Update>

<Update tags={["Stable"]} label="2024-09-19" description="Contextualization / Vision">
  ### Contextualization / Vision

  **Added**

  * Support for Vision endpoints referencing files by data modeling instance IDs, as an alternative to ID and external ID.
</Update>

<Update tags={["Beta"]} label="2024-09-14" description="Simulator integration API promoted to public beta">
  ### Simulator integration API

  **Added**

  * The simulator integration API endpoints have now been promoted to public beta. The following is just a brief list of endpoints. Go to the Cognite API [reference documentation (beta)](/api-reference/concepts/20230101/simulators) to view all endpoints and their functionalities.
    * `POST /simulators/*` to access the simulators API and list simulators enabled for the project
    * `POST /simulators/integrations/*` to list simulator connectors and their state
    * `POST /simulators/models/*` to create/list/remove simulator models and their revisions
    * `POST /simulators/routines/*` to create/list/remove simulator routines and their revisions
    * `POST /simulators/runs/*` to create/schedule simulation runs
    * `POST /simulators/logs/*` to access simulator logs
</Update>

<Update tags={["Stable"]} label="2024-09-13" description="Contextualization / Engineering diagrams">
  ### Contextualization / Engineering diagrams

  **Added**

  * Support for detecting tags in diagrams referencing files by data modelling instance ids as an alternative to id and externalId.
</Update>

<Update tags={["Stable"]} label="2024-09-12" description="Files API ignoreUnknownIds">
  ### Files API

  **Added**

  * Add support for `ignoreUnknownIds` to the `files/delete` endpoint.
</Update>

<Update tags={["Beta"]} label="2024-09-10" description="SAP Writeback">
  ### SAP Writeback

  **Added**

  * SAP Writeback API (Beta)
</Update>

<Update tags={["Stable"]} label="2024-09-02" description="Files API managed by Data modeling">
  ### Files API

  **Added**

  * Introduces support for Files managed by Data modeling, which means following endpoints will allow specifying instance Id
    * `POST /files/uploadlink` to get upload links for files
    * `POST /files/multiuploadlink` to get multipart upload link for files
    * `POST /files/completemultipartupload` to complete a multipart file upload
    * `POST /files/downloadlink` to get download links for files
    * `GET /files/icon` to get an image representation of a file
    * `POST /files/byids` to retrieve metadata information about multiple specific files
    * `POST /files/update` to updates the information for the files
</Update>

<Update tags={["Stable"]} label="2024-08-23" description="Data Workflows">
  ### Data Workflows

  **Added**

  * subworkflow task: add support for referencing other workflow versions to run as part of a workflow
</Update>

<Update tags={["Stable"]} label="2024-08-20" description="Data Workflows trigger resource">
  ### Data Workflows

  **Added**

  * Introduces the trigger resource for Data Workflows, which adds support for scheduling the execution of workflows and the management thereof.
    * `POST /workflows/triggers` to create a UNIX cron trigger for a workflow
    * `GET /workflows/triggers` to list all triggers
    * `POST /workflows/triggers/delete` to delete a trigger
    * `GET /workflows/triggers/{triggerExternalId}/history` which keeps a ledger of when the trigger fired and if it successfully started a workflow or not.
</Update>

<Update tags={["Stable"]} label="2024-07-18" description="Organizations and Projects">
  ### Organizations and Projects

  **Added**

  * Selected endpoints are promoted from beta to v1 (all under [https://auth.cognite.com](https://auth.cognite.com); note that the routes are
    different from the beta routes, and that some request and response signatures have changed):
    * `GET /api/v1/orgs/{orgId}` to get organization info
    * `POST /api/v1/orgs/{orgId}/orgs` to create an organization
    * `POST /api/v1/orgs/{orgId}/delete` to delete an organization
    * `GET /api/v1/orgs/{orgId}/orgs` to list the child organizations of an organization
    * `POST /api/v1/orgs/{orgId}/projects` to create a project in an organization
    * `GET /api/v1/orgs/{orgId}/projects` to list the projects in an organization

  **Deprecated**

  * The six beta endpoints that have been published as new V1 endpoints (just above) are deprecated and will be removed in
    a future release.
</Update>

<Update tags={["Stable"]} label="2024-06-24" description="Data Modeling">
  ### Data Modeling

  **Added**

  * Support marking properties as immutable
</Update>

<Update tags={["Stable"]} label="2024-06-17" description="Data Modeling">
  ### Data Modeling

  **Added**

  * Support for creating properties of type `direct_relation[]`, allowing direct relations to point to multiple nodes.
  * /containers/inspect endpoint to retrieve information about which views map a container.
  * /instances/inspect endpoint to retrieve information about which containers an instance has data in.
</Update>

<Update tags={["Stable", "Beta"]} label="2024-06-13" description="Organizations and Projects">
  ### Organizations and Projects

  **Added**

  * Projects API (Beta): Allow for parametrization of the initial admin group when creating a project.

  ### Time Series

  **Added**

  * Time zone aware aggregate queries. Align aggregates with a given time zone. Also works with half-hour offsets like Asia/Kolkata (UTC+5:30). Takes DST transitions into account.
  * New `month` (mo) granularity.
  * Also applies to synthetic time series.
</Update>

<Update tags={["Alpha", "Beta"]} label="2024-05-24" description="Organizations and Projects">
  ### Organizations and Projects

  **Added**

  * Organizations API (Beta): create, list, and delete CDF organizations
  * Organizations API (Alpha): update CDF organizations
  * Projects API (Beta): create and list projects in CDF organizations

  ### User profiles

  **Added**

  * Organization user profiles (Beta): list users in CDF organizations

  ### Projects

  **Removed**

  * Removed the previous Projects API from public documentation, as those endpoints are available to Cognite and resellers
    only.
</Update>

<Update tags={["Beta"]} label="2024-05-23" description="Time series">
  ### Time series

  **Added**

  * Beta support for time zone aware aggregate queries. Align aggregates with a given time zone. Also works with half-hour offsets like Asia/Kolkata (UTC+5:30). Takes DST transitions into account.
  * Beta support for new `month` (mo) granularity.
  * Also applies to synthetic time series.
</Update>

<Update tags={["Stable"]} label="2024-05-02" description="Postgres gateway">
  ### Postgres gateway

  **Added**

  * Endpoints for managing PostgreSQL gateway
</Update>

<Update tags={["Stable"]} label="2024-05-01" description="Time series">
  ### Time series

  **Added**

  * Added support for [status codes](https://developer.cognite.com/dev/concepts/resource_types/timeseries#data-point-quality-status-codes) for data points.
</Update>

<Update tags={["Stable"]} label="2024-04-02" description="Groups">
  ### Groups

  **Added**

  * Introduce the option to manage members of a group through CDF instead of through external groups in the identity provider. This is done through the new `members` field on the group object. Members can either be explicitly enumerated or one declare a group to include all users accounts. The latter is useful if one wants all existing users and new users who joins a project to automatically receive certain capabilities.
</Update>

<Update tags={["Beta"]} label="2024-03-19" description="Engineering diagrams (beta)">
  ### Engineering diagrams (beta)

  **Added**

  * Beta endpoint for retrieving ocr data for a file per page.
    Currently, only files that have been run through diagram/detect will give any results.
    This may be up for change in the future.
    The endpoint replaces a previous playground endpoint which is no longer documented.
</Update>

<Update tags={["Stable"]} label="2024-03-11" description="Default runtime in Cognite functions">
  ### Default runtime in Cognite functions

  **Changed**

  * Default Python runtime in Cognite functions has been updated from Python 3.8 (py38) to Python 3.11 (py311) in response to the upcoming end of community support for Python 3.8 in October 14, 2024.
</Update>

<Update tags={["Stable"]} label="2024-03-06" description="Files">
  ### Files

  **Updated**

  * Files API rate and concurrency limits have been documented.
    \-- Service layer request rate and concurrency limits added
    \-- CRUD endpoints request rate, concurrency and items rate limits added
    \-- Analytic endpoints request rate, concurrency rate limits added
</Update>

<Update tags={["Stable"]} label="2024-02-29" description="Assets">
  ### Assets

  **Updated**

  * Assets API rate and concurrency limits have been documented.
    \-- Service layer request rate and concurrency limits added
    \-- CRUD endpoints request rate, concurrency and items rate limits added
    \-- Analytic endpoints request rate, concurrency and items rate limits added
</Update>

<Update tags={["Stable"]} label="2024-02-20" description="Data Modeling">
  ### Data Modeling

  **Added**
  **Conversion between unit types for returned values during filter and query operations.**

  * Trigger conversion by setting the `targetUnit` by `externalId` or `unitSystemName` parameters for the data source in a query.
  * When using filters with unit conversion, the unit for filter value is determined by the corresponding property in the `source` object. When querying data in centimeters by setting `targetUnit` on a property in the `source`, the filter value for that property will also be considered to be in centimeters.
  * `typing` - `type.unit` on a property in a `typing` object is now always the same as the unit for the returned data.
  * Added `typing` to following endpoints:
    * query
    * sync
    * aggregate
    * search
</Update>

<Update tags={["Stable"]} label="2024-02-19" description="Time series">
  ### Time series

  **Added**

  * Data point subscriptions reaches General Availability (GA).
    * Use the new [Data point subscriptions](https://developer.cognite.com/dev/concepts/data_point_subscriptions/)
      feature to configure a subscription to listen to changes in one or more
      time series (in ingestion order).
      The feature is intended to be used where data points consumers need to keep up to date with
      changes to one or more time series without the need to read the entire time series again.
</Update>

<Update tags={["Stable"]} label="2024-02-08" description="Hosted Extractors">
  ### Hosted Extractors

  **Changed**

  * `host` in kafka sources has been replaced with `bootstrapBrokers`, which is an array of objects with `host` and `port`.
</Update>

<Update tags={["Stable"]} label="2024-02-01" description="Synthetic time series">
  ### Synthetic time series

  **Added**

  * Support for unit conversion by setting `targetUnit` or `targetUnitSystem` on time series or aggregates with a compatible `unitExternalId` field.
</Update>

<Update tags={["Stable"]} label="2024-01-16" description="Sessions">
  ### Sessions

  **Added**

  * Support for creating one-shot sessions by setting the `oneshotTokenExchange` flag. One-shot sessions are short-lived sessions that are not refreshed and do not require support for token exchange from the identity provider.
</Update>

<Update tags={["Stable"]} label="2024-01-02" description="Data Modeling">
  ### Data Modeling

  **Added**

  * Support for a `bySpace` flag on btree indexes and uniqueness constraints.
</Update>

<Update tags={["Stable"]} label="2023-12-12" description="Data Modeling">
  ### Data Modeling

  **Added**

  * **Units catalog support for container properties**: You can now specify a unit from [CDF units catalog](https://developer.cognite.com/dev/concepts/resource_types/units) on `float32` and `float64` properties in containers.
</Update>

<Update tags={["Beta"]} label="2023-12-11" description="Time series">
  ### Time series

  **Changed**

  * Data point subscriptions [list data (beta)](/api-reference/concepts/20230101/data-point-subscriptions) now supports *long polling* through the `pollTimeoutSeconds` parameter. The request will be kept active for the specified number of seconds, or until new data is available, whichever comes first.
</Update>

<Update tags={["Stable"]} label="2023-12-06" description="Time series">
  ### Time series

  **Added**

  * [Units catalog](https://developer.cognite.com/dev/concepts/resource_types/units) support to time series. This comes in addition to the existing free-text unit field.
    * [Create timeseries](/20230101/time-series/create-time-series) with a unitExternalId.
    * [Update timeseries](/20230101/time-series/update-time-series) to add/remove unitExternalId.
  * Filter and aggregate time series by unitExternalId or unitQuantity (eg. "volume" or "temperature"). Both using regular filters and advanced filters.
    * [Filter time series](/20230101/time-series/filter-time-series).
    * [Aggregate time series](/20230101/time-series/aggregate-time-series).
    * [Search time series](/20230101/time-series/search-time-series).
  * Added unit conversion support to [retrieve data points/aggregates](/20230101/time-series/retrieve-data-points) and [retrieve latest](/20230101/time-series/retrieve-latest-data-point). Specify a *targetUnit* or *targetUnitSystem* to convert the data points or aggregates to a different unit, or to the default unit of a given unit system.
</Update>

<Update tags={["Beta"]} label="2023-11-30" description="Hosted extractors">
  ### Hosted extractors

  **Changed**

  * Hosted extractors API (Beta)
    * Updates hosted extractor schema with tls certificate details hence users can now provide CA and authentication certificates for connection to MQTT brokers.
    * Now includes schema requirements for connection to Kafka brokers i.e. connection to and extraction from Kafka brokers to Cognie Data fusion is not possible.
</Update>

<Update tags={["Stable"]} label="2023-11-21" description="Units Catalog">
  ### Units Catalog

  **Added**

  * Added the [Units Catalog](/api-reference/concepts/20230101/units-overview) API. The Units Catalog is a collection of units of measurement and their conversion factors. The Units Catalog is used within Cognite Data Fusion to easily convert between different units and unit systems when retrieving Time Series and Data Models.
</Update>

<Update tags={["Stable"]} label="2023-11-17" description="Documents">
  ### Documents

  **Added**

  * Added support for sorting in the `/documents/list` endpoint. It works exactly the same as the sorting
    in `/documents/search` except that you can not sort on search relevance.
</Update>

<Update tags={["Stable"]} label="2023-11-08" description="Engineering diagrams">
  ### Engineering diagrams

  **Changed**

  * Optional token mechanism for accessing detected results of engineering diagrams without read all access to assets.
    See [diagram/detect](/api-reference/concepts/20230101/engineering-diagrams) for details.
</Update>

<Update tags={["Stable"]} label="2023-10-23" description="Files">
  ### Files

  **Added**

  * Added multipart upload endpoints for the files API. This enables upload of files larger than 5 GiB, in a uniform way for all CDF cloud environments.
    Optionally use parallel part upload, for greater upload speed.
    See the documentation for the new endpoints at:
    * [Upload multipart file](/20230101/files/upload-multipart-file) and
    * [Complete multipart upload](/20230101/files/complete-multipart-upload) endpoints.
</Update>

<Update tags={["Stable"]} label="2023-10-17" description="Events">
  ### Events

  **Added**

  * New and old but previously undocumented API rate and concurrency limits have been documented.
    Overrides have been specified for existing customers, so that the new limits would not affect them.
    * Service layer request rate and concurrency limits added.
    * CRUD endpoints request rate and concurrency and items rate limits added
</Update>

<Update tags={["Stable", "Beta"]} label="2023-10-10" description="Entity matching">
  ### Entity matching

  **Added**

  * Entity matching pipelines are now in v1. We resuscitated the old playground API and made some changes.
    We will keep the new v1 API in beta for the foreseeable future.

  ### Vision (Contextualization)

  **Added**

  * New computer vision models (beta) are available in Vision extract service, including digital, dial and level gauge readers, valve state detection (open/closed) and model to segment objects in images.
</Update>

<Update tags={["Beta"]} label="2023-10-05" description="Hosted extractors">
  ### Hosted extractors

  **Added**

  * Hosted extractors API (Beta)
    * Use the new [Hosted extractors](https://docs.cognite.com/cdf/integration/guides/extraction/hosted_extractors)
      feature to create simple streaming extractors running inside CDF, streaming data from sources available on the internet
      directly into CDF.
      Currently supports Azure Event Hub and MQTT. Support is planned for Kafka and REST APIs.
</Update>

<Update tags={["Stable"]} label="2023-09-27" description="3D">
  ### 3D

  **Changed**

  * If the 3d model processing is ongoing or has failed, the 3d api nodes endpoints will now return error code 400 with the response body "Revision processing is not yet complete" or "Revision processing failed" respectively.
    The previous behavior was to return an empty or partial items list in these cases.
    Before calling any 3d api nodes endpoints, clients should check that the model revision has "status":"Done".
</Update>

<Update tags={["Stable"]} label="2023-08-25" description="Transformations">
  ### Transformations

  **Changed**

  * Fixed wrong description for fields in "transformations/update" and "/transformations/schedules/update"
</Update>

<Update tags={["Stable"]} label="2023-08-22" description="Functions">
  ### Functions

  **Changed**

  * Remove Functions runtime "py37".
</Update>

<Update tags={["Beta"]} label="2023-08-22" description="Time series">
  ### Time series

  **Added**

  * Data point subscriptions (Beta)
    * Use the new [Data point subscriptions](https://developer.cognite.com/dev/concepts/data_point_subscriptions/)
      feature to configure a subscription to listen to changes in one or more
      time series (in ingestion order).
      The feature is intended to be used where data points consumers need to keep up to date with
      changes to one or more time series without the need to read the entire time series again. (Beta)
</Update>

<Update tags={["Stable"]} label="2023-08-10" description="Time series">
  ### Time series

  **Added**

  * Advanced query language support reaches General Availability (GA).
    * Advanced search, filtering, and sorting capabilities in the [Filter time series](/20230101/time-series/filter-time-series) endpoint.
    * Advanced aggregation capabilities in the [Aggregate time series](/20230101/time-series/aggregate-time-series) endpoint.

  ### Sequences

  **Added**

  * Advanced query language support reaches General Availability (GA).
    * Advanced search, filtering, and sorting capabilities in the [Filter sequences](/20230101/sequences/filter-sequences) endpoint.
    * Advanced aggregation capabilities in the [Aggregate sequences](/20230101/sequences/aggregate-sequences) endpoint.
</Update>

<Update tags={["Stable"]} label="2023-08-08" description="Assets">
  ### Assets

  **Added**

  * Advanced query language support reaches General Availability (GA).
    * Advanced search, filtering, and sorting capabilities in the [Filter assets](/20230101/assets/filter-assets) endpoint.
    * Advanced aggregation capabilities in the [Aggregate assets](/20230101/assets/aggregate-assets) endpoint.

  ### Events

  **Added**

  * Advanced query language support reaches General Availability (GA).
    * Advanced search, filtering, and sorting capabilities in the [Filter events](/20230101/events/filter-events) endpoint.
    * Advanced aggregation capabilities in the [Aggregate events](/20230101/events/aggregate-events) endpoint.

  ### Documents

  **Added**

  * Advanced query language support reaches General Availability (GA).
    * Advanced aggregation capabilities in the [Aggregate documents](/20230101/documents/aggregate-documents) endpoint.
</Update>

<Update tags={["Stable"]} label="2023-06-27" description="IAM (Identity and access management)">
  ### IAM (Identity and access management)

  **Changed**

  * Identity providers (IdP) are required to be compatible with the [OpenID Connect Discovery 1.0](https://openid.net/specs/openid-connect-discovery-1_0.html) standard, and compliance will now be enforced by the [Projects](/api-reference/concepts/20230101/projects) API.
    * The `oidcConfiguration.jwksUrl` and `oidcConfiguration.tokenUrl` can be entirely omitted when updating the OIDC configuration for a project.
    * The `oidcConfiguration.jwksUrl` and `oidcConfiguration.tokenUrl` are preserved for backwards compatibility of the API. However, if these are specified as part of the request body, the value must match excatly the values that are specified in the OpenID provider configuration document for the configured issuer (can be found at `https://{issuer-url}/.well-known/openid-configuration`). If the values does not match, the API will return an error message.

  * The `oidcConfiguration.skewMs` has been deprecated but remains part of the API for backwards compatibility. It can be omitted from the request. If included, it must always be set to `0`.

  * The `oidcConfiguration.isGroupCallbackEnabled` has been deprecated but remains part of the API for backwards compatibility. It can be omitted from the request.
    * For projects configured to use Azure Active Directory as the identity provider, if this value is specified in the request, it must always be set to `true`.
</Update>

<Update tags={["Stable"]} label="2023-06-05" description="Data Modeling">
  ### Data Modeling

  **Added**

  * Added support for an `autoCreateDirectRelations` option on the endpoint for ingesting instances.
    This option lets the user specify whether to create missing target nodes of direct relations.

  **Removed**

  * Removed support for the deprecated per-item `sources` field on the `/instances/byids` endpoint.
</Update>

<Update tags={["Stable"]} label="2023-05-19" description="Transformations">
  ### Transformations

  **Added**

  * Adding support for data model centric and view centric schema.
</Update>

<Update tags={["Stable"]} label="2023-04-24" description="Transformations">
  ### Transformations

  **Removed**

  * Removing support for authentication via API keys when creating or updating transformations.
</Update>

<Update tags={["Stable"]} label="2023-05-04" description="Annotations">
  ### Annotations

  **Added**

  * Added `image.InstanceLink` and `diagrams.InstanceLink` annotation types to allow you to link from objects discovered in images and engineering diagrams to data model instances.
</Update>

<Update tags={["Stable", "Beta"]} label="2023-04-18" description="All resources">
  ### All resources

  **Added**

  * Added information about [Requests throttling](/api-reference/concepts/20230101/rate-limits#throttling-response).

  **Changed**

  * Updated the [Parallel retrieval](/api-reference/concepts/20230101/api-description#parallel-retrieval) documentation.
  * Aligned endpoint naming within Assets, Data sets, Events, and Files.

  ### Assets

  **Added**

  * Added advanced query language support (Beta).
    * Advanced search, filtering, and sorting capabilities in the [Filter assets](/20230101/assets/filter-assets) endpoint.
    * Advanced aggregation capabilities in the [Aggregate assets](/20230101/assets/aggregate-assets) endpoint.

  ### Events

  **Added**

  * Added advanced query language support (Beta).
    * Advanced search, filtering, and sorting capabilities in the [Filter events](/20230101/events/filter-events) endpoint.
    * Advanced aggregation capabilities in the [Aggregate events](/20230101/events/aggregate-events) endpoint.

  ### Documents

  **Added**

  * Added advanced query language support (Beta).
    * Advanced aggregation capabilities in the [Aggregate documents](/20230101/documents/aggregate-documents) endpoint.
</Update>

<Update tags={["Stable"]} label="2023-04-12" description="Sessions">
  ### Sessions

  **Fixed**

  * Fixed the API documentation for the request body of the [POST /projects/{project_0}/sessions/byids](/20230101/sessions/retrieve-sessions-with-given-ids) endpoint.
    The documentation incorrectly stated the request body schema as specifying the list of session IDs to retrieve, in the form `{"items": [42]}` - it should in fact be `{"items": [{"id": 42}]}`. The documentation has been updated to reflect this.

  * Fixed the API documentation for the response body of the [POST /projects/{project_0}/sessions/byids](/20230101/sessions/retrieve-sessions-with-given-ids) endpoint.
    The documentation incorrectly stated `nextCursor` and `previousCursor` fields as being returned from the response, which was not the case, and these fields have now been removed from the API documentation.
</Update>

<Update tags={["Stable"]} label="2023-04-04" description="Transformations">
  ### Transformations

  **Change**

  * Transformations support new target types for view-centric data model instances.

  **Added**

  * Added target types `nodes` and `edges`.
</Update>

<Update tags={["Stable"]} label="2023-03-06" description="Documents">
  ### Documents

  **Change**

  * Renamed "approximateCardinality" aggregate to "cardinalityValues" to unify the search spec in Cognite.
  * "uniqueProperties" aggregate no longer supports pagination. It returns unique properties (up to 10000) in the specified path. The results are sorted by frequency.

  **Added**

  * Added "allUniqueProperties" aggregate that returns all unique properties. The response contains a cursor that can be used to fetch all pages of data.
</Update>

<Update tags={["Stable"]} label="2023-02-03" description="Seismic">
  ### Seismic

  **Added**

  * Batch downloading of seismics as a ZIP archive is now an experimental v1 endpoint. A user requires the experimental ACL to use this endpoint, and any other ACLs and scopes to read the downloadable seismics.

  **Fixed**

  * The documentation for downloading seismics as SEG-Y files is part of v1. The API documentation didn't reflect that the endpoint had been promoted to version 1.
</Update>

<Update tags={["Stable"]} label="2023-02-07" description="Documents">
  ### Documents

  **Added**

  * Added `highlight` field in the `search` endpoint to indicate whether matches in search results should be highlighted.
</Update>

<Update tags={["Stable"]} label="2023-01-18" description="3D">
  ### 3D

  **Added**

  * Added support for using names filter in list nodes endpoint.
</Update>

<Update tags={["Stable"]} label="2023-01-17" description="Authentication">
  ### Authentication

  **Removed**

  We've removed authentication via CDF service accounts and API keys, and user sign-in via `/login`.

  ### 3D

  **Added**

  * Added support for storing translation and scale for model revision.
</Update>

<Update tags={["Stable"]} label="2023-01-12" description="Documents">
  ### Documents

  **Added**

  * Added support for approximateCardinality aggregate.
</Update>

<Update tags={["Stable"]} label="2023-01-10" description="Documents">
  ### Documents

  **Added**

  * Added the search leaf filter, to allow filtering by searching through specified properties.
</Update>

<Update tags={["Stable"]} label="2023-01-09" description="Documents">
  ### Documents

  **Added**

  * Added the uniqueProperties aggregation, which can be used to find all the metadata keys in use.
</Update>

<Update tags={["Stable"]} label="2023-01-06" description="Documents">
  ### Documents

  **Added**

  * Added inAssetSubtree filter to filter documents that have a related asset in a subtree rooted at any of the specified IDs.
</Update>

<Update tags={["Stable"]} label="2023-01-02" description="Documents">
  ### Documents

  **Added**

  * Added advanced filters for metadata (prefix, in, equals)
</Update>

<Update tags={["Stable"]} label="2022-12-06" description="3D">
  ### 3D

  **Added**

  * Added get3DNodesById endpoint to be able to fetch 3D nodes mapped to an asset.
</Update>

<Update tags={["Stable"]} label="2022-12-16" description="Time series">
  ### Time series

  **Changed**

  * Timestamps of data points may now be as large as 4102444799999 (23:59:59.999, December 31, 2099). The previous limit was the year 2050.
</Update>

<Update tags={["Stable"]} label="2022-11-29" description="Events">
  ### Events

  **Added**

  * Added `nulls` field to the sort property specification
</Update>

<Update tags={["Stable"]} label="2022-11-17" description="Time series">
  ### Time series

  **Added**

  * Added `nextCursor` field to [Retrieve data points](/20230101/time-series/retrieve-data-points), to support cursor pagination
</Update>

<Update tags={["Stable"]} label="2022-10-14" description="Geospatial">
  ### Geospatial

  **Added**

  * Added the [POST /projects/{project_0}/geospatial/compute](/20230101/geospatial/compute) endpoint.
</Update>

<Update tags={["Stable"]} label="2022-10-11" description="Transformations">
  ### Transformations

  **Added**

  * Added capability to run a transformation with Nonce credentials provided through the Run endpoint.
</Update>

<Update tags={["Stable"]} label="2022-10-06" description="IAM (Identity and access management)">
  ### IAM (Identity and access management)

  **Added**

  * Added the [POST /projects/{project_0}/sessions/byids](/20230101/sessions/retrieve-sessions-with-given-ids) endpoint.
</Update>

<Update tags={["Stable"]} label="2022-09-09" description="Vision (Contextualization)">
  ### Vision (Contextualization)

  **Added**

  * Move Vision extract service from playground to V1.
</Update>

<Update tags={["Stable"]} label="2022-08-12" description="Time series">
  ### Time series

  **Changed**

  * Updated datapoints timestamp range from 1971 - 2050 to 1900 - 2050.
    Affected endpoints:
    * [Insert data points](/20230101/time-series/insert-data-points)
    * [Retrieve data points](/20230101/time-series/retrieve-data-points)
    * [Delete data points](/20230101/time-series/delete-data-points)
    * [Retrieve latest data point](/20230101/time-series/retrieve-latest-data-point)
    * [Synthetic query](/20230101/synthetic-time-series/synthetic-query)
</Update>

<Update tags={["Stable"]} label="2022-07-21" description="Transformations">
  ### Transformations

  **Added**

  * Added authentication using nonce for transformation's exisiting endpoints.
</Update>

<Update tags={["Stable"]} label="2022-06-21" description="Annotations (Data organization)">
  ### Annotations (Data organization)

  **Added**

  * Moved the annotation service from playground to v1.
</Update>

<Update tags={["Stable"]} label="2022-07-07" description="Events">
  ### Events

  **Removed**

  * End-of-life for [filter.rootAssetIds](/20230101/events/filter-events) filtering attribute.
</Update>

<Update tags={["Stable"]} label="2022-06-13" description="IAM (Identity and access management)">
  ### IAM (Identity and access management)

  **Added**

  * Added the [POST /projects/{project_0}/sessions/revoke](/20230101/sessions/revoke-sessions) endpoint.
</Update>

<Update tags={["Stable"]} label="2022-05-20" description="Documents">
  ### Documents

  **Added**

  * Added the `POST /documents/aggregate` endpoint. The endpoint allows you to count documents optionally grouped by a property and also to retrieve all unique values of a property.
</Update>

<Update tags={["Stable"]} label="2022-05-12" description="Documents">
  ### Documents

  **Added**

  * Added the `POST /documents/list` endpoint. The endpoint allows you to iterate through all the documents in a project.
  * Added the `POST /documents/{documentId}/content` endpoint. The endpoint lets you download the entire extracted plain text of a document.
</Update>

<Update tags={["Stable"]} label="2022-04-11" description="Documents">
  ### Documents

  **Added**

  * Added the [GET /documents/{documentId_0}/preview/image/pages/{pageNumber_0}](/20230101/document-preview/retrieve-a-image-preview-of-a-page-from-a-document) endpoint.
  * Added the [GET /documents/{documentId_0}/preview/pdf](/20230101/document-preview/retrieve-a-pdf-preview-of-a-document) endpoint.
  * Added the [GET /documents/{documentId_0}/preview/pdf/temporarylink](/20230101/document-preview/retrieve-a-temporary-link-to-a-pdf-preview-of-a-document) endpoint.
</Update>

<Update tags={["Stable"]} label="2022-03-15" description="Sequences">
  ### Sequences

  **Changed**

  * Changed sequences column limits. Old limit of maximum total 200 columns limits is updated to maximum 400 total columns, maximum 400 numeric columns and maximum 200 string columns.
</Update>

<Update tags={["Stable"]} label="2022-03-02" description="Sequences">
  ### Sequences

  **Added**

  * Added the [POST /sequences/data/latest](/20230101/sequences/retrieve-last-row) endpoint.
</Update>

<Update tags={["Stable"]} label="2022-02-08" description="Time series">
  ### Time series

  **Changed**

  * Marked `isStep` parameter to be editable (i.e. removed description stating it is not updatable) in [POST /timeseries/create](/20230101/time-series/create-time-series).

  **Added**

  * Added `isStep` parameter to the `TimeSeriesPatch` object used in [POST /timeseries/update](/20230101/time-series/update-time-series)
</Update>

<Update tags={["Stable"]} label="2022-02-07" description="Documents">
  ### Documents

  **Added**

  * The [POST /documents/search](/20230101/documents/search-for-documents) endpoint now supports pagination.
</Update>

<Update tags={["Stable"]} label="2022-01-25" description="Documents">
  ### Documents

  **Added**

  * Added the [POST /documents/search](/20230101/documents/search-for-documents) endpoint.
</Update>

<Update tags={["Stable"]} label="2022-01-24" description="Time series">
  ### Time series

  **Added**

  * Added optional `ignoreUnknownIds` parameter to [POST /sequences/delete](/20230101/sequences/delete-sequences). Setting this to true will prevent the operation from failing if one or more of the given sequences do not exist; instead, those given sequences that do exist will be deleted.
</Update>

<Update tags={["Stable"]} label="2021-12-07" description="Transformations">
  ### Transformations

  **Added**

  * New [Transformations](/api-reference/concepts/20230101/transformations) APIs to v1 to create,retrieve,list and delete transformations
  * New [Transformation Jobs](/api-reference/concepts/20230101/transformation-jobs) APIs to v1 to retrieve and list transformation jobs or job metrics
  * New [Transformation Schedule](/api-reference/concepts/20230101/transformation-schedules) APIs to v1 to manage schedules of transformations
  * New [Transformation Notifications](/api-reference/concepts/20230101/transformation-notifications) APIs to v1 to manage notifications from transformation job
</Update>

<Update tags={["Stable"]} label="2021-11-22" description="Contextualization">
  ### Contextualization

  **Added**

  * Added [diagram detect](/20230101/engineering-diagrams/detect-annotations-in-engineering-diagrams) endpoint to v1 to detect annotations in engineering diagrams
  * Added [diagram detect results](/20230101/engineering-diagrams/retrieve-engineering-diagram-detect-results) endpoint to v1 to get the results from an engineering diagram detect job
  * Added [diagram convert](/20230101/engineering-diagrams/convert-a-diagram-to-image-format) endpoint to v1 to create interactive engineering diagrams in SVG format with highlighted annotations
  * Added [diagram convert results](/20230101/engineering-diagrams/get-the-results-for-converting-an-engineering-diagram-to-an-image) endpoint to v1 to get the results for a job converting engineering diagrams to SVGs
</Update>

<Update tags={["Stable"]} label="2021-11-17" description="3D">
  ### 3D

  **Added**

  * Added `dataSetId` support to 3D models enabling data access scoping of 3D data
</Update>

<Update tags={["Stable"]} label="2021-10-13" description="Raw">
  ### Raw

  **Changed**

  * To align with Microsoft Azure clusters, table and database names are now sensitive to trailing spaces also in Google Cloud Platform clusters.
</Update>

<Update tags={["Stable"]} label="2021-10-05" description="Extraction Pipelines">
  ### Extraction Pipelines

  **Added**

  * New [Extraction Pipelines](/api-reference/concepts/20230101/extraction-pipelines) resource to document extractors and monitor the status of data ingestion to make sure reliable and trustworthy data are flowing into the CDF data sets.
  * API endpoints for creating, managing, and deleting extraction pipelines. Capture common attributes around extractors such as owners, contacts, schedule, destination RAW databases, and data set. Document structured metadata in the form of key-value attributes as well unstructured `documentation` attribute that supports Markdown (rendered as Markdown in Fusion).
  * Extraction Pipelines Runs are CDF objects to store statuses related to an extraction pipeline. The supported statuses are: `success`, `failure` and `seen`. They enable extractor developers to report status and error message after ingesting data. As well enables for reporting heartbeat through `seen` status by the extractor to easily identify issues related to crushed applications and scheduling issues.
</Update>

<Update tags={["Stable"]} label="2021-09-28" description="Sequences">
  ### Sequences

  **Added**

  * Added `partition` parameter to the [GET /sequences](/20230101/sequences/list-sequences) endpoint to support [parallel retrieval](/api-reference/concepts/20230101/api-description#parallel-retrieval).
  * [POST /sequences/list](/20230101/sequences/filter-sequences) now supports [parallel retrieval](/api-reference/concepts/20230101/api-description#parallel-retrieval).

  ### Time series

  **Added**

  * Added `partition` parameter to the [GET /timeseries](/20230101/time-series/list-time-series) endpoint to support [parallel retrieval](/api-reference/concepts/20230101/api-description#parallel-retrieval).
</Update>

<Update tags={["Stable"]} label="2021-08-18" description="IAM (Identity and access management)">
  ### IAM (Identity and access management)

  **Added**
  Added sessions to [v1](/api-reference/concepts/20230101/sessions). Sessions let you securely delegate access to CDF resources for CDF services (such as Functions) by an external principal and for an extended time.
</Update>

<Update tags={["Stable"]} label="2021-08-12" description="Relationships">
  ### Relationships

  **Added**

  * Relationships now support [Parallel Retrieval](/api-reference/concepts/20230101/api-description#parallel-retrieval)
</Update>

<Update tags={["Stable"]} label="2021-07-01" description="3D">
  ### 3D

  **Added**

  * Added filter3dNodes endpoint to allow for more advanced filtering on node metadata
</Update>

<Update tags={["Stable"]} label="2021-06-29" description="Labels">
  ### Labels

  **Added**

  * [Dataset scoping](/20230101/labels/filter-labels) based on `dataSetIds`.
</Update>

<Update tags={["Stable"]} label="2021-06-08" description="Sequences">
  ### Sequences

  **Added**

  * Added [syntax for updating columns](/20230101/sequences/update-sequences) of existing sequences. Can `remove` columns, `modify` existing columns, and `add` new columns as well.
</Update>

<Update tags={["Stable"]} label="2021-06-01" description="Assets">
  ### Assets

  **Added**

  * Added labels replace (set) method for [assets update](/20230101/assets/update-assets).
</Update>

<Update tags={["Stable"]} label="2021-04-28" description="Time series">
  ### Time series

  \*\*Changed granularity limits on hour aggreagates

  You can now ask for a [granularity](https://docs.cognite.com/dev/concepts/aggregation/#granularity)
  of up to 100000 hours (previously 48 hours), both in normal aggregates and in synthetic time series.
</Update>

<Update tags={["Stable"]} label="2021-04-12" description="IAM (Identity and access management)">
  ### IAM (Identity and access management)

  **Added**

  * Added a [projects list](/20230101/projects/list-projects-in-an-organization) endpoint to v1
  * Added a [token inspection](/20230101/token/inspect) endpoint to v1
</Update>

<Update tags={["Stable"]} label="2021-04-06" description="Authentication">
  ### Authentication

  **Deprecated**

  We are deprecating authentication via CDF service accounts and API keys, and user sign-in via `/login`, in favor of registering applications and services with your IdP (identity provider) and [using OpenID Connect](https://docs.cognite.com/cdf/access/) and the IdP framework to manage CDF access securely.

  The legacy authentication flow is available for customers using Cognite Data Fusion (CDF) on GCP until further notice. We strongly encourage customers to adopt [the new authentication flows](https://docs.cognite.com/cdf/access/) as soon as possible.

  The following API endpoints are deprecated:

  * `/api/v1/projects/*/apikeys`
  * `/api/v1/projects/*/serviceaccounts`
  * `/login`
  * `/logout`
  * `/api/v1/projects/*/groups/serviceaccounts` <sup>\*</sup>

  <sup>\*</sup>only the sub-resources for listing, adding, and removing members of groups.
</Update>

<Update tags={["Stable"]} label="2021-03-22" description="CDF API 0.5, 0.6 end-of-life">
  CDF API 0.5, 0.6 reached their end-of-life after its initial deprecation announcement in Summer 2019.
</Update>

<Update tags={["Stable"]} label="2021-03-10" description="3D API">
  ### 3D

  **Added**

  * Added `partition` parameter to the List 3D Nodes endpoint for supporting parallel requests.
  * Added `sortByNodeId` parameter to the List 3D Nodes endpoint, improving request latency in most cases if set to `true`.
</Update>

<Update tags={["Stable"]} label="2021-02-26" description="Entity Matching">
  ### Entity Matching

  **Fixed**

  * Fixed a bug in the documentation for Entity matching. The (job) `status` shall be capitalized string.
</Update>

<Update tags={["Stable"]} label="2020-12-22" description="Files">
  ### Files

  **Added**

  * New field `fileType` inside `derivedFields` to refer to a pre-defined subset of MIME types.
  * New filter `fileType` inside `derivedFields` to find files with a pre-defined subset of MIME types.

  To learn how to leverage new geoLocation features, [follow our guide](https://developer.cognite.com/dev/concepts/resource_types/files.html).
</Update>

<Update tags={["Stable"]} label="2020-10-20" description="Files">
  ### Files

  **Added**

  * New field `geoLocation` to refer to the geographic location of the file.
  * New filter `geoLocation` to find files matching a certain geographic location.

  To learn how to leverage new geoLocation features, [follow our guide](https://developer.cognite.com/dev/concepts/resource_types/files.html).
</Update>

<Update tags={["Stable"]} label="2020-08-29" description="Files">
  ### Files

  **Added**

  * New field `directory` referring to the directory in the source containing the file.
  * New filter `directoryPrefix` allows you to find Files matching a certain directory prefix.
</Update>

<Update tags={["Stable"]} label="2020-08-05" description="Files">
  ### Files

  **Added**

  * New field `labels` allows you to attach labels to Files upon creation or updating.
  * New filter `labels` allows you to find Files that have been annotated with specific labels.
</Update>

<Update tags={["Stable"]} label="2020-07-08" description="IAM (Identity and access management)">
  ### IAM (Identity and access management)

  **Added**

  * New project field `applicationDomains`. If this field is set, users only sign in to the project through applications hosted on
    a whitelisted domain. [Read more](https://developer.cognite.com/dev/guides/iam/#application-domains).
</Update>

<Update tags={["Stable"]} label="2020-07-01" description="Events">
  ### Events

  **Added**

  * New aggregation [`uniqueValues`](/20230101/events/aggregate-events) allows you to find different types, subtypes of events in your project.
</Update>

<Update tags={["Stable"]} label="2020-06-29" description="Labels">
  ### Labels

  **Added**

  * New data organization resource: [labels](/api-reference/concepts/20230101/labels). Manage terms that you can use to annotate and group assets.

  ### Assets

  **Added**

  * New filter `labels` allows you to find resources that have been annotated with specific labels.

  ### Time series

  **Added**

  * Combine various input time series, constants and operators with on-the-fly [synthetic time series](https://developer.cognite.com/dev/concepts/resource_types/synthetic_timeseries.html).
</Update>

<Update tags={["Stable"]} label="2020-04-28" description="Events">
  ### Events

  **Added**

  * New filtering capabilities to find open events [`endTime=null`](/20230101/events/filter-events).
  * New filtering capabilities to find all events intersecting a timespan using [activeAtTime](/20230101/events/filter-events).
</Update>

<Update tags={["Stable"]} label="2020-03-12" description="General">
  ### General

  **Added**

  * New data organization resource: [data sets](/api-reference/concepts/20230101/data-sets). Document and track data lineage, ensure data integrity, and allow 3rd parties to write their insights securely back to your Cognite Data Fusion (CDF) project.
  * New attribute `datasetId` introduced in assets, files, events, time series and sequences.
  * New filter `dataSetIds` allows you to narrow down results to resources containing `datasetId` by a list of ids or externalIds of a data set. Supported by assets, files, events, time series and sequences.
  * We have added a new aggregation endpoint for [time series](/20230101/time-series/aggregate-time-series). With this endpoint, you can find out how many results in a tenant meet the criteria of a filter. We will expand this feature to add more aggregates than `count`.

  ### Groups

  **Added**

  * Introduced a new capability: `datasetsAcl` for managing access to data set resources.
  * New scope `datasetScope` for assets, files, events, time series and sequences ACLs. Allows you to scope down access to resources contained within a specified set of data sets.
</Update>

<Update tags={["Stable"]} label="2020-03-10" description="3D">
  ### 3D

  **Fixed**

  * We fixed a bug in the documentation of [3D model revisions](/20230101/3d-model-revisions/get-3d-nodes-by-id). Applications should anticipate that 3D nodes may not have a bounding box.
</Update>

<Update tags={["Stable"]} label="2020-02-25" description="Assets">
  ### Assets

  **Added**

  * We have added a new [aggregation endpoint](/20230101/assets/aggregate-assets) for assets. With this endpoint, you can find out how many assets in a tenant meet the criteria of a filter. We will expand this feature to add more aggregates than `count`.

  ### Events

  **Added**

  * We have added a new [aggregation endpoint](/20230101/events/aggregate-events) for events. With this endpoint, you can find out how many events in a tenant meet the criteria of a filter. We will expand this feature to add more aggregates than `count`.
</Update>

<Update tags={["Stable"]} label="2020-02-12" description="Assets">
  ### Assets

  **Added**

  * We have added new aggregation properties: `depth` and `path`. You can use the properties in the filter and retrieve endpoints.
</Update>

<Update tags={["Stable"]} label="2020-02-10" description="Assets">
  ### Assets

  **Added**

  * Added the property `parentExternalId` which is returned for all assets which have a parent with a defined `externalId`.
</Update>

<Update tags={["Stable"]} label="2019-12-09" description="General">
  ### General

  **Added**

  * Added `assetSubtreeIds` as a parameter to filter, search, and list endpoints for all core resources. `assetSubtreeIds` allows you to specify assets that are subtree roots, and then only retrieve resources that are related to assets within those subtrees.
</Update>

<Update tags={["Stable"]} label="2019-12-04" description="Assets">
  ### Assets

  **Added**

  * Added the ability to [filter](/20230101/assets/search-assets) assets by parent external IDs.
</Update>

<Update tags={["Stable"]} label="2019-11-18" description="Events">
  ### Events

  **Added**

  * [Added the ability to filter events by the external ID of linked assets](/20230101/events/filter-events)
</Update>

<Update tags={["Stable"]} label="2019-11-12" description="Access control">
  ### Access control

  **Removed**

  * Groups can no longer be created with a permissions field in v0.5.
</Update>

<Update tags={["Stable"]} label="2019-10-31" description="Assets">
  ### Assets

  **Added**

  * [Asset search](/20230101/assets/search-assets) now has a `search.query` parameter. This uses an improved search algorithm that tries a wider range of variations of the input terms and gives much better relevancy ranking than the existing `search.name` and `search.description` fields.

  ### Time Series

  **Changed**

  * The `search.query` parameter for [time series search](/20230101/time-series/search-time-series) now uses an improved search algorithm that tries a wider range of variations of the input terms, and gives much better relevancy ranking.
</Update>

<Update tags={["Stable"]} label="2019-10-23" description="Files">
  ### Files

  **Added**

  * Added support for updating the `mimeType` for existing files in files/update requests.
</Update>

<Update tags={["Stable"]} label="2019-10-18" description="Time Series">
  ### Time Series

  **Added**

  * Time series expanded their filtering capabilities with new `Filter time series` endpoint, allowing for additional filtering by:

    * Name
    * Unit
    * Type of time series: string or step series
    * Metadata objects
    * ExternalId prefix filtering
    * Create and last updated time ranges

    Endpoint in addition support pagination and partitioning. Check out detailed API documentation [here](/20230101/time-series/filter-time-series).
</Update>

<Update tags={["Stable"]} label="2019-10-16" description="Events">
  ### Events

  **Added**

  * [Added the ability to sort events on startTime, endTime, createdTime, and lastUpdatedTime](/20230101/events/filter-events)
</Update>

<Update tags={["Stable"]} label="2019-10-02" description="Sequences">
  ### Sequences

  **Added**

  * Introducing the new **sequences** core resource type that lets you store numerically indexed multi-column rows of data. Connect your sequences to physical assets and to their source systems through `externalId` and metadata support. Read more [here](https://developer.cognite.com/dev/concepts/resource_types/sequences.html).
</Update>

<Update tags={["Stable"]} label="2019-09-30" description="3D">
  ### 3D

  **Added**

  * Added endpoint to get multiple nodes for a 3D model by their IDs.
  * Added endpoint to get asset mappings for multiple node IDs or asset IDs.
</Update>

<Update tags={["Stable"]} label="2019-09-23" description="Files">
  ### Files

  **Added**

  * Added support for filter on `rootAssetIds` in files GET /files (using query parameter) and POST /files/list (in request body).
</Update>

<Update tags={["Stable"]} label="2019-09-16" description="Assets and Events">
  ### Assets and Events

  **Added**

  * Added support for `partition` in `/assets` and `/events` to support parallel retrieval. See guide for usage [here](/dev/concepts/pagination)
</Update>

<Update tags={["Stable"]} label="2019-08-22" description="3D">
  ### 3D

  **Added**

  * Added the query parameter `intersectsBoundingBox` to the list asset mappings endpoint. The parameter filters asset mappings to the assets where the bounding box intersects (or is contained within) the specified bounding box.
</Update>

<Update tags={["Stable"]} label="2019-08-21" description="Files">
  ### Files

  **Added**

  * Added support for sourceCreatedTime and sourceModifiedTime fields in files v1 endpoints.

  ### Assets

  **Added**

  * Allow the parent asset ID to be updated. The root asset ID must be preserved, and you can not convert a non-root asset to a root asset or vice versa.
  * Support for ignoreUnknownIds when deleting assets.
</Update>

<Update tags={["Stable"]} label="2019-08-15" description="3D">
  ### 3D

  **Added**

  * Properties field for 3D nodes, extracted from uploaded 3D files.
  * Ability to filter nodes with a specific set of properties.
</Update>

<Update tags={["Stable"]} label="2019-07-24" description="Files">
  ### Files

  **Changed**

  * Allow lookup of names with length up to 256 characters (was 50) for GET /files and POST /files/search operations.
  * Allow creating and retrieving files with mimeType length up to 256 characters (was 64).
</Update>

<Update tags={["Stable"]} label="2019-07-15" description="Time series">
  ### Time series

  **Added**

  * Added query parameter `rootAssetIds` to list time series endpoint. Returns time series that are linked to an asset that has one of the root assets as an ancestor.
</Update>

<Update tags={["Stable"]} label="2019-07-11" description="List of changes for initial API v1 release in comparison to previous version - API 0.5">
  ### General

  **Added**

  * Support for `externalId` added across resource types. `externalId` lets you define a unique ID for a data object. Learn more: [External IDs](https://developer.cognite.com/dev/concepts/external_id.html)
  * `externalIdPrefix` added as a parameter to the list events, assets and files operations.
  * Richer filtering on the list assets, files and events operations.
  * Search, list and filter operations for assets, events and files now support filtering on source and metadata field values.

  **Changed**

  * Core resources standardize on HTTP methods and URI naming for common operations such as search, partial updates, delete, list and filter
  * API responses are no longer wrapped in a top level `data` object.
  * Standardized pagination across resources through `limit`, `cursor` and `nextCursor` parameters.
  * The `limit` parameter no longer implicitly rounds down requested page size to maximum page size.
  * Standardized error responses and codes across all resources. Errors across CDF can be parsed into a single model.
  * Overall improvements to reference documentation. Including documented input constraints, required fields, individual attribute descriptions.

  **Removed**

  * The `sourceId` field has been removed from resources. Use `externalId` instead of `sourceId`+`source` to define unique IDs for data objects.
  * Sorting is removed from the search operations for files, assets, events and time series. Results are sorted by relevance.
  * `offset` and `previousCursor` parameters are no longer supported for pagination across resources.
  * Fetching an asset subtree is no longer supported by files, assets, events and time series.

  ### Assets

  **Added**

  * Ability to select only root assets though new `root` filter.
  * Added the `rootId` field to specify the top element in an asset hierarchy.
  * Added the ability to filter by the root asset ID. This allows you to scope queries for one or many asset hierarchies.
  * List Assets allows for filtering assets belonging to set of root assets, specified by list of asset internal ids. New query parameter: `rootIds`.
  * Filter and Search Assets allows or filtering assets belonging to a set of root assets, specified by combination of internal and external asset identifiers. New body attribute: `rootIds`.

  **Changed**

  * Updating a single asset is no longer supported through a separate endpoint. Use the update multiple endpoint instead.
  * Delete assets by default removes only leaf assets (assets without children). New parameter 'recursive' allows for enabling recursive removal of the entire subtree of the asset pointed by ID (API 0.5 behaviour).

  **Removed**

  * Overwriting assets is no longer supported.
  * Filtering assets by their complete description is no longer supported.
  * Locating assets fuzzily by name has been removed. Instead, search for assets on the `name` property.
  * When searching assets, querying over both name and description in the same query is no longer supported.
  * The experimental query parameter `boostName` has been removed from the search for assets operation.
  * Removed the `path` and `depth` fields.

  ### Events

  **Added**

  * Events can now be filtered on asset ID in combination with other filters.
  * New filter `rootAssetIds` allows for narrowing down events belonging only to list or specified root assets. Supported by Filter and Search API

  **Removed**

  * Events can no longer be filtered by empty description.
  * The 'dir' parameter has been removed from the search events operation.

  ### Files

  **Added**

  * Filtering files by `assetIds` in list files operations now support multiple assets in the same request.

  **Changed**

  * Download file content has changed from HTTP GET to HTTP POST method.
  * We have renamed the `fileType` field to `mimeType`. The field now requires a MIME formatted string (e.g. `text/plain`).
  * We have renamed the `uploadedAt` field to `uploadedTime`.
  * Resumable is now the default behavior for file uploads.
  * Update metadata for single files is no longer supported by a separate operation. Instead, use the update multiple operation.

  **Removed**

  * Replace files metadata endpoint has been removed.
  * Directory has been removed as a property of files.
  * Updating the `name` or `mimeType` of a file through the update multiple files operation is no longer supported.
  * Query parameter for specifying the sort direction has been removed from list all files operations.

  ### Raw

  **Changed**

  * Raw has changed structure to become resource-oriented. The URL structure has changed.
  * Recursively delete of tables and rows when deleting a database is now the default behavior without a control parameter.

  ### Time series

  **Added**

  * Support for adding datapoints by `id` and `externalId` of time series. Adding datapoints to time series by `name` has been removed.
  * Add ability to update the new `externalId` attribute for time series.
  * Allow to set `externalId` during creation of time series. `ExternalId` requires uniqueness across time series.
  * Consolidate multiple APIs to allow adding datapoints into a single endpoint. Allows datapoints to be added to multiple time series at the same time.
  * Retrieve data points by using `id` and `externalId` of the time series.
  * Time series created through API v1 are not discoverable by API 0.3, 0.4, 0.5 and 0.6 by default. Introduce the option to enable this compatibility by setting new attribute - `legacyName` on time series creation. Value is required to be unique.

  **Changed**

  * Get latest datapoints has been reworked. Introduces support for `id` and `externalId` lookup as well retrieval for multiple time series within the same request.
  * Time series name is no longer limited by uniqueness. Note that time series (meta objects) created by API v1 will not be discoverable by older API versions.
  * Delete time series endpoint has been redesigned to allow deletion of multiple time series by `id` and `externalId`.
  * Delete single and multiple datapoints endpoint has been redesigned and consolidated into a single endpoint. New delete allows selection of multiple time series and time ranges by `id` and `externalId`. Selecting by `name` is no longer available.
  * Update multiple time series restructured to support lookup by `externalId`.
  * Retrieve time series by ID endpoint restructured adding the ability to get time series by `externalId`.
  * Set limit for data point value to min -1E100, max 1E100.

  **Removed**

  * Experimental feature for performing calculations across multiple time series (synthetic time series), function and alias attributes are no longer available.
  * The experimental query parameter `boostName` has been removed from search operation.
  * Short names for aggregate functions are no longer supported.
  * Ability to remove time series by `name` have been removed as names are no longer unique identifiers.
  * Select multiple time series and time ranges by `name` is no longer available.
  * The ability to update `isString` and `isStep` attributes is removed. The attributes are not intended to be modified after creation of time series.
  * The endpoint for updating single time series is removed. Use the update multiple time series endpoint instead.
  * Remove ability to overwrite time series object by `id`. Use the update multiple time series endpoint instead.
  * The ability to retrieve time series matching by `name` has been removed. Use `externalId` instead.
  * The ability to retrieve by `id` from a single time series has been removed. Use retrieve multiple datapoints for multiple time series instead.
  * The ability to retrieve time-aligned datapoints through "dataframe" API has been removed. Similar functionality is available through our supported SDKs.
  * The ability to add datapoints to time series by `name` has been removed.
  * The ability to look up by time series `name` has been removed.

  ### IAM (Identity and access management)

  **Added**

  * The login status endpoint includes the ID of the API key making the request (new attribute: `apiKeyId`), if the request used an API key.

  **Changed**

  * The user resource type has been replaced with service accounts. Users from previous API versions are equivalent to service accounts.
  * Adding, listing and removing users from a group has been replaced by equivalent operations for service accounts.
  * Retrieve project returns a single object instead of a list.
  * API keys endpoints for list/create rename `userId` attribute to `serviceAccountId`.

  **Removed**

  * List and create groups no longer use the `permissions` and `source` attributes.

  ### 3D

  **Added**

  * New 3D API lets you upload and process 3D models. Supported format: FBX.
  * Ability to create and maintain multiple revisions for the 3D models.
  * API for mapping relationships between 3D model nodes and asset hierarchy.
</Update>
