---
title: "POST /api/dashboard/{id}/pdf"
method: POST
path: "/api/dashboard/{id}/pdf"
tags: ["/api/dashboard"]
---

# POST /api/dashboard/{id}/pdf

`POST /api/dashboard/{id}/pdf`

## Request

- Base URL: `` (relative, and the document was published on a file host, not at the API’s origin)
- URL: `/api/dashboard/{id}/pdf`
- Auth: API key in header `X-API-Key`

Render Dashboard with ID to a PDF (server-side, the same way dashboard subscriptions render charts) and stream it
  back as a file download.

  `parameters` are runtime parameter overrides -- the same shape the dashcard query endpoints accept: a sequence of
  `{:id ... :value ...}` maps, or a JSON-encoded string of that sequence (the string form lets an HTML `<form>`
  action drive the download). Parameters left unspecified fall back to the dashboard's own defaults.

  `paper_size` is `"a4"` (default) or `"letter"`.

## Path parameters

- `id` integer, required

## Request body

- object
  - `paper_size` 'a4' | 'letter', nullable
  - `parameters` MetabaseParametersSchemaParameterWithValue[]
    - `default` union
      - union: A single scalar parameter value.
        - string
        - number
        - boolean
      - MetabaseLibSchemaParameterParameterValueScalar[]
        - union: A single scalar parameter value.
          - string
          - number
          - boolean
    - `id` string, required: Schema for a string that cannot be blank.
    - `name` string: Schema for a string that cannot be blank.
    - `options` MetabaseLibSchemaParameterParameterOptions: Options the frontend attaches to a parameter value.
      - `case-sensitive` boolean
      - `include-current` boolean
    - `sectionId` string: Schema for a string that cannot be blank.
    - `slug` string: Schema for a string that cannot be blank.
    - `target` union
      - unknown[]
        - unknown
      - unknown[]
        - unknown
      - unknown[]: A :text-tag parameter :target applies to parameterized text cards in viz settings
        - unknown
      - unknown[]: schema for a valid MBQL 4 :field clause
        - unknown
    - `type` 'number' | 'text' | 'date' | 'boolean' | 'date/single' | 'id' | 'category' | 'location/city' | 'location/state' | 'location/zip_code' | 'location/country' | 'date/range' | 'date/month-year' | 'date/quarter-year' | 'date/relative' | 'date/all-options' | 'temporal-unit' | 'number/!=' | 'number/<=' | 'number/=' | 'number/>=' | 'number/between' | 'string/!=' | 'string/=' | 'string/contains' | 'string/does-not-contain' | 'string/ends-with' | 'string/starts-with' | 'boolean/=': Valid parameter :type
    - `value` union
      - union: A single scalar parameter value.
        - string
        - number
        - boolean
      - MetabaseLibSchemaParameterParameterValueScalar[]
        - union: A single scalar parameter value.
          - string
          - number
          - boolean

## Response `2XX`

Successful response

- unknown

## Other responses

- `4XX`: Client error response
- `5XX`: Server error response

## Changes

- **2026-11-04** `2e178f5a7934`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/metabase/apis/metabase-api/changes/api/dashboard/:id/pdf/post.md)

---

[API](https://skmtc.dev/metabase/apis/metabase-api.md) - [All operations](https://skmtc.dev/metabase/apis/metabase-api/llms.txt) - [OpenAPI document](https://skmtc.dev/metabase/apis/metabase-api/revisions/2e178f5a7934?raw)
