---
title: "Load a request Kanban board (1D or 2D), single call"
method: POST
path: "/api/v1/requests/kanban"
tags: ["requests"]
---

# Load a request Kanban board (1D or 2D), single call

`POST /api/v1/requests/kanban`

### Filtering

Use the `filters` field to narrow results. Pass an empty array or omit the field to retrieve all records.

Each filter object has the following fields:

| Field | Type | Description |
|---|---|---|
| `attribute` | string | The field to filter on (see Supported attributes below) |
| `operator` | string | Comparison operator (see Available operators below) |
| `values` | array | One or more `{ "value": <scalar> }` objects |

**Supported attributes**

| Attribute | Typical operator | Description |
|---|---|---|
| `status` | `IS_ANY_OF` | Ticket status (e.g. `OPEN`, `IN_PROGRESS`, `RESOLVED`, `CLOSED`). |
| `type` | `IS_ANY_OF` | Request type (e.g. `INCIDENT`, `SERVICE_REQUEST`, `GENERAL_REQUEST`). |
| `assignee_id` | `IS_ANY_OF` | Assigned agent user ID. |
| `requester_id` | `IS_ANY_OF` | Requester user ID. |
| `created_at` | `IS_BETWEEN` | Creation timestamp (ISO 8601). Use for date range filtering. |
| `updated_at` | `IS_BETWEEN` | Last-updated timestamp (ISO 8601). |

**Available operators**

| Operator | Meaning |
|---|---|
| `EQUALS` | Exact match |
| `NOT_EQUALS` | Exclude exact match |
| `IN` / `IS_ANY_OF` | Match any value in the list |
| `IS_NOT_ANY_OF` | Exclude all listed values |
| `IS_BETWEEN` | Inclusive range — pass exactly two values: `[start, end]` |
| `IS_ON_OR_BEFORE` / `IS_ON_OR_AFTER` | Date/time boundary comparisons |
| `CONTAINS` / `TEXT_CONTAINS` | Substring or set membership |
| `IS_NULL` / `IS_NOT_NULL` | Null checks — `values` array can be empty |
| `STARTS_WITH` / `ENDS_WITH` | String prefix/suffix match |

**Example**

```json
[
  {
    "attribute": "status",
    "operator": "IS_ANY_OF",
    "values": [
      {
        "value": "OPEN"
      },
      {
        "value": "IN_PROGRESS"
      }
    ]
  },
  {
    "attribute": "created_at",
    "operator": "IS_BETWEEN",
    "values": [
      {
        "value": "2024-01-01T00:00:00Z"
      },
      {
        "value": "2024-12-31T23:59:59Z"
      }
    ]
  }
]
```

## Headers

- `X-Api-Key` string, required
- `X-Workspace-Id` string

## Request body

- object
  - `view_name` string
  - `group_by` string[], required
  - `filters` ApiV1RequestsKanbanPostRequestBodyContentApplicationJsonSchemaFiltersItems[]
    - `attribute` string
    - `operator` 'EQUALS' | 'NOT_EQUALS' | 'CONTAINS' | 'NOT_CONTAINS' | 'IN' | 'NOT_IN' | 'GREATER_THAN' | 'LESS_THAN' | 'GREATER_THAN_EQUALS' | 'LESS_THAN_EQUALS' | 'IS_BETWEEN' | 'IS_NULL' | 'IS_NOT_NULL' | 'STARTS_WITH' | 'ENDS_WITH' | 'TEXT_CONTAINS' | 'TEXT_DOES_NOT_CONTAINS' | 'IS_ANY_OF' | 'IS_NOT_ANY_OF' | 'IS_EXACTLY' | 'IS_ON_OR_BEFORE' | 'IS_ON_OR_AFTER' | 'IS_WITHIN'
    - `values` ApiV1RequestsKanbanPostRequestBodyContentApplicationJsonSchemaFiltersItemsValuesItems[]
      - `value` ApiV1RequestsKanbanPostRequestBodyContentApplicationJsonSchemaFiltersItemsValuesItemsValue
      - `nested_filter` unknown
  - `sort` string
  - `page_size` integer
  - `workspace_id` integer

## Response `200`

Successful response

- RequestsPostapiV1RequestsKanbanResponse200 — Empty response body

---

[API](https://skmtc.net/atomicwork/apis/atomicwork-public-api.md) · [All operations](https://skmtc.net/atomicwork/apis/atomicwork-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/atomicwork/atomicwork-public-api/revisions/2e7047b35062/schema)
