ValiDocX

ValiDocX API Documentation

Use your organization API key to query projects, jobs, responses, and file metadata, then generate signed URLs for secure downloads.

Base URL: https://api.validocx.com/functions/v1
๐Ÿ”

Security model

API keys are stored hashed and scoped to one organization. Raw keys are shown once at creation or rotation.

Quick Start

  1. Generate your API key in Dashboard โ†’ Organization โ†’ Settings โ†’ API Access.
  2. Store the key in your secret manager (it is only shown once).
  3. Call data endpoints with the x-api-key header.
  4. For a complete job snapshot, use Job Full Detail.

Authentication

Send your org API key on every request:

x-api-key: vdx_org_xxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Job Full Detail

Recommended

Returns everything about a job in a single request โ€” metadata, every step with its questions, all answers including images with signed URLs, and all documents with signed URLs. Use this instead of separate calls to /question-responses, /documents, and /images.

Projects

Manage customer projects โ€” list all projects or get detailed information about a specific project.

Jobs

List and retrieve installation jobs. Jobs can be filtered by project or job template.

Responses & Data

Access question responses, documents, and images from completed jobs. All endpoints support filtering by project or job ID.

Common Query Parameters

pagePage number (default: 1)
limitItems per page (default: 25, max: 100)
sort_byField: 'created_at', 'updated_at'
sort_order'asc' or 'desc' (default: 'desc')
updated_afterISO 8601 timestamp filter

Filtering Parameters

project_idFilter by specific project
job_idFilter by specific job
job_template_idFilter by template (measure)

Signed Files

Generate short-lived signed URLs for secure file downloads. Supported resources: documents, images, installer-certs. Expiry is clamped between 60โ€“3600 seconds (default 300).

Errors

Common status codes: 200, 400, 401, 404, 500.

Example error response
{
  "request_id": "d88bfbb9-f35e-4b94-a62a-9a4a4ffea6ef",
  "error": "API key is revoked or not found"
}