Sync nodes/edges

Subscribe to changes for nodes and edges in a project, matching a supplied filter. This endpoint will always return a NextCursor. The sync specification mirrors the query interface, but sorting is not currently supported. For more information, see Query language.

Securityoidc-token or oauth2-client-credentials or oauth2-open-industrial-data or oauth2-auth-code
Request
Request Body schema: application/json
required

Change filter specification

required
object [ 1 .. 50 ] properties
object <= 50 properties

Cursors returned from the previous sync request. These cursors match the result set expressions you specified in the with clause for the sync.

required
object [ 1 .. 50 ] properties
object

Parameters to return

includeTyping
boolean (IncludeTyping)

Should we return property type information as part of the result?

Responses
200

Matching nodes and edges

400

The response for a failed request.

post/models/instances/sync
Request samples
from cognite.client.data_classes.data_modeling.instances import InstanceSort
from cognite.client.data_classes.data_modeling.query import Query, Select, NodeResultSetExpression, EdgeResultSetExpression, SourceSelector
from cognite.client.data_classes.filters import Range, Equals
from cognite.client.data_classes.data_modeling.ids import ViewId
movie_id = ViewId("mySpace", "MovieView", "v1")
actor_id = ViewId("mySpace", "ActorView", "v1")
query = Query(
    with_ = {
        "movies": NodeResultSetExpression(filter=Range(movie_id.as_property_ref("releaseYear"), lt=2000)),
        "actors_in_movie": EdgeResultSetExpression(from_="movies", filter=Equals(["edge", "type"], {"space": movie_id.space, "externalId": "Movie.actors"})),
        "actors": NodeResultSetExpression(from_="actors_in_movie"),
    },
    select = {
        "actors": Select(
            [SourceSelector(actor_id, ["name"])], sort=[InstanceSort(actor_id.as_property_ref("name"))]),
    },
)
res = client.data_modeling.instances.sync(query)
query.cursors = res.cursors
res_new = client.data_modeling.instances.sync(query)
Response samples
application/json
{
  • "items": {
    • "result-expression1": [
      ],
    • "result-expression2": [
      ]
    },
  • "typing": {
    • "result-expression1": {
      },
    • "result-expression2": {
      }
    },
  • "nextCursor": {
    • "cursor-name1": "string",
    • "cursor-name2": "string"
    }
}