Sorry, no results found for "".

Show examples in:
Javascript HTTP
Endpoint info
Available examples

Content Management API > Model filter

Create a new filter

Body parameters

id string Optional

RFC 4122 UUID of filter expressed in URL-safe base64 format

Example: "FF-P5of6Qp-DD2w0xoaa6Q"
name string Required

The name of the filter

Example: "Draft posts"
filter object Optional

The actual filter. It follows the form of the filter query parameter of the List all records endpoint.

Example: { query: "foo bar", fields: { _status: { eq: "draft" }, title: { matches: { pattern: "qux", case_sensitive: "false", regexp: "false" }, }, }, }
columns Optional

The columns to show with this filter

Type: Array<object>, null
Example: [ { name: "_preview", width: 0.6 }, { name: "slug", width: 0.1 }, { name: "_status", width: 0.1 }, { name: "_updated_at", width: 0.2 }, ]
name string Required

Can be either the API key of a model's field, or one of the following meta columns: id, _preview, _updated_at, _created_at, _creator, _status, _published_at, _first_published_at, _publication_scheduled_at, _unpublishing_scheduled_at, position (only for sortable models), `_stage (only for models associated with a workflow).

width number Required

The percentage width for the column (float, from 0 to 1.0)

order_by string, null Optional

The ordering to apply with this filter, or null for the default model ordering. It follows the form of the order_by query parameter of the List all records endpoint.

Example: "_updated_at_ASC"
shared boolean Optional

Whether it's a shared filter or not

item_type Required

Model associated with the filter

Returns

Returns a resource object of type item_type_filter

Examples

import { buildClient } from "@datocms/cma-client-node";
async function run() {
const client = buildClient({ apiToken: process.env.DATOCMS_API_TOKEN });
const itemTypeFilter = await client.itemTypeFilters.create({
name: "Draft posts",
item_type: { type: "item_type", id: "DxMaW10UQiCmZcuuA-IkkA" },
});
// Check the 'Returned output' tab for the result ☝️
console.log(itemTypeFilter);
}
run();
{
id: "FF-P5of6Qp-DD2w0xoaa6Q",
name: "Draft posts",
filter: {
query: "foo bar",
fields: {
_status: { eq: "draft" },
title: {
matches: { pattern: "qux", case_sensitive: "false", regexp: "false" },
},
},
},
columns: [
{ name: "_preview", width: 0.6 },
{ name: "slug", width: 0.1 },
{ name: "_status", width: 0.1 },
{ name: "_updated_at", width: 0.2 },
],
order_by: "_updated_at_ASC",
shared: true,
item_type: { type: "item_type", id: "DxMaW10UQiCmZcuuA-IkkA" },
}