diff --git a/api-ref/src/docbkx/ch_blockstorage-api-v2.xml b/api-ref/src/docbkx/ch_blockstorage-api-v2.xml
index 0757d1bbe..398b2b2cf 100644
--- a/api-ref/src/docbkx/ch_blockstorage-api-v2.xml
+++ b/api-ref/src/docbkx/ch_blockstorage-api-v2.xml
@@ -309,4 +309,23 @@
Create new volumes using existing storage, rather than allocating new storage.
+
+ Volume type access (volumes)
+
+ Create private volumes.
+
+
+ By default, volumes are public. To create a private volume, set
+ the is_public
boolean field to false
at
+ volume creation time. To control access to a private volume, you
+ add a project to or remove a project from the volume. Private
+ volume types without projects are only visible by users with the
+ administrative role and context.
+
+
+
+
+
+
+
diff --git a/api-ref/src/wadls/volume-api/src/v2/api_samples/os-volume-type-access/volume_create_request.json b/api-ref/src/wadls/volume-api/src/v2/api_samples/os-volume-type-access/volume_create_request.json
new file mode 100644
index 000000000..e335b4ea3
--- /dev/null
+++ b/api-ref/src/wadls/volume-api/src/v2/api_samples/os-volume-type-access/volume_create_request.json
@@ -0,0 +1,14 @@
+{
+ "volume": {
+ "availability_zone": null,
+ "source_volid": null,
+ "description": null,
+ "snapshot_id": null,
+ "size": 10,
+ "name": "my_volume",
+ "imageRef": null,
+ "volume_type": null,
+ "metadata": {},
+ "os-volume-type-access: is_public": false
+ }
+}
diff --git a/api-ref/src/wadls/volume-api/src/v2/api_samples/os-volume-type-access/volume_create_request.xml b/api-ref/src/wadls/volume-api/src/v2/api_samples/os-volume-type-access/volume_create_request.xml
new file mode 100644
index 000000000..309ddb150
--- /dev/null
+++ b/api-ref/src/wadls/volume-api/src/v2/api_samples/os-volume-type-access/volume_create_request.xml
@@ -0,0 +1,2 @@
+
+
diff --git a/api-ref/src/wadls/volume-api/src/v2/api_samples/os-volume-type-access/volume_create_response.json b/api-ref/src/wadls/volume-api/src/v2/api_samples/os-volume-type-access/volume_create_response.json
new file mode 100644
index 000000000..ab0e99958
--- /dev/null
+++ b/api-ref/src/wadls/volume-api/src/v2/api_samples/os-volume-type-access/volume_create_response.json
@@ -0,0 +1,18 @@
+{
+ "volume": {
+ "status": "creating",
+ "name": "my_volume",
+ "attachments": [],
+ "availability_zone": "nova",
+ "bootable": "false",
+ "created_at": "2014-02-21T19: 52: 04.949734",
+ "description": null,
+ "volume_type": "None",
+ "snapshot_id": null,
+ "source_volid": null,
+ "metadata": {},
+ "id": "93c2e2aa-7744-4fd6-a31a-80c4726b08d7",
+ "size": 10,
+ "os-volume-type-access: is_public": false
+ }
+}
diff --git a/api-ref/src/wadls/volume-api/src/v2/api_samples/os-volume-type-access/volume_create_response.xml b/api-ref/src/wadls/volume-api/src/v2/api_samples/os-volume-type-access/volume_create_response.xml
new file mode 100644
index 000000000..aa4f1fe7f
--- /dev/null
+++ b/api-ref/src/wadls/volume-api/src/v2/api_samples/os-volume-type-access/volume_create_response.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/api-ref/src/wadls/volume-api/src/v2/common.ent b/api-ref/src/wadls/volume-api/src/v2/common.ent
index b54f3ab73..3babf3f4e 100644
--- a/api-ref/src/wadls/volume-api/src/v2/common.ent
+++ b/api-ref/src/wadls/volume-api/src/v2/common.ent
@@ -1,533 +1,580 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- '>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+'>
-
- Comma-separated list of sort keys and optional sort
- directions in the form of <key>[:<direction>].
- Valid directions are asc
(ascending) or
- desc
(descending).
+
+
+
+ Comma-separated list of sort keys and optional sort directions in the
+ form of <key>[:<direction>]. A valid direction is
+ asc
(ascending) or desc
(descending).
+
+
'>
-
- A quota_set object.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ type="xsd:string">
+
+ A quota_set object.
-
- The number of instance cores allowed for
- each tenant.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ type="xsd:int">
+
+ The number of instance cores allowed for
+ each tenant.
-
-
- The number of fixed IP addresses allowed
- for each tenant. Must be equal to or
- greater than the number of allowed
- instances.
+
+
+
+ The number of fixed IP addresses allowed for each tenant. Must be
+ equal to or greater than the number of allowed instances.
+
-
-
- The number of floating IP addresses
- allowed for each tenant.
+
+
+
+ The number of floating IP addresses allowed for each tenant.
+
-
- The ID for the quota
- set.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ type="xsd:int">
+
+ The ID for the quota set.
-
- The number of bytes of content allowed
- for each injected file.
+ style="plain" xmlns="http://wadl.dev.java.net/2009/02"
+ required="false" type="xsd:int">
+
+
+ The number of bytes of content allowed for each injected file.
+
-
-
- The number of bytes allowed for each
- injected file path.
+
+
+ The number of bytes allowed for each
+ injected file path.
-
- The number of injected files allowed for
- each tenant.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ required="false" type="xsd:int">
+
+ The number of injected files allowed for
+ each tenant.
-
- The number of instances allowed for each
- tenant.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ type="xsd:int">
+
+ The number of instances allowed for each
+ tenant.
-
- The number of key pairs allowed for each
- user.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ type="xsd:int">
+
+ The number of key pairs allowed for each
+ user.
-
- The number of metadata items allowed for
- each instance.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ required="false" type="xsd:int">
+
+ The number of metadata items allowed for
+ each instance.
-
- The amount of instance RAM in megabytes
- allowed for each tenant.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ type="xsd:int">
+
+ The amount of instance RAM in megabytes
+ allowed for each tenant.
-
- The number of rules allowed for each
- security group.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ required="false" type="xsd:int">
+
+ The number of rules allowed for each
+ security group.
-
- The number of security groups allowed
- for each tenant.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ required="false" type="xsd:int">
+
+ The number of security groups allowed
+ for each tenant.
'>
-
-
- A quota_set
object.
+
+
+ A quota_set
object.
-
- The number of instance cores allowed for
- each tenant.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ type="xsd:int">
+
+ The number of instance cores allowed for
+ each tenant.
-
-
- The number of fixed IP addresses allowed
- for each tenant. Must be equal to or
- greater than the number of allowed
- instances.
+
+
+
+ The number of fixed IP addresses allowed for each tenant. Must be
+ equal to or greater than the number of allowed instances.
+
-
-
- The number of floating IP addresses
- allowed for each tenant.
+
+
+ The number of floating IP addresses
+ allowed for each tenant.
-
- The ID for the quota
- set.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ type="xsd:int">
+
+ The ID for the quota set.
-
- The number of bytes of content allowed
- for each injected file.
+ style="plain"
+ xmlns="http://wadl.dev.java.net/2009/02"
+ required="true" type="xsd:int">
+
+ The number of bytes of content allowed
+ for each injected file.
-
-
- The number of bytes allowed for each
- injected file path.
+
+
+ The number of bytes allowed for each
+ injected file path.
-
- The number of injected files allowed for
- each tenant.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ required="true" type="xsd:int">
+
+ The number of injected files allowed for
+ each tenant.
-
- The number of instances allowed for each
- tenant.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ type="xsd:int">
+
+ The number of instances allowed for each
+ tenant.
-
- The number of key pairs allowed for each
- user.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ type="xsd:int">
+
+ The number of key pairs allowed for each
+ user.
-
- The number of metadata items allowed for
- each instance.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ required="true" type="xsd:int">
+
+
+ The number of metadata items allowed for each instance.
+
-
- The amount of instance RAM in megabytes
- allowed for each tenant.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ type="xsd:int">
+
+ The amount of instance RAM in megabytes
+ allowed for each tenant.
-
- The number of rules allowed for each
- security group.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ required="false" type="xsd:int">
+
+ The number of rules allowed for each
+ security group.
-
- The number of security groups allowed
- for each tenant.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ required="true" type="xsd:int">
+
+
+ The number of security groups allowed for each tenant.
+
'>
-
- A limits
object.
+
+
+ A limits
object.
-
- An absolute
limits object.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ required="true" type="xsd:string">
+
+ An absolute
limits object.
-
- Total number of snapshots used.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ type="xsd:int">
+
+ Total number of snapshots used.
-
- Maximum total amount of volumes (GB).
+ xmlns="http://wadl.dev.java.net/2009/02"
+ type="xsd:int">
+
+ Maximum total amount of volumes (GB).
-
-
- Total number of GBs used.
+
+
+ Total number of GBs used.
-
-
- Maximum number of snapshots.
+
+
+ Maximum number of snapshots.
-
- Total number of volumes used.
+ xmlns="http://wadl.dev.java.net/2009/02"
+ type="xsd:int">
+
+ Total number of volumes used.
-
-
- Maximum number of volumes.
+
+
+ Maximum number of volumes.
'>
-
- The availability zone.
+
+
+ The availability zone.
-
-
- To create a volume from an existing
- volume, specify the ID of the existing volume. The volume
- is created with the same size as the source volume.
-
+
+
+ To create a volume from an existing
+ volume, specify the ID of the existing volume. The volume
+ is created with the same size as the source volume.
+
-
-
- The volume
- description.
+
+
+ The volume description.
-
-
- To create a volume from an existing
- snapshot, specify the ID of the existing
- volume snapshot. The volume is created in same availability
- zone and with same size as the snapshot.
+
+
+ To create a volume from an existing
+ snapshot, specify the ID of the existing
+ volume snapshot. The volume is created in same availability
+ zone and with same size as the snapshot.
-
-
- The size of the volume, in
+
+
+ The size of the volume, in
GBs.
-
-
- The volume name.
+
+
+ The volume name.
-
-
- The ID of the image from which you want
- to create the volume. Required to create a
- bootable volume.
+
+
+ The ID of the image from which you want
+ to create the volume. Required to create a
+ bootable volume.
-
-
- The associated volume
- type.
+
+
+ The associated volume type.
-
-
- One or more metadata key and value pairs
- to associate with the
- volume.
+
+
+ One or more metadata key and value pairs
+ to associate with the volume.
' >
+
+
+ The volume type access.
+
+ Set to true
if access is public. Set to
+ false
if access is private.
+
+'>
+
+
+ The volume type access.
+
+ Set to true
if access is public. Set to
+ false
if access is private.
+
+'>
-
- The volume status.
+
+
+ The volume status.
+
-
-
- The volume name.
+
+
+ The volume name.
+
-
-
- One or more instance
- attachments.
+
+
+ One or more instance attachments.
+
-
-
- The availability zone.
+
+
+ The availability zone.
-
-
- Date and time when the volume was
- created.
+
+
+ Date and time when the volume was created.
-
-
- The volume
- description.
+
+
+ The volume description.
-
-
- The associated volume
- type.
+
+
+ The associated volume type.
-
-
- To create a volume from an existing
- volume snapshot, specify the ID of the
- existing volume
- snapshot.
+
+
+
+ To create a volume from an existing volume snapshot, specify the ID of
+ the existing volume snapshot.
+
-
-
- To create a volume from an existing
- volume, specify the ID of the existing
- volume.
+
+
+
+ To create a volume from an existing volume, specify the ID of the
+ existing volume.
+
-
-
- One or more metadata key and value pairs
- to associate with the
- volume.
+
+
+
+ One or more metadata key and value pairs to associate with the
+ volume.
+
-
-
- The volume ID.
+
+
+ The volume ID.
-
-
- The size of the volume, in
- GBs.
+
+
+ The size of the volume, in GBs.
' >
-
- GET'>
- PUT'>
- POST'>
- DELETE'>
diff --git a/api-ref/src/wadls/volume-api/src/v2/os-volume-type-access.wadl b/api-ref/src/wadls/volume-api/src/v2/os-volume-type-access.wadl
new file mode 100644
index 000000000..84822eab6
--- /dev/null
+++ b/api-ref/src/wadls/volume-api/src/v2/os-volume-type-access.wadl
@@ -0,0 +1,78 @@
+
+
+
+ %common;
+
+ %common_project;
+]>
+
+
+
+
+
+
+ The unique identifier of the tenant or
+ account.
+
+
+
+
+
+
+
+
+
+
+ Create and get details for private Block Storage volume.
+
+
+
+
+
+
+
+
+
+
+
+
+ &createVolumeParameters;
+ &isPublicParameterReq;
+
+
+
+
+
+
+
+
+
+
+
+
+ &createVolumeResponseParameters;
+ &isPublicParameterResp;
+
+
+
+