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

# Baixar documento

> Gera uma URL assinada e temporária para baixar um documento de contestação já enviado.

`GET /chargebacks/:id/documents/:documentId/download`

Faz parte do recurso [Chargebacks](/pt-BR/chargebacks) — as etapas do caso e a janela de defesa
estão lá.

A resposta **não é o arquivo**: é um JSON com uma `url` assinada, que você usa para baixá-lo.

<Note>
  **A URL vale por 1 hora e dispensa autenticação.** Ela já carrega a assinatura, então quem a
  receber baixa o arquivo sem `x-api-key` — dá para entregá-la direto ao navegador do usuário. Pela
  mesma razão, trate-a como credencial: não a registre em log nem a guarde em banco. Expirada,
  chame o endpoint de novo.
</Note>

<Warning>
  **Os dois IDs precisam combinar.** O documento tem de pertencer ao chargeback informado no
  caminho; caso contrário a resposta é `404`, mesmo que os dois existam na sua conta.
</Warning>

<Note>
  Para saber **quais** documentos existem — e os respectivos `documentId` —, use
  [`GET /chargebacks/:id/documents`](/pt-BR/chargebacks/documents). Consultar e baixar continuam
  possíveis depois que a janela de defesa fecha; o que expira é o
  [envio](/pt-BR/chargebacks/documents-post).
</Note>


## OpenAPI

````yaml openapi/psp.json GET /chargebacks/{id}/documents/{documentId}/download
openapi: 3.0.3
info:
  title: Z2Pay PSP API
  version: 1.0.0
  description: API pública do PSP — autenticação via API Key (Credential)
servers:
  - url: https://api.sandbox.z2pay.com/v1
    description: Sandbox
  - url: https://api.z2pay.com/v1
    description: Produção
security: []
tags:
  - name: Cards
    description: Cartões salvos de um cliente
  - name: Chargebacks
    description: Gerenciamento de chargebacks
  - name: Customers
    description: Gerenciamento de clientes (compradores)
  - name: Fees
    description: Tabela de taxas da conta (pix, boleto, cartão, saque, refund, chargeback)
  - name: Recipients
    description: Gerenciamento de recebedores (sellers/merchants que recebem repasses)
  - name: Refunds
    description: Gerenciamento de reembolsos e estornos
  - name: Splits
    description: Regras de divisão do valor de uma venda entre recebedores
  - name: Transactions
    description: Gerenciamento de transações e payments
  - name: Wallets
    description: Saldo, extrato e resumo da carteira de um recebedor, agrupados por moeda
  - name: Webhooks
    description: Configuração, gerenciamento e histórico de entregas de webhooks
  - name: Withdrawals
    description: Solicitação e acompanhamento de saques (payouts) por recipient
paths:
  /chargebacks/{id}/documents/{documentId}/download:
    get:
      tags:
        - Chargebacks
      summary: Download de documento
      description: Retorna URL assinada para download do documento.
      operationId: ChargebackController_downloadDocument
      parameters:
        - name: documentId
          in: path
          required: true
          description: ID do documento
          schema:
            type: string
        - name: id
          in: path
          required: true
          description: ID do chargeback
          schema:
            type: string
      responses:
        '200':
          description: URL assinada para download
          content:
            application/json:
              schema:
                type: object
                properties:
                  url:
                    type: string
                    description: >-
                      URL assinada e temporária para baixar o arquivo. Válida
                      por 1 hora e dispensa `x-api-key`.
              example:
                url: >-
                  https://storage.z2pay.com.br/chargebacks/cbk_v5wylkgvv2rls5tihmuybrz9v/cbkd_h4rk29xw1m8qzv3f7pnsldk29.pdf?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Expires=3600&X-Amz-Signature=a1b2c3d4e5f6
        '401':
          description: Chave de API ausente, malformada ou inválida
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                        description: >-
                          Identificador estável do erro. É por ele que você deve
                          ramificar, não pela mensagem.
                      message:
                        type: string
                        description: >-
                          Descrição legível. Pode mudar sem aviso e não deve ser
                          usada em condicional.
              example:
                error:
                  code: UNAUTHORIZED
                  message: Invalid API key
        '404':
          description: Documento não encontrado
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                        description: >-
                          Identificador estável do erro. É por ele que você deve
                          ramificar, não pela mensagem.
                      message:
                        type: string
                        description: >-
                          Descrição legível. Pode mudar sem aviso e não deve ser
                          usada em condicional.
              example:
                error:
                  code: NOT_FOUND
                  message: Document not found
      security:
        - apiKey: []
components:
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key
      description: API Key da Credential (gerada no Backoffice)

````