# GET /api/invoicing/invoices/{invoiceId}/pdf/metadata

Invoices: Retrieves the metadata of an invoice's PDF document.

Returns the stored blob name, the suggested download file name, and the document size without
transferring the document. Rendering and caching happen on the same cache-first terms as the
download endpoint.

**Operation ID:** `GET_api_invoicing_invoices_invoiceId_pdf_metadata`

## Authorization

Requires: Invoicing.Invoices, merchant scope.

Required permissions:
- `Invoicing.Invoices`

## Parameters

| Name | In | Required | Type | Description |
| --- | --- | --- | --- | --- |
| invoiceId | path | yes | string(uuid) | The invoice identifier. |
| suppressNulls | query | no | boolean | If true, omit properties with null values. |

## Responses

### 200

The PDF document metadata.

**Content type:** `text/plain`

Schema: `WinkPGInvoicingInvoicePdfResultDto`

**Content type:** `application/json`

Schema: `WinkPGInvoicingInvoicePdfResultDto`

**Content type:** `text/json`

Schema: `WinkPGInvoicingInvoicePdfResultDto`

### 403

The caller's biller scope does not cover this invoice.

### 404

No invoice exists with the specified id.

### 401

Unauthorized

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 400

Bad Request

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 501

Not Implemented

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 500

Internal Server Error

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### default

The request failed. The body carries the standard error envelope: a machine-readable `error.code`, a human-readable `error.message`, and `error.validationErrors` when the failure was a validation rejection. See the error-code reference in this document's description for the values `error.code` can take.

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

## See also

- [All documentation](https://docs.winkpg.io/llms.txt): the machine-readable index of every public page on this site.
