Zum Hauptinhalt springen

GetDatastructure

Class Description

Downloads all cachable relational data of a guide in a single set.

RPC Configuration

Rpc Name:

Plain: GetDatastructure
Sha1: 338ac56673e5a8204622e28407e9fb33929ebea3
Rpc Call

RPCs can be called by their plain name or their SHA1 representation.

Rpc Parameters:

"gzip" : bool = 1,
"base64" : bool = 1
Parameter Description


@param bool gzip Configure if the response value of the building field should be gzipped or not.


@param bool structure Configure if the response value of the building should contain the SQL Structure or not

Requires Login:

true

Requires Context:

Context

The context providing parameter can either be a contagt-id (8-Bytes, Alphaumeric) or an integer as a building id. The context parameter name should make the choice obviouse, the type has not to be defined manually.

false

Requires WriteAccess:

WriteAccess

Only accounts that have an explicit write access to the defined context can execute this RPC, no matter if the authentication level matches or not.

false

Requires AuthenticationLevel:

Context

Authentication levels allow the SuperUser to define a by-RPC granular access configuration. If RPCs are chained in a single unified call and lenient is enabled, all allowed RPCs will be executed, while execution will fail entirely with lenient set to false.

STANDARD_USER

Requires Subbuilding Merge Strategy:

REPLACE

Cache Configuration

Response Cache

All writing RPCs are not Cacheable, also Caching will be disabled by the paramters nocache and readonly.

Cache enabled:

true

Cache Time to Live:

900

Sample Request

->

{
"gzip": false,
"base64": false
}

<-

