openapi: 3.1.0 info: title: Solaris Zones Oracle Solaris Kernel Zones Archive Creation Installation API description: REST API for creating and managing Oracle Solaris Kernel Zones via the RAD zonemgr module. Kernel Zones (brand solaris-kz) are non-global zones with their own kernel, providing greater independence and enhanced security isolation compared to native zones. They support live migration, independent patching, and hardware-assisted virtualization. version: '1.6' contact: name: Oracle Solaris Support url: https://www.oracle.com/solaris/support/ email: solaris-support@oracle.com license: name: Oracle Technology Network License url: https://www.oracle.com/legal/terms.html servers: - url: https://{host}:{port}/api/com.oracle.solaris.rad.zonemgr/1.6 description: Oracle Solaris RAD REST endpoint variables: host: default: localhost description: Solaris host running RAD port: default: '6788' description: RAD REST API port security: - cookieAuth: [] tags: - name: Installation description: Zone install and uninstall operations paths: /Zone/{zoneName}/_rad_method/install: put: operationId: installZone summary: Solaris Zones Install a Zone description: Install a configured zone, provisioning its root file system and packages. Transitions the zone from configured to installed state. Equivalent to zoneadm install. tags: - Installation parameters: - $ref: '#/components/parameters/zoneName' requestBody: content: application/json: schema: type: object properties: options: type: array items: type: string description: Optional install arguments (e.g., -m manifest, -c profile, -a archive-path) examples: InstallzoneRequestExample: summary: Default installZone request x-microcks-default: true value: options: - example_value responses: '200': description: Zone installation initiated content: application/json: schema: $ref: '#/components/schemas/ZoneResult' examples: Installzone200Example: summary: Default installZone 200 response x-microcks-default: true value: status: example_value payload: code: NONE message: example_value stdout: example_value stderr: example_value '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK /Zone/{zoneName}/_rad_method/uninstall: put: operationId: uninstallZone summary: Solaris Zones Uninstall a Zone description: Uninstall a zone, removing its root file system and installed content. The zone returns to the configured state. Equivalent to zoneadm uninstall. tags: - Installation parameters: - $ref: '#/components/parameters/zoneName' requestBody: content: application/json: schema: type: object properties: force: type: boolean default: false description: Force uninstall even if zone is in an inconsistent state examples: UninstallzoneRequestExample: summary: Default uninstallZone request x-microcks-default: true value: force: true responses: '200': description: Zone uninstalled content: application/json: schema: $ref: '#/components/schemas/ZoneResult' examples: Uninstallzone200Example: summary: Default uninstallZone 200 response x-microcks-default: true value: status: example_value payload: code: NONE message: example_value stdout: example_value stderr: example_value '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK /Zone/{zoneName}/_rad_method/clone: put: operationId: cloneZone summary: Solaris Zones Clone a Zone description: Install a zone by cloning from an existing zone or ZFS snapshot. The target zone must be in the configured state. Equivalent to zoneadm clone. tags: - Installation parameters: - $ref: '#/components/parameters/zoneName' requestBody: required: true content: application/json: schema: type: object required: - source properties: source: type: string description: Source zone name to clone from snapshot: type: string description: Specific ZFS snapshot to use as clone source examples: ClonezoneRequestExample: summary: Default cloneZone request x-microcks-default: true value: source: example_value snapshot: example_value responses: '200': description: Zone cloned content: application/json: schema: $ref: '#/components/schemas/ZoneResult' examples: Clonezone200Example: summary: Default cloneZone 200 response x-microcks-default: true value: status: example_value payload: code: NONE message: example_value stdout: example_value stderr: example_value '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: RadError: type: object properties: status: type: string example: failure payload: type: object properties: code: type: integer message: type: string example: example_value ZoneResult: type: object properties: status: type: string example: example_value payload: type: object properties: code: type: string enum: - NONE - FRAMEWORK_ERROR - SNAPSHOT_ERROR - COMMAND_ERROR - RESOURCE_ALREADY_EXISTS - RESOURCE_NOT_FOUND - RESOURCE_TOO_MANY - RESOURCE_UNKNOWN - ALREADY_EDITING - INCOMPLETE_NO_CONFIG - PROPERTY_UNKNOWN - NOT_EDITING - SYSTEM_ERROR - INVALID_ARGUMENT - INVALID_ZONE_STATE message: type: string stdout: type: string stderr: type: string example: example_value responses: NotFound: description: Zone not found content: application/json: schema: $ref: '#/components/schemas/RadError' Unauthorized: description: Authentication required or session expired content: application/json: schema: $ref: '#/components/schemas/RadError' BadRequest: description: Invalid request parameters content: application/json: schema: $ref: '#/components/schemas/RadError' parameters: zoneName: name: zoneName in: path required: true description: Name of the zone schema: type: string securitySchemes: cookieAuth: type: apiKey in: cookie name: _rad_session description: RAD session cookie obtained via authentication externalDocs: description: Oracle Solaris Kernel Zones Documentation url: https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/kernel-zones/oracle-solaris-kernel-zones.html