> ## Documentation Index
> Fetch the complete documentation index at: https://sidenet.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Refresh dashboard

> Re-runs every data source of the dashboard (no model involved) with the given filter values — the last refresh's when omitted — and stores the result. By default the call returns at once with `202` and the run id; poll `GET /v1/dashboards/{id}/runs/{runId}` (or listen for `workflow.run.finished` on `GET /v1/events`) and then read the dashboard again. `wait: true` answers once the refresh is over with the dashboard's data. A refresh with the same filters started within the last seconds is reused rather than started again. A session token refreshes with its user's credentials; an API key names the user with X-User-Id and may send `runtimeAuth`.



## OpenAPI

````yaml /api-reference/openapi.json post /v1/dashboards/{id}/refresh
openapi: 3.1.0
info:
  title: Sidenet API
  version: 1.0.0
  description: >-
    Sidenet HTTP endpoints exposed by the Sidenet Studio. All routes require an
    api key that can be generated through the studio in studio.sidenet.ai.
servers:
  - url: https://api.sidenet.ai
security:
  - bearerAuth: []
paths:
  /v1/dashboards/{id}/refresh:
    post:
      tags:
        - Dashboards
      summary: Refresh dashboard
      description: >-
        Re-runs every data source of the dashboard (no model involved) with the
        given filter values — the last refresh's when omitted — and stores the
        result. By default the call returns at once with `202` and the run id;
        poll `GET /v1/dashboards/{id}/runs/{runId}` (or listen for
        `workflow.run.finished` on `GET /v1/events`) and then read the dashboard
        again. `wait: true` answers once the refresh is over with the
        dashboard's data. A refresh with the same filters started within the
        last seconds is reused rather than started again. A session token
        refreshes with its user's credentials; an API key names the user with
        X-User-Id and may send `runtimeAuth`.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                filters:
                  type: object
                  additionalProperties: true
                  description: >-
                    Filter values by key; a date range is `{ preset }` or `{
                    from, to }`.
                  example:
                    range:
                      preset: last_7_days
                    property: BER
                wait:
                  type: boolean
                  description: >-
                    Answer once the refresh is over (default false → 202 with
                    the run id).
      responses:
        '200':
          description: 'The refresh is over (wait: true)'
          content:
            application/json:
              schema:
                type: object
                properties:
                  run_id:
                    type: string
                    format: uuid
                  status:
                    type: string
                    enum:
                      - succeeded
                      - failed
                  error:
                    type: string
                    nullable: true
                  data:
                    type: object
                    properties:
                      run_id:
                        type: string
                        format: uuid
                      status:
                        type: string
                        enum:
                          - running
                          - succeeded
                          - failed
                      started_at:
                        type: string
                        format: date-time
                      refreshed_at:
                        type: string
                        format: date-time
                        nullable: true
                      filters:
                        type: object
                        additionalProperties: true
                        description: The raw filter values of this run.
                      panels:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                            kind:
                              type: string
                              enum:
                                - stats
                                - chart
                                - table
                                - text
                            title:
                              type: string
                            span:
                              type: integer
                              description: Columns of 12.
                            height:
                              type: string
                              enum:
                                - sm
                                - md
                                - lg
                            component:
                              type: object
                              nullable: true
                              description: >-
                                The rendered payload, in the chat tool-call part
                                shape: `{ toolCallId, toolName: "showStats" |
                                "showChart" | "showTable", args, result }`.
                                `args` is what the SDK renders.
                            markdown:
                              type: string
                              nullable: true
                              description: Text panels.
                      error:
                        type: string
                        nullable: true
                    nullable: true
        '202':
          description: The refresh is running
          content:
            application/json:
              schema:
                type: object
                properties:
                  run_id:
                    type: string
                    format: uuid
                  status:
                    type: string
                    enum:
                      - running
                  reused:
                    type: boolean
                    description: >-
                      True when a running refresh with the same filters was
                      joined instead of started.
        '404':
          description: Not found
      security:
        - bearerAuth: []
        - sessionToken: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        Organization API key, generated in studio.sidenet.ai. Backend only —
        never in a browser.
    sessionToken:
      type: http
      scheme: bearer
      description: >-
        Session token (`snat_…`) minted by POST /v1/token. Carries the
        organization and the end user; safe in a browser.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.