manila/api-ref/source/quota-classes.inc
silvacarloss 7bc4886a03 Add documentation for share replica quotas
Update documentation to fit into the new manila quota keys:
- `share_replicas`
- `replica_gigabytes`

Closes-Bug: #1881921
Change-Id: I91fa2222743da06557ceb52fcbae0f8928d0752c
2020-06-03 14:28:58 +00:00

131 lines
3.0 KiB
ReStructuredText

.. -*- rst -*-
===============
Quota class set
===============
Quota classes can be shown and updated for a project.
.. important::
Share replicas and replica gigabytes were added to quota management
APIs in API version 2.53.
Show quota classes for a project
================================
.. rest_method:: GET /v2/{project_id}/quota-class-sets/{quota_class_name}
Shows quota class set for a project. If no specific value for the quota class
resource exists, then the default value will be reported.
Response codes
--------------
.. rest_status_code:: success status.yaml
- 200
.. rest_status_code:: error status.yaml
- 403
- 404
Request
-------
.. rest_parameters:: parameters.yaml
- project_id: project_id_path
- quota_class_name: quota_class_name
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- quota_class_set: quota_class_set
- share_groups: maxTotalShareGroups
- gigabytes: maxTotalShareGigabytes
- share_group_snapshots: maxTotalShareGroupSnapshots
- snapshots: maxTotalShareSnapshots
- snapshot_gigabytes: maxTotalSnapshotGigabytes
- shares: maxTotalShares
- id: quota_class_id
- share_networks: maxTotalShareNetworks
- share_replicas: maxTotalShareReplicas
- replica_gigabytes: maxTotalReplicaGigabytes
Response Example
----------------
.. literalinclude:: ./samples/quota-classes-show-response.json
:language: javascript
Update quota classes for a project
==================================
.. rest_method:: PUT /v2/{project_id}/quota-class-sets/{quota_class_name}
Updates quota class set for a project. If the ``quota_class_name`` key does not
exist, then the API will create one.
Response codes
--------------
.. rest_status_code:: success status.yaml
- 200
.. rest_status_code:: error status.yaml
- 400
- 403
- 404
Request
-------
.. rest_parameters:: parameters.yaml
- project_id: project_id_path
- quota_class_name: quota_class_name
- shares: maxTotalSharesOptional
- snapshots: maxTotalShareSnapshotsOptional
- gigabytes: maxTotalShareGigabytesOptional
- snapshot-gigabytes: maxTotalSnapshotGigabytesOptional
- share-networks: maxTotalShareNetworksOptional
- share-replicas: maxTotalShareReplicasOptional
- replica-gigabytes: maxTotalReplicaGigabytesOptional
Request Example
---------------
.. literalinclude:: ./samples/quota-classes-update-request.json
:language: javascript
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- quota_class_set: quota_class_set
- share_groups: maxTotalShareGroups
- gigabytes: maxTotalShareGigabytes
- share_group_snapshots: maxTotalShareGroupSnapshots
- snapshots: maxTotalShareSnapshots
- snapshot_gigabytes: maxTotalSnapshotGigabytes
- shares: maxTotalShares
- share_networks: maxTotalShareNetworks
- share_replicas: maxTotalShareReplicas
- replica_gigabytes: maxTotalReplicaGigabytes
Response Example
----------------
.. literalinclude:: ./samples/quota-classes-update-response.json
:language: javascript