Cognite Views API

The Views API from Cognite — 3 operation(s) for views.

Operations 4

POST /models/views Create or update views #
GET /models/views List views defined in the project #
POST /models/views/byids Retrieve views by their external ids #
POST /models/views/delete Delete views #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/cognite-views-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

cognite-views-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Cognite 3D Asset Mapping Views API
  description: "# Introduction\nThis is the reference documentation for the Cognite API with\nan overview of all the available methods.\n\n# Postman\nSelect the **Download** button to download our OpenAPI specification to get started.\n\nTo import your data into Postman, select **Import**, and the Import modal opens.\nYou can import items by dragging or dropping files or folders. You can choose how to import your API and manage the import settings in **View Import Settings**.\n\nIn the Import Settings, set the **Folder organization** to **Tags**, select\n**Enable optional parameters** to turn off the settings, and select **Always inherit authentication** to turn on the settings. Select **Import**.\n\nSet the Authorization to **Oauth2.0**. By default, the settings are for Open Industrial Data. Navigate to [Cognite Hub](https://hub.cognite.com/open-industrial-data-211) to understand how to get the credentials for use in Postman.\n\nFor more information, see [Getting Started with Postman](https://developer.cognite.com/dev/guides/postman/).\n\n# Pagination\nMost resource types can be paginated, indicated by the field `nextCursor` in the response.\nBy passing the value of `nextCursor` as the cursor you will get the next page of `limit` results.\nNote that all parameters except `cursor` has to stay the same.\n\n# Parallel retrieval\nAs general guidance, Parallel Retrieval is a technique that should be used when due to query complexity, retrieval of data in a single request is significantly slower than it would otherwise be for a simple request.  Parallel retrieval does not act as a speed multiplier on optimally running queries.  By parallelizing such requests, data retrieval performance can be tuned to meet the client application needs. \n\nCDF supports parallel retrieval through the `partition` parameter, which has the format `m/n` where `n` is the amount of partitions you would like to split the entire data set into.\nIf you want to download the entire data set by splitting it into 10 partitions, do the following in parallel with `m` running from 1 to 10:\n  - Make a request to `/events` with `partition=m/10`.\n  - Paginate through the response by following the cursor as explained above. Note that the `partition` parameter needs to be passed to all subqueries.\n\nProcessing of parallel retrieval requests is subject to concurrency quota availability. The request returns the `429` response upon exceeding concurrency limits. See the Request throttling chapter below.\n\nTo prevent unexpected problems and to maximize read throughput, you should at most use 10 partitions. \nSome CDF resources will automatically enforce a maximum of 10 partitions.\nFor more specific and detailed information, please read the ```partition``` attribute documentation for the CDF resource you're using.  \n\n# Requests throttling\nCognite Data Fusion (CDF) returns the HTTP `429` (too many requests) response status code when project capacity exceeds the limit.\n\nThe throttling can happen:\n  - If a user or a project sends too many (more than allocated) concurrent requests.\n  - If a user or a project sends a too high (more than allocated) rate of requests in a given amount of time.\n\nCognite recommends using a retry strategy based on truncated exponential backoff to handle sessions with HTTP response codes 429.\n\nCognite recommends using a reasonable number (up to 10) of  `Parallel retrieval` partitions.\n\nFollowing these strategies lets you slow down the request frequency to maximize productivity without having to re-submit/retry failing requests.\n\nSee more [here](https://docs.cognite.com/dev/concepts/resource_throttling).\n\n# API versions\n## Version headers\nThis API uses calendar versioning, and version names follow the `YYYYMMDD` format.\nYou can find the versions currently available by using the version selector at the top of this page.\n\nTo use a specific API version, you can pass the `cdf-version: $version` header along with your requests to the API.\n\n## Beta versions\nThe beta versions provide a preview of what the stable version will look like in the future.\nBeta versions contain functionality that is reasonably mature, and highly likely to become a part of the stable API.\n\nBeta versions are indicated by a `-beta` suffix after the version name. For example, the beta version header for the\n2023-01-01 version is then `cdf-version: 20230101-beta`.\n\n## Alpha versions\nAlpha versions contain functionality that is new and experimental, and not guaranteed to ever become a part of the stable API.\nThis functionality presents no guarantee of service, so its use is subject to caution.\n\nAlpha versions are indicated by an `-alpha` suffix after the version name. For example, the alpha version header for\nthe 2023-01-01 version is then `cdf-version: 20230101-alpha`."
  version: v1
  contact:
    name: Cognite Support
    url: https://support.cognite.com
    email: support@cognite.com
