- Bulk tasks: Process large volumes of resource or relationship operations asynchronously.
- Bundle tasks: Apply resources and relationships atomically in a single transaction.
- Object ingestion tasks: Every object creation or deletion request produces a task that tracks OCR pipelines and storage operations.
Overview
The task API workflow consists of two main steps:- Submit a task request - Send a batch of operations using the bulk endpoints. This returns a task ID.
- Check task status - Monitor the progress and retrieve results using the task ID.
There is no way to retrieve the task ID after submitting a bulk request. Make sure to store it for later use!
At a glance
Bundle API | Bulk API (Resources, Relationships) | |
---|---|---|
Use Case | Multiple operations on Resources and Relationships | Optimizing operations when dealing with large volumes. |
Execution | Synchronous | Asynchronous |
Supported Operations | "CREATE" ,"UPSERT" , "DELETE" | "CREATE" ,"UPSERT" , "DELETE" |
Atomic Transaction | Yes | No |
Maximum Volume per Request | 500 KB | 5 GB |
Supported bulk operations
The registry supports bulk operations for both resources and relationships:- Resource operations:
CREATE
,UPSERT
, orDELETE
multiple resources - Relationship operations:
CREATE
,UPSERT
, orDELETE
multiple relationships
Creating a bulk request
Bulk resources
Use the bulk resources endpoint to process multiple resource operations:Bulk relationships
Use the bulk relationships endpoint to process multiple relationship operations:Bundle operations
Use the bundle endpoint to process resources and relationships atomically. If any operation in the bundle fails, none of the operations are applied.Object ingestion tasks
Object collections expose dedicated endpoints that always return a task response. Use the standard task workflow to monitor ingest pipelines and storage:- Create an object accepts
multipart/form-data
and returns a task withstatus
ACCEPTED
orPERSISTED
. - Delete an object in the registry responds with the same task envelope as other destructive operations.
target.targetType: "OBJECT"
, allowing you to trace OCR, enrichment, and deletion activity alongside resource tasks.
Response format
All task operations return a response with a task ID and status. The status indicates if the task is processed synchronously (PERSISTED
) or asynchronously (ACCEPTED
).
Checking task status
Whether you submitted a bulk request or a bundle operation, you can check the status of the task and eventually retrieve the results using the task endpoint.Task statuses
The overall status of the task represents the completion state of all operations in the bulk request. The possible values are:SUCCESS
- All the operations of the task completed successfullyPENDING
- At least one operation in the task is still pendingCANCELLED
- All the operations in the task were cancelledFAILURE
- At least one operations failed or was cancelled
The
CANCELLED
status can only occur if the operation was cancelled by the system. There is currently
no way to cancel a task or an operation manually.For instance, if two tasks are submitted to operate on the same record id, the later task will be
kept and the earlier one will be cancelled.