(Preview) Create a new bundle in a workspace folder

post

/20260430/aiDataPlatforms/{aiDataPlatformId}/workspaces/{workspaceKey}/bundles

(Preview) Creates a new bundle. A bundle is a self-contained, portable representation of selected workspace assets, such as jobs and agent flows, along with their dependencies and associated code artifacts. It captures both the resource configurations and the supporting assets required to recreate those resources in another workspace or environment. The bundle manifest is named `aidp_workbench.yaml`. The bundle preserves the workspace folder structure for code artifacts from the location where it was created, so the generated bundle mirrors the source layout. Dependencies are tracked inside the bundle under each asset type: - job and agent flow dependencies are added under the `dependencies` folder inside the `jobs` and `agentflows` folders - code dependencies are added under the `artifacts` directory in the bundle Git integration and promotion: - bundles can only be created inside Git-backed workspace folders - bundles are self-contained packages that include resource definitions, dependency references, and associated code artifacts required to recreate the bundled resources - the entire bundle folder can be committed and pushed to a Git repository - bundles can be pulled into another workspace via Git and deployed there - bundles can be promoted across environments (for example, dev ??? test ??? prod) using Git workflows - because the bundle includes both resource configuration and code dependencies, it can be used to reliably replicate assets across workspaces This operation is asynchronous. The service validates the request, starts bundle creation, and returns an async operation key in the response headers. Use the async operation APIs to track completion. Typical use cases: - capture selected workspace resources into a version-controlled bundle - prepare a bundle for later deployment or promotion - establish a bundle root that can later be inspected, updated, or deployed

Request

Path Parameters
Header Parameters
  • Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.
  • Minimum Length: 1
    Maximum Length: 64
    A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of running that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations. For example, if a resource has been deleted and removed from the system, then a retry of the original creation request might be rejected.
Body ()
Request payload for bundle creation.
Root Schema : CreateBundleDetails
Type: object
Request body to create a new bundle.
Show Source
Nested Schema : bundledResources
Type: array
List of workspace resource descriptors (jobs, agentflows) to be included. Each has minimally resourceType and resourceKey.
Show Source
Nested Schema : BundledResource
Type: object
Descriptor for a workspace resource (Job/Agentflow) to include in a bundle.
Show Source
Back to Top

Response

Supported Media Types

202 Response

Accepted. Bundle creation initiated.
Headers
  • The key of the asynchronous operations associated with an AI Data Platform instance. Use GetAsyncOperation with this key to track the status of the request.
  • Unique Oracle-assigned ID for the request. If you need to contact Oracle about a particular request, please provide the request ID.

400 Response

Bad Request (invalid query parameters, malformed headers, and so on).
Headers
  • Unique Oracle-assigned ID for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Body ()
Root Schema : Error
Type: object
Error information.
Show Source

401 Response

Unauthorized (missing or expired credentials, and so on).
Headers
  • Unique Oracle-assigned ID for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Body ()
Root Schema : Error
Type: object
Error information.
Show Source

404 Response

Not Found. The requested resource was not found.
Headers
  • Unique Oracle-assigned ID for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Body ()
Root Schema : Error
Type: object
Error information.
Show Source

409 Response

Conflict. Request conflicts with the current state of the resource.
Headers
  • Unique Oracle-assigned ID for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Body ()
Root Schema : Error
Type: object
Error information.
Show Source

429 Response

Too Many Requests. Too many requests sent to the server in a short period.
Headers
  • Unique Oracle-assigned ID for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Body ()
Root Schema : Error
Type: object
Error information.
Show Source

500 Response

Internal Server Error. The server encountered an unexpected condition preventing fulfilment of the request.
Headers
  • Unique Oracle-assigned ID for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Body ()
Root Schema : Error
Type: object
Error information.
Show Source

Default Response

Unknown Error. Error is not recognized by the system.
Headers
  • Unique Oracle-assigned ID for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Body ()
Root Schema : Error
Type: object
Error information.
Show Source
Back to Top

Examples

Dependency Reference Examples

Dependency references use template variables, for example:
  • compute: ${jobs.dependencies.training_compute.compute.key}
  • nested jobs: ${jobs.dependencies.training_job.job.key}
  • aicompute: ${jobs.dependencies.training_aicompute.aicompute.key}
Bundles also support the special variable ${bundle.root}, which points to the root of the bundle folder and is used for referencing artifacts.

Variables and overrides

Bundles support parameterization using variables defined in the bundle manifest (aidp_workbench.yaml).

Example manifest defaults:
defaults:
    variables: 
        job_compute_key: "${jobs.dependencies.small.compute.key}"

Variables can be referenced in resource descriptors using the ${var.<name>} syntax.

Example usage in a job descriptor:

 "clusterKey": "${var.job_compute_key}"

Workspace-specific overrides can be provided via .aidp/overrides.yaml inside the bundle. This file is intended for environment-specific configuration and should not be committed to Git, allowing the bundle to remain portable and environment-agnostic.

Example overrides file:

variables: job_compute_key: f6e7f5d8-d965-4009-95d9-02e993d9a16b
When an override is provided, the referenced dependency (for example, compute) is not created, and the provided value is used instead - when no override is provided, the system falls back to the default variable value, which may reference a dependency included in the bundle (resulting in that dependency being created). This mechanism enables environment-specific customization (for example, reusing existing infrastructure in production while creating new resources in development). The same pattern can be used for other environment-specific parameters such as compute shape, number of OCPUs, or other configuration values
Back to Top