Xceptor Workflows API
Operations for creating, updating, listing, and deleting workflow definitions.
Operations for creating, updating, listing, and deleting workflow definitions.
openapi: 3.1.0
info:
title: Xceptor Document Upload Authentication Workflows 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: Workflows
description: Operations for creating, updating, listing, and deleting workflow definitions.
paths:
/workflows:
get:
operationId: listWorkflows
summary: Xceptor List Workflows
description: Retrieves a paginated list of workflow definitions configured in the Xceptor platform. Workflows can be filtered by status, category, and name. Each workflow defines a multi-step data processing pipeline.
tags:
- Workflows
parameters:
- $ref: '#/components/parameters/PageParam'
- $ref: '#/components/parameters/PageSizeParam'
- name: status
in: query
description: Filter workflows by their activation status
schema:
type: string
enum:
- active
- inactive
- draft
- name: category
in: query
description: Filter workflows by category
schema:
type: string
- name: search
in: query
description: Search workflows by name or description
schema:
type: string
responses:
'200':
description: A paginated list of workflows
content:
application/json:
schema:
$ref: '#/components/schemas/WorkflowList'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
post:
operationId: createWorkflow
summary: Xceptor Create Workflow
description: Creates a new workflow definition in the Xceptor platform. A workflow defines a sequence of processing steps that are executed in order to transform, validate, enrich, and route data through the automation pipeline.
tags:
- Workflows
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WorkflowCreate'
responses:
'201':
description: Workflow created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Workflow'
'400':
description: Invalid request body
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/workflows/{workflowId}:
get:
operationId: getWorkflow
summary: Xceptor Get Workflow Details
description: Retrieves the full definition of a specific workflow, including its steps, trigger configuration, and associated metadata.
tags:
- Workflows
parameters:
- $ref: '#/components/parameters/WorkflowIdParam'
responses:
'200':
description: Workflow details
content:
application/json:
schema:
$ref: '#/components/schemas/Workflow'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Workflow not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
put:
operationId: updateWorkflow
summary: Xceptor Update Workflow
description: Updates an existing workflow definition. Changes to active workflows take effect on subsequent runs. Running instances continue to use the previous version until completion.
tags:
- Workflows
parameters:
- $ref: '#/components/parameters/WorkflowIdParam'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WorkflowUpdate'
responses:
'200':
description: Workflow updated successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Workflow'
'400':
description: Invalid request body
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Workflow not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
delete:
operationId: deleteWorkflow
summary: Xceptor Delete Workflow
description: Deletes a workflow definition. Active workflows must be deactivated before deletion. Any running instances will complete before the workflow is removed.
tags:
- Workflows
parameters:
- $ref: '#/components/parameters/WorkflowIdParam'
responses:
'204':
description: Workflow deleted successfully
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Workflow not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
components:
parameters:
PageParam:
name: page
in: query
description: The page number for pagination (1-based)
schema:
type: integer
minimum: 1
default: 1
WorkflowIdParam:
name: workflowId
in: path
required: true
description: The unique identifier of the workflow
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
schemas:
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
WorkflowUpdate:
type: object
description: Request body for updating an existing workflow
properties:
name:
type: string
description: The display name of the workflow
minLength: 1
maxLength: 255
description:
type: string
description: A detailed description of what the workflow does
maxLength: 2000
status:
type: string
description: The activation status of the workflow
enum:
- active
- inactive
- draft
category:
type: string
description: The category or group for the workflow
trigger_type:
type: string
description: How the workflow is triggered for execution
enum:
- manual
- scheduled
- event
- api
schedule:
type: string
description: Cron expression for scheduled workflows. Required when trigger_type is scheduled.
Workflow:
type: object
description: A workflow definition that describes a multi-step data processing pipeline in the Xceptor platform.
properties:
id:
type: string
format: uuid
description: The unique identifier of the workflow
name:
type: string
description: The display name of the workflow
description:
type: string
description: A detailed description of what the workflow does
status:
type: string
description: The activation status of the workflow
enum:
- active
- inactive
- draft
category:
type: string
description: The category or group the workflow belongs to
trigger_type:
type: string
description: How the workflow is triggered for execution
enum:
- manual
- scheduled
- event
- api
schedule:
type: string
description: The cron expression for scheduled workflows, applicable when trigger_type is scheduled
steps:
type: array
items:
$ref: '#/components/schemas/WorkflowStep'
description: The ordered list of processing steps in the workflow
created_at:
type: string
format: date-time
description: The date and time the workflow was created
updated_at:
type: string
format: date-time
description: The date and time the workflow was last updated
created_by:
type: string
description: The identifier of the user who created the workflow
WorkflowList:
type: object
description: A paginated list of workflows
properties:
data:
type: array
items:
$ref: '#/components/schemas/Workflow'
description: The list of workflows for the current page
pagination:
$ref: '#/components/schemas/Pagination'
WorkflowCreate:
type: object
description: Request body for creating a new workflow
required:
- name
- trigger_type
properties:
name:
type: string
description: The display name of the workflow
minLength: 1
maxLength: 255
description:
type: string
description: A detailed description of what the workflow does
maxLength: 2000
category:
type: string
description: The category or group for the workflow
trigger_type:
type: string
description: How the workflow is triggered for execution
enum:
- manual
- scheduled
- event
- api
schedule:
type: string
description: Cron expression for scheduled workflows. Required when trigger_type is scheduled.
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
WorkflowStep:
type: object
description: A single processing step within a workflow. Steps are executed in sequence and each performs a specific data processing operation.
properties:
id:
type: string
format: uuid
description: The unique identifier of the step
name:
type: string
description: The display name of the step
type:
type: string
description: The type of processing operation the step performs
enum:
- extraction
- transformation
- validation
- enrichment
- routing
- notification
- export
- custom
position:
type: integer
description: The position of the step in the workflow sequence (0-based)
minimum: 0
configuration:
type: object
description: Type-specific configuration parameters for the step
additionalProperties: true
enabled:
type: boolean
description: Whether the step is enabled for execution
default: true
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