type: a dotted string of the shape
<namespace>.<content kind>.<name>, chosen when the blob is created and fixed for its lifetime. The internal
data structure, storage semantics, and API commands for a blob depend entirely on that string.
Five type strings exist today:
An organization can create a type only while the type’s
enabled entitlement is true for it. workflow.enabled,
scheduler.enabled and onnx.enabled are true by default; orientdb.enabled and nlp.enabled are false. See
Limits for every limit of each type.
Workflow
The Workflow Blob Type (blobhub.compute.workflow) is designed to build, manage, and execute complex backend workflows.
- You can treat memory and data as first-class citizens with built-in state management.
- Supports managing Definitions, initiating and monitoring Executions within Sessions, and accessing real-time Execution Events.
Scheduler
The Scheduler Blob Type (blobhub.compute.scheduler) stores a collection of schedules that trigger workflow executions on a time-based cadence.
- Supports both one-time and recurring cron schedules with full timezone control.
- Retains a history of past executions, including success and failure details for each firing, for 30 days by default.
ONNX
The ONNX Blob Type (blobhub.model.onnx) provides specialized hosting for Open Neural Network Exchange (ONNX) machine learning models.
- Upload a model archive in one request, or in parts over presigned URLs when it is larger — see Upload Model and Multipart Upload.
- Describe the artifacts the platform derives from an upload, and download each one either in the response itself (Download Model) or, for a larger one, in ranged parts over presigned URLs (Multipart Download).
- The Python SDK wraps all of it.
Graph
The Graph Blob Type (blobhub.graph.orientdb) backs general-purpose graph storage in a dedicated OrientDB
database. Not documented in depth here; the Python SDK runs OrientDB SQL against it.
NLP Dataset
The NLP Dataset Blob Type (blobhub.dataset.nlp) stores NLP dataset content. It has no data-plane
commands of its own — a data/command or data/query call against it answers unsupported_operation — so
it is created and read through the platform’s shared primitives rather than through type-specific commands.
Not documented in depth here.