servers:
- url: https://{cluster}.cognitedata.com/api/v1/projects/{project}
  description: The URL for the CDF cluster to connect to
  variables:
    cluster:
      enum:
      - api
      - az-tyo-gp-001
      - az-eastus-1
      - az-power-no-northeurope
      - westeurope-1
      - asia-northeast1-1
      - gc-dsm-gp-001
      default: api
      description: The CDF cluster to connect to
    project:
      default: publicdata
      description: The CDF project name.
security:
- oidc-token:
  - https://{cluster}.cognitedata.com/.default
- oauth2-client-credentials:
  - https://{cluster}.cognitedata.com/.default
- oauth2-open-industrial-data:
  - https://api.cognitedata.com/.default
- oauth2-auth-code:
  - https://{cluster}.cognitedata.com/.default
tags:
- name: Views
paths:
  /models/views:
    post:
      tags:
      - Views
      summary: Create or update views
      description: '


        > **Required capabilities:** `dataModelsAcl:WRITE`


        Add or update (upsert) views. For unchanged view specifications, the operation completes without making any changes.  We will not update the ```lastUpdatedTime``` value for views that remain unchanged.'
      operationId: ApplyViews
      requestBody:
        description: Views to add or update.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ViewCreateCollection'
        required: true
      x-capability:
      - dataModelsAcl:WRITE
      responses:
        '200':
          $ref: '#/components/responses/ViewCollectionResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '409':
          description: View conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpsertConflict'
      x-code-samples:
      - lang: Python
        label: Python SDK
        source: "from cognite.client.data_classes.data_modeling import ViewApply, MappedPropertyApply, ContainerId\nviews = [\n    ViewApply(\n        space=\"mySpace\",\n        external_id=\"myView\",\n        version=\"v1\",\n        properties={\n            \"someAlias\": MappedPropertyApply(\n                container=ContainerId(\"mySpace\", \"myContainer\"),\n                container_property_identifier=\"someProperty\",\n            ),\n        }\n   )\n]\nres = client.data_modeling.views.apply(views)\n\nfrom cognite.client.data_classes.data_modeling import (\n    ContainerId,\n    DirectRelationReference,\n    MappedPropertyApply,\n    MultiEdgeConnectionApply,\n    ViewApply,\n    ViewId\n)\nacts_in_edge_type = DirectRelationReference(space=\"imdb\", external_id=\"acts-in\")\nmovie_view = ViewApply(\n    space=\"imdb\",\n    external_id=\"Movie\",\n    version=\"1\",\n    name=\"Movie\",\n    properties={\n        \"title\": MappedPropertyApply(\n            container=ContainerId(space=\"imdb\", external_id=\"Movie\"),\n            container_property_identifier=\"title\",\n        ),\n        \"actors\": MultiEdgeConnectionApply(\n            type=acts_in_edge_type,\n            direction=\"inwards\",\n            source=ViewId(\"imdb\", \"Actor\", \"1\"),\n            name=\"actors\",\n        ),\n    }\n)\nactor_view = ViewApply(\n    space=\"imdb\",\n    external_id=\"Actor\",\n    version=\"1\",\n    name=\"Actor\",\n    properties={\n        \"name\": MappedPropertyApply(\n            container=ContainerId(\"imdb\", \"Actor\"),\n            name=\"name\",\n            container_property_identifier=\"name\",\n        ),\n        \"movies\": MultiEdgeConnectionApply(\n            type=acts_in_edge_type,\n            direction=\"outwards\",\n            source=ViewId(\"imdb\", \"Movie\", \"1\"),\n            name=\"movies\",\n        ),\n    }\n)\nres = client.data_modeling.views.apply([movie_view, actor_view])\n"
    get:
      tags:
      - Views
      summary: List views defined in the project
      description: '


        > **Required capabilities:** `dataModelsAcl:READ`


        List of views defined in the current project. You can filter the list by specifying a space.'
      operationId: listViews
      parameters:
      - $ref: '#/components/parameters/ReducedLimit'
      - $ref: '#/components/parameters/Cursor'
      - $ref: '#/components/parameters/Space'
      - $ref: '#/components/parameters/IncludeInheritedProperties'
      - $ref: '#/components/parameters/AllVersions'
      - $ref: '#/components/parameters/IncludeGlobal'
      x-capability:
      - dataModelsAcl:READ
      responses:
        '200':
          $ref: '#/components/responses/ViewCollectionResponseWithCursor'
        '400':
          $ref: '#/components/responses/ErrorResponse'
      x-code-samples:
      - lang: Python
        label: Python SDK
        source: "view_list = client.data_modeling.views.list(limit=5)\n\nfor view in client.data_modeling.views:\n    view # do something with the view\n\nfor view_list in client.data_modeling.views(chunk_size=10):\n    view_list # do something with the views\n"
  /models/views/byids:
    post:
      tags:
      - Views
      summary: Retrieve views by their external ids
      description: '


        > **Required capabilities:** `dataModelsAcl:READ`


        Retrieve up to 100 views by their external ids.'
      operationId: byExternalIdsViews
      parameters:
      - $ref: '#/components/parameters/IncludeInheritedProperties'
      requestBody:
        description: List of external-ids of views to retrieve.
        content:
          application/json:
            schema:
              oneOf:
              - $ref: '#/components/schemas/ListOfVersionReferences'
              - $ref: '#/components/schemas/ListOfAllVersionsReferences'
        required: true
      x-capability:
      - dataModelsAcl:READ
      responses:
        '200':
          $ref: '#/components/responses/ViewCollectionResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
      x-code-samples:
      - lang: Python
        label: Python SDK
        source: 'res = client.data_modeling.views.retrieve((''mySpace'', ''myView'', ''v1''))

          '
  /models/views/delete:
    post:
      tags:
      - Views
      summary: Delete views
      description: '


        > **Required capabilities:** `dataModelsAcl:WRITE`


        Delete one or more views.  Currently limited to 100 views at a time.'
      operationId: deleteViews
      requestBody:
        description: List of references to views you want to delete.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ListOfVersionReferences'
        required: true
      x-capability:
      - dataModelsAcl:WRITE
      responses:
        '200':
          $ref: '#/components/responses/VersionReferencesCollectionResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
      x-code-samples:
      - lang: Python
        label: Python SDK
        source: 'client.data_modeling.views.delete((''mySpace'', ''myView'', ''v1''))

          '
