Skip to main content
GET
/
reports
/
{job_id}
curl -X GET "https://api.hookpdf.com/reports/7cdb01f7-3530-4862-8523-93e5d38fc1b9" \
  -H "Authorization: Bearer <YOUR_API_KEY>"
{
  "id": "7cdb01f7-3530-4862-8523-93e5d38fc1b9",
  "user_id": "93ab7f4d-54b7-4bf6-85a8-2c3be96f506f",
  "template_id": "1c24f959-8e1a-4a14-acc4-cf57b4e60e99",
  "status": "completed",
  "output_url": "https://hookpdf-render-prod.s3.eu-central-1.amazonaws.com/reports/7cdb01f7.pdf?X-Amz-Algorithm=AWS4-HMAC-SHA256&...",
  "error_code": null,
  "error_message": null,
  "created_at": "2026-02-28T15:09:17.006604+00:00",
  "completed_at": "2026-02-28T15:09:20.84+00:00",
  "retry_count": 0,
  "is_preview": false,
  "updated_at": "2026-02-28T15:09:20.941571+00:00",
  "page_count": 3,
  "total_bytes": 68699,
  "base_credits": 3,
  "size_extra": 0,
  "credits_used": 3,
  "credits_remaining": 15501
}
Check the status of a specific render job. Once completed, the response will contain a pre-signed output_url to download the generated PDF, along with credit usage details.

Response Fields

id
string (uuid)
Unique identifier of the render job.
user_id
string (uuid)
The user who owns this render job.
template_id
string (uuid)
The template that was used for this render.
status
string
required
Current status of the job. Possible values: queued, processing, completed, failed.
output_url
string | null
Pre-signed S3 URL to download the generated PDF. Only available when status is completed. The URL expires after 24 hours.
error_code
string | null
Machine-readable error code if the job failed. null on success.
error_message
string | null
Human-readable error description if the job failed. null on success.
created_at
string (datetime)
Timestamp when the job was created.
completed_at
string (datetime) | null
Timestamp when the job finished processing. null if still in progress.
retry_count
integer
Number of times this job has been retried.
is_preview
boolean
true if this is a preview render (watermarked, short TTL), false for production.
updated_at
string (datetime)
Timestamp of the last status update.
page_count
integer | null
Number of pages in the generated PDF. null until job completes.
total_bytes
integer | null
Total file size of the generated PDF in bytes. null until job completes.
base_credits
integer | null
Base credit cost calculated from page count (1 credit per page). null until job completes.
size_extra
integer
Extra credits charged for files exceeding the size threshold.
credits_used
integer | null
Total credits consumed for this render (base_credits + size_extra). null until job completes.
credits_remaining
integer | null
Your remaining credit balance after this render. null until job completes.
curl -X GET "https://api.hookpdf.com/reports/7cdb01f7-3530-4862-8523-93e5d38fc1b9" \
  -H "Authorization: Bearer <YOUR_API_KEY>"
{
  "id": "7cdb01f7-3530-4862-8523-93e5d38fc1b9",
  "user_id": "93ab7f4d-54b7-4bf6-85a8-2c3be96f506f",
  "template_id": "1c24f959-8e1a-4a14-acc4-cf57b4e60e99",
  "status": "completed",
  "output_url": "https://hookpdf-render-prod.s3.eu-central-1.amazonaws.com/reports/7cdb01f7.pdf?X-Amz-Algorithm=AWS4-HMAC-SHA256&...",
  "error_code": null,
  "error_message": null,
  "created_at": "2026-02-28T15:09:17.006604+00:00",
  "completed_at": "2026-02-28T15:09:20.84+00:00",
  "retry_count": 0,
  "is_preview": false,
  "updated_at": "2026-02-28T15:09:20.941571+00:00",
  "page_count": 3,
  "total_bytes": 68699,
  "base_credits": 3,
  "size_extra": 0,
  "credits_used": 3,
  "credits_remaining": 15501
}

Authorizations

Authorization
string
header
required

Enter your API key

Path Parameters

job_id
string<uuid>
required

Response

Job details with download URL (when completed)

Full details of a render job, including credit usage and download URL.

id
string<uuid>

Unique identifier of the render job.

user_id
string<uuid>

The user who owns this render job.

template_id
string<uuid>

The template that was used for this render.

status
enum<string>

Current status. completed means the PDF is ready to download.

Available options:
queued,
processing,
completed,
failed
output_url
string | null

Pre-signed S3 URL to download the generated PDF. Only available when status is completed. The URL expires after 24 hours.

error_code
string | null

Machine-readable error code if the job failed. null on success.

error_message
string | null

Human-readable error description if the job failed. null on success.

created_at
string<date-time>

Timestamp when the job was created.

completed_at
string<date-time> | null

Timestamp when the job finished processing. null if still in progress.

retry_count
integer

Number of times this job has been retried.

is_preview
boolean

true if this is a preview render, false for production.

updated_at
string<date-time>

Timestamp of the last status update.

page_count
integer | null

Number of pages in the generated PDF. null until job completes.

total_bytes
integer | null

Total file size of the generated PDF in bytes. null until job completes.

base_credits
integer | null

Base credit cost calculated from page count (1 credit per page). null until job completes.

size_extra
integer

Extra credits charged for files exceeding the size threshold. Usually 0.

credits_used
integer | null

Total credits consumed for this render (base_credits + size_extra). null until job completes.

credits_remaining
integer | null

Your remaining credit balance after this render. null until job completes.