openapi: 3.1.0 info: title: Solaris Zones Oracle Solaris Kernel Zones Archive Creation Resources 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: Resources description: Zone resource management (net, device, fs, rctl, etc.) paths: /Zone/{zoneName}/_rad_method/getResources: put: operationId: getZoneResources summary: Solaris Zones Query Zone Resources description: Retrieve resources configured for the zone, optionally filtered by resource type and property values. Returns an array of Resource objects with their properties. tags: - Resources parameters: - $ref: '#/components/parameters/zoneName' requestBody: content: application/json: schema: type: object properties: type: type: string description: Resource type filter (e.g., net, device, fs, rctl, attr, dataset, dedicated-cpu, capped-memory, capped-cpu, anet) filter: type: array items: $ref: '#/components/schemas/Property' description: Property filter criteria examples: GetzoneresourcesRequestExample: summary: Default getZoneResources request x-microcks-default: true value: type: example_value filter: - name: Example Title value: example_value type: simple listvalue: - {} complexvalue: - {} responses: '200': description: List of matching resources content: application/json: schema: type: object properties: status: type: string payload: type: array items: $ref: '#/components/schemas/Resource' examples: Getzoneresources200Example: summary: Default getZoneResources 200 response x-microcks-default: true value: status: example_value payload: - type: net properties: - {} parent: example_value '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK /Zone/{zoneName}/_rad_method/addResource: put: operationId: addZoneResource summary: Solaris Zones Add a Resource to Zone Configuration description: Add a new resource to the zone configuration. Must be called within an editing session (after editConfig). The resource is staged until commitConfig is called. tags: - Resources parameters: - $ref: '#/components/parameters/zoneName' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Resource' examples: AddzoneresourceRequestExample: summary: Default addZoneResource request x-microcks-default: true value: type: net properties: - name: Example Title value: example_value type: simple listvalue: {} complexvalue: {} parent: example_value responses: '200': description: Resource added to staged configuration content: application/json: schema: $ref: '#/components/schemas/ZoneResult' examples: Addzoneresource200Example: summary: Default addZoneResource 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' '409': description: Resource already exists content: application/json: schema: $ref: '#/components/schemas/ZoneResult' examples: Addzoneresource409Example: summary: Default addZoneResource 409 response x-microcks-default: true value: status: example_value payload: code: NONE message: example_value stdout: example_value stderr: example_value x-microcks-operation: delay: 0 dispatcher: FALLBACK /Zone/{zoneName}/_rad_method/removeResources: put: operationId: removeZoneResources summary: Solaris Zones Remove Resources From Zone Configuration description: Remove resources matching the specified filter from the zone configuration. Must be called within an editing session. tags: - Resources parameters: - $ref: '#/components/parameters/zoneName' requestBody: required: true content: application/json: schema: type: object required: - type properties: type: type: string description: Resource type to remove filter: type: array items: $ref: '#/components/schemas/Property' description: Property filter to identify resources to remove examples: RemovezoneresourcesRequestExample: summary: Default removeZoneResources request x-microcks-default: true value: type: example_value filter: - name: Example Title value: example_value type: simple listvalue: - {} complexvalue: - {} responses: '200': description: Resources removed from staged configuration content: application/json: schema: $ref: '#/components/schemas/ZoneResult' examples: Removezoneresources200Example: summary: Default removeZoneResources 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/getResourceProperties: put: operationId: getZoneResourceProperties summary: Solaris Zones Get Properties of a Zone Resource description: Retrieve specific properties from a zone resource identified by type and filter criteria. tags: - Resources parameters: - $ref: '#/components/parameters/zoneName' requestBody: required: true content: application/json: schema: type: object required: - type properties: type: type: string description: Resource type filter: type: array items: $ref: '#/components/schemas/Property' description: Property filter to identify the resource properties: type: array items: type: string description: Names of properties to retrieve examples: GetzoneresourcepropertiesRequestExample: summary: Default getZoneResourceProperties request x-microcks-default: true value: type: example_value filter: - name: Example Title value: example_value type: simple listvalue: - {} complexvalue: - {} properties: - example_value responses: '200': description: Resource properties content: application/json: schema: type: object properties: status: type: string payload: type: array items: $ref: '#/components/schemas/Property' examples: Getzoneresourceproperties200Example: summary: Default getZoneResourceProperties 200 response x-microcks-default: true value: status: example_value payload: - name: Example Title value: example_value type: simple listvalue: - {} complexvalue: - {} '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK /Zone/{zoneName}/_rad_method/setResourceProperties: put: operationId: setZoneResourceProperties summary: Solaris Zones Set Properties on a Zone Resource description: Set property values on a zone resource identified by type and filter criteria. Must be called within an editing session. tags: - Resources parameters: - $ref: '#/components/parameters/zoneName' requestBody: required: true content: application/json: schema: type: object required: - type - properties properties: type: type: string description: Resource type filter: type: array items: $ref: '#/components/schemas/Property' description: Property filter to identify the resource properties: type: array items: $ref: '#/components/schemas/Property' description: Properties to set examples: SetzoneresourcepropertiesRequestExample: summary: Default setZoneResourceProperties request x-microcks-default: true value: type: example_value filter: - name: Example Title value: example_value type: simple listvalue: - {} complexvalue: - {} properties: - name: Example Title value: example_value type: simple listvalue: - {} complexvalue: - {} responses: '200': description: Resource properties updated content: application/json: schema: $ref: '#/components/schemas/ZoneResult' examples: Setzoneresourceproperties200Example: summary: Default setZoneResourceProperties 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 /Zone/{zoneName}/_rad_method/clearResourceProperties: put: operationId: clearZoneResourceProperties summary: Solaris Zones Clear Properties on a Zone Resource description: Clear (reset to default) property values on a zone resource. Must be called within an editing session. tags: - Resources parameters: - $ref: '#/components/parameters/zoneName' requestBody: required: true content: application/json: schema: type: object required: - type - properties properties: type: type: string description: Resource type filter: type: array items: $ref: '#/components/schemas/Property' description: Property filter to identify the resource properties: type: array items: type: string description: Names of properties to clear examples: ClearzoneresourcepropertiesRequestExample: summary: Default clearZoneResourceProperties request x-microcks-default: true value: type: example_value filter: - name: Example Title value: example_value type: simple listvalue: - {} complexvalue: - {} properties: - example_value responses: '200': description: Resource properties cleared content: application/json: schema: $ref: '#/components/schemas/ZoneResult' examples: Clearzoneresourceproperties200Example: summary: Default clearZoneResourceProperties 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 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 Resource: type: object required: - type properties: type: type: string description: 'Resource type name. Common types include: net, anet, device, fs, dataset, rctl, attr, dedicated-cpu, capped-memory, capped-cpu, admin, security-flags' enum: - net - anet - device - fs - dataset - rctl - attr - dedicated-cpu - capped-memory - capped-cpu - admin - security-flags - suspend example: net properties: type: array items: $ref: '#/components/schemas/Property' description: Resource properties example: [] parent: type: string description: Parent resource reference example: example_value Property: type: object required: - name properties: name: type: string description: Property name example: Example Title value: type: string description: Simple property value example: example_value type: type: string enum: - simple - list - complex description: Property value type example: simple listvalue: type: array items: type: string description: List of values for list-type properties example: [] complexvalue: type: array items: type: string description: Complex property values example: [] responses: NotFound: description: Zone or resource 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 to configure 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