{
"v": 23,
"structure": "CREATE TABLE IF NOT EXISTS address ( \nid int,\nthoroughfare text,\nthoroughfare_no int,\ncity text,\npostalcode text,\nlon text,\nlat text,\nadministrativarea text);\n\nCREATE INDEX IF NOT EXISTS address_PRIMARYBTREE ON address(id);\n\nCREATE TABLE IF NOT EXISTS building ( \nid int,\naddress_id int,\nname text,\nPRIMARY KEY (id));\n\nCREATE INDEX IF NOT EXISTS building_PRIMARYBTREE ON building(id);\n\nCREATE INDEX IF NOT EXISTS building_address_idBTREE ON building(address_id);\n\nCREATE TABLE IF NOT EXISTS building_has_ap ( \nid int,\nbuilding_id int,\ntype text,\nbssid text,\nmajor text,\nminor text,\ndevicetype text,\nlat text,\nlon text,\nfloor int,\nconfidence int,\ncontent_uri text,\ngeofence_distance int,\nheight text,\nfcc text,\nPRIMARY KEY (id));\n\nCREATE INDEX IF NOT EXISTS building_has_ap_PRIMARYBTREE ON building_has_ap(id);\n\nCREATE INDEX IF NOT EXISTS building_has_ap_building_id_2BTREE ON building_has_ap(building_id, type, bssid, major, minor);\n\nCREATE INDEX IF NOT EXISTS building_has_ap_typeBTREE ON building_has_ap(type);\n\nCREATE INDEX IF NOT EXISTS building_has_ap_bssidBTREE ON building_has_ap(bssid);\n\nCREATE INDEX IF NOT EXISTS building_has_ap_building_id_3BTREE ON building_has_ap(building_id, type, floor);\n\nCREATE TABLE IF NOT EXISTS building_has_tag ( \nbuilding_id int,\ntag_id text,\nPRIMARY KEY (building_id, tag_id));\n\nCREATE INDEX IF NOT EXISTS building_has_tag_PRIMARYBTREE ON building_has_tag(building_id, tag_id);\n\nCREATE INDEX IF NOT EXISTS building_has_tag_tag_idBTREE ON building_has_tag(tag_id);\n\nCREATE TABLE IF NOT EXISTS building_has_map ( \nbuilding_id int,\nmap_floor blob,\nmap_floor_64 blob,\nfloor int,\nfloor_name text,\ndefault_height text,\nPRIMARY KEY (building_id, floor));\n\nCREATE INDEX IF NOT EXISTS building_has_map_PRIMARYBTREE ON building_has_map(building_id, floor);\n\nCREATE TABLE IF NOT EXISTS building_has_keyword ( \nbuilding_id int,\nkeyword_id int,\nPRIMARY KEY (building_id, keyword_id));\n\nCREATE INDEX IF NOT EXISTS building_has_keyword_PRIMARYBTREE ON building_has_keyword(building_id, keyword_id);\n\nCREATE INDEX IF NOT EXISTS building_has_keyword_keyword_idBTREE ON building_has_keyword(keyword_id);\n\nCREATE TABLE IF NOT EXISTS building_has_room ( \nbuilding_id int,\nroom_id int,\nPRIMARY KEY (building_id, room_id));\n\nCREATE INDEX IF NOT EXISTS building_has_room_building_idBTREE ON building_has_room(building_id, room_id);\n\nCREATE INDEX IF NOT EXISTS building_has_room_room_idBTREE ON building_has_room(room_id);\n\nCREATE TABLE IF NOT EXISTS building_has_features ( \nid int,\nbuilding_id int,\noption_name text,\noption_value text);\n\nCREATE TABLE IF NOT EXISTS building_has_quickaccess ( \nid int,\nbuilding_id int,\nsearchterm text,\nsecond_searchterm text,\ndescription text,\nimage text,\nextension text);\n\nCREATE INDEX IF NOT EXISTS building_has_quickaccess_PRIMARYBTREE ON building_has_quickaccess(id);\n\nCREATE INDEX IF NOT EXISTS building_has_quickaccess_building_idBTREE ON building_has_quickaccess(building_id);\n\nCREATE TABLE IF NOT EXISTS categories ( \ncategory_id int,\ncategory_handle text,\ncategory_name text,\nPRIMARY KEY (category_id));\n\nCREATE INDEX IF NOT EXISTS categories_PRIMARYBTREE ON categories(category_id);\n\nCREATE INDEX IF NOT EXISTS categories_category_handleBTREE ON categories(category_handle);\n\nCREATE INDEX IF NOT EXISTS categories_category_nameFULLTEXT ON categories(category_name);\n\nCREATE TABLE IF NOT EXISTS keywords ( \nid int,\nkeyword text,\nPRIMARY KEY (id));\n\nCREATE INDEX IF NOT EXISTS keywords_PRIMARYBTREE ON keywords(id);\n\nCREATE INDEX IF NOT EXISTS keywords_keywordBTREE ON keywords(keyword);\n\nCREATE INDEX IF NOT EXISTS keywords_fulltext_searchFULLTEXT ON keywords(keyword);\n\nCREATE TABLE IF NOT EXISTS room ( \nid int,\nbuilding_id int,\nfloor int,\nroom_name text,\nroom_uri text,\nroom_handle text,\nexternal_identifier text,\nxetal_identifier text,\nPRIMARY KEY (id));\n\nCREATE INDEX IF NOT EXISTS room_PRIMARYBTREE ON room(id);\n\nCREATE INDEX IF NOT EXISTS room_EXTERNALBTREE ON room(building_id, external_identifier, floor);\n\nCREATE TABLE IF NOT EXISTS room_has_keyword ( \nroom_id int,\nkeyword_id int,\nPRIMARY KEY (room_id, keyword_id));\n\nCREATE INDEX IF NOT EXISTS room_has_keyword_PRIMARYBTREE ON room_has_keyword(room_id, keyword_id);\n\nCREATE INDEX IF NOT EXISTS room_has_keyword_keyword_idBTREE ON room_has_keyword(keyword_id);\n\nCREATE TABLE IF NOT EXISTS room_has_corners ( \nord int,\nroom_id int,\nlat text,\nlon text,\nPRIMARY KEY (room_id, lat, lon));\n\nCREATE INDEX IF NOT EXISTS room_has_corners_PRIMARYBTREE ON room_has_corners(room_id, lat, lon);\n\nCREATE TABLE IF NOT EXISTS room_has_settings ( \nroom_id int,\ncolor text,\nbgColor text,\ntextColor text,\nPRIMARY KEY (room_id));\n\nCREATE INDEX IF NOT EXISTS room_has_settings_PRIMARYBTREE ON room_has_settings(room_id);\n\nCREATE TABLE IF NOT EXISTS edges ( \nid int,\nbuilding_id int,\nSOURCE int,\ntarget int,\nlength text);\n\nCREATE INDEX IF NOT EXISTS edges_PRIMARYBTREE ON edges(id);\n\nCREATE INDEX IF NOT EXISTS edges_building_idBTREE ON edges(building_id);\n\nCREATE INDEX IF NOT EXISTS edges_sourceBTREE ON edges(source);\n\nCREATE INDEX IF NOT EXISTS edges_targetBTREE ON edges(target);\n\nCREATE TABLE IF NOT EXISTS edge_connections ( \nedge1_id int,\nedge2_id int,\nbuilding_id int,\ndirection text);\n\nCREATE INDEX IF NOT EXISTS edge_connections_PRIMARYBTREE ON edge_connections(edge1_id, edge2_id, building_id);\n\nCREATE INDEX IF NOT EXISTS edge_connections_edge2_idBTREE ON edge_connections(edge2_id);\n\nCREATE INDEX IF NOT EXISTS edge_connections_building_idBTREE ON edge_connections(building_id);\n\nCREATE TABLE IF NOT EXISTS routes ( \nid int,\nbuilding_id int,\nedge_id int,\nnode_id int,\nprevnode_id int,\nnextnode_id int,\nPRIMARY KEY (id));\n\nCREATE INDEX IF NOT EXISTS routes_PRIMARYBTREE ON routes(id);\n\nCREATE INDEX IF NOT EXISTS routes_building_id_2BTREE ON routes(building_id, edge_id, node_id, prevnode_id, nextnode_id);\n\nCREATE INDEX IF NOT EXISTS routes_edge_idBTREE ON routes(edge_id);\n\nCREATE INDEX IF NOT EXISTS routes_node_idBTREE ON routes(node_id);\n\nCREATE INDEX IF NOT EXISTS routes_prevnode_idBTREE ON routes(prevnode_id);\n\nCREATE INDEX IF NOT EXISTS routes_nextnode_idBTREE ON routes(nextnode_id);\n\nCREATE TABLE IF NOT EXISTS tag_has_attributes ( \ntag_id text,\nattribute_name text,\nattribute_value text,\nPRIMARY KEY (tag_id, attribute_name));\n\nCREATE INDEX IF NOT EXISTS tag_has_attributes_PRIMARYBTREE ON tag_has_attributes(tag_id, attribute_name);\n\nCREATE INDEX IF NOT EXISTS tag_has_attributes_tag_id_2BTREE ON tag_has_attributes(tag_id, attribute_name, attribute_value);\n\nCREATE INDEX IF NOT EXISTS tag_has_attributes_fulltext_searchFULLTEXT ON tag_has_attributes(attribute_value);\n\nCREATE TABLE IF NOT EXISTS tag_has_keyword ( \ntag_id text,\nkeyword_id int,\nPRIMARY KEY (tag_id, keyword_id));\n\nCREATE INDEX IF NOT EXISTS tag_has_keyword_PRIMARYBTREE ON tag_has_keyword(tag_id, keyword_id);\n\nCREATE INDEX IF NOT EXISTS tag_has_keyword_keyword_idBTREE ON tag_has_keyword(keyword_id);\n\nCREATE TABLE IF NOT EXISTS tag_has_quicksearch ( \ntag_id text,\ndestination text,\nicon_id int,\ncolor int,\nPRIMARY KEY (tag_id, destination));\n\nCREATE INDEX IF NOT EXISTS tag_has_quicksearch_PRIMARYBTREE ON tag_has_quicksearch(tag_id, destination);\n\nCREATE TABLE IF NOT EXISTS building_has_parentbuilding ( \nid int,\nbuilding_id int,\nparentbuilding_id int,\ndisplayname text,\nPRIMARY KEY (id));\n\nCREATE INDEX IF NOT EXISTS building_has_parentbuilding_PRIMARYBTREE ON building_has_parentbuilding(id);\n\nCREATE INDEX IF NOT EXISTS building_has_parentbuilding_building_idBTREE ON building_has_parentbuilding(building_id);\n\nCREATE INDEX IF NOT EXISTS building_has_parentbuilding_parentbuilding_idBTREE ON building_has_parentbuilding(parentbuilding_id);\n\nCREATE TABLE IF NOT EXISTS tag_has_room ( \ntag_id text,\nroom_id int,\nPRIMARY KEY (tag_id, room_id));\n\nCREATE INDEX IF NOT EXISTS tag_has_room_tag_id_2BTREE ON tag_has_room(tag_id, room_id);\n\nCREATE INDEX IF NOT EXISTS tag_has_room_tag_idBTREE ON tag_has_room(tag_id);\n\nCREATE INDEX IF NOT EXISTS tag_has_room_room_idBTREE ON tag_has_room(room_id);\n\nCREATE TABLE IF NOT EXISTS edge_has_flavor ( \nid int,\nflavor_id int,\nbuilding_id int,\nedge_id int,\nlength text,\nPRIMARY KEY (id));\n\nCREATE INDEX IF NOT EXISTS edge_has_flavor_PRIMARYBTREE ON edge_has_flavor(id);\n\nCREATE INDEX IF NOT EXISTS edge_has_flavor_flavor_id_2BTREE ON edge_has_flavor(flavor_id, building_id, edge_id);\n\nCREATE INDEX IF NOT EXISTS edge_has_flavor_building_idBTREE ON edge_has_flavor(building_id);\n\nCREATE TABLE IF NOT EXISTS routing_flavors ( \nid int,\nname text,\ncomment text,\nPRIMARY KEY (id));\n\nCREATE INDEX IF NOT EXISTS routing_flavors_PRIMARYBTREE ON routing_flavors(id);\n\nCREATE TABLE IF NOT EXISTS building_has_region ( \nbuilding_id int,\nregion_id int,\nPRIMARY KEY (building_id, region_id));\n\nCREATE INDEX IF NOT EXISTS building_has_region_PRIMARYBTREE ON building_has_region(building_id, region_id);\n\nCREATE INDEX IF NOT EXISTS building_has_region_region_idBTREE ON building_has_region(region_id);\n\nCREATE TABLE IF NOT EXISTS region ( \nid int,\nregion_name text,\nregion_desc text,\nPRIMARY KEY (id));\n\nCREATE INDEX IF NOT EXISTS region_PRIMARYBTREE ON region(id);\n\nCREATE TABLE IF NOT EXISTS region_has_vertices ( \nregion_id int,\nord int,\nlat text,\nlon text,\nPRIMARY KEY (region_id, ord, lat, lon));\n\nCREATE INDEX IF NOT EXISTS region_has_vertices_PRIMARYBTREE ON region_has_vertices(region_id, ord, lat, lon);\n\nCREATE TABLE IF NOT EXISTS tag ( \nid text,\nbuilding_id int,\nparent_id text,\ngroup_id int,\nnode_id int,\nPRIMARY KEY (id));\n\nCREATE INDEX IF NOT EXISTS tag_PRIMARYBTREE ON tag(id);\n\nCREATE INDEX IF NOT EXISTS tag_group_idBTREE ON tag(group_id);\n\nCREATE INDEX IF NOT EXISTS tag_building_id_2BTREE ON tag(building_id, parent_id);\n\nCREATE INDEX IF NOT EXISTS tag_building_idBTREE ON tag(building_id, node_id);\n\nCREATE TABLE IF NOT EXISTS nodes ( \nid int,\nbuilding_id int,\nnode_id int,\nlat text,\nlon text,\nPRIMARY KEY (id));\n\nCREATE INDEX IF NOT EXISTS nodes_PRIMARYBTREE ON nodes(id);\n\nCREATE INDEX IF NOT EXISTS nodes_building_idBTREE ON nodes(building_id, node_id);\n\nCREATE TABLE IF NOT EXISTS room_has_content ( \nid int,\nroom_id int,\ntype text,\ndisplayname text,\ncontent text,\nicon text,\nord int,\nPRIMARY KEY (id));\n\nCREATE INDEX IF NOT EXISTS room_has_content_PRIMARYBTREE ON room_has_content(id);\n\nCREATE INDEX IF NOT EXISTS room_has_content_room_idBTREE ON room_has_content(room_id, type);\n\nCREATE INDEX IF NOT EXISTS room_has_content_typeBTREE ON room_has_content(type, content);\n\nCREATE INDEX IF NOT EXISTS room_has_content_fulltext_searchFULLTEXT ON room_has_content(content);\n\nCREATE TABLE IF NOT EXISTS multi_destination_route ( \nid int,\nbuilding_id int,\nname text,\ndescription text,\nauthor_id int,\nresumable int,\nPRIMARY KEY (id));\n\nCREATE INDEX IF NOT EXISTS multi_destination_route_PRIMARYBTREE ON multi_destination_route(id);\n\nCREATE INDEX IF NOT EXISTS multi_destination_route_building_idBTREE ON multi_destination_route(building_id);\n\nCREATE INDEX IF NOT EXISTS multi_destination_route_author_idBTREE ON multi_destination_route(author_id);\n\nCREATE TABLE IF NOT EXISTS multi_destination_route_item ( \nid int,\nroute_id int,\ntag_id text,\nisAnkerpoint int,\nord int,\nPRIMARY KEY (id));\n\nCREATE INDEX IF NOT EXISTS multi_destination_route_item_PRIMARYBTREE ON multi_destination_route_item(id);\n\nCREATE INDEX IF NOT EXISTS multi_destination_route_item_route_idBTREE ON multi_destination_route_item(route_id);\n\nCREATE INDEX IF NOT EXISTS multi_destination_route_item_tag_idBTREE ON multi_destination_route_item(tag_id);\n\nCREATE TABLE IF NOT EXISTS building_has_category ( \nbuilding_id int,\ncategory_id int,\nvisible int,\ncategory_target_sort text,\nname text,\nord int,\nPRIMARY KEY (building_id, category_id));\n\nCREATE INDEX IF NOT EXISTS building_has_category_PRIMARYBTREE ON building_has_category(building_id, category_id);\n\nCREATE INDEX IF NOT EXISTS building_has_category_category_idBTREE ON building_has_category(category_id);\n\nCREATE INDEX IF NOT EXISTS building_has_category_building_idBTREE ON building_has_category(building_id, visible);\n\nCREATE INDEX IF NOT EXISTS building_has_category_nameFULLTEXT ON building_has_category(name);\n\n"
}