const response = await client.views.list();
// Record views are excluded by default; opt in with `usedFor`
const recordViews = await client.views.list({ usedFor: ['record'] });
// List every kind of view
const allViews = await client.views.list({
usedFor: ['node', 'edge', 'all', 'record'],
});
const response = await client.views.retrieve([
{
space: "my_space",
externalId: "my_external_id",
version: "my_optional_version"
}
]);
const viewDefinition = {
"externalId": "string",
"space": "string",
"name": "string",
"description": "string",
"filter": {
"and": []
},
"implements": [
{
"type": "view",
"space": "string",
"externalId": "string",
"version": "string"
}
],
"version": "string",
"properties": {}
};
const response = await client.views.upsert([
viewDefinition
]);
// Record views target a stream (usedFor: 'record') and require streamId
const recordViewDefinition = {
"externalId": "my_record_view",
"space": "my_space",
"version": "1",
"streamId": ["my_stream"],
"properties": {
"temperature": {
"container": {
"type": "container",
"externalId": "my_record_container",
"space": "my_space"
},
"containerPropertyIdentifier": "temperature"
}
}
};
const recordResponse = await client.views.upsert([
recordViewDefinition
]);
Delete Views