Xceptor Jobs API
Operations for creating, monitoring, and managing data processing jobs that execute within the Xceptor platform.
Operations for creating, monitoring, and managing data processing jobs that execute within the Xceptor platform.
openapi: 3.1.0
info:
title: Xceptor Document Upload Authentication Jobs API
description: API for uploading and processing documents through Xceptor's data extraction engine. Supports intelligent document processing using NLP, OCR, and generative AI to transform unstructured documents including PDFs, emails, spreadsheets, and handwritten forms into structured, trusted data. The API handles document ingestion, classification, field and table extraction, and confidence-scored output for financial services use cases such as trade confirmations, tax documents, loan notices, and client onboarding materials.
version: '1.0'
contact:
name: Xceptor API Support
url: https://www.xceptor.com/support
email: api-support@xceptor.com
termsOfService: https://www.xceptor.com/legal-tcs
servers:
- url: https://api.xceptor.com/v1
description: Production Server
security:
- bearerAuth: []
tags:
- name: Jobs
description: Operations for creating, monitoring, and managing data processing jobs that execute within the Xceptor platform.
paths:
/jobs:
get:
operationId: listJobs
summary: Xceptor List Processing Jobs
description: Retrieves a paginated list of data processing jobs. Jobs represent units of work executed on the Xceptor platform, such as document ingestion, data extraction, transformation, or export operations. Results can be filtered by status, type, and date range.
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/PageParam'
- $ref: '#/components/parameters/PageSizeParam'
- name: status
in: query
description: Filter jobs by processing status
schema:
type: string
enum:
- pending
- running
- completed
- failed
- cancelled
- name: type
in: query
description: Filter jobs by processing type
schema:
type: string
enum:
- ingestion
- extraction
- transformation
- export
- workflow
- name: created_after
in: query
description: Filter jobs created after this date-time
schema:
type: string
format: date-time
- name: created_before
in: query
description: Filter jobs created before this date-time
schema:
type: string
format: date-time
responses:
'200':
description: A paginated list of jobs
content:
application/json:
schema:
$ref: '#/components/schemas/JobList'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
post:
operationId: createJob
summary: Xceptor Create Processing Job
description: Creates a new data processing job on the Xceptor platform. The job type determines the processing pipeline that will be executed. Jobs are processed asynchronously and their status can be monitored using the job status endpoint.
tags:
- Jobs
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/JobCreate'
responses:
'201':
description: Job created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Job'
'400':
description: Invalid request body
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/jobs/{jobId}:
get:
operationId: getJob
summary: Xceptor Get Job Details
description: Retrieves the details and current status of a specific processing job, including progress information, any errors encountered, and links to output data when the job has completed.
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/JobIdParam'
responses:
'200':
description: Job details
content:
application/json:
schema:
$ref: '#/components/schemas/Job'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Job not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
delete:
operationId: cancelJob
summary: Xceptor Cancel Processing Job
description: Cancels a pending or running processing job. Completed or already cancelled jobs cannot be cancelled. Cancellation is asynchronous and the job status will transition to cancelled once processing has stopped.
tags:
- Jobs
parameters:
- $ref: '#/components/parameters/JobIdParam'
responses:
'200':
description: Job cancellation initiated
content:
application/json:
schema:
$ref: '#/components/schemas/Job'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Job not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
components:
schemas:
Job:
type: object
description: A data processing job that executes on the Xceptor platform. Jobs represent units of work such as document ingestion, data extraction, transformation, or export operations.
properties:
id:
type: string
format: uuid
description: The unique identifier of the job
type:
type: string
description: The type of processing job
enum:
- ingestion
- extraction
- transformation
- export
- workflow
status:
type: string
description: The current processing status of the job
enum:
- pending
- running
- completed
- failed
- cancelled
progress:
type: integer
description: The processing progress as a percentage (0-100)
minimum: 0
maximum: 100
created_at:
type: string
format: date-time
description: The date and time the job was created
updated_at:
type: string
format: date-time
description: The date and time the job was last updated
completed_at:
type: string
format: date-time
description: The date and time the job completed processing
error:
$ref: '#/components/schemas/Error'
metadata:
type: object
description: Additional metadata associated with the job
additionalProperties: true
JobCreate:
type: object
description: Request body for creating a new processing job
required:
- type
properties:
type:
type: string
description: The type of processing job to create
enum:
- ingestion
- extraction
- transformation
- export
- workflow
workflow_id:
type: string
format: uuid
description: The identifier of the workflow to execute, required when type is workflow
datasource_id:
type: string
format: uuid
description: The identifier of the data source to process from
parameters:
type: object
description: Job-specific configuration parameters
additionalProperties: true
metadata:
type: object
description: Additional metadata to associate with the job
additionalProperties: true
Error:
type: object
description: An error response from the Xceptor API
properties:
code:
type: string
description: A machine-readable error code
message:
type: string
description: A human-readable description of the error
details:
type: object
description: Additional error details when available
additionalProperties: true
JobList:
type: object
description: A paginated list of processing jobs
properties:
data:
type: array
items:
$ref: '#/components/schemas/Job'
description: The list of jobs for the current page
pagination:
$ref: '#/components/schemas/Pagination'
Pagination:
type: object
description: Pagination information for list responses
properties:
page:
type: integer
description: The current page number
page_size:
type: integer
description: The number of items per page
total_items:
type: integer
description: The total number of items across all pages
total_pages:
type: integer
description: The total number of pages
parameters:
PageParam:
name: page
in: query
description: The page number for pagination (1-based)
schema:
type: integer
minimum: 1
default: 1
JobIdParam:
name: jobId
in: path
required: true
description: The unique identifier of the processing job
schema:
type: string
format: uuid
PageSizeParam:
name: page_size
in: query
description: The number of items per page
schema:
type: integer
minimum: 1
maximum: 100
default: 25
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: OAuth2 access token obtained via the client credentials flow. Include as a Bearer token in the Authorization header.
externalDocs:
description: Xceptor Document Upload API Documentation
url: https://docs.xceptor.com/api/documents