Create Grid

Create a new dynamic table as a page resource.

Request

POST

https://api.wiki.yandex.net/v1/grids

Body

application/json
{
  "title": "example",
  "page": {
    "id": 0,
    "slug": "example"
  }
}

Name

Description

page

Type: PageIdentity

Page identifier

Example
{
  "id": 0,
  "slug": "example"
}

title

Type: string

Min length: 1

Max length: 255

Example: example

PageIdentity

Page identifier

Name

Description

id

Type: integer

Page ID. Either id or slug is required. If both are provided, id takes priority and slug is ignored

slug

Type: string

Page address (slug). Either id or slug is required

Example: example

Example
{
  "id": 0,
  "slug": "example"
}

Responses

200 OK

OK

Body

application/json
{
  "id": "example",
  "created_at": "2025-01-01T00:00:00Z",
  "title": "example",
  "page": {
    "id": 0,
    "slug": "example"
  },
  "structure": {
    "default_sort": [
      {
        "slug": "example",
        "title": "example",
        "direction": null
      }
    ],
    "columns": [
      {
        "id": "example",
        "slug": "example",
        "title": "example",
        "type": null,
        "required": true,
        "width": 0,
        "width_units": null,
        "pinned": null,
        "color": null,
        "multiple": true,
        "format": null,
        "ticket_field": null,
        "select_options": [
          null
        ],
        "mark_rows": true,
        "description": "example"
      }
    ]
  },
  "rich_text_format": "yfm",
  "rows": [
    {
      "id": "example",
      "row": [
        0
      ],
      "pinned": true,
      "color": "blue"
    }
  ],
  "revision": "example",
  "user_permissions": [
    "create_page"
  ],
  "attributes": {
    "created_at": "2025-01-01T00:00:00Z",
    "modified_at": "2025-01-01T00:00:00Z"
  },
  "template_id": 0
}

Name

Description

created_at

Type: string<date-time>

Date and time the table was created

Example: 2025-01-01T00:00:00Z

id

Any of 2 types
  • Type: string<uuid4>

    Example: example

  • Type: integer

Unique table identifier

Example: example

page

All of 1 type
  • PageIdentity

    Type: PageIdentity

    Page identifier

    Example
    {
      "id": 0,
      "slug": "example"
    }
    

The page the table is attached to

Example
{
  "id": 0,
  "slug": "example"
}

revision

Type: string

Table revision

Example: example

rich_text_format

All of 1 type
  • TextFormat

    Type: TextFormat

    Text format:

    • yfm — Yandex Flavored Markdown
    • wom — Wiki Old Markup (the old markup)
    • plain — plain text

    Enum: yfm, wom, plain

The rich-text content format in the table

Example: yfm

rows

Type: GridRowSchema[]

Table rows

Example
[
  {
    "id": "example",
    "row": [
      0
    ],
    "pinned": true,
    "color": "blue"
  }
]

structure

All of 1 type
  • GridStructureSchema

    Type: GridStructureSchema

    Dynamic table structure

    Example
    {
      "default_sort": [
        {
          "slug": "example",
          "title": "example",
          "direction": "asc"
        }
      ],
      "columns": [
        {
          "id": "example",
          "slug": "example",
          "title": "example",
          "type": "string",
          "required": true,
          "width": 0,
          "width_units": "%",
          "pinned": "left",
          "color": "blue",
          "multiple": true,
          "format": "yfm",
          "ticket_field": "assignee",
          "select_options": [
            "example"
          ],
          "mark_rows": true,
          "description": "example"
        }
      ]
    }
    

Table structure (columns, data types)

Example
{
  "default_sort": [
    {
      "slug": "example",
      "title": "example",
      "direction": "asc"
    }
  ],
  "columns": [
    {
      "id": "example",
      "slug": "example",
      "title": "example",
      "type": "string",
      "required": true,
      "width": 0,
      "width_units": "%",
      "pinned": "left",
      "color": "blue",
      "multiple": true,
      "format": "yfm",
      "ticket_field": "assignee",
      "select_options": [
        "example"
      ],
      "mark_rows": true,
      "description": "example"
    }
  ]
}

