<!-- Generated from https://developers.superfrete.com/openapi.yaml (operationId: getLabelPrintUrl). -->

# Gerar link de impressão

> `POST /api/v0/tag/print` · Referência interativa: https://developers.superfrete.com/referencia#getLabelPrintUrl

- **Method:** `POST`
- **Path:** `/api/v0/tag/print`
- **Operation ID:** `getLabelPrintUrl`
- **Tags:** Etiquetas

Gera um link para um PDF com as etiquetas dos pedidos informados. Entram no PDF só as etiquetas pagas que ainda aguardam postagem (`released`); as outras são ignoradas.

O tamanho do papel segue a preferência da conta: A4 por padrão. Para imprimir em A6 (impressora térmica, como a Zebra), ative a opção na conta:

1. Abra [Etiquetas](https://web.superfrete.com/#/minhas-etiquetas) no painel.
2. Clique em **Configurações**.
3. Ative **A6 (Zebra)**.

## Effective servers

- `https://sandbox.superfrete.com`

  Sandbox (testes, etiquetas sem validade)
- `https://api.superfrete.com`

  Produção

## Authentication

- **bearerAuth**: HTTP bearer (`JWT`)

  Token de acesso da SuperFrete, no header `Authorization: Bearer {token}`.
  - **Integração da própria loja:** gere o token no painel, em **Integrações** ([produção](https://web.superfrete.com/#/integrations) ou [sandbox](https://sandbox.superfrete.com/#/integrations)).
  - **Plataforma que conecta várias contas:** obtenha um token por seller com o fluxo OAuth 2.0 ([`exchangeOAuthToken`](https://developers.superfrete.com/referencia/md/exchangeOAuthToken.md)).

  O token não expira e dá acesso a todas as rotas da API para a conta; não há escopos. Ele deixa de valer quando a integração é removida no painel. O token de sandbox só funciona no sandbox, e o de produção só em produção.

## Header parameters

- **`User-Agent` (required)**: `string`

  Nome da sua aplicação com um e-mail de contato técnico, no formato `Aplicação (email@exemplo.com)`. Hoje só [Listar pedidos](https://developers.superfrete.com/referencia/md/listOrders.md) recusa um valor fora desse formato, mas envie em todas as rotas.

  **Example:**

  ```json
  "MinhaLoja (dev@minhaloja.com.br)"
  ```

## Request body

**Required:** `true`

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

- **`orders` (required)**: `array of string`, minItems: `1`

  IDs dos pedidos cujas etiquetas vão para o PDF.

**Example:**

```json
{
  "orders": [
    "r8p3dhqjn4I0tBpnvkpU",
    "01JK6D99A7SVYXV03C3ZFS7CXA"
  ]
}
```

## Responses

### 200 Link do PDF.

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

- **`url` (required)**: `string`, format: `uri`

**Example:**

```json
{
  "url": "https://etiqueta.superfrete.com/_etiqueta/pdf/Jx8kq2LmN4pR7sT1vW3y?format=A4"
}
```

### 400 `orders` ausente.

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

schema: `ValidationError`

Um ou mais campos da requisição são inválidos.

- **`errors` (required)**: `object`

  Mapa do campo (ex.: `to.postal_code`) para a lista de mensagens de erro desse campo.

  **Additional properties:**

  `array of string`
- **`message` (required)**: `string`

  Sempre `Ocorreu um ou mais erros.`

**Example:**

```json
{
  "message": "Ocorreu um ou mais erros.",
  "errors": {
    "orders": [
      "É necessário enviar ao menos uma etiqueta para gerar o PDF"
    ]
  }
}
```

### 401 Token ausente, inválido, removido ou de outro ambiente.

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

schema: `Error`

Erro de regra de negócio ou de autenticação. `message` e `error` trazem o mesmo texto.

- **`error` (required)**: `string`

  Mesmo conteúdo de `message`, mantido por compatibilidade.
- **`message` (required)**: `string`

  Mensagem legível do erro.

**Example:**

```json
{
  "message": "Token inválida!",
  "error": "Token inválida!"
}
```

### 500 Erro interno. O corpo pode ser um objeto de erro ou só um texto JSON com a mensagem.

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

**One of:**

- *Schema `Error` is shown above.*
- `string`

**Example:**

```json
{
  "message": "",
  "error": ""
}
```

## Schemas

- `Error` — shown above.
- `ValidationError` — shown above.
