---
title: "Obter URLs de download do documento"
method: GET
path: "/v1/transactions/{transactionId}/download"
tags: ["Documents"]
---

# Obter URLs de download do documento

`GET /v1/transactions/{transactionId}/download`

## Request

- Base URL: `https://api.signdocs.com.br`
- URL: `https://api.signdocs.com.br/v1/transactions/{transactionId}/download`
- Auth: HTTP bearer

Retorna URLs pré-assinadas para download do documento original e do documento assinado.
As URLs expiram em 1 hora.

Requer scope `transactions:read`.

## Path parameters

- `transactionId` string, required

## Response `200`

URLs de download geradas com sucesso.

- DocumentDownloadResponse: Resposta com URLs de download do documento. Para documentos PDF, retorna `signedUrl` (PDF com assinatura embutida). Para documentos genéricos, retorna `signatureUrl` (arquivo .p7s CAdES enveloping, com conteúdo anexado).
  - `transactionId` string, required
  - `documentHash` string
  - `documentFormat` 'pdf' | 'generic': Formato do documento.
  - `originalUrl` string, uri: URL pré-assinada para download do documento original.
  - `signedUrl` string, uri: URL pré-assinada para download do PDF assinado (apenas para `documentFormat=pdf`).
  - `signatureUrl` string, uri: URL pré-assinada para download do arquivo .p7s (CAdES enveloping, conteúdo anexado). Retornado apenas para `documentFormat=generic`. Verifique com: `openssl cms -verify -inform DER -in signature.p7s -CAfile icpbrasil-roots.pem`
  - `expiresIn` integer, required: Tempo de expiração das URLs em segundos.

## Other responses

- `401`: Autenticação ausente ou inválida.
- `403`: Permissões insuficientes para a operação solicitada. Inclui `purpose: "ACTION_AUTHENTICATION"` sem `featureFlags.trustSessionsEnabled`. A verificação é pelo `purpose`, não pela rota: vale em `/v1/transactions`, `/v1/signing-sessions` e `/v1/envelopes/{envelopeId}/sessions`, além de `/v1/trust-sessions`. O remédio é habilitar a flag para o tenant e provisionar a cota `monthlyTrustSessions`.
- `404`: Recurso não encontrado.
- `500`: Erro interno do servidor.

---

[API](https://skmtc.dev/signdocs/apis/signdocs-brasil-external-api.md) · [All operations](https://skmtc.dev/signdocs/apis/signdocs-brasil-external-api/llms.txt) · [OpenAPI document](https://skmtc.dev/signdocs/apis/signdocs-brasil-external-api/revisions/2d3805aed161?raw)