title

Type: string

Table title

Example: example

attributes

All of 1 type
  • GridAttributesSchema

    Type: GridAttributesSchema

    Dynamic table attributes (metadata)

    Example
    {
      "created_at": "2025-01-01T00:00:00Z",
      "modified_at": "2025-01-01T00:00:00Z"
    }
    

Not returned by default
Specify attributes in the ?fields=attributes, ... list to include it in the response.
Returns additional attributes of the dynamic table.

Example
{
  "created_at": "2025-01-01T00:00:00Z",
  "modified_at": "2025-01-01T00:00:00Z"
}

template_id

Type: integer

user_permissions

Type: UserPermission[]

Not returned by default

Specify user_permissions in the ?fields=user_permissions, ... list to include it in the response.
Returns the access permissions of the page that owns the dynamic table.

Example
[
  "create_page"
]

SortDirection

Sort direction:

  • asc — ascending (from smallest to largest, from A to Z)
  • desc — descending (from largest to smallest, from Z to A)

Type: string

Enum: asc, desc

ColumnSortSchema

Column sorting schema in a dynamic table

Name

Description

direction

All of 1 type
  • SortDirection

    Type: SortDirection

    Sort direction:

    • asc — ascending (from smallest to largest, from A to Z)
    • desc — descending (from largest to smallest, from Z to A)

    Enum: asc, desc

Sort direction

Example: asc

slug

Type: string

Unique text identifier of the column

Example: example

title

Type: string

Column title

Example: example

Example
{
  "slug": "example",
  "title": "example",
  "direction": "asc"
}

ColumnType

An enumeration.

Type: string

Enum: string, number, date, select, staff, checkbox, ticket, ticket_field

WidthUnits

An enumeration.

Type: string

Enum: %, px

ColumnPinTypes

An enumeration.

Type: string

Enum: left, right

BGColor

An enumeration.

Type: string

Enum: blue, yellow, pink, red, green, mint, grey, orange, magenta, purple, copper, ocean

TextFormat

Text format:

  • yfm — Yandex Flavored Markdown
  • wom — Wiki Old Markup (the old markup)
  • plain — plain text

Type: string

Enum: yfm, wom, plain

TicketField

An enumeration.

Type: string

Enum: assignee, components, created_at, deadline, description, end, estimation, fixversions, followers, last_comment_updated_at, original_estimation, parent, pending_reply_from, priority, project, queue, reporter, resolution, resolved_at, sprint, start, status, status_start_time, status_type, storypoints, subject, tags, type, updated_at, votes

ColumnSchema

Dynamic table column schema

Name

Description

required

Type: boolean

Whether the column is required

slug

Type: string

Unique text identifier of the column (used in formulas and the API)

Example: example

title

Type: string

Column title (displayed in the interface)

Example: example

type

All of 1 type
  • ColumnType

    Type: ColumnType

    An enumeration.

    Enum: string, number, date, select, staff, checkbox, ticket, ticket_field

Column data type

Example: string

color

All of 1 type
  • BGColor

    Type: BGColor

    An enumeration.

    Enum: blue, yellow, pink, red, green, mint, grey, orange, magenta, purple, copper, ocean

Column background color

Example: blue

description

Type: string

Column description

Example: example

format

All of 1 type
  • TextFormat

    Type: TextFormat

    Text format:

    • yfm — Yandex Flavored Markdown
    • wom — Wiki Old Markup (the old markup)
    • plain — plain text

    Enum: yfm, wom, plain

For text only; text format (None means plain text without formatting)

Example: yfm

id

Type: string

Unique column identifier

Example: example

mark_rows

Type: boolean

For checkbox only; marks the row as completed in the interface

multiple

Type: boolean

For select and staff only; enables multiple selection

pinned

