# Systems

## Get status of running services.

> \*\*API Key Scope\*\*: systems / services

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"data_management_error":{"description":"Error returned from the data management.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/data_management_error"}}}}},"schemas":{"data_management_error":{"type":"object","properties":{"id":{"type":"string","readOnly":true},"code":{"type":"integer","readOnly":true},"detail":{"type":"string","readOnly":true},"status":{"type":"string","readOnly":true}}}}},"paths":{"/systems/services":{"get":{"summary":"Get status of running services.","operationId":"index_services","tags":["systems"],"description":"**API Key Scope**: systems / services","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"./data_management/openapi.yaml#/components/schemas/ListServicesResponse"}}}},"default":{"$ref":"#/components/responses/data_management_error"}}}}}}
```

## Get info about hosts.

> \*\*API Key Scope\*\*: systems / hosts

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"data_management_error":{"description":"Error returned from the data management.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/data_management_error"}}}}},"schemas":{"data_management_error":{"type":"object","properties":{"id":{"type":"string","readOnly":true},"code":{"type":"integer","readOnly":true},"detail":{"type":"string","readOnly":true},"status":{"type":"string","readOnly":true}}}}},"paths":{"/systems/hosts":{"get":{"summary":"Get info about hosts.","operationId":"index_hosts","tags":["systems"],"description":"**API Key Scope**: systems / hosts","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"./data_management/openapi.yaml#/components/schemas/ListHostsResponse"}}}},"default":{"$ref":"#/components/responses/data_management_error"}}}}}}
```

## Get information about current license.

> \*\*API Key Scope\*\*: licenses / show

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"data_management_error":{"description":"Error returned from the data management.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/data_management_error"}}}}},"schemas":{"data_management_error":{"type":"object","properties":{"id":{"type":"string","readOnly":true},"code":{"type":"integer","readOnly":true},"detail":{"type":"string","readOnly":true},"status":{"type":"string","readOnly":true}}}}},"paths":{"/systems/license":{"get":{"summary":"Get information about current license.","operationId":"show_license","tags":["systems"],"description":"**API Key Scope**: licenses / show","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"./data_management/openapi.yaml#/components/schemas/License"}}}},"default":{"$ref":"#/components/responses/data_management_error"}}}}}}
```

## Set new license

> \*\*API Key Scope\*\*: licenses / update

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"unprocessable_entity":{"description":"The received resource was not correctly formatted.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/model_error"}}}},"data_management_error":{"description":"Error returned from the data management.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/data_management_error"}}}}},"schemas":{"model_error":{"type":"object","properties":{"details":{"type":"object","additionalProperties":{"type":"array","items":{"$ref":"#/components/schemas/attribute_error"}},"description":"Parsable objects describing the errors. The key is the invalid attribute name."},"messages":{"type":"array","description":"English description of the errors.","items":{"type":"string"}}}},"attribute_error":{"required":["error"],"type":"object","properties":{"error":{"type":"string"}},"discriminator":{"propertyName":"error"}},"data_management_error":{"type":"object","properties":{"id":{"type":"string","readOnly":true},"code":{"type":"integer","readOnly":true},"detail":{"type":"string","readOnly":true},"status":{"type":"string","readOnly":true}}}}},"paths":{"/systems/license":{"put":{"summary":"Set new license","operationId":"update_license","tags":["systems"],"description":"**API Key Scope**: licenses / update","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"./data_management/openapi.yaml#/components/schemas/License"}}}},"422":{"$ref":"#/components/responses/unprocessable_entity"},"default":{"$ref":"#/components/responses/data_management_error"}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"./data_management/openapi.yaml#/components/schemas/UpdateLicenseRequest"}}},"required":true}}}}}
```

## POST /systems/reset/generate\_vars

> Creates a YAML file with selected tables and downloads it

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"requestBodies":{"reset_form":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reset"}}},"required":true}},"schemas":{"reset":{"type":"object","properties":{"sections":{"type":"array","description":"sections selected for reset","items":{"required":["value"],"type":"object","properties":{"value":{"type":"string","enum":["full","nas_config","nas_storage","nas_pools","clouds_config","clouds_storage","clouds_pools","tasks","history","templates","web_users","logs","audits","traces"]},"after":{"type":"string","description":"after date-time criteria for history reset","format":"date-time"},"before":{"type":"string","description":"before date-time criteria for history reset","format":"date-time"}}}}}}},"responses":{"reset":{"description":"The var file created","content":{"application/x-yaml":{"schema":{"type":"string","format":"binary"}}}}}},"paths":{"/systems/reset/generate_vars":{"post":{"summary":"Creates a YAML file with selected tables and downloads it","operationId":"download_reset_vars","tags":["systems"],"requestBody":{"$ref":"#/components/requestBodies/reset_form"},"responses":{"200":{"$ref":"#/components/responses/reset"}}}}}}
```