components:
  schemas:
    ContainerReference:
      type: object
      description: Reference to an existing container
      required:
      - type
      - space
      - externalId
      properties:
        type:
          type: string
          enum:
          - container
        space:
          description: Id of the space hosting (containing) the container
          allOf:
          - $ref: '#/components/schemas/SpaceSpecification'
        externalId:
          description: External-id of the container
          allOf:
          - $ref: '#/components/schemas/DMSExternalId'
    CorePropertyCreateDefinition:
      type: object
      properties:
        immutable:
          type: boolean
          description: Should updates to this property be rejected after the initial population? Per-property immutability is not applicable for records. For records, immutability is a stream-level concept only.
          default: false
        nullable:
          type: boolean
          description: Does this property need to be set to a value, or not?
          default: true
        autoIncrement:
          type: boolean
          description: When set to ```true```, the API will increment the property based on its highest current value (max value).  You can only use this functionality to increment properties of type `int32` or `int64`. If the property has a different data type, the API will return an error. Auto-increment is not supported for records. The value will not be auto-generated, so omitting a non-nullable auto-increment property during record ingestion will fail validation.
          default: false
        defaultValue:
          oneOf:
          - type: string
          - type: number
          - type: boolean
          - type: object
          description: "Default value to use when you do not specify a value for the property.  The default value must be of the same type as what you defined for the property itself. \n\n\nWe do not currently support using default values for array/list types. "
        description:
          type: string
          description: Description of the content and suggested use for this property.
          maxLength: 1024
        name:
          type: string
          description: Readable property name.
          maxLength: 255
    InstanceReferenceFilterV3:
      type: object
      title: instanceReferences
      required:
      - instanceReferences
      properties:
        instanceReferences:
          type: array
          description: Matches instances with any of the specified space/externalId pairs.
          items:
            type: object
            required:
            - space
            - externalId
            properties:
              space:
                $ref: '#/components/schemas/SpaceSpecification'
              externalId:
                $ref: '#/components/schemas/NodeOrEdgeExternalId'
    EdgeConnection:
      type: object
      required:
      - type
      - source
      description: Describes the edge(s) that are likely to exist to aid in discovery and documentation of the view. A listed edge is not required. i.e. It does not have to exist when included in this list. A connection has a max distance of one hop.
      properties:
        connectionType:
          type: string
          description: The type of connection, either a single or multi edge connections are expected to exist.
          enum:
          - single_edge_connection
          - multi_edge_connection
          default: multi_edge_connection
        name:
          type: string
          description: Readable property name.
          maxLength: 255
        description:
          type: string
          description: Description of the content and suggested use for this property.
          maxLength: 1024
        type:
          $ref: '#/components/schemas/DirectRelationReference'
        source:
          description: The target node(s) of this connection can be read through the view specified in 'source'.
          allOf:
          - $ref: '#/components/schemas/ViewReference'
        edgeSource:
          description: The edge(s) of this connection can be read through the view specified in 'edgeSource'.
          allOf:
          - $ref: '#/components/schemas/ViewReference'
        direction:
          type: string
          enum:
          - outwards
          - inwards
          default: outwards
    OverlapsFilterV3:
      type: object
      title: overlaps
      required:
      - overlaps
      properties:
        overlaps:
          type: object
          description: 'Matches items where the range made up of the two properties overlap with the provided range.

            Not available for search queries.'
          required:
          - startProperty
          - endProperty
          properties:
            startProperty:
              $ref: '#/components/schemas/DMSFilterProperty'
            endProperty:
              $ref: '#/components/schemas/DMSFilterProperty'
            gte:
              $ref: '#/components/schemas/FilterValueRange'
            gt:
              $ref: '#/components/schemas/FilterValueRange'
            lte:
              $ref: '#/components/schemas/FilterValueRange'
            lt:
              $ref: '#/components/schemas/FilterValueRange'
    EqualsFilterV3:
      type: object
      title: equals
      required:
      - equals
      properties:
        equals:
          required:
          - property
          - value
          description: Matches items that contain the exact value in the provided property.
          type: object
          properties:
            property:
              $ref: '#/components/schemas/DMSFilterProperty'
            value:
              $ref: '#/components/schemas/FilterValue'
    SourceReference:
      description: Reference to a view, or a container
      oneOf:
      - $ref: '#/components/schemas/ViewReference'
      - $ref: '#/components/schemas/ContainerReference'
      discriminator:
        propertyName: type
    ReverseDirectRelationConnection:
      type: object
      required:
      - connectionType
      - source
      - through
      description: Describes the direct relation(s) pointing to instances read through this view. This connection type is used to aid in discovery and documentation of the view.
      properties:
        connectionType:
          type: string
          description: The type of connection. The ```single_reverse_direct_relation``` type is used to indicate that only a single direct relation is expected to exist. The ```multi_reverse_direct_relation``` type is used to indicate that multiple direct relations are expected to exist.
          enum:
          - single_reverse_direct_relation
          - multi_reverse_direct_relation
        name:
          type: string
          description: Readable property name.
          maxLength: 255
        description:
          type: string
          description: Description of the content and suggested use for this property.
          maxLength: 1024
        source:
          description: The node(s) containing the direct relation property can be read through the view specified in 'source'.
          allOf:
          - $ref: '#/components/schemas/ViewReference'
        through:
          description: The view or container of the node containing the direct relation property.
          allOf:
          - $ref: '#/components/schemas/ThroughReference'
    SpaceSpecification:
      type: string
      pattern: ^[a-zA-Z][a-zA-Z0-9_-]{0,41}[a-zA-Z0-9]?$
      minLength: 1
      maxLength: 43
    PropertyIdentifierV3:
      type: string
      pattern: ^[a-zA-Z]([a-zA-Z0-9_]{0,253}[a-zA-Z0-9])?$
      minLength: 1
      maxLength: 255
    RawPropertyValueV3:
      title: raw value
      description: A value matching the data type of the defined property
      oneOf:
      - type: string
        title: string
        description: 'A string value without `null` characters and 128KB maximum size.

          Or a date string in the format `YYYY-MM-DD`.

          Or a timestamp string in the format: `YYYY-MM-DDTHH:MM:SS[.millis][Z|time zone]`.

          '
        maxLength: 128000
      - type: number
        title: number
        description: A number value matching the data type (integer(32/64), float, doable, etc) of the defined property.
      - type: boolean
        title: boolean
        description: A boolean value - `true` or `false`.
      - type: object
        title: object
        description: A JSON value. General limits for the JSON object are the next. The max key length is 128. The max number of keys 256. The max object total size is 40,960B. The max value size is 10,240B.
      - type: object
        title: direct relation
        description: A JSON value matching the direct relation type. Direct relation json object requires and allows only `space` and `externalId` attributes of the related instance.
      - type: array
        title: array of strings
        description: 'An array of string values without `null` characters in each item and sum of individual elements is no more than 128KB.

          Each item can be a date string in the format `YYYY-MM-DD` or a timestamp string in the format: `YYYY-MM-DDTHH:MM:SS[.millis][Z|time zone]`.

          '
        minItems: 1
        maxItems: 1000
        items:
          type: string
      - type: array
        title: array of booleans
        description: An array of boolean values.
        minItems: 1
        maxItems: 1000
        items:
          type: boolean
      - type: array
        title: array of numbers
        description: An array of number values.
        minItems: 1
        maxItems: 1000
        items:
          type: number
      - type: array
        title: array of direct relations
        description: An array of direct relations.
        minItems: 1
        maxItems: 100
        items:
          type: object
      - type: array
        title: array of objects
        description: An array of JSON objects. General limits for the JSON array are the next. The max JSON total size is 40,960B. Other JSON objects constraints are applicable to each item in the array (see object).
        minItems: 1
        maxItems: 1000
        items:
          type: object
    DataModelsNestedFilter:
      type: object
      title: nested
      required:
      - nested
      properties:
        nested:
          required:
          - scope
          - filter
          description: "Use `nested` to apply the properties of the direct relation as the filter.  `scope` specifies the direct\nrelation property you want use as the filtering property.\n\nExample:\n```\n  {\n    \"nested\": {\n      \"scope\": [\"some\", \"direct_relation\", \"property\"],\n      \"filter\": {\n        \"equals\": {\n          \"property\": [\"node\", \"name\"],\n          \"value\": \"ACME\"\n        }\n      }\n    }\n  }\n```\n"
          type: object
          properties:
            scope:
              type: array
              minItems: 1
              maxItems: 3
              items:
                type: string
            filter:
              $ref: '#/components/schemas/FilterDefinition'
    DMSExternalId:
      type: string
      pattern: ^[a-zA-Z]([a-zA-Z0-9_]{0,253}[a-zA-Z0-9])?$
      minLength: 1
      maxLength: 255
    EpochTimestamp:
      description: The number of milliseconds since 00:00:00 Thursday, 1 January 1970, Coordinated Universal Time (UTC), minus leap seconds.
      type: integer
      minimum: 0
      format: int64
      example: 1730204346000
    CDFExternalIdReference:
      type: object
      description: 'An external-id reference to an existing CDF resource type item, such as a time series.


        An example could be that for an existing time series stored in the CDF time series resource type with the

        external-id 21PT0293, then the value would be set to "21PT029", and the type would be set to "timeseries". There

        are no referential integrity guarantees for this, and the client should handle if the time series has been removed

        or the client may not have access to it.


        Currently, time series, sequence and file references are supported.

        CDF external ID reference types (timeseries, file, sequence) are not allowed for containers with ```usedFor``` set to ```record```.

        '
      required:
      - type
      properties:
        type:
          type: string
          enum:
          - timeseries
          - file
          - sequence
        list:
          description: 'Specifies that the data type is a list of values. The ordering of values is preserved.

            '
          type: boolean
          default: false
        maxListSize:
          type: integer
          description: Specifies the maximum number of values in the list
    UpsertConflict:
      type: object
      required:
      - error
      properties:
        error:
          type: object
          description: Details about the error caused by the upsert/update.
          required:
          - code
          - message
          properties:
            code:
              type: integer
              description: The HTTP status code returned
              format: int32
              example: 409
            message:
              type: string
              description: The error message returned from the service.
            isAutoRetryable:
              type: boolean
              description: Whether or not the error is auto-retryable. If present and true, the client can automatically retry the request after some delay.
    EnumProperty:
      type: object
      description: 'An enum type property.


        An enum property can only consist of predefined values.

        '
      required:
      - type
      - values
      properties:
        type:
          type: string
          enum:
          - enum
        unknownValue:
          type: string
          description: 'The value to use when the enum value is unknown.

            This can optionally be used to provide forward-compatibility, Specifying what value to use if the client does not recognize the returned value. It is not possible to ingest the unknown value, but it must be part of the allowed values.'
        values:
          type: object
          description: 'A set of all possible values for the enum property. The enum value identifier has to have a length of between 1 and 127 characters.  It must also match the pattern ```^[_A-Za-z][_0-9A-Za-z]{0,127}$```, and not be `"true"`, `"false"` or `"null"`.


            Example: ```{ "value1": { "name": "Value 1", "description": "This is value 1" }, "value2": { } }```'
          additionalProperties:
            x-additionalPropertiesName: enumValueIdentifier
            minProperties: 1
            maxProperties: 32
            allOf:
            - $ref: '#/components/schemas/EnumValueProperties'
      example:
        unknownValue: unknown
        values:
          value1:
            name: Value 1
            description: This is value 1
          value2: {}
          unknown:
            name: Unknown
            description: Used if the client does not recognize the returned value.
    UsedFor:
      type: string
      description: Should this operation apply to nodes, edges, records, or both nodes and edges. **NB!** Currently ```all``` applies to nodes and edges, but not records.
      enum:
      - node
      - edge
      - record
      - all
      default: node
    ViewCorePropertyDefinition:
      allOf:
      - $ref: '#/components/schemas/CorePropertyDefinition'
      - type: object
        required:
        - type
        properties:
          type:
            description: "The type of data you can store in this property. Most properties can also hold a list of values, for example, a list of integers or a list of timestamps. The supported storage types are:\n\n\n* text (allows user control of collation),\n * boolean,\n * 32-bit, and 64-bit float,\n * 32-bit, and 64-bit integer,\n * timestamp,\n * date,\n * JSON fragment,\n * direct relation to an existing node,\n * time series external-id reference,\n * file external-id reference,\n * sequence external-id reference,\n * enum.\n\n\nThe JSON fragments have to be valid JSON objects. If JSON arrays are to be stored, these must be wrapped in a JSON object. JSON values (such as string, number, boolean) should use their respective primitive form instead. The maximum allowed size for a JSON object is 40960 bytes. For lists of json values, the size of the entire list must be within this limit. The maximum allowed length of a key is 128, while the maximum allowed size of a value is 10240 bytes and you can have up to 256 key-value pairs. The  byte sizes are computed by representing the data as a UTF-8 encoded JSON string.\nDirect relations use a space external-id, the external-id for an existing node, and the external-id for the data container. E.g. ```s-spaceExternalId.uniqueNodeExternalId.containerExternalId```. The ```view``` property on direct relation can optionally be set, and if it is set then this is a hint to the client on what kind of data is expected to exist.\nTimestamps must be a string in the format 'YYYY-MM-DDTHH:MM:SS[.millis][Z|time zone]' with optional milliseconds having precision of 1-3 decimal digits and optional timezone with format ±HH:MM, ±HHMM, ±HH or Z, where Z represents UTC, Year must be between 0001 and 9999.\nDates must be a date string in the format 'YYYY-MM-DD'. Year must be between 1 and 9999. "
            oneOf:
            - $ref: '#/components/schemas/TextProperty'
            - $ref: '#/components/schemas/PrimitiveProperty'
            - $ref: '#/components/schemas/CDFExternalIdReference'
            - $ref: '#/components/schemas/ViewDirectNodeRelation'
            - $ref: '#/components/schemas/EnumProperty'
    RangeValue:
      title: rangeBound
      description: Value you wish to find in the provided property using a range clause.
      oneOf:
      - type: string
        title: string
      - type: number
        title: number
      - type: integer
        title: integer
    ParameterizedPropertyValueV3:
      title: parameter
      description: A parameterized value
      type: object
      required:
      - parameter
      properties:
        parameter:
          type: string
    DirectRelationReference:
      type: object
      description: Reference to the node pointed to by the direct relation. The reference consists of a space and an external-id.
      required:
      - space
      - externalId
      properties:
        space:
          $ref: '#/components/schemas/SpaceSpecification'
        externalId:
          $ref: '#/components/schemas/NodeOrEdgeExternalId'
    DMSFilterProperty:
      title: property
      description: "A reference to either a DMS base property or a container property.\nFor nodes the DMS base properties are `instanceType`, `version`,\n`space`, `externalId`, `type`, `createdTime`, `lastUpdatedTime`,\nand `deletedTime`. For edges the DMS base properties\nare all of the node base properties with the addition of\n`startNode` and `endNode`.\n\nReferences to DMS base properties are on the form\n`[\"identifier\"]`, `[\"node\", \"identifier\"]` or `[\"edge\", \"identifier\"]` where\n`identifier` is a DMS base property.\n\nContainer properties can be referenced either through a view\n or through the container where it is defined.\n- To reference a property through the container where it\n    is defined the format is\n    `[\"space\", \"externalId\", \"identifier\"]` where `space`,\n    `externalId` is the space and\n    externalId of the container and `identifier` is one of the\n    property identifiers defined in the container.\n- To reference a property through one of the views mapping it the format\n  is `[\"space\", \"externalId/version\", \"identifier\"]`\n  where `space`, `externalId`, `version` is the space, externalId,\n  and version of the view respectively, and `identifier` is one of the\n  property identifiers defined in the view.\n"
      type: array
      minItems: 1
      items:
        type: string
    ViewCommon:
      type: object
      required:
      - space
      - version
      properties:
        space:
          description: Id of the space that the view belongs to
          allOf:
          - $ref: '#/components/schemas/SpaceSpecification'
        name:
          type: string
          description: Readable name, meant for use in UIs
          maxLength: 255
        description:
          type: string
          description: Description. Intended to describe the content, and use, of this view.
          maxLeng

# --- truncated at 32 KB (81 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cognite/refs/heads/main/openapi/cognite-views-api-openapi.yml