All of 1 type
  • ColumnPinTypes

    Type: ColumnPinTypes

    An enumeration.

    Enum: left, right

Column pinning (left, right, or unpinned)

Example: left

select_options

Type: string[]

For select only; defines the available options

Example
[
  "example"
]

ticket_field

All of 1 type
  • TicketField

    Type: TicketField

    An enumeration.

    Enum: assignee, components, created_at, deadline, description, end, estimation, fixversions, followers, last_comment_updated_at, original_estimation, parent, pending_reply_from, priority, project, queue, reporter, resolution, resolved_at, sprint, start, status, status_start_time, status_type, storypoints, subject, tags, type, updated_at, votes

For ticket-field only; the ticket field from Tracker

Example: assignee

width

Type: integer

Column width

width_units

All of 1 type
  • WidthUnits

    Type: WidthUnits

    An enumeration.

    Enum: %, px

Column width units

Example: %

Example
{
  "id": "example",
  "slug": "example",
  "title": "example",
  "type": "string",
  "required": true,
  "width": 0,
  "width_units": "%",
  "pinned": "left",
  "color": "blue",
  "multiple": true,
  "format": "yfm",
  "ticket_field": "assignee",
  "select_options": [
    "example"
  ],
  "mark_rows": true,
  "description": "example"
}

GridStructureSchema

Dynamic table structure

Name

Description

columns

Type: ColumnSchema[]

Table columns

Example
[
  {
    "id": "example",
    "slug": "example",
    "title": "example",
    "type": "string",
    "required": true,
    "width": 0,
    "width_units": "%",
    "pinned": "left",
    "color": "blue",
    "multiple": true,
    "format": "yfm",
    "ticket_field": "assignee",
    "select_options": [
      "example"
    ],
    "mark_rows": true,
    "description": "example"
  }
]

default_sort

Type: ColumnSortSchema[]

Default sorting

Example
[
  {
    "slug": "example",
    "title": "example",
    "direction": "asc"
  }
]
Example
{
  "default_sort": [
    {
      "slug": "example",
      "title": "example",
      "direction": "asc"
    }
  ],
  "columns": [
    {
      "id": "example",
      "slug": "example",
      "title": "example",
      "type": "string",
      "required": true,
      "width": 0,
      "width_units": "%",
      "pinned": "left",
      "color": "blue",
      "multiple": true,
      "format": "yfm",
      "ticket_field": "assignee",
      "select_options": [
        "example"
      ],
      "mark_rows": true,
      "description": "example"
    }
  ]
}

TicketSchema

Ticket schema from Yandex Tracker

Name

Description

key

Type: string

Ticket key (for example, WIKI-123)

Example: example

resolved

Type: boolean

The ticket is resolved (closed)

Example
{
  "key": "example",
  "resolved": true
}

UserIdentity

User identifier

Name

Description

cloud_uid

Type: string

User identifier in the cloud (for the external instance)

Example: example

uid

Type: string

User identifier in Yandex (for the internal instance)

Example: example

Example
{
  "uid": "example",
  "cloud_uid": "example"
}

UserSchema

Information about the user

Name

Description

affiliation

Type: string

User affiliation (for example, yandex, external)

Example: example

display_name

Type: string

User display name

Example: example

id

Type: integer

Internal user identifier

is_dismissed

Type: boolean

The user has been dismissed

username

Type: string

User login

Example: example

identity

All of 1 type
  • UserIdentity

    Type: UserIdentity

    User identifier

    Example
    {
      "uid": "example",
      "cloud_uid": "example"
    }
    

User identifier in the system

Example
{
  "uid": "example",
  "cloud_uid": "example"
}
Example
{
  "id": 0,
  "identity": {
    "uid": "example",
    "cloud_uid": "example"
  },
  "username": "example",
  "display_name": "example",
  "is_dismissed": true,
  "affiliation": "example"
}

UnresolvedUserSchema

Schema for a user that was not found in the system

Name

Description

identity

