> For the complete documentation index, see [llms.txt](https://docs.zus.network/zus-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.zus.network/zus-docs/http-apis/zvault-api.md).

# zVault API

## Deletes existing master key.

> Deletes existing master key, propagating changes to Zauth.

```json
{"openapi":"3.1.1","info":{"version":"0.0.1"},"paths":{"/delete/:client_id":{"post":{"description":"Deletes existing master key, propagating changes to Zauth.","summary":"Deletes existing master key.","parameters":[{"type":"string","description":"0box generated JWT token","name":"X-Jwt-Token","in":"header","required":true}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"500":{"description":"Internal Server Error"}}}}}}
```

## Generate new split key.

> Generates new split key using previously stored or generated master key, propagating changes to zauth.

```json
{"openapi":"3.1.1","info":{"version":"0.0.1"},"paths":{"/key/:client_id":{"post":{"description":"Generates new split key using previously stored or generated master key, propagating changes to zauth.","summary":"Generate new split key.","parameters":[{"type":"string","description":"0box generated JWT token","name":"X-Jwt-Token","in":"header","required":true}],"responses":{"201":{"description":"Created"},"400":{"description":"Bad Request"},"500":{"description":"Internal Server Error"}}}}}}
```

## GET /keys/:client\_id

> Retrieves split keys for the given master key.

```json
{"openapi":"3.1.1","info":{"version":"0.0.1"},"paths":{"/keys/:client_id":{"get":{"summary":"Retrieves split keys for the given master key.","parameters":[{"type":"string","description":"0box generated JWT token","name":"X-Jwt-Token","in":"header","required":true}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"500":{"description":"Internal Server Error"}}}}}}
```

## GET /restrictions

> Retrieves restrictions for the given split key.

```json
{"openapi":"3.1.1","info":{"version":"0.0.1"},"paths":{"/restrictions":{"get":{"summary":"Retrieves restrictions for the given split key.","parameters":[{"type":"string","description":"0box generated JWT token","name":"X-Jwt-Token","in":"header","required":true},{"type":"string","description":"Peer public key of the split key, which restrictions should be updated","name":"X-Peer-Public-Key","in":"header","required":true}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"500":{"description":"Internal Server Error"}}}}}}
```

## Update restrictions for the existing split key.

> Updates restrictions for existing split key, propagating changes to Zauth.

```json
{"openapi":"3.1.1","info":{"version":"0.0.1"},"paths":{"/restrictions/:client_id":{"put":{"description":"Updates restrictions for existing split key, propagating changes to Zauth.","summary":"Update restrictions for the existing split key.","parameters":[{"type":"string","description":"0box generated JWT token","name":"X-Jwt-Token","in":"header","required":true},{"type":"string","description":"Peer public key of the split key, which restrictions should be updated","name":"X-Peer-Public-Key","in":"header","required":true}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"500":{"description":"Internal Server Error"}}}}}}
```

## Revoke existing split key.

> Revokes existing split key, propagating changes to Zauth.

```json
{"openapi":"3.1.1","info":{"version":"0.0.1"},"paths":{"/revoke/:client_id":{"post":{"description":"Revokes existing split key, propagating changes to Zauth.","summary":"Revoke existing split key.","parameters":[{"type":"string","description":"0box generated JWT token","name":"X-Jwt-Token","in":"header","required":true}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"500":{"description":"Internal Server Error"}},"requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"type":"string"}}},"description":"Public key of split key to be removed","required":true}}}}}
```

## Share existing split key to the givens user.

> Shares previously created split key to the given user.

```json
{"openapi":"3.1.1","info":{"version":"0.0.1"},"paths":{"/share":{"post":{"description":"Shares previously created split key to the given user.","summary":"Share existing split key to the givens user.","parameters":[{"type":"string","description":"0box generated JWT token","name":"X-Jwt-Token","in":"header","required":true}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"500":{"description":"Internal Server Error"}}}}}}
```

## Store 0box wallet private key.

> Stores external 0box generated wallet private key as master key used to generate new split keys.

```json
{"openapi":"3.1.1","info":{"version":"0.0.1"},"paths":{"/store":{"post":{"description":"Stores external 0box generated wallet private key as master key used to generate new split keys.","summary":"Store 0box wallet private key.","parameters":[{"type":"string","description":"0box generated JWT token","name":"X-Jwt-Token","in":"header","required":true}],"responses":{"201":{"description":"Created"},"400":{"description":"Bad Request"},"500":{"description":"Internal Server Error"}}}}}}
```

## Generate new wallet.

> Generates new wallet used as master key to generate new split keys.

```json
{"openapi":"3.1.1","info":{"version":"0.0.1"},"paths":{"/wallet":{"post":{"description":"Generates new wallet used as master key to generate new split keys.","summary":"Generate new wallet.","parameters":[{"type":"string","description":"0box generated JWT token","name":"X-Jwt-Token","in":"header","required":true}],"responses":{"201":{"description":"Created"},"400":{"description":"Bad Request"},"500":{"description":"Internal Server Error"}}}}}}
```

## GET /wallets

> Retrieves split wallets for the given master key.

```json
{"openapi":"3.1.1","info":{"version":"0.0.1"},"paths":{"/wallets":{"get":{"summary":"Retrieves split wallets for the given master key.","parameters":[{"type":"string","description":"0box generated JWT token","name":"X-Jwt-Token","in":"header","required":true}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"500":{"description":"Internal Server Error"}}}}}}
```

## GET /wallets/shared

> Retrieves shared split keys shared with the given user.

```json
{"openapi":"3.1.1","info":{"version":"0.0.1"},"paths":{"/wallets/shared":{"get":{"summary":"Retrieves shared split keys shared with the given user.","parameters":[{"type":"string","description":"0box generated JWT token","name":"X-Jwt-Token","in":"header","required":true}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"500":{"description":"Internal Server Error"}}}}}}
```
