---
title: "Get Attachment Download URLs Status"
method: GET
path: "/records/attachments/download-urls/{jobId}"
tags: ["Records"]
---

# Get Attachment Download URLs Status

`GET /records/attachments/download-urls/{jobId}`

## Request

- Base URL: `https://ironcladapp.com/public/api/v1`
- URL: `https://ironcladapp.com/public/api/v1/records/attachments/download-urls/{jobId}`
- Auth: API key in header `Authorization` and OAuth 2
  - Authorization code: `https://ironcladapp.com/oauth/authorize`
  - Client credentials
  - Token URL: `https://ironcladapp.com/oauth/token` scopes: `public.records.readAttachments`

Poll the status of a previously submitted attachment download URLs job.

**OAuth Scope required:** `public.records.readAttachments`

## Path parameters

- `jobId` string, required

## Headers

- `x-as-user-email` string
- `x-as-user-id` string

## Response `200`

The current status of the job.

- object
  - `jobId` string, required: The opaque job identifier.
  - `status` 'processing' | 'complete' | 'failed', required: The current status of the job.
  - `succeeded` object[]: Array of objects with successfully generated download URLs. Present when status is complete.
    - `identifier` string, required: The identifier of the record that was passed in the request (record ID or Ironclad ID).
    - `ironcladId` string, required: The Ironclad ID of the record.
    - `recordId` string, required: The globally unique UUID-based record ID of the record.
    - `downloadUrl` string, required: The signed download URL for the attachment.
    - `filename` string, required: The filename of the attachment.
    - `fileKey` string, required: The key of the attachment.
    - `fileId` string: The ID of the attachment.
    - `fileHash` string, required: The hash of the attachment.
    - `expiration` string, date-time, required: The expiration date of the signed download URL in ISO 8601 format.
  - `failed` object[]: Array of identifiers that failed to generate a signed download URL. Present when status is complete.
    - `identifier` string, required: The identifier of the record that was passed in the request (record ID or Ironclad ID).
    - `ironcladId` string: The Ironclad ID of the record, if resolved.
    - `recordId` string: The globally unique UUID-based record ID of the record, if resolved.
    - `errorCode` 'RECORD_NOT_FOUND' | 'ACCESS_DENIED' | 'NO_ATTACHMENT_FOUND' | 'INTERNAL_ERROR', required: The error code that occurred when generating the signed download URL.
    - `errorMessage` string, required: The error message that occurred when generating the signed download URL.

## Other responses

- `401`: 401
- `403`: 403
- `404`: 404

## Changes

- **2026-11-03** `435da5a4396e`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/ironcladapp/apis/ironclad-public-api/changes/records/attachments/download-urls/:jobId/get.md)

---

[API](https://skmtc.dev/ironcladapp/apis/ironclad-public-api.md) - [All operations](https://skmtc.dev/ironcladapp/apis/ironclad-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ironcladapp/apis/ironclad-public-api/revisions/435da5a4396e?raw)