All of 1 type
  • UserIdentity

    Type: UserIdentity

    User identifier

    Example
    {
      "uid": "example",
      "cloud_uid": "example"
    }
    

User identifier

Example
{
  "uid": "example",
  "cloud_uid": "example"
}

username

Type: string

User login

Example: example

Example
{
  "username": "example",
  "identity": {
    "uid": "example",
    "cloud_uid": "example"
  }
}

TrackerEnumField

Enumeration field from Yandex Tracker

Name

Description

display

Type: string

Displayed field value

Example: example

key

Type: string

Field value key

Example: example

Example
{
  "display": "example",
  "key": "example"
}

GridRowSchema

Dynamic table row schema

Name

Description

id

Type: string

Unique row identifier

Example: example

row

Type: array
Any of 10 types
  • Type: integer

  • Type: number

  • Type: boolean

  • Type: string

    Example: example

  • TicketSchema

    Type: TicketSchema

    Ticket schema from Yandex Tracker

    Example
    {
      "key": "example",
      "resolved": true
    }
    
  • Type: string[]

    Example
    [
      "example"
    ]
    
  • Type: array
    Any of 2 types
    • UserSchema

      Type: UserSchema

      Information about the user

      Example
      {
        "id": 0,
        "identity": {
          "uid": "example",
          "cloud_uid": "example"
        },
        "username": "example",
        "display_name": "example",
        "is_dismissed": true,
        "affiliation": "example"
      }
      
    • UnresolvedUserSchema

      Type: UnresolvedUserSchema

      Schema for a user that was not found in the system

      Example
      {
        "username": "example",
        "identity": {
          "uid": "example",
          "cloud_uid": "example"
        }
      }
      
    Example
    [
      {
        "id": 0,
        "identity": {
          "uid": "example",
          "cloud_uid": "example"
        },
        "username": "example",
        "display_name": "example",
        "is_dismissed": true,
        "affiliation": "example"
      }
    ]
    
  • UserSchema

    Type: UserSchema

    Information about the user

    Example
    {
      "id": 0,
      "identity": {
        "uid": "example",
        "cloud_uid": "example"
      },
      "username": "example",
      "display_name": "example",
      "is_dismissed": true,
      "affiliation": "example"
    }
    
  • UnresolvedUserSchema

    Type: UnresolvedUserSchema

    Schema for a user that was not found in the system

    Example
    {
      "username": "example",
      "identity": {
        "uid": "example",
        "cloud_uid": "example"
      }
    }
    
  • TrackerEnumField

    Type: TrackerEnumField

    Enumeration field from Yandex Tracker

    Example
    {
      "display": "example",
      "key": "example"
    }
    

Array of the row's cell values (the order matches the column order)

Example
[
  0
]

color

All of 1 type
  • BGColor

    Type: BGColor

    An enumeration.

    Enum: blue, yellow, pink, red, green, mint, grey, orange, magenta, purple, copper, ocean

Row background color

Example: blue

pinned

Type: boolean

The row is pinned

Example
{
  "id": "example",
  "row": [
    0
  ],
  "pinned": true,
  "color": "blue"
}

UserPermission

User access permissions for the page:

  • create_page — create subpages
  • delete — delete the page
  • edit — edit the page
  • view — view the page
  • comment — comment
  • change_authors — change authors
  • change_acl — change the access list
  • set_redirect — set a redirect
  • manage_invite — manage invitations
  • view_invite — view invitations
  • admin — administrative permissions

Type: string

Enum: create_page, delete, edit, view, comment, change_authors, change_acl, set_redirect, manage_invite, view_invite, admin

GridAttributesSchema

Dynamic table attributes (metadata)

Name

Description

created_at

Type: string<date-time>

Date and time the table was created

Example: 2025-01-01T00:00:00Z

modified_at

Type: string<date-time>

Date and time the table was last modified

Example: 2025-01-01T00:00:00Z

Example
{
  "created_at": "2025-01-01T00:00:00Z",
  "modified_at": "2025-01-01T00:00:00Z"
}
Previous