Definition Interface
Fetch hub definition
GET/api/v6.1.0.4/hubs/{hub}/definition
| Query parameters | Prototype:
'fetch' ?: (
'locs'
| 'loc_props'
| 'loc_actions'
| 'channels'
| 'tables'
| 'cols'
| 'loc_groups'
| 'members'
| 'channel_actions'
| 'hub_actions'+
)
'channel' ?: ( <ident>+ )
'loc' ?: ( <ident>+ )
'table' ?: ( <str>+ )
'action_type' ?: ( <str>+ )
'cache_view_tstamp' ?: <date_str_usecs_z>
|
| Request headers | Prototype:
X-Hvr-Classified-Access : <str>
|
| Request body | None |
| Response headers | Prototype:
X-Hvr-View-Tstamp : <date_str_usecs_z>
X-Hvr-Reload-Cache : <bool>
X-Hvr-Classified-Transport-Key : <str>
|
| Response body (JSON) | Prototype:
'locs' ?: {
locname<str> *: {
'props' ?: {
prop<str> *: value<typeof_loc_prop>
}
'actions' ?: (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
'channels' ?: {
channel<ident> *: {
'description' ?: <str>
'loc_groups' ?: {
groupname<str> *: {
'members' ?: ( loc<str>* )
}
}
'tables' ?: {
tablename<str> *: {
'base_name' ?: <str>
'table_group' ?: <str>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
'actions' ?: (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
'hub_actions' ?: (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Status codes | ✅ 200 OK ❌ 400 Bad Request |
| Required permissions | ReadOnly access level on hub |
Modify scope or parameters of action
POST/api/v6.1.0.4/hubs/{hub}/definition/action_modify
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'type' : <ident>
'old' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<scal>
}
}
'new' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<null> | <scal>
}
}
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Action does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'modify_action' : {
'type' : <ident>
'old' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<scal>
}
}
'new' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<null> | <scal>
}
}
}
|
Replace action
POST/api/v6.1.0.4/hubs/{hub}/definition/action_replace
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'type' : <ident>
'old' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<scal>
}
}
'new' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<scal>
}
}
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Action does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'replace_action' : {
'type' : <ident>
'old' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<scal>
}
}
'new' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<scal>
}
}
}
|
Fetch definition changes from events
GET/api/v6.1.0.4/hubs/{hub}/definition/change/events
| Query parameters | Prototype:
'direction' ?: 'redo' | 'undo'
'channel' ?: ( <ident>+ )
'loc' ?: ( <ident>+ )
'ev_tstamp_begin' ?: <date_str_usecs_z>
'ev_tstamp_end' ?: <date_str_usecs_z>
'ev_id' ?: ( <date_str_usecs_z>+ )
|
| Request headers | Prototype:
X-Hvr-Classified-Access : <str>
|
| Request body | None |
| Response headers | Prototype:
X-Hvr-Classified-Transport-Key : <str>
|
| Response body (JSON) | Prototype:
'changes' : (
{
'add_loc' : {
'loc' : <ident>
'props' : {
prop<str> *: value<typeof_loc_prop>
}
'actions' ?: (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'replace_loc' : {
'loc' : <ident>
'props' : {
prop<str> *: value<typeof_loc_prop>
}
'actions' ?: (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'delete_loc' : {
'loc' : <ident>
}
}
| {
'rename_loc' : {
'loc' : <ident>
'new_name' : <ident>
}
}
| {
'add_loc_props' : {
'loc' ?: <ident>
'props' : {
prop<str> *: value<typeof_loc_prop>
}
}
}
| {
'replace_loc_props' : {
'loc' : <ident>
'props' : {
prop<str> *: value<typeof_loc_prop>
}
}
}
| {
'modify_loc_props' : {
'loc' : <ident>
'props' : {
prop<str> *: value<null> | <typeof_loc_prop>
}
}
}
| {
'delete_loc_props' : {
'loc' : <ident>
'props' : ( <str>+ )
}
}
| {
'add_loc_actions' : {
'loc' ?: <ident>
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'replace_loc_action_list' : {
'loc' : <ident>
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'delete_loc_actions' : {
'loc' : <ident>
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'add_channel' : {
'channel' : <ident>
'description' ?: <str>
'loc_groups' ?: {
groupname<ident> *: {
'members' ?: ( loc<ident>* )
}
}
'tables' ?: {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
'actions' ?: (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'replace_channel' : {
'channel' : <ident>
'description' ?: <str>
'loc_groups' ?: {
groupname<ident> *: {
'members' ?: ( loc<ident>* )
}
}
'tables' ?: {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
'actions' ?: (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'modify_channel' : {
'channel' : <ident>
'description' : <str>
}
}
| {
'delete_channel' : {
'channel' : <ident>
}
}
| {
'rename_channel' : {
'channel' : <ident>
'new_name' : <ident>
}
}
| {
'add_loc_group' : {
'channel' ?: <ident>
'loc_group' : <ident>
'members' ?: ( loc<ident>* )
}
}
| {
'replace_loc_group' : {
'channel' : <ident>
'loc_group' : <ident>
'members' ?: ( loc<ident>* )
}
}
| {
'delete_loc_group' : {
'channel' : <ident>
'loc_group' : <ident>
}
}
| {
'rename_loc_group' : {
'channel' : <ident>
'loc_group' : <ident>
'new_name' : <ident>
}
}
| {
'add_loc_group_members' : {
'channel' ?: <ident>
'loc_group' : <ident>
'members' : ( loc<ident>* )
}
}
| {
'replace_loc_group_member_list' : {
'channel' : <ident>
'loc_group' : <ident>
'members' : ( loc<ident>* )
}
}
| {
'delete_loc_group_members' : {
'channel' : <ident>
'loc_group' : <ident>
'members' : ( loc<ident>* )
}
}
| {
'add_tables' : {
'channel' ?: <ident>
'tables' : {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
}
}
| {
'modify_table_list' : {
'channel' ?: <ident>
'tables' : {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
}
}
| {
'replace_table_list' : {
'channel' : <ident>
'tables' : {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
}
}
| {
'add_table' : {
'channel' ?: <ident>
'table' : <ident>
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
| {
'replace_table' : {
'channel' : <ident>
'table' : <ident>
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
| {
'modify_table' : {
'channel' : <ident>
'table' : <ident>
'base_name' ?: <str>
'table_group' ?: <ident>
}
}
| {
'rename_table' : {
'channel' : <ident>
'table' : <ident>
'new_name' : <ident>
}
}
| {
'delete_tables' : {
'channel' : <ident>
'tables' : ( <ident>+ )
}
}
| {
'add_cols' : {
'channel' ?: <ident>
'table' ?: <ident>
'cols' : {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
| {
'modify_col_list' : {
'channel' ?: <ident>
'table' ?: <ident>
'cols' : {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
| {
'replace_col_list' : {
'channel' : <ident>
'table' : <ident>
'cols' : {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
| {
'delete_cols' : {
'channel' : <ident>
'table' : <ident>
'cols' : ( <str>+ )
}
}
| {
'add_channel_actions' : {
'channel' ?: <ident>
'actions' : (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'replace_channel_action_list' : {
'channel' : <ident>
'actions' : (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'delete_channel_actions' : {
'channel' : <ident>
'actions' : (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'add_hub_actions' : {
'actions' ?: (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'replace_hub_action_list' : {
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'delete_hub_actions' : {
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'modify_action' : {
'type' : <ident>
'old' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<scal>
}
}
'new' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<null> | <scal>
}
}
}
}
| {
'replace_action' : {
'type' : <ident>
'old' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<scal>
}
}
'new' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<scal>
}
}
}
}*
)
|
| Status codes | ✅ 200 OK ❌ 400 Bad Request |
| Required permissions | ReadOnly access level on hub |
Fetch channels from hub definition
GET/api/v6.1.0.4/hubs/{hub}/definition/channels
| Query parameters | Prototype:
'fetch' ?: (
'tables'
| 'cols'
| 'loc_groups'
| 'members'
| 'channel_actions'+
)
'channel' ?: ( <ident>+ )
'table' ?: ( <str>+ )
'action_type' ?: ( <str>+ )
'cache_view_tstamp' ?: <date_str_usecs_z>
|
| Request headers | None |
| Request body | None |
| Response headers | Prototype:
X-Hvr-View-Tstamp : <date_str_usecs_z>
X-Hvr-Reload-Cache : <bool>
|
| Response body (JSON) | Prototype:
channel<ident> *: {
'description' ?: <str>
'loc_groups' ?: {
groupname<str> *: {
'members' ?: ( loc<str>* )
}
}
'tables' ?: {
tablename<str> *: {
'base_name' ?: <str>
'table_group' ?: <str>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
'actions' ?: (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
|
| Status codes | ✅ 200 OK: Channels fetched ❌ 400 Bad Request |
| Required permissions | ReadOnly access level on hub |
Add channel
POST/api/v6.1.0.4/hubs/{hub}/definition/channels
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'channel' : <ident>
'description' ?: <str>
'loc_groups' ?: {
groupname<ident> *: {
'members' ?: ( loc<ident>* )
}
}
'tables' ?: {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
'actions' ?: (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 201 Created ❌ 400 Bad Request: Channel already exists |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'add_channel' : {
'channel' : <ident>
'description' ?: <str>
'loc_groups' ?: ( <ident>+ )
'tables' ?: ( <ident>+ )
'actions' ?: ( <ident>+ )
}
|
Delete channel
DELETE/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}
| Query parameters | None |
| Request headers | None |
| Request body | None |
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'delete_channel' : {
'channel' : <ident>
}
|
Fetch channel from hub definition
GET/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}
| Query parameters | Prototype:
'fetch' ?: (
'tables'
| 'cols'
| 'loc_groups'
| 'members'
| 'channel_actions'+
)
'table' ?: ( <str>+ )
'action_type' ?: ( <str>+ )
'cache_view_tstamp' ?: <date_str_usecs_z>
|
| Request headers | None |
| Request body | None |
| Response headers | Prototype:
X-Hvr-View-Tstamp : <date_str_usecs_z>
X-Hvr-Reload-Cache : <bool>
|
| Response body (JSON) | Prototype:
'description' ?: <str>
'loc_groups' ?: {
groupname<str> *: {
'members' ?: ( loc<str>* )
}
}
'tables' ?: {
tablename<str> *: {
'base_name' ?: <str>
'table_group' ?: <str>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
'actions' ?: (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Status codes | ✅ 200 OK: Channel fetched ❌ 400 Bad Request ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadOnly access level on hub |
Modify channel
PATCH/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'modify_channel' : {
'channel' : <ident>
'description' : <str>
}
|
Add or replace channel
PUT/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'description' ?: <str>
'loc_groups' ?: {
groupname<ident> *: {
'members' ?: ( loc<ident>* )
}
}
'tables' ?: {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
'actions' ?: (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'add_channel' | 'replace_channel' : {
'channel' : <ident>
'description' ?: <str>
'loc_groups' ?: ( <ident>+ )
'tables' ?: ( <ident>+ )
'actions' ?: ( <ident>+ )
}
|
Fetch channel actions from hub definition
GET/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/actions
| Query parameters | Prototype:
'action_type' ?: ( <str>+ )
'cache_view_tstamp' ?: <date_str_usecs_z>
|
| Request headers | None |
| Request body | None |
| Response headers | Prototype:
X-Hvr-View-Tstamp : <date_str_usecs_z>
X-Hvr-Reload-Cache : <bool>
|
| Response body (JSON) | Prototype:
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
|
| Status codes | ✅ 200 OK: Definition info fetched ❌ 400 Bad Request ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadOnly access level on hub |
Add channel actions
PATCH/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/actions
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'actions' : (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'add_channel_actions' : {
'channel' : <ident>
'actions' : (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
|
Replace channel actions list
PUT/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/actions
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'actions' : (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'replace_channel_action_list' : {
'channel' : <ident>
'actions' : (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
|
Delete channel actions
POST/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/actions_delete
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'actions' : (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'delete_channel_actions' : {
'channel' : <ident>
'actions' : (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
|
Fetch location groups from hub definition
GET/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/loc_groups
| Query parameters | Prototype:
'fetch' ?: ( 'members'+ )
'cache_view_tstamp' ?: <date_str_usecs_z>
|
| Request headers | None |
| Request body | None |
| Response headers | Prototype:
X-Hvr-View-Tstamp : <date_str_usecs_z>
X-Hvr-Reload-Cache : <bool>
|
| Response body (JSON) | Prototype:
groupname<str> *: {
'members' ?: ( loc<str>* )
}
|
| Status codes | ✅ 200 OK: Location groups fetched ❌ 400 Bad Request ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadOnly access level on hub |
Add location group
POST/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/loc_groups
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'loc_group' : <ident>
'members' ?: ( loc<ident>* )
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 201 Created ❌ 400 Bad Request: Location group already exists ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'add_loc_group' : {
'channel' : <ident>
'loc_group' : <ident>
'members' ?: ( loc<ident>+ )
}
|
Delete location group
DELETE/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/loc_groups/{loc_group}
| Query parameters | None |
| Request headers | None |
| Request body | None |
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel or location group does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'delete_loc_group' : {
'channel' : <ident>
'loc_group' : <ident>
}
|
Fetch location group from hub definition
GET/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/loc_groups/{loc_group}
| Query parameters | Prototype:
'fetch' ?: ( 'members'+ )
'cache_view_tstamp' ?: <date_str_usecs_z>
|
| Request headers | None |
| Request body | None |
| Response headers | Prototype:
X-Hvr-View-Tstamp : <date_str_usecs_z>
X-Hvr-Reload-Cache : <bool>
|
| Response body (JSON) | Prototype:
'members' ?: ( loc<str>* )
|
| Status codes | ✅ 200 OK: Location group fetched ❌ 400 Bad Request ❌ 404 Not Found: Channel or location group does not exist |
| Required permissions | ReadOnly access level on hub |
Add or replace location group
PUT/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/loc_groups/{loc_group}
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'members' ?: ( loc<ident>* )
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'add_loc_group' | 'replace_loc_group' : {
'channel' : <ident>
'loc_group' : <ident>
'members' ?: ( loc<ident>+ )
}
|
Fetch location group members from hub definition
GET/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/loc_groups/{loc_group}/members
| Query parameters | None |
| Request headers | None |
| Request body | None |
| Response headers | Prototype:
X-Hvr-View-Tstamp : <date_str_usecs_z>
X-Hvr-Reload-Cache : <bool>
|
| Response body (JSON) | Prototype:
|
| Status codes | ✅ 200 OK: Location group members fetched ❌ 400 Bad Request ❌ 404 Not Found: Channel or location group does not exist |
| Required permissions | ReadOnly access level on hub |
Add location group members or move members from other location groups in channel
PATCH/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/loc_groups/{loc_group}/members
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'members' : ( loc<ident>* )
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel or location group does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'add_loc_group_members' : {
'channel' : <ident>
'loc_group' : <ident>
'members' : ( loc<ident>+ )
}
|
Replace location group members list
PUT/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/loc_groups/{loc_group}/members
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'members' : ( loc<ident>* )
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel or location group does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'replace_loc_group_member_list' : {
'channel' : <ident>
'loc_group' : <ident>
'members' : ( loc<ident>* )
}
|
Delete location group member
DELETE/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/loc_groups/{loc_group}/members/{member}
| Query parameters | None |
| Request headers | None |
| Request body | None |
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel or location group does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'delete_loc_group_members' : {
'channel' : <ident>
'loc_group' : <ident>
'members' : ( loc<ident>* )
}
|
Delete location group members
POST/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/loc_groups/{loc_group}/members_delete
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'members' : ( loc<str>* )
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel or location group does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'delete_loc_group_members' : {
'channel' : <ident>
'loc_group' : <ident>
'members' : ( loc<ident>* )
}
|
Rename location group
POST/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/loc_groups/{loc_group}/rename
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 201 Created ❌ 400 Bad Request: New location group already exists ❌ 404 Not Found: Channel or old location group does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'rename_loc_group' : {
'channel' : <ident>
'loc_group' : <ident>
'new_name' : <ident>
}
|
Rename channel
POST/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/rename
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 201 Created ❌ 400 Bad Request: New channel already exists ❌ 404 Not Found: Old channel does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'rename_channel' : {
'channel' : <ident>
'new_name' : <ident>
}
|
Fetch tables from hub definition
GET/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/tables
| Query parameters | Prototype:
'fetch' ?: ( 'cols'+ )
'table' ?: ( <str>+ )
'cache_view_tstamp' ?: <date_str_usecs_z>
|
| Request headers | None |
| Request body | None |
| Response headers | Prototype:
X-Hvr-View-Tstamp : <date_str_usecs_z>
X-Hvr-Reload-Cache : <bool>
|
| Response body (JSON) | Prototype:
tablename<str> *: {
'base_name' ?: <str>
'table_group' ?: <str>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
|
| Status codes | ✅ 200 OK: Tables fetched ❌ 400 Bad Request ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadOnly access level on hub |
Add and replace tables
PATCH/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/tables
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'add_tables' | 'modify_table_list' : {
'channel' : <ident>
'tables' : ( <ident>+ )
}
|
Add table
POST/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/tables
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'table' : <ident>
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 201 Created ❌ 400 Bad Request: Table already exists ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'add_table' : {
'channel' : <ident>
'table' : <ident>
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: ( <str>+ )
}
|
Replace tables list
PUT/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/tables
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'replace_table_list' : {
'channel' : <ident>
'tables' : ( <ident>* )
}
|
Delete table
DELETE/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/tables/{table}
| Query parameters | None |
| Request headers | None |
| Request body | None |
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel or table does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'delete_tables' : {
'channel' : <ident>
'tables' : ( <ident>+ )
}
|
Fetch table from hub definition
GET/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/tables/{table}
| Query parameters | Prototype:
'fetch' ?: ( 'cols'+ )
'cache_view_tstamp' ?: <date_str_usecs_z>
|
| Request headers | None |
| Request body | None |
| Response headers | Prototype:
X-Hvr-View-Tstamp : <date_str_usecs_z>
X-Hvr-Reload-Cache : <bool>
|
| Response body (JSON) | Prototype:
'base_name' ?: <str>
'table_group' ?: <str>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
|
| Status codes | ✅ 200 OK: Table fetched ❌ 400 Bad Request ❌ 404 Not Found: Channel or table does not exist |
| Required permissions | ReadOnly access level on hub |
Modify table
PATCH/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/tables/{table}
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'base_name' ?: <str>
'table_group' ?: <ident>
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'modify_table' : {
'channel' : <ident>
'table' : <ident>
'base_name' ?: <str>
'table_group' ?: <ident>
}
|
Add or replace table
PUT/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/tables/{table}
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'add_table' | 'replace_table' : {
'channel' : <ident>
'table' : <ident>
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: ( <str>+ )
}
|
Fetch columns from hub definition
GET/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/tables/{table}/cols
| Query parameters | None |
| Request headers | None |
| Request body | None |
| Response headers | Prototype:
X-Hvr-View-Tstamp : <date_str_usecs_z>
X-Hvr-Reload-Cache : <bool>
|
| Response body (JSON) | Prototype:
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
|
| Status codes | ✅ 200 OK: Columns fetched ❌ 400 Bad Request ❌ 404 Not Found: Channel or table does not exist |
| Required permissions | ReadOnly access level on hub |
Add and replace columns
PATCH/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/tables/{table}/cols
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel or table does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'add_cols' | 'modify_col_list' : {
'channel' : <ident>
'table' : <ident>
'cols' : ( <str>+ )
}
|
Replace columns list
PUT/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/tables/{table}/cols
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel or table does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'replace_col_list' : {
'channel' : <ident>
'table' : <ident>
'cols' : ( <str>+ )
}
|
Delete columns
POST/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/tables/{table}/cols_delete
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel or table does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'delete_cols' : {
'channel' : <ident>
'table' : <ident>
'cols' : ( <str>+ )
}
|
POST/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/tables/{table}/rename
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 201 Created ❌ 400 Bad Request: New table already exists ❌ 404 Not Found: Channel or old table does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'rename_table' : {
'channel' : <ident>
'table' : <ident>
'new_name' : <ident>
}
|
Delete tables
POST/api/v6.1.0.4/hubs/{hub}/definition/channels/{channel}/tables_delete
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'tables' : ( table<str>* )
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Channel does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'delete_tables' : {
'channel' : <ident>
'tables' : ( <ident>+ )
}
|
Fetch hub actions from definition
GET/api/v6.1.0.4/hubs/{hub}/definition/hub_actions
| Query parameters | Prototype:
'action_type' ?: ( <str>+ )
'cache_view_tstamp' ?: <date_str_usecs_z>
|
| Request headers | None |
| Request body | None |
| Response headers | Prototype:
X-Hvr-View-Tstamp : <date_str_usecs_z>
X-Hvr-Reload-Cache : <bool>
|
| Response body (JSON) | Prototype:
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
|
| Status codes | ✅ 200 OK: Hub actions fetched ❌ 400 Bad Request |
| Required permissions | ReadOnly access level on hub |
Add hub actions
PATCH/api/v6.1.0.4/hubs/{hub}/definition/hub_actions
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'add_hub_actions' : {
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
|
Replace hub actions list
PUT/api/v6.1.0.4/hubs/{hub}/definition/hub_actions
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'replace_hub_action_list' : {
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
|
Delete hub actions
POST/api/v6.1.0.4/hubs/{hub}/definition/hub_actions_delete
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'delete_hub_actions' : {
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
|
Import set of definition changes
POST/api/v6.1.0.4/hubs/{hub}/definition/import
| Query parameters | None |
| Request headers | Prototype:
X-Hvr-Classified-Transport-Key : <str>
|
| Request body (JSON) | Prototype:
'export_header' ?: {
'creator' : user<str>
'tstamp' : <date_str_z>
'hvr_version' : <str>
'description' : <str>
'api_version' : <str>
'original_hub' : <str>
'type' : 'definition_changes'
}
'allowed_changes' ?: (
'add_loc'
| 'replace_loc'
| 'delete_loc'
| 'rename_loc'
| 'add_loc_props'
| 'replace_loc_props'
| 'modify_loc_props'
| 'delete_loc_props'
| 'add_loc_actions'
| 'replace_loc_action_list'
| 'delete_loc_actions'
| 'add_channel'
| 'replace_channel'
| 'modify_channel'
| 'delete_channel'
| 'rename_channel'
| 'add_loc_group'
| 'replace_loc_group'
| 'delete_loc_group'
| 'rename_loc_group'
| 'add_loc_group_members'
| 'replace_loc_group_member_list'
| 'delete_loc_group_members'
| 'add_tables'
| 'modify_table_list'
| 'replace_table_list'
| 'add_table'
| 'replace_table'
| 'modify_table'
| 'rename_table'
| 'delete_tables'
| 'add_cols'
| 'modify_col_list'
| 'replace_col_list'
| 'delete_cols'
| 'add_channel_actions'
| 'replace_channel_action_list'
| 'delete_channel_actions'
| 'add_hub_actions'
| 'replace_hub_action_list'
| 'delete_hub_actions'
| 'modify_action'
| 'replace_action'+
)
'loc_context' ?: <ident>
'channel_context' ?: <ident>
'table_context' ?: <ident>
'on_add_exists' ?: 'replace' | 'rename' | 'abort'
'on_action_absent_loc' ?: 'loc_group' | 'discard' | 'abort'
'on_old_group_members' ?: 'keep' | 'remove'
'on_member_absent_loc' ?: 'remove' | 'abort'
'on_absent' ?: 'resilient' | 'abort'
'changes' : (
{
'add_loc' : {
'loc' : <ident>
'props' : {
prop<str> *: value<typeof_loc_prop>
}
'actions' ?: (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'replace_loc' : {
'loc' : <ident>
'props' : {
prop<str> *: value<typeof_loc_prop>
}
'actions' ?: (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'delete_loc' : {
'loc' : <ident>
}
}
| {
'rename_loc' : {
'loc' : <ident>
'new_name' : <ident>
}
}
| {
'add_loc_props' : {
'loc' ?: <ident>
'props' : {
prop<str> *: value<typeof_loc_prop>
}
}
}
| {
'replace_loc_props' : {
'loc' : <ident>
'props' : {
prop<str> *: value<typeof_loc_prop>
}
}
}
| {
'modify_loc_props' : {
'loc' : <ident>
'props' : {
prop<str> *: value<null> | <typeof_loc_prop>
}
}
}
| {
'delete_loc_props' : {
'loc' : <ident>
'props' : ( <str>+ )
}
}
| {
'add_loc_actions' : {
'loc' ?: <ident>
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'replace_loc_action_list' : {
'loc' : <ident>
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'delete_loc_actions' : {
'loc' : <ident>
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'add_channel' : {
'channel' : <ident>
'description' ?: <str>
'loc_groups' ?: {
groupname<ident> *: {
'members' ?: ( loc<ident>* )
}
}
'tables' ?: {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
'actions' ?: (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'replace_channel' : {
'channel' : <ident>
'description' ?: <str>
'loc_groups' ?: {
groupname<ident> *: {
'members' ?: ( loc<ident>* )
}
}
'tables' ?: {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
'actions' ?: (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'modify_channel' : {
'channel' : <ident>
'description' : <str>
}
}
| {
'delete_channel' : {
'channel' : <ident>
}
}
| {
'rename_channel' : {
'channel' : <ident>
'new_name' : <ident>
}
}
| {
'add_loc_group' : {
'channel' ?: <ident>
'loc_group' : <ident>
'members' ?: ( loc<ident>* )
}
}
| {
'replace_loc_group' : {
'channel' : <ident>
'loc_group' : <ident>
'members' ?: ( loc<ident>* )
}
}
| {
'delete_loc_group' : {
'channel' : <ident>
'loc_group' : <ident>
}
}
| {
'rename_loc_group' : {
'channel' : <ident>
'loc_group' : <ident>
'new_name' : <ident>
}
}
| {
'add_loc_group_members' : {
'channel' ?: <ident>
'loc_group' : <ident>
'members' : ( loc<ident>* )
}
}
| {
'replace_loc_group_member_list' : {
'channel' : <ident>
'loc_group' : <ident>
'members' : ( loc<ident>* )
}
}
| {
'delete_loc_group_members' : {
'channel' : <ident>
'loc_group' : <ident>
'members' : ( loc<ident>* )
}
}
| {
'add_tables' : {
'channel' ?: <ident>
'tables' : {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
}
}
| {
'modify_table_list' : {
'channel' ?: <ident>
'tables' : {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
}
}
| {
'replace_table_list' : {
'channel' : <ident>
'tables' : {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
}
}
| {
'add_table' : {
'channel' ?: <ident>
'table' : <ident>
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
| {
'replace_table' : {
'channel' : <ident>
'table' : <ident>
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
| {
'modify_table' : {
'channel' : <ident>
'table' : <ident>
'base_name' ?: <str>
'table_group' ?: <ident>
}
}
| {
'rename_table' : {
'channel' : <ident>
'table' : <ident>
'new_name' : <ident>
}
}
| {
'delete_tables' : {
'channel' : <ident>
'tables' : ( <ident>+ )
}
}
| {
'add_cols' : {
'channel' ?: <ident>
'table' ?: <ident>
'cols' : {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
| {
'modify_col_list' : {
'channel' ?: <ident>
'table' ?: <ident>
'cols' : {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
| {
'replace_col_list' : {
'channel' : <ident>
'table' : <ident>
'cols' : {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
| {
'delete_cols' : {
'channel' : <ident>
'table' : <ident>
'cols' : ( <str>+ )
}
}
| {
'add_channel_actions' : {
'channel' ?: <ident>
'actions' : (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'replace_channel_action_list' : {
'channel' : <ident>
'actions' : (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'delete_channel_actions' : {
'channel' : <ident>
'actions' : (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'add_hub_actions' : {
'actions' ?: (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'replace_hub_action_list' : {
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'delete_hub_actions' : {
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'modify_action' : {
'type' : <ident>
'old' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<scal>
}
}
'new' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<null> | <scal>
}
}
}
}
| {
'replace_action' : {
'type' : <ident>
'old' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<scal>
}
}
'new' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<scal>
}
}
}
}*
)
|
| Response headers | None |
| Response body (JSON) | Prototype:
'change_counts' : {
'add_loc' ?: <int>
'replace_loc' ?: <int>
'delete_loc' ?: <int>
'rename_loc' ?: <int>
'add_loc_props' ?: <int>
'replace_loc_props' ?: <int>
'modify_loc_props' ?: <int>
'delete_loc_props' ?: <int>
'add_loc_actions' ?: <int>
'replace_loc_action_list' ?: <int>
'delete_loc_actions' ?: <int>
'add_channel' ?: <int>
'replace_channel' ?: <int>
'modify_channel' ?: <int>
'delete_channel' ?: <int>
'rename_channel' ?: <int>
'add_loc_group' ?: <int>
'replace_loc_group' ?: <int>
'delete_loc_group' ?: <int>
'rename_loc_group' ?: <int>
'add_loc_group_members' ?: <int>
'replace_loc_group_member_list' ?: <int>
'delete_loc_group_members' ?: <int>
'add_tables' ?: <int>
'modify_table_list' ?: <int>
'replace_table_list' ?: <int>
'add_table' ?: <int>
'replace_table' ?: <int>
'modify_table' ?: <int>
'rename_table' ?: <int>
'delete_tables' ?: <int>
'add_cols' ?: <int>
'modify_col_list' ?: <int>
'replace_col_list' ?: <int>
'delete_cols' ?: <int>
'add_channel_actions' ?: <int>
'replace_channel_action_list' ?: <int>
'delete_channel_actions' ?: <int>
'add_hub_actions' ?: <int>
'replace_hub_action_list' ?: <int>
'delete_hub_actions' ?: <int>
'modify_action' ?: <int>
'replace_action' ?: <int>
}
'change_replay' ?: <bool>
'add_exists' ?: {
'loc' ?: <int>
'channel' ?: <int>
'loc_group' ?: <int>
'loc_group_member' ?: <int>
'table' ?: <int>
'col' ?: <int>
}
'rename_exists' ?: {
'loc' ?: <int>
'channel' ?: <int>
'loc_group' ?: <int>
'table' ?: <int>
}
'replace_absent' ?: {
'loc' ?: <int>
'channel' ?: <int>
'loc_group' ?: <int>
'table' ?: <int>
'action' ?: <int>
}
'modify_absent' ?: {
'channel' ?: <int>
'table' ?: <int>
'action' ?: <int>
}
'delete_absent' ?: {
'loc' ?: <int>
'loc_prop' ?: <int>
'loc_action' ?: <int>
'channel' ?: <int>
'loc_group' ?: <int>
'loc_group_member' ?: <int>
'table' ?: <int>
'col' ?: <int>
'channel_action' ?: <int>
'hub_action' ?: <int>
}
'rename_absent' ?: {
'loc' ?: <int>
'channel' ?: <int>
'loc_group' ?: <int>
'table' ?: <int>
}
'action_absent_loc' ?: ( loc<ident>+ )
'old_group_members' ?: ( loc<ident>+ )
'member_absent_loc' ?: ( loc<ident>+ )
'rename_locs' ?: (
{
'name_before' : <ident>
'names_after' : ( <ident>+ )
}*
)
'rename_channels' ?: (
{
'name_before' : <ident>
'names_after' : ( <ident>+ )
}*
)
|
| Status codes | ✅ 200 OK ❌ 400 Bad Request |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change_Import
'change_counts' : {
'add_loc' ?: <int>
'replace_loc' ?: <int>
'delete_loc' ?: <int>
'rename_loc' ?: <int>
'add_loc_props' ?: <int>
'replace_loc_props' ?: <int>
'modify_loc_props' ?: <int>
'delete_loc_props' ?: <int>
'add_loc_actions' ?: <int>
'replace_loc_action_list' ?: <int>
'delete_loc_actions' ?: <int>
'add_channel' ?: <int>
'replace_channel' ?: <int>
'modify_channel' ?: <int>
'delete_channel' ?: <int>
'rename_channel' ?: <int>
'add_loc_group' ?: <int>
'replace_loc_group' ?: <int>
'delete_loc_group' ?: <int>
'rename_loc_group' ?: <int>
'add_loc_group_members' ?: <int>
'replace_loc_group_member_list' ?: <int>
'delete_loc_group_members' ?: <int>
'add_tables' ?: <int>
'modify_table_list' ?: <int>
'replace_table_list' ?: <int>
'add_table' ?: <int>
'replace_table' ?: <int>
'modify_table' ?: <int>
'rename_table' ?: <int>
'delete_tables' ?: <int>
'add_cols' ?: <int>
'modify_col_list' ?: <int>
'replace_col_list' ?: <int>
'delete_cols' ?: <int>
'add_channel_actions' ?: <int>
'replace_channel_action_list' ?: <int>
'delete_channel_actions' ?: <int>
'add_hub_actions' ?: <int>
'replace_hub_action_list' ?: <int>
'delete_hub_actions' ?: <int>
'modify_action' ?: <int>
'replace_action' ?: <int>
}
'change_replay' ?: <bool>
'add_exists' ?: {
'loc' ?: <int>
'channel' ?: <int>
'loc_group' ?: <int>
'loc_group_member' ?: <int>
'table' ?: <int>
'col' ?: <int>
}
'rename_exists' ?: {
'loc' ?: <int>
'channel' ?: <int>
'loc_group' ?: <int>
'table' ?: <int>
}
'replace_absent' ?: {
'loc' ?: <int>
'channel' ?: <int>
'loc_group' ?: <int>
'table' ?: <int>
'action' ?: <int>
}
'modify_absent' ?: {
'channel' ?: <int>
'table' ?: <int>
'action' ?: <int>
}
'delete_absent' ?: {
'loc' ?: <int>
'loc_prop' ?: <int>
'loc_action' ?: <int>
'channel' ?: <int>
'loc_group' ?: <int>
'loc_group_member' ?: <int>
'table' ?: <int>
'col' ?: <int>
'channel_action' ?: <int>
'hub_action' ?: <int>
}
'rename_absent' ?: {
'loc' ?: <int>
'channel' ?: <int>
'loc_group' ?: <int>
'table' ?: <int>
}
'action_absent_loc' ?: ( loc<ident>+ )
'old_group_members' ?: ( loc<ident>+ )
'member_absent_loc' ?: ( loc<ident>+ )
'rename_locs' ?: (
{
'name_before' : <ident>
'names_after' : ( <ident>+ )
}*
)
'rename_channels' ?: (
{
'name_before' : <ident>
'names_after' : ( <ident>+ )
}*
)
|
Analyze set of definition changes for import
POST/api/v6.1.0.4/hubs/{hub}/definition/import/analyze
| Query parameters | None |
| Request headers | Prototype:
X-Hvr-Classified-Transport-Key : <str>
|
| Request body (JSON) | Prototype:
'export_header' ?: {
'creator' : user<str>
'tstamp' : <date_str_z>
'hvr_version' : <str>
'description' : <str>
'api_version' : <str>
'original_hub' : <str>
'type' : 'definition_changes'
}
'allowed_changes' ?: (
'add_loc'
| 'replace_loc'
| 'delete_loc'
| 'rename_loc'
| 'add_loc_props'
| 'replace_loc_props'
| 'modify_loc_props'
| 'delete_loc_props'
| 'add_loc_actions'
| 'replace_loc_action_list'
| 'delete_loc_actions'
| 'add_channel'
| 'replace_channel'
| 'modify_channel'
| 'delete_channel'
| 'rename_channel'
| 'add_loc_group'
| 'replace_loc_group'
| 'delete_loc_group'
| 'rename_loc_group'
| 'add_loc_group_members'
| 'replace_loc_group_member_list'
| 'delete_loc_group_members'
| 'add_tables'
| 'modify_table_list'
| 'replace_table_list'
| 'add_table'
| 'replace_table'
| 'modify_table'
| 'rename_table'
| 'delete_tables'
| 'add_cols'
| 'modify_col_list'
| 'replace_col_list'
| 'delete_cols'
| 'add_channel_actions'
| 'replace_channel_action_list'
| 'delete_channel_actions'
| 'add_hub_actions'
| 'replace_hub_action_list'
| 'delete_hub_actions'
| 'modify_action'
| 'replace_action'+
)
'loc_context' ?: <ident>
'channel_context' ?: <ident>
'table_context' ?: <ident>
'changes' : (
{
'add_loc' : {
'loc' : <ident>
'props' : {
prop<str> *: value<typeof_loc_prop>
}
'actions' ?: (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'replace_loc' : {
'loc' : <ident>
'props' : {
prop<str> *: value<typeof_loc_prop>
}
'actions' ?: (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'delete_loc' : {
'loc' : <ident>
}
}
| {
'rename_loc' : {
'loc' : <ident>
'new_name' : <ident>
}
}
| {
'add_loc_props' : {
'loc' ?: <ident>
'props' : {
prop<str> *: value<typeof_loc_prop>
}
}
}
| {
'replace_loc_props' : {
'loc' : <ident>
'props' : {
prop<str> *: value<typeof_loc_prop>
}
}
}
| {
'modify_loc_props' : {
'loc' : <ident>
'props' : {
prop<str> *: value<null> | <typeof_loc_prop>
}
}
}
| {
'delete_loc_props' : {
'loc' : <ident>
'props' : ( <str>+ )
}
}
| {
'add_loc_actions' : {
'loc' ?: <ident>
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'replace_loc_action_list' : {
'loc' : <ident>
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'delete_loc_actions' : {
'loc' : <ident>
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'add_channel' : {
'channel' : <ident>
'description' ?: <str>
'loc_groups' ?: {
groupname<ident> *: {
'members' ?: ( loc<ident>* )
}
}
'tables' ?: {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
'actions' ?: (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'replace_channel' : {
'channel' : <ident>
'description' ?: <str>
'loc_groups' ?: {
groupname<ident> *: {
'members' ?: ( loc<ident>* )
}
}
'tables' ?: {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
'actions' ?: (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'modify_channel' : {
'channel' : <ident>
'description' : <str>
}
}
| {
'delete_channel' : {
'channel' : <ident>
}
}
| {
'rename_channel' : {
'channel' : <ident>
'new_name' : <ident>
}
}
| {
'add_loc_group' : {
'channel' ?: <ident>
'loc_group' : <ident>
'members' ?: ( loc<ident>* )
}
}
| {
'replace_loc_group' : {
'channel' : <ident>
'loc_group' : <ident>
'members' ?: ( loc<ident>* )
}
}
| {
'delete_loc_group' : {
'channel' : <ident>
'loc_group' : <ident>
}
}
| {
'rename_loc_group' : {
'channel' : <ident>
'loc_group' : <ident>
'new_name' : <ident>
}
}
| {
'add_loc_group_members' : {
'channel' ?: <ident>
'loc_group' : <ident>
'members' : ( loc<ident>* )
}
}
| {
'replace_loc_group_member_list' : {
'channel' : <ident>
'loc_group' : <ident>
'members' : ( loc<ident>* )
}
}
| {
'delete_loc_group_members' : {
'channel' : <ident>
'loc_group' : <ident>
'members' : ( loc<ident>* )
}
}
| {
'add_tables' : {
'channel' ?: <ident>
'tables' : {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
}
}
| {
'modify_table_list' : {
'channel' ?: <ident>
'tables' : {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
}
}
| {
'replace_table_list' : {
'channel' : <ident>
'tables' : {
tablename<ident> *: {
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
}
}
| {
'add_table' : {
'channel' ?: <ident>
'table' : <ident>
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
| {
'replace_table' : {
'channel' : <ident>
'table' : <ident>
'base_name' ?: <str>
'table_group' ?: <ident>
'cols' ?: {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
| {
'modify_table' : {
'channel' : <ident>
'table' : <ident>
'base_name' ?: <str>
'table_group' ?: <ident>
}
}
| {
'rename_table' : {
'channel' : <ident>
'table' : <ident>
'new_name' : <ident>
}
}
| {
'delete_tables' : {
'channel' : <ident>
'tables' : ( <ident>+ )
}
}
| {
'add_cols' : {
'channel' ?: <ident>
'table' ?: <ident>
'cols' : {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
| {
'modify_col_list' : {
'channel' ?: <ident>
'table' ?: <ident>
'cols' : {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
| {
'replace_col_list' : {
'channel' : <ident>
'table' : <ident>
'cols' : {
colname<str> *: {
'sequence' : <int>
'key' ?: <int>
'distrib_key' ?: <int>
'data_type' : <str>
'attributes' ?: {
'encoding' ?: <str>
'nullable' ?: <bool>
'charlen' ?: <int64_ascii>
'bytelen' ?: <int64_ascii>
'prec' ?: <int>
'scale' ?: <int>
'timeprec' ?: <int>
'dayprec' ?: <int>
'yearprec' ?: <int>
'bitlen' ?: <int>
}
}
}
}
}
| {
'delete_cols' : {
'channel' : <ident>
'table' : <ident>
'cols' : ( <str>+ )
}
}
| {
'add_channel_actions' : {
'channel' ?: <ident>
'actions' : (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'replace_channel_action_list' : {
'channel' : <ident>
'actions' : (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'delete_channel_actions' : {
'channel' : <ident>
'actions' : (
{
'loc_scope' ?: <str>
'table_scope' ?: <str>
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'add_hub_actions' : {
'actions' ?: (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'replace_hub_action_list' : {
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'delete_hub_actions' : {
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
}
| {
'modify_action' : {
'type' : <ident>
'old' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<scal>
}
}
'new' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<null> | <scal>
}
}
}
}
| {
'replace_action' : {
'type' : <ident>
'old' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<scal>
}
}
'new' : {
'channel' ?: <str>
'loc_scope' ?: <str>
'table_scope' ?: <str>
'params' ?: {
param<str> *: val<scal>
}
}
}
}*
)
|
| Response headers | None |
| Response body (JSON) | Prototype:
'change_counts' : {
'add_loc' ?: <int>
'replace_loc' ?: <int>
'delete_loc' ?: <int>
'rename_loc' ?: <int>
'add_loc_props' ?: <int>
'replace_loc_props' ?: <int>
'modify_loc_props' ?: <int>
'delete_loc_props' ?: <int>
'add_loc_actions' ?: <int>
'replace_loc_action_list' ?: <int>
'delete_loc_actions' ?: <int>
'add_channel' ?: <int>
'replace_channel' ?: <int>
'modify_channel' ?: <int>
'delete_channel' ?: <int>
'rename_channel' ?: <int>
'add_loc_group' ?: <int>
'replace_loc_group' ?: <int>
'delete_loc_group' ?: <int>
'rename_loc_group' ?: <int>
'add_loc_group_members' ?: <int>
'replace_loc_group_member_list' ?: <int>
'delete_loc_group_members' ?: <int>
'add_tables' ?: <int>
'modify_table_list' ?: <int>
'replace_table_list' ?: <int>
'add_table' ?: <int>
'replace_table' ?: <int>
'modify_table' ?: <int>
'rename_table' ?: <int>
'delete_tables' ?: <int>
'add_cols' ?: <int>
'modify_col_list' ?: <int>
'replace_col_list' ?: <int>
'delete_cols' ?: <int>
'add_channel_actions' ?: <int>
'replace_channel_action_list' ?: <int>
'delete_channel_actions' ?: <int>
'add_hub_actions' ?: <int>
'replace_hub_action_list' ?: <int>
'delete_hub_actions' ?: <int>
'modify_action' ?: <int>
'replace_action' ?: <int>
}
'change_replay' ?: <bool>
'add_exists' ?: {
'loc' ?: <int>
'channel' ?: <int>
'loc_group' ?: <int>
'loc_group_member' ?: <int>
'table' ?: <int>
'col' ?: <int>
}
'rename_exists' ?: {
'loc' ?: <int>
'channel' ?: <int>
'loc_group' ?: <int>
'table' ?: <int>
}
'replace_absent' ?: {
'loc' ?: <int>
'channel' ?: <int>
'loc_group' ?: <int>
'table' ?: <int>
'action' ?: <int>
}
'modify_absent' ?: {
'channel' ?: <int>
'table' ?: <int>
'action' ?: <int>
}
'delete_absent' ?: {
'loc' ?: <int>
'loc_prop' ?: <int>
'loc_action' ?: <int>
'channel' ?: <int>
'loc_group' ?: <int>
'loc_group_member' ?: <int>
'table' ?: <int>
'col' ?: <int>
'channel_action' ?: <int>
'hub_action' ?: <int>
}
'rename_absent' ?: {
'loc' ?: <int>
'channel' ?: <int>
'loc_group' ?: <int>
'table' ?: <int>
}
'action_absent_loc' ?: ( loc<ident>+ )
'old_group_members' ?: ( loc<ident>+ )
'member_absent_loc' ?: ( loc<ident>+ )
'rename_locs' ?: (
{
'name_before' : <ident>
'names_after' : ( <ident>+ )
}*
)
'rename_channels' ?: (
{
'name_before' : <ident>
'names_after' : ( <ident>+ )
}*
)
|
| Status codes | ✅ 200 OK ❌ 400 Bad Request |
| Required permissions | ReadOnly access level on hub |
| Events | Creates no events. |
Fetch locations from hub definition
GET/api/v6.1.0.4/hubs/{hub}/definition/locs
| Query parameters | Prototype:
'fetch' ?: ( 'loc_props' | 'loc_actions'+ )
'loc' ?: ( <ident>+ )
'action_type' ?: ( <str>+ )
'cache_view_tstamp' ?: <date_str_usecs_z>
|
| Request headers | Prototype:
X-Hvr-Classified-Access : <str>
|
| Request body | None |
| Response headers | Prototype:
X-Hvr-View-Tstamp : <date_str_usecs_z>
X-Hvr-Reload-Cache : <bool>
X-Hvr-Classified-Transport-Key : <str>
|
| Response body (JSON) | Prototype:
locname<str> *: {
'props' ?: {
prop<str> *: value<typeof_loc_prop>
}
'actions' ?: (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
|
| Status codes | ✅ 200 OK: Locations fetched ❌ 400 Bad Request |
| Required permissions | ReadOnly access level on hub |
Add location
POST/api/v6.1.0.4/hubs/{hub}/definition/locs
| Query parameters | None |
| Request headers | Prototype:
X-Hvr-Classified-Transport-Key : <str>
|
| Request body (JSON) | Prototype:
'loc' : <ident>
'props' : {
prop<str> *: value<typeof_loc_prop>
}
'actions' ?: (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 201 Created ❌ 400 Bad Request: Location already exists |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'add_loc' : {
'loc' : <ident>
'props' : ( <str>+ )
'actions' ?: ( <ident>+ )
}
|
Delete location
DELETE/api/v6.1.0.4/hubs/{hub}/definition/locs/{loc}
| Query parameters | None |
| Request headers | None |
| Request body | None |
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Location does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'delete_loc' : {
'loc' : <ident>
}
|
Fetch location from hub definition
GET/api/v6.1.0.4/hubs/{hub}/definition/locs/{loc}
| Query parameters | Prototype:
'fetch' ?: ( 'loc_props' | 'loc_actions'+ )
'action_type' ?: ( <str>+ )
'cache_view_tstamp' ?: <date_str_usecs_z>
|
| Request headers | Prototype:
X-Hvr-Classified-Access : <str>
|
| Request body | None |
| Response headers | Prototype:
X-Hvr-View-Tstamp : <date_str_usecs_z>
X-Hvr-Reload-Cache : <bool>
X-Hvr-Classified-Transport-Key : <str>
|
| Response body (JSON) | Prototype:
'props' ?: {
prop<str> *: value<typeof_loc_prop>
}
'actions' ?: (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Status codes | ✅ 200 OK: Location fetched ❌ 400 Bad Request ❌ 404 Not Found: Location does not exist |
| Required permissions | ReadOnly access level on hub |
Add or replace location
PUT/api/v6.1.0.4/hubs/{hub}/definition/locs/{loc}
| Query parameters | None |
| Request headers | Prototype:
X-Hvr-Classified-Transport-Key : <str>
|
| Request body (JSON) | Prototype:
'props' : {
prop<str> *: value<typeof_loc_prop>
}
'actions' ?: (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'add_loc' | 'replace_loc' : {
'loc' : <ident>
'props' : ( <str>+ )
'actions' ?: ( <ident>+ )
}
|
Fetch location actions from hub definition
GET/api/v6.1.0.4/hubs/{hub}/definition/locs/{loc}/actions
| Query parameters | Prototype:
'action_type' ?: ( <str>+ )
'cache_view_tstamp' ?: <date_str_usecs_z>
|
| Request headers | None |
| Request body | None |
| Response headers | Prototype:
X-Hvr-View-Tstamp : <date_str_usecs_z>
X-Hvr-Reload-Cache : <bool>
|
| Response body (JSON) | Prototype:
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
|
| Status codes | ✅ 200 OK: Location actions fetched ❌ 400 Bad Request ❌ 404 Not Found: Location does not exist |
| Required permissions | ReadOnly access level on hub |
Add location actions
PATCH/api/v6.1.0.4/hubs/{hub}/definition/locs/{loc}/actions
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Location does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'add_loc_actions' : {
'loc' : <ident>
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
|
Replace location actions list
PUT/api/v6.1.0.4/hubs/{hub}/definition/locs/{loc}/actions
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Location does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'replace_loc_action_list' : {
'loc' : <ident>
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
|
Delete location actions
POST/api/v6.1.0.4/hubs/{hub}/definition/locs/{loc}/actions_delete
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Location does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'delete_loc_actions' : {
'loc' : <ident>
'actions' : (
{
'type' : <ident>
'params' ?: {
param<str> *: val<scal>
}
}*
)
}
|
Copy location
POST/api/v6.1.0.4/hubs/{hub}/definition/locs/{loc}/copy
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 201 Created ❌ 400 Bad Request: New location already exists ❌ 404 Not Found: Old location does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'add_loc' : {
'loc' : <ident>
'props' : ( <str>+ )
'actions' ?: ( <ident>+ )
}
|
Fetch location properties from hub definition
GET/api/v6.1.0.4/hubs/{hub}/definition/locs/{loc}/props
| Query parameters | None |
| Request headers | Prototype:
X-Hvr-Classified-Access : <str>
|
| Request body | None |
| Response headers | Prototype:
X-Hvr-View-Tstamp : <date_str_usecs_z>
X-Hvr-Reload-Cache : <bool>
X-Hvr-Classified-Transport-Key : <str>
X-Hvr-Redacted-Storage : <str>
|
| Response body (JSON) | Prototype:
prop<str> *: value<typeof_loc_prop>
|
| Status codes | ✅ 200 OK: Location properties fetched ❌ 400 Bad Request ❌ 404 Not Found: Location does not exist |
| Required permissions | ReadOnly access level on hub |
Modify location properties
PATCH/api/v6.1.0.4/hubs/{hub}/definition/locs/{loc}/props
| Query parameters | None |
| Request headers | Prototype:
X-Hvr-Classified-Transport-Key : <str>
|
| Request body (JSON) | Prototype:
prop<str> *: value<null> | <typeof_loc_prop>
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Location does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'modify_loc_props' : {
'loc' : <ident>
'props' : {
prop<str> *: value<null> | <typeof_loc_prop>
}
}
|
Delete location property
DELETE/api/v6.1.0.4/hubs/{hub}/definition/locs/{loc}/props/{prop}
| Query parameters | None |
| Request headers | None |
| Request body | None |
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Location does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'delete_loc_props' : {
'loc' : <ident>
'props' : ( <str>+ )
}
|
Delete location properties
POST/api/v6.1.0.4/hubs/{hub}/definition/locs/{loc}/props_delete
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 204 No Content ❌ 400 Bad Request ❌ 404 Not Found: Location does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'delete_loc_props' : {
'loc' : <ident>
'props' : ( <str>+ )
}
|
Rename location
POST/api/v6.1.0.4/hubs/{hub}/definition/locs/{loc}/rename
| Query parameters | None |
| Request headers | None |
| Request body (JSON) | Prototype:
|
| Response headers | None |
| Response body | None |
| Status codes | ✅ 201 Created ❌ 400 Bad Request: New location already exists ❌ 404 Not Found: Old location does not exist |
| Required permissions | ReadWrite access level on hub |
| Events | Creates the following event Definition_Change
'rename_loc' : {
'loc' : <ident>
'new_name' : <ident>
}
|