---
title: "Create grid item"
method: POST
path: "/internal/v1/dashboards/{project_id}/{dashboard_id}/grid"
tags: ["Dashboards"]
---

# Create grid item

`POST /internal/v1/dashboards/{project_id}/{dashboard_id}/grid`

## Request

- Base URL: `https://api.uptrace.dev`
- URL: `https://api.uptrace.dev/internal/v1/dashboards/{project_id}/{dashboard_id}/grid`
- Auth: one of:
  - HTTP bearer
  - API key in query parameter `auth_token`
- TypeScript: <https://skmtc.dev/uptrace/apis/uptrace-json-api/docs/internal/v1/dashboards/:project_id/:dashboard_id/grid/post.ts> (a function with typed inputs; its response is checked against the schema)

Create a new grid item in the dashboard.

## Path parameters

- `project_id` integer, required
- `dashboard_id` integer, required

## Request body

- GridItemRequest
  - `title` string, required
  - `description` string
  - `dashboardKind` 'grid' | 'table', required
  - `sectionId` integer, required
  - `type` 'chart' | 'table' | 'heatmap' | 'gauge', required
  - `params` object

## Response `200`

Grid item created.

- GridItemResponse
  - `gridItem` GridItem, required
    - `id` integer, required
    - `title` string, required
    - `description` string
    - `dashboardId` integer, required
    - `dashboardKind` 'grid' | 'table', required
    - `sectionId` integer
    - `width` integer
    - `height` integer
    - `xAxis` integer
    - `yAxis` integer
    - `type` 'chart' | 'table' | 'heatmap' | 'gauge', required
    - `params` object
    - `createdAt` number
    - `updatedAt` number

## Other responses

- `400`: Invalid request
- `401`: Authentication required
- `403`: Insufficient permissions
- `404`: Resource not found
- `500`: Internal server error

---

[API](https://skmtc.dev/uptrace/apis/uptrace-json-api.md) - [All operations](https://skmtc.dev/uptrace/apis/uptrace-json-api/llms.txt) - [OpenAPI document](https://skmtc.dev/uptrace/apis/uptrace-json-api/revisions/550c8881ab9a?raw)
