Skip to main content
POST
Submit Job via Bulk Document Upload

Authorizations

X-API-KEY
string
header
required

Path Parameters

company_id
string<uuid>
required

ID of the company for which to submit jobs.

Body

Serializer for form fields during job bulk submission.

documents
string[]
required

List of presigned URLs for files to be processed by the job.

Minimum string length: 1
siteId
string<uuid> | null

UUID of the site to pin all uploaded documents to. When provided, every parsed bill in this job is allocated to this site instead of relying on best-effort auto-matching.

accountId
string<uuid> | null

UUID of the utility account to pin all uploaded documents to. When provided, every parsed bill in this job is associated with this account (and its parent utility connection) instead of relying on best-effort auto-matching.

notes
string

Optional free-text notes about the submitted documents (for example, what they contain or which site they belong to). Shared with document processing as background context.

Response

Status of a document upload job, including created documents and files that were duplicates, non-utility, password-protected, or failed processing.

id
string
required

The ID of the job.

Maximum string length: 255
status
enum<string>
required

The current status of the job, one of: PENDING, COMPLETED, FAILED. COMPLETED includes jobs that produced no new documents (duplicates, non-utility files, password-protected files, or processing errors). If the job status is FAILED, please contact our support team.

  • PENDING - Pending
  • COMPLETED - Completed
  • FAILED - Failed
Available options:
PENDING,
COMPLETED,
FAILED
parsedDocumentIds
string[]

List of document IDs that were processed successfully by the job. This is only populated if the job is completed. Empty when the job finished without creating new documents.

duplicates
integer

Number of duplicate files detected by the job. This is only populated if the job is completed.

duplicateDocumentIds
string[]

List of document IDs that were identified as duplicates by the job. This is only populated if the job is completed.

nonUtilityDocumentIds
string[]

List of document IDs that were identified as non-utility documents by the job. This is only populated if the job is completed.

passwordProtectedDocumentIds
string[]

List of document IDs that were identified as password-protected by the job. This is only populated if the job is completed.

errorDocumentIds
string[]

List of document IDs that failed processing. This is only populated if the job is completed.

terminationReason
string | null

The reason the job failed. This is only populated if the job status is FAILED.