Create dataset if not exists
Access control
- requires_resource_owner
- Restricted tokens need the API scope
datasets.create
/v1/datasets/create_if_not_existsAuthorizationBearer token · headerrequiredX-Roboto-Org-IdstringX-Roboto-User-Idstringapplication/jsonmatch_roboql_querystringrequiredcreate_requestCreateDatasetRequestrequiredRequest payload for creating a new dataset.
Used to specify the initial properties of a dataset during creation, including optional metadata, tags, name, and description.
Show propertiesHide properties
descriptionstring | nullAn optional human-readable description for this dataset.
Show propertiesHide properties
stringnulldevice_idstring | nullThe ID of the device which created this dataset, if applicable.
Show propertiesHide properties
stringnullnamestring | nullA short name for this dataset. Must be under 120 characters or less.
Show propertiesHide properties
stringnullmetadataobjectInitial key-value pairs to associate with this dataset for discovery and search, e.g. { 'softwareVersion': '3.1.4' }
tagsstring[]Initial tags to associate with this dataset for discovery and search, e.g. ['sunny', 'campaign5']
custom_fieldsobject | nullInitial values for custom fields defined on Datasets in the caller's org, e.g. { 'drone_id': 'DJI-X', 'flight_count': 12 }. Each name must match a Ready custom-field definition for the org's Dataset entity type; values are typed against the field's declared type.
Show propertiesHide properties
objectnullOK
dataobjectrequiredWire-transmissible representation of a dataset in the Roboto platform.
DatasetRecord contains all the metadata and properties associated with a dataset, including its identification, timestamps, metadata, tags, and organizational information. This is the data structure used for API communication and persistence.
DatasetRecord instances are typically created by the platform during dataset creation operations and are updated as datasets are modified. The Dataset domain class wraps DatasetRecord to provide a more convenient interface for dataset operations.
The record includes audit information (created/modified timestamps and users), organizational context, and user-defined metadata and tags for discovery and organization purposes.
Show propertiesHide properties
createdstring<date-time>requiredcreated_bystringrequireddataset_idstringrequireddescriptionstring | nullShow propertiesHide properties
stringnulldevice_idstring | nullShow propertiesHide properties
stringnullmetadataobjectcustom_fieldsobjectmodifiedstring<date-time>requiredmodified_bystringrequirednamestring | nullShow propertiesHide properties
stringnullorg_idstringrequiredroboto_record_versionintegertagsstring[]administratorstringstorage_ctxobjectstorage_locationstringThrown when the conversation context (messages, system prompt, tool results) exceeds the model's context window limit.
The token estimate and the model's context limit are not carried on the exception, so a caller cannot read usage numbers off it.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown when authentication fails
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown if an operation would exceed a user or org level limit.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown if a user is attempting to perform an action unrecognized by the Roboto platform.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown if there is a conflict between a resource you're creating and another existing resource
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown if a resource is missing or expired.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullAn error the platform reported that this SDK release cannot resolve to a specific exception class.
Reported for an element of a :py:class:~roboto.http.BatchResponse whose error names a code this release
defines no class for, or that arrived without a code, without a message, or as text that is not an
error envelope at all. It carries whatever code and message the platform sent, so a caller handling the
failure still learns what went wrong; when no message could be read, the message is the error's raw text.
The error envelope carries no status code, so http_status_code reports the 500 inherited from
:py:class:RobotoDomainException rather than the status the failure actually had.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown by shimmed out APIs which have not yet been implemented
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown when a service is unavailable, such as when it's under heavy load and can't accept new requests. This is expected to be transient and ought to be retried.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown when the service times out while processing a request. This is exepcted to be transient and ought to be retried.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown when the server cannot complete the request because the response payload exceeds a storage or transport capacity limit (e.g., Lambda response size). This is NOT expected to be transient and should NOT be retried.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | null