Namespace

Create Namespace

Namespace.create_namespace(path)[source]

Create a namespace at the given path.

Supported methods:

POST: /sys/namespaces/{path}. Produces: 200 application/json

Returns

The response of the request.

Return type

requests.Response

Examples

import hvac
client = hvac.Client(url='https://127.0.0.1:8200')

# Create namespace team1 where team1 is a child of root
client.sys.create_namespace(path="team1")

# Create namespace team1/app1 where app1 is a child of team1
client2 = hvac.Client(url='https://127.0.0.1:8200', namespace="team1")
client2.sys.create_namespace(path="app1")

Example output:

print(client.sys.create_namespace(path=”team1”)) {“request_id”:”<redacted>”,”lease_id”:””,”renewable”:false,”lease_duration”:0,”data”:{“id”:”nf28f”,”path”:”team1/”},”wrap_info”:null,”warnings”:null,”auth”:null}

print(client2.sys.create_namespace(path=”app1”)) {“request_id”:”<redacted>”,”lease_id”:””,”renewable”:false,”lease_duration”:0,”data”:{“id”:”EGqRJ”,”path”:”team1/app1/”},”wrap_info”:null,”warnings”:null,”auth”:null}

List Namespaces

Namespace.list_namespaces()[source]

Lists all the namespaces.

Supported methods:

LIST: /sys/namespaces. Produces: 200 application/json

Returns

The JSON response of the request.

Return type

dict

Examples

import hvac
client = hvac.Client(url='https://127.0.0.1:8200')
client.sys.create_namespace(path='testns')

client.sys.list_namespaces()

Example output:

print(client.sys.list_namespaces()) {“request_id”:”<redacted>”,”lease_id”:””,”renewable”:false,”lease_duration”:0,”data”:{“key_info”:{“testns/”:{“id”:”ekiUn”,”path”:”testns/”}},”keys”:[“testns/”]},”wrap_info”:null,”warnings”:null,”auth”:null}

Delete Namespace

Namespace.delete_namespace(path)[source]

Delete a namespaces. You cannot delete a namespace with existing child namespaces.

Supported methods:

DELETE: /sys/namespaces. Produces: 204 (empty body)

Returns

The response of the request.

Return type

requests.Response

Examples

import hvac

# Delete namespace app1 where app1 is a child of team1
client2 = hvac.Client(url='https://127.0.0.1:8200', namespace="team1")
client2.sys.delete_namespace(path="app1")

# Delete namespace team1
client = hvac.Client(url='https://127.0.0.1:8200')
client.sys.delete_namespace(path="team1")