-
Notifications
You must be signed in to change notification settings - Fork 2
34 Registry
The system provides the ability to store data in a registry, similar to the Windows operating system registry.
To access data, you need to specify either:
-
Identifier --
Id; -
Value name --
ValueName.
or:
-
Key --
Key; -
Subkey --
SubKey; -
Value name --
ValueName.
Key has two fixed values (two categories):
| Name | Value | Description |
|---|---|---|
| Current settings | CURRENT_CONFIG | This category stores information accessible to all users. |
| Current user | CURRENT_USER | This category stores information accessible only to the registered user. |
Subkey is a path string to the values. The backslash character ( \ ) is used as a separator.
- The subkey format resembles file paths in Windows systems.
-
Important: The subkey must NOT start or end with a backslash (
\)!
POST /api/v1/registry/listReturns the registry as a list.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID | Optional. Registry entry identifier. | |
| key | UUID | Optional. Key identifier. | |
| subkey | UUID | Optional. Subkey identifier. | |
| extended | BOOL |
Optional. Extended value format. When true, the value format will be tabular; when false, it will be a nested JSON object. |
Example request:
POST /api/v1/registry/list HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMgResponse format:
| Field | Type | Description |
|---|---|---|
| id | UUID | Registry entry identifier. |
| key | UUID | Key identifier. |
| keyname | STRING | Key name. |
| parent | UUID | Parent key identifier. |
| subkey | UUID | Subkey identifier. |
| subkeyname | STRING | Subkey name. |
| level | NUMERIC | Hierarchy level. |
| valuename | STRING | Value name. |
| value | JSON | Value. When extended: false (default). |
Format of value:
| Field | Type | Description |
|---|---|---|
| vtype | INTEGER | Value type. 0 - Integer; 1 - Arbitrary precision number; 2 - Date and time; 3 - String; 4 - Boolean |
| vinteger | INTEGER | Integer value. |
| vnumeric | NUMERIC | Arbitrary precision number. |
| vdatetime | TIMESTAMP | Date and time. |
| vstring | STRING | String. |
| vboolean | BOOLEAN | Boolean. |
POST /api/v1/registry/keyReturns registry keys.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID | Optional. Registry entry identifier. | |
| root | UUID | Optional. Root registry entry identifier. | |
| parent | UUID | Optional. Subkey identifier. | |
| key | STRING | Optional. Key identifier. |
POST /api/v1/registry/valueReturns registry values.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID | Optional. Registry entry identifier. | |
| key | UUID | Optional. Key identifier. | |
| extended | BOOL |
Optional. Extended value format. When true, the value format will be tabular; when false, it will be a nested JSON object. |
Response format:
| Field | Type | Description |
|---|---|---|
| id | UUID | Registry entry identifier. |
| key | UUID | Key identifier. |
| keyname | STRING | Key name. |
| subkey | UUID | Subkey identifier. |
| subkeyname | STRING | Subkey name. |
| valuename | STRING | Value name. |
| value | JSON | Value. When extended: false (default). |
Format of value:
| Field | Type | Description |
|---|---|---|
| vtype | INTEGER | Value type. 0 - Integer; 1 - Arbitrary precision number; 2 - Date and time; 3 - String; 4 - Boolean |
| vinteger | INTEGER | Integer value. |
| vnumeric | NUMERIC | Arbitrary precision number. |
| vdatetime | TIMESTAMP | Date and time. |
| vstring | STRING | String. |
| vboolean | BOOLEAN | Boolean. |
POST /api/v1/registry/get/keyReturns a registry key.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID | Optional. Key identifier. |
Response format:
| Field | Type | Description |
|---|---|---|
| id | UUID | Registry entry identifier. |
| root | UUID | Root key identifier. |
| parent | UUID | Parent key identifier. |
| key | STRING | Key name. |
| level | NUMERIC | Hierarchy level. |
POST /api/v1/registry/enum/keyEnumerates keys at the specified path.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| key | STRING | CURRENT_CONFIG, CURRENT_USER | Required. Key name. |
| subkey | STRING | Required. Subkey name. |
Response format:
| Field | Type | Description |
|---|---|---|
| id | UUID | Registry entry identifier. |
| root | UUID | Root key identifier. |
| parent | UUID | Parent key identifier. |
| key | STRING | Key name. |
| level | NUMERIC | Hierarchy level. |
Example request:
POST /api/v1/registry/enum/key HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"key": "CURRENT_CONFIG", "subkey": "CONFIG"}Example response:
[
{
"id": "44aa6c22-eb31-4120-8502-b05e4d1a9c8d",
"key": "CURRENT_CONFIG",
"subkey": "CONFIG\\Department"
},
{
"id": "a2445fbc-24bc-4fb8-866f-71e655c33fe8",
"key": "CURRENT_CONFIG",
"subkey": "CONFIG\\CurrentProject"
}
]Example request:
POST /api/v1/registry/enum/key HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"key": "CURRENT_CONFIG", "subkey": "CONFIG\\CurrentProject"}Example response:
[
{
"id": "3bdf794d-7115-4579-80ec-bf307ab3ba4c",
"key": "CURRENT_CONFIG",
"subkey": "CONFIG\\CurrentProject\\Product"
},
{
"id": "68a0bbe0-d902-4b24-8a26-66b0de532767",
"key": "CURRENT_CONFIG",
"subkey": "CONFIG\\CurrentProject\\API"
}
]POST /api/v1/registry/enum/valueEnumerates values at the specified path.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| key | STRING | CURRENT_CONFIG, CURRENT_USER | Required. Key name. |
| subkey | STRING | Required. Subkey name. | |
| extended | NUMERIC |
Optional. Extended value format. When true, the value format will be tabular; when false, it will be a nested JSON object. |
Response format:
| Field | Type | Description |
|---|---|---|
| id | UUID | Registry entry identifier. |
| key | STRING | Key name. |
| subkey | STRING | Subkey name. |
| valuename | STRING | Value name. |
| value | JSON | Value. When extended: false (default). |
Format of value:
| Field | Type | Description |
|---|---|---|
| vtype | INTEGER | Value type. 0 - Integer; 1 - Arbitrary precision number; 2 - Date and time; 3 - String; 4 - Boolean |
| vinteger | INTEGER | Integer value. |
| vnumeric | NUMERIC | Arbitrary precision number. |
| vdatetime | TIMESTAMP | Date and time. |
| vstring | STRING | String. |
| vboolean | BOOLEAN | Boolean. |
Example request:
POST /api/v1/registry/enum/value HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"key": "CURRENT_CONFIG", "subkey": "CONFIG\\CurrentProject"}POST /api/v1/registry/writeSave data to the registry.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID |
Variadic. Registry key identifier. Takes priority over the Key and SubKey pair. |
|
| key | STRING | CURRENT_CONFIG, CURRENT_USER | Variadic. Key name. |
| subkey | STRING | Variadic. Subkey name. | |
| name | STRING | Required. Value name. Will be created if it does not exist. | |
| type | INTEGER | 0, 1, 2, 3, 4 | Required. Value type. 0 - Integer; 1 - Arbitrary precision number; 2 - Date and time; 3 - String; 4 - Boolean |
| data | ANYNONARRAY | Required. Data in accordance with the specified type. |
Example request:
POST /api/v1/registry/write HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"key": "CURRENT_CONFIG", "subkey": "CONFIG\\CurrentProject", "name": "Name", "type": 3, "data": "Project name"}POST /api/v1/registry/write/integerSave an integer value to the registry.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID |
Variadic. Registry key identifier. Takes priority over the Key and SubKey pair. |
|
| key | STRING | CURRENT_CONFIG, CURRENT_USER | Variadic. Key name. |
| subkey | STRING | Variadic. Subkey name. | |
| name | STRING | Required. Value name. Will be created if it does not exist. | |
| value | INTEGER | Required. Value. |
Example request:
POST /api/v1/registry/write/integer HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"key": "CURRENT_CONFIG", "subkey": "CONFIG\\CurrentProject", "name": "IntegerValue", "value": 1}POST /api/v1/registry/write/numericSave an arbitrary precision number to the registry.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID |
Variadic. Registry key identifier. Takes priority over the Key and SubKey pair. |
|
| key | STRING | CURRENT_CONFIG, CURRENT_USER | Variadic. Key name. |
| subkey | STRING | Variadic. Subkey name. | |
| name | STRING | Required. Value name. Will be created if it does not exist. | |
| value | NUMERIC | Required. Value. |
Example request:
POST /api/v1/registry/write/numeric HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"key": "CURRENT_CONFIG", "subkey": "CONFIG\\CurrentProject", "name": "NumberValue", "value": 0.1}POST /api/v1/registry/write/datetimeSave a date and time value to the registry.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID |
Variadic. Registry key identifier. Takes priority over the Key and SubKey pair. |
|
| key | STRING | CURRENT_CONFIG, CURRENT_USER | Variadic. Key name. |
| subkey | STRING | Variadic. Subkey name. | |
| name | STRING | Required. Value name. Will be created if it does not exist. | |
| value | TIMESTAMP | Required. Value. |
Example request:
POST /api/v1/registry/write/datetime HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"key": "CURRENT_CONFIG", "subkey": "CONFIG\\CurrentProject", "name": "DateTimeValue", "value": "2020-01-02T03:04:05"}POST /api/v1/registry/write/stringSave a string value to the registry.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID |
Variadic. Registry key identifier. Takes priority over the Key and SubKey pair. |
|
| key | STRING | CURRENT_CONFIG, CURRENT_USER | Variadic. Key name. |
| subkey | STRING | Variadic. Subkey name. | |
| name | STRING | Required. Value name. Will be created if it does not exist. | |
| value | STRING | Required. Value. |
Example request:
POST /api/v1/registry/write/string HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"key": "CURRENT_CONFIG", "subkey": "CONFIG\\CurrentProject", "name": "StringValue", "value": "Any string"}POST /api/v1/registry/write/booleanSave a boolean value to the registry.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID |
Variadic. Registry key identifier. Takes priority over the Key and SubKey pair. |
|
| key | STRING | CURRENT_CONFIG, CURRENT_USER | Variadic. Key name. |
| subkey | STRING | Variadic. Subkey name. | |
| name | STRING | Required. Value name. Will be created if it does not exist. | |
| value | BOOLEAN | Required. Value. |
Example request:
POST /api/v1/registry/write/boolean HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"key": "CURRENT_CONFIG", "subkey": "CONFIG\\CurrentProject", "name": "LogicValue", "value": true}POST /api/v1/registry/readRead data from the registry.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID |
Variadic. Registry key identifier. Takes priority over the Key and SubKey pair. |
|
| key | STRING | CURRENT_CONFIG, CURRENT_USER | Variadic. Key name. |
| subkey | STRING | Variadic. Subkey name. | |
| name | STRING | Required. Value name. |
Response format:
| Field | Type | Description |
|---|---|---|
| vtype | INTEGER | Value type. 0 - Integer; 1 - Arbitrary precision number; 2 - Date and time; 3 - String; 4 - Boolean |
| vinteger | INTEGER | Integer value. |
| vnumeric | NUMERIC | Arbitrary precision number. |
| vdatetime | TIMESTAMP | Date and time. |
| vstring | STRING | String. |
| vboolean | BOOLEAN | Boolean. |
Example request:
POST /api/v1/registry/read HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"key": "CURRENT_CONFIG", "subkey": "CONFIG\\CurrentProject", "name": "Name"}POST /api/v1/registry/read/integerRead an integer value from the registry.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID |
Variadic. Registry key identifier. Takes priority over the Key and SubKey pair. |
|
| key | STRING | CURRENT_CONFIG, CURRENT_USER | Variadic. Key name. |
| subkey | STRING | Variadic. Subkey name. | |
| name | STRING | Required. Value name. |
Response format:
| Field | Type | Description |
|---|---|---|
| value | INTEGER | Value. |
Example request:
POST /api/v1/registry/read/integer HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"key": "CURRENT_CONFIG", "subkey": "CONFIG\\CurrentProject", "name": "IntegerValue"}POST /api/v1/registry/read/numericRead an arbitrary precision number from the registry.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID |
Variadic. Registry key identifier. Takes priority over the Key and SubKey pair. |
|
| key | STRING | CURRENT_CONFIG, CURRENT_USER | Variadic. Key name. |
| subkey | STRING | Variadic. Subkey name. | |
| name | STRING | Required. Value name. |
Response format:
| Field | Type | Description |
|---|---|---|
| value | NUMERIC | Value. |
Example request:
POST /api/v1/registry/read/numeric HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"key": "CURRENT_CONFIG", "subkey": "CONFIG\\CurrentProject", "name": "NumberValue"}POST /api/v1/registry/read/datetimeRead a date and time value from the registry.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID |
Variadic. Registry key identifier. Takes priority over the Key and SubKey pair. |
|
| key | STRING | CURRENT_CONFIG, CURRENT_USER | Variadic. Key name. |
| subkey | STRING | Variadic. Subkey name. | |
| name | STRING | Required. Value name. |
Response format:
| Field | Type | Description |
|---|---|---|
| value | TIMESTAMP | Value. |
Example request:
POST /api/v1/registry/read/datetime HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"key": "CURRENT_CONFIG", "subkey": "CONFIG\\CurrentProject", "name": "DateTimeValue"}POST /api/v1/registry/read/stringRead a string value from the registry.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID |
Variadic. Registry key identifier. Takes priority over the Key and SubKey pair. |
|
| key | STRING | CURRENT_CONFIG, CURRENT_USER | Variadic. Key name. |
| subkey | STRING | Variadic. Subkey name. | |
| name | STRING | Required. Value name. |
Response format:
| Field | Type | Description |
|---|---|---|
| value | STRING | Value. |
Example request:
POST /api/v1/registry/read/string HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"key": "CURRENT_CONFIG", "subkey": "CONFIG\\CurrentProject", "name": "StringValue"}POST /api/v1/registry/read/booleanRead a boolean value from the registry.
Request parameters:
| Name | Type | Value | Description |
|---|---|---|---|
| id | UUID |
Variadic. Registry key identifier. Takes priority over the Key and SubKey pair. |
|
| key | STRING | CURRENT_CONFIG, CURRENT_USER | Variadic. Key name. |
| subkey | STRING | Variadic. Subkey name. | |
| name | STRING | Required. Value name. |
Response format:
| Field | Type | Description |
|---|---|---|
| value | BOOLEAN | Value. |
Example request:
POST /api/v1/registry/read/boolean HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[abbreviated for brevity].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"key": "CURRENT_CONFIG", "subkey": "CONFIG\\CurrentProject", "name": "LogicValue"}| Endpoint | Method | Description |
|---|---|---|
/api/v1/registry/list |
POST | List registry entries |
/api/v1/registry/key |
POST | Get registry keys |
/api/v1/registry/value |
POST | Get registry values |
/api/v1/registry/get/key |
POST | Get a specific key |
/api/v1/registry/enum/key |
POST | Enumerate subkeys at a path |
/api/v1/registry/enum/value |
POST | Enumerate values at a path |
/api/v1/registry/write |
POST | Write a typed value (generic) |
/api/v1/registry/write/integer |
POST | Write an integer |
/api/v1/registry/write/numeric |
POST | Write a numeric value |
/api/v1/registry/write/datetime |
POST | Write a date/time |
/api/v1/registry/write/string |
POST | Write a string |
/api/v1/registry/write/boolean |
POST | Write a boolean |
/api/v1/registry/read |
POST | Read a typed value (generic) |
/api/v1/registry/read/integer |
POST | Read an integer |
/api/v1/registry/read/numeric |
POST | Read a numeric value |
/api/v1/registry/read/datetime |
POST | Read a date/time |
/api/v1/registry/read/string |
POST | Read a string |
/api/v1/registry/read/boolean |
POST | Read a boolean |
| Type Code | Name | PostgreSQL Type | Description |
|---|---|---|---|
| 0 | Integer | INTEGER | Whole number |
| 1 | Numeric | NUMERIC | Arbitrary precision number (decimal) |
| 2 | DateTime | TIMESTAMP | Date and time |
| 3 | String | STRING | Text string |
| 4 | Boolean | BOOLEAN | Logical true/false |
Concepts
API Guide
Authentication & Session
- Connection
- Registration
- Authorization (OAuth 2.0)
- Sign In
- Sign Out
- Password Recovery
- Verification Codes
- Authentication
- Authorization
- Who Am I?
Core Services
Object & Workflow Endpoints
Schema & Internals
Configuration Developer Guide
- Configuration Guide
- Creating an Entity
- Creating a Document
- Creating a Reference
- Workflow Customization
- REST Endpoint Guide
- Event Handler Guide
Operations