Quotas

Overview

The quotas extension can be used to retrieve a tenant’s absolute limits.

Note: Quotas is an extension and needs to be enabled before it can be used. If Designate returns a 404 error, ensure that the following line has been added to the designate.conf file:

enabled_extensions_v1 = quotas, ...

Once this line has been added, restart the designate-central and designate-api services.

Get Quotas

GET /quotas/TENANT_ID

Retrieves quotas for tenant with the specified TENANT_ID. The following example retrieves the quotas for tenant 12345.

Example request:

GET /v1/quotas/12345 HTTP/1.1
Host: 127.0.0.1:9001
Accept: application/json
Content-Type: application/json

Example response:

HTTP/1.1 201 Created
Content-Type: application/json

{
  "api_export_size": 1000,
  "domains": 10,
  "recordset_records": 20,
  "domain_records": 500,
  "domain_recordsets": 500
}
From api_export_size:
 

Number of recordsets allowed in a zone export

Form Parameters:
 
  • domains – Number of domains the tenant is allowed to own
  • recordset_records – Number of records allowed per recordset
  • domain_records – Number of records allowed per domain
  • domain_recordsets – Number of recordsets allowed per domain
Status Codes:

Update Quotas

PUT /quotas/TENANT_ID

Updates the specified quota(s) to their new values.

Example request:

PUT /v1/quotas/12345 HTTP/1.1
Host: 127.0.0.1:9001
Accept: application/json
Content-Type: application/json

{
  "domains": 1000,
  "domain_records": 50
}

Example response:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "api_export_size": 1000,
  "domains": 1000,
  "recordset_records": 20,
  "domain_records": 50,
  "domain_recordsets": 500
}
Status Codes:

Reset Quotas to Default

DELETE /quotas/TENANT_ID

Restores the tenant’s quotas back to their default values.

Example request:

DELETE /v1/quotas/12345 HTTP/1.1
Host: 127.0.0.1:9001
Accept: application/json
Content-Type: application/json

Example response:

HTTP/1.1 200 Success
Status Codes: