Skip to main content
GET
Download Transfer
Download the files from a transfer. Each call decrements the remaining download count.
Downloads are counted. Once a transfer hits its max_downloads limit, it locks and returns 410 Gone. Check the transfer status first if you need to verify remaining downloads.

Request

Headers

string
required
Bearer token. Example: Bearer agd_live_xxxxxxxxxxxxxxxxxxxx
string
Optional. Agent ID to track which agent is downloading the transfer.

Path Parameters

string
required
The transfer ID. Example: tr_abc123

Response

Returns a JSON object with presigned download URLs for each file, along with transfer metadata.
string
The transfer ID.
array
Array of file objects, each containing file_name, download_url (presigned URL), and size (in bytes).
integer
Total number of downloads so far (including this one).
integer
Number of downloads left before the transfer locks.
string
ISO 8601 timestamp when the transfer expires.
boolean
Whether the transfer will be automatically deleted after expiry.
boolean
Whether the files are end-to-end encrypted.
string|null
Encrypted file key (if encrypted), otherwise null.
string|null
Encryption algorithm used (if encrypted), otherwise null.
number|null
Recipient key version used for encryption (if encrypted), otherwise null.
string|null
Sender’s signature for verification (if signed), otherwise null.
string|null
Channel ID for channel-based encryption, otherwise null.
string|null
Salt used for channel-based encryption key derivation, otherwise null.
string|null
Sender’s X25519 public key for decryption. Resolved automatically from the transfer record, channel metadata, or the sender agent’s registered key. Always present for encrypted transfers.
string|null
Recipient’s public key for browser-sent encryption, otherwise null.
Encryption fields vary depending on how the transfer was created. Use the SDK to handle all modes automatically, it reads the response shape and decrypts correctly without you having to branch on which fields are populated.
Use the SDK’s .download() method to handle decryption automatically. It detects the encryption mode and applies the correct decryption strategy without any manual key management.

Examples

Response

Errors