C-TIP API
Welcome the C-TIP API. This API provides access to your own GeoSpatial data and environment.
API Description ¶
In this section we will go over the general calls and how to use the C-TIP API.
Login
When an account is created for you, you have access to a password and an email address. With this information you can obtain an API key.
Authentication is done based on JWT tokens that have an expiration time of 24 hours.
See the Authorization section for more information how to login to the API.
Authentication
Requesting any endpoint except the authentication will require you to send your token. This token will be given to you in the login response after a successful login, called ‘access_token’. Sending this token with any call can be done in two-ways. Either by Header or in the Query of an request.
Header
Use the following header to prove authorization of your request.
Authorization: Bearer vr5HmMkzlxKE70W1y4MibiJUusZwZC25NOVBEx3BD1
Notice Bearer has a capital B
Session
After login, the API remembers your session and to which tenant and to which tenant you are connected to. All calls are done on that specific tenant and network If you want to switch to another tenant and/or network, you have to change your session by setting the x-tenant and/or x-network header with the tenant id and/or the network id.
x-tenant: 1;
x-network: 1;
Actions ¶
All calls for action management. Use the include query parameter to eager load related data.
Available includes are actionStatus, comment, mapObjectType, mapObject, geoObject,
attribute, actionPriority, dynamicActionType, actionImage, user, and product.
Action list ¶
Get a list of actions
Get actionsGET/action{?perPage}{?include}{?sort}{?sortBy}{?range}{?deleted_at}{?onlyNotFinal}
Get a list of actions.
Example URI
- perPage
integer(optional) Default: 15 Example: 25The maximum number of actions to return
- include
string(optional) Example: mapObjectComma separated list of relations to embed in the response.
- sort
string(optional) Example: idColumn to order by. Falls back to
idwhen an unknown column is provided.- sortBy
string(optional) Example: descSort direction.
Choices:
ascdesc- range
number(optional) Example: 1693456800Only return actions that changed since this UNIX timestamp.
- Alias:
updated_at
- Alias:
- deleted_at
boolean(optional) Example: falseWhen true, include soft deleted actions.
- onlyNotFinal
boolean(optional) Example: falseWhen true, filter out actions that are in a final status.
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"map_object_type_id": 2,
"action_status_id": 3,
"map_object_id": 7,
"geo_object_id": 2,
"dynamic_action_type_id": 9,
"action_priority_id": 10,
"created_by": 5,
"device": "web",
"network_id": 1,
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}Create new actionPOST/action{?perPage}{?include}{?sort}{?sortBy}{?range}{?deleted_at}{?onlyNotFinal}
Create a new action with the required parameters.
New actions
New actions are coupled to your current tenant.
Example URI
- perPage
integer(optional) Default: 15 Example: 25The maximum number of actions to return
- include
string(optional) Example: mapObjectComma separated list of relations to embed in the response.
- sort
string(optional) Example: idColumn to order by. Falls back to
idwhen an unknown column is provided.- sortBy
string(optional) Example: descSort direction.
Choices:
ascdesc- range
number(optional) Example: 1693456800Only return actions that changed since this UNIX timestamp.
- Alias:
updated_at
- Alias:
- deleted_at
boolean(optional) Example: falseWhen true, include soft deleted actions.
- onlyNotFinal
boolean(optional) Example: falseWhen true, filter out actions that are in a final status.
Body
{
"data": {
"map_object_type_id": 2,
"action_status_id": 3,
"map_object_id": 7,
"geo_object_id": 2,
"dynamic_action_type_id": 9,
"action_priority_id": 10
},
"auth": {
"accessor_type": "user",
"access_level": 7,
"accessor_id": 1
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"map_object_type_id": {
"type": "number",
"description": "Id of primary tenant"
},
"action_status_id": {
"type": "number",
"description": "Id of the current action status"
},
"map_object_id": {
"type": "number",
"description": "Id of the coupled map_object"
},
"geo_object_id": {
"type": "number",
"description": "Id of the location object"
},
"dynamic_action_type_id": {
"type": "number",
"description": "Id of the dynamic action type"
},
"action_priority_id": {
"type": "number",
"description": "Id of the current priority"
}
},
"required": [
"map_object_type_id",
"action_status_id",
"dynamic_action_type_id",
"action_priority_id"
]
},
"auth": {
"type": "object",
"properties": {
"accessor_type": {
"enum": [
"user",
"role",
"tenant"
],
"description": "Type of authorization"
},
"access_level": {
"type": "number",
"description": "Accesslevel bit (read,write,full)"
},
"accessor_id": {
"type": "number",
"description": "Identifier of accessor type"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of stored data (can be empty on array inserts)"
}
}
}Action ¶
Get a specific actions
Get ActionGET/action/{id}
Get a action.
Example URI
- id
integer(required) Example: 1Id of a specific action
200Headers
Content-Type: application/jsonBody
{
"data": {
"id": 1,
"map_object_type_id": 2,
"action_status_id": 3,
"map_object_id": 7,
"geo_object_id": 2,
"dynamic_action_type_id": 9,
"action_priority_id": 10,
"created_by": 5,
"device": "web",
"network_id": 1,
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Action identifier"
},
"map_object_type_id": {
"type": "number",
"description": "Id of the related MapObjectType"
},
"action_status_id": {
"type": "number",
"description": "Id of the current action status"
},
"map_object_id": {
"type": "number",
"description": "Id of the coupled map_object"
},
"geo_object_id": {
"type": "number",
"description": "Id of the location object"
},
"dynamic_action_type_id": {
"type": "number",
"description": "Id of the dynamic action type"
},
"action_priority_id": {
"type": "number",
"description": "Id of the current priority"
},
"created_by": {
"type": "number",
"description": "Id of the user that created the action"
},
"device": {
"type": "string",
"description": "Origin of the action"
},
"network_id": {
"type": "number",
"description": "Id of the network the action belongs to"
},
"created_at": {
"type": "number",
"description": "Timestamp of action creation date"
},
"updated_at": {
"type": "number",
"description": "Timestamp of last action update"
},
"deleted_at": {
"type": "number",
"description": "Timestamp of deletion when the action is soft deleted"
}
}
}
}
}Update an existing actionPUT/action/{id}
Update a action
Example URI
- id
integer(required) Example: 1Id of a specific action
Body
{
"data": {
"id": 1,
"action_status_id": 3,
"geo_object_id": 2,
"action_priority_id": 10
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Action identifier"
},
"action_status_id": {
"type": "number",
"description": "Id of the current action status"
},
"geo_object_id": {
"type": "number",
"description": "Id of the location object"
},
"action_priority_id": {
"type": "number",
"description": "Id of the current priority"
}
},
"required": [
"id"
]
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonPatch an existing actionPATCH/action/{id}
Patch a action
Example URI
- id
integer(required) Example: 1Id of a specific action
Body
{
"data": {
"id": 1,
"action_status_id": 3,
"geo_object_id": 2,
"action_priority_id": 10
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Action identifier"
},
"action_status_id": {
"type": "number",
"description": "Id of the current action status"
},
"geo_object_id": {
"type": "number",
"description": "Id of the location object"
},
"action_priority_id": {
"type": "number",
"description": "Id of the current priority"
}
},
"required": [
"id"
]
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonDelete an existing actionDELETE/action/{id}
Delete a action
Example URI
- id
integer(required) Example: 1Id of a specific action
200Headers
Content-Type: application/jsonMapObjects ¶
All calls for MapObject management. By default the API embeds the geoObject and geoObjectMarker
relations. Use the include query parameter to explicitly request extra relations from
action, mapObjectType, mapObjectStatus, mapObjectImage, mapObjectSelection,
attribute, product, children, parents, actionCount, mapObjectSelectionId,
mapObjectLabel, createdBy, startPoint, and endPoint.
MapObject list ¶
Get a list of MapObjects
Get MapObjectsGET/object{?perPage}{?include}{?map_object_type_id}{?name}{?label}{?parent_id}
Get a list of MapObjects.
Example URI
- perPage
number(optional) Default: 15 Example: 25The maximum number of objects to return
- include
string(optional) Example: actionOption to get related data, multiple options are available by joining them with a ‘,’ in between (i.e. ‘attribute,action’). WARNING: this may increase loading times drastically
Choices:
actionmapObjectTypemapObjectStatusmapObjectImagemapObjectSelectionattributeactionCountchildrenparentsmapObjectSelectionIdmapObjectLabelcreatedBystartPointendPoint- map_object_type_id
number(optional) Example: 12Filter the result set on a specific type
- name
string(optional) Example: BridgeFilter on (partial) name matches, use
%as wildcard- label
string(optional) Example: A-120Filter on the configured label value
- parent_id
number(optional) Example: 33Limit the search to children of a specific map object
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"name": "Bord",
"parent_id": 2,
"relation_id": 355,
"map_object_type_id": 3,
"geo_object_id": 4,
"map_object_status_id": 5,
"is_obstructed": false,
"network_id": 73,
"created_by": 14,
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0,
"geoObject": {
"data": {
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": []
},
"properties": {
"road": "AbcStreet",
"house_number": "12",
"city_district": "AbcDistrict",
"city": "AbcCity",
"postcode": "1234 AB",
"country_code": 528,
"length": 1000,
"start_point": 123,
"end_point": 123,
"area": 1000
},
"id": 1
}
}
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}Create new MapObjectPOST/object{?perPage}{?include}{?map_object_type_id}{?name}{?label}{?parent_id}
Create a new MapObject with the required parameters.
Example URI
- perPage
number(optional) Default: 15 Example: 25The maximum number of objects to return
- include
string(optional) Example: actionOption to get related data, multiple options are available by joining them with a ‘,’ in between (i.e. ‘attribute,action’). WARNING: this may increase loading times drastically
Choices:
actionmapObjectTypemapObjectStatusmapObjectImagemapObjectSelectionattributeactionCountchildrenparentsmapObjectSelectionIdmapObjectLabelcreatedBystartPointendPoint- map_object_type_id
number(optional) Example: 12Filter the result set on a specific type
- name
string(optional) Example: BridgeFilter on (partial) name matches, use
%as wildcard- label
string(optional) Example: A-120Filter on the configured label value
- parent_id
number(optional) Example: 33Limit the search to children of a specific map object
Body
{
"data": {
"name": "Bord",
"parent_id": 2,
"map_object_type_id": 3,
"geo_object_id": 4,
"map_object_status_id": 5
},
"auth": {
"accessor_type": "user",
"access_level": 7,
"accessor_id": 1
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the object"
},
"parent_id": {
"type": "number",
"description": "Id of parent object"
},
"map_object_type_id": {
"type": "number",
"description": "Id of the object type"
},
"geo_object_id": {
"type": "number",
"description": "Id of of the location object"
},
"map_object_status_id": {
"type": "number",
"description": "Id of the current status"
}
}
},
"auth": {
"type": "object",
"properties": {
"accessor_type": {
"enum": [
"user",
"role",
"tenant"
],
"description": "Type of authorization"
},
"access_level": {
"type": "number",
"description": "Accesslevel bit (read,write,full)"
},
"accessor_id": {
"type": "number",
"description": "Identifier of accessor type"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of stored data (can be empty on array inserts)"
}
}
}MapObject ¶
Get a specific objects
Get MapObjectGET/object/{id}
Get a MapObject.
Example URI
- id
integer(required) Example: 1Id of a specific object
200Headers
Content-Type: application/jsonBody
{
"data": {
"id": 1,
"name": "Bord",
"parent_id": 2,
"relation_id": 355,
"map_object_type_id": 3,
"geo_object_id": 4,
"map_object_status_id": 5,
"is_obstructed": false,
"network_id": 73,
"created_by": 14,
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0,
"geoObject": {
"data": {
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": []
},
"properties": {
"road": "AbcStreet",
"house_number": "12",
"city_district": "AbcDistrict",
"city": "AbcCity",
"postcode": "1234 AB",
"country_code": 528,
"length": 1000,
"start_point": 123,
"end_point": 123,
"area": 1000
},
"id": 1
}
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "MapObject identifier"
},
"name": {
"type": "string",
"description": "Name of the object"
},
"parent_id": {
"type": [
"number",
"null"
],
"description": "Id of parent object"
},
"relation_id": {
"type": [
"number",
"null"
],
"description": "Reference id used to keep track of splits and merges"
},
"map_object_type_id": {
"type": "number",
"description": "Id of the object type"
},
"geo_object_id": {
"type": "number",
"description": "Id of of the location object"
},
"map_object_status_id": {
"type": "number",
"description": "Id of the current status"
},
"is_obstructed": {
"type": "boolean",
"description": "Indicates whether there are active obstructions on the object"
},
"network_id": {
"type": "number",
"description": "Id of the owning network"
},
"created_by": {
"type": "number",
"description": "User id of the creator"
},
"created_at": {
"type": "number",
"description": "Timestamp of object creation date"
},
"updated_at": {
"type": "number",
"description": "Timestamp of last object update"
},
"deleted_at": {
"type": "number",
"description": "Timestamp of deletion when the object is soft deleted"
},
"geoObject": {
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Type of format"
},
"geometry": {
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Type of geometry object"
},
"coordinates": {
"description": "Array of coordinates"
}
}
},
"properties": {
"type": "object",
"properties": {
"road": {
"type": "string",
"description": "Road of the GeoObject"
},
"house_number": {
"type": "string",
"description": "House number of the GeoObject"
},
"city_district": {
"type": "string",
"description": "City district of the GeoObject"
},
"city": {
"type": "string",
"description": "City of the GeoObject"
},
"postcode": {
"type": "string",
"description": "Postcode of the GeoObject"
},
"country_code": {
"type": "number",
"description": "Country Code of the GeoObject"
},
"length": {
"type": "number",
"description": "Length of the GeoObject (Only for LineStrings)"
},
"start_point": {
"type": "number",
"description": "MapObjectId of startpoint of the GeoObject (Only for LineStrings)"
},
"end_point": {
"type": "number",
"description": "MapObjectId of endpoint of the GeoObject (Only for LineStrings)"
},
"area": {
"type": "number",
"description": "Area of the GeoObject (Only for Polygons)"
}
},
"description": "Object with properties of object"
},
"id": {
"type": "number",
"description": "Id of geoObject"
}
}
}
},
"description": "Embedded by default"
}
}
}
}
}Update an existing MapObjectPUT/object/{id}
Update a MapObject
Example URI
- id
integer(required) Example: 1Id of a specific object
Body
{
"data": {
"id": 1,
"name": "Bord",
"parent_id": 3,
"map_object_status_id": 5
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "MapObject identifier"
},
"name": {
"type": "string",
"description": "Name of the object"
},
"parent_id": {
"type": "number",
"description": "Id of parent object"
},
"map_object_status_id": {
"type": "number",
"description": "Id of the current status"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Patch an existing MapObjectPATCH/object/{id}
Patch a MapObject
Example URI
- id
integer(required) Example: 1Id of a specific object
Body
{
"data": {
"id": 1,
"name": "Bord",
"parent_id": 3,
"map_object_status_id": 5
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "MapObject identifier"
},
"name": {
"type": "string",
"description": "Name of the object"
},
"parent_id": {
"type": "number",
"description": "Id of parent object"
},
"map_object_status_id": {
"type": "number",
"description": "Id of the current status"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Delete an existing MapObjectDELETE/object/{id}
Delete a MapObject
Example URI
- id
integer(required) Example: 1Id of a specific object
200Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of deleted data (can be empty on array inserts)"
}
}
}Deleted MapObject ¶
Retrieve the soft deleted version of a map object.
Get deleted MapObjectGET/object/{id}/deleted
Example URI
- id
integer(required) Example: 1Id of the deleted object
200Headers
Content-Type: application/jsonBody
{
"data": {
"id": 1,
"name": "Bord",
"parent_id": 2,
"relation_id": 355,
"map_object_type_id": 3,
"geo_object_id": 4,
"map_object_status_id": 5,
"is_obstructed": false,
"network_id": 73,
"created_by": 14,
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0,
"geoObject": {
"data": {
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": []
},
"properties": {
"road": "AbcStreet",
"house_number": "12",
"city_district": "AbcDistrict",
"city": "AbcCity",
"postcode": "1234 AB",
"country_code": 528,
"length": 1000,
"start_point": 123,
"end_point": 123,
"area": 1000
},
"id": 1
}
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "MapObject identifier"
},
"name": {
"type": "string",
"description": "Name of the object"
},
"parent_id": {
"type": [
"number",
"null"
],
"description": "Id of parent object"
},
"relation_id": {
"type": [
"number",
"null"
],
"description": "Reference id used to keep track of splits and merges"
},
"map_object_type_id": {
"type": "number",
"description": "Id of the object type"
},
"geo_object_id": {
"type": "number",
"description": "Id of of the location object"
},
"map_object_status_id": {
"type": "number",
"description": "Id of the current status"
},
"is_obstructed": {
"type": "boolean",
"description": "Indicates whether there are active obstructions on the object"
},
"network_id": {
"type": "number",
"description": "Id of the owning network"
},
"created_by": {
"type": "number",
"description": "User id of the creator"
},
"created_at": {
"type": "number",
"description": "Timestamp of object creation date"
},
"updated_at": {
"type": "number",
"description": "Timestamp of last object update"
},
"deleted_at": {
"type": "number",
"description": "Timestamp of deletion when the object is soft deleted"
},
"geoObject": {
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Type of format"
},
"geometry": {
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Type of geometry object"
},
"coordinates": {
"description": "Array of coordinates"
}
}
},
"properties": {
"type": "object",
"properties": {
"road": {
"type": "string",
"description": "Road of the GeoObject"
},
"house_number": {
"type": "string",
"description": "House number of the GeoObject"
},
"city_district": {
"type": "string",
"description": "City district of the GeoObject"
},
"city": {
"type": "string",
"description": "City of the GeoObject"
},
"postcode": {
"type": "string",
"description": "Postcode of the GeoObject"
},
"country_code": {
"type": "number",
"description": "Country Code of the GeoObject"
},
"length": {
"type": "number",
"description": "Length of the GeoObject (Only for LineStrings)"
},
"start_point": {
"type": "number",
"description": "MapObjectId of startpoint of the GeoObject (Only for LineStrings)"
},
"end_point": {
"type": "number",
"description": "MapObjectId of endpoint of the GeoObject (Only for LineStrings)"
},
"area": {
"type": "number",
"description": "Area of the GeoObject (Only for Polygons)"
}
},
"description": "Object with properties of object"
},
"id": {
"type": "number",
"description": "Id of geoObject"
}
}
}
},
"description": "Embedded by default"
}
}
}
}
}Find MapObjects ¶
Search for map objects by specifying one or more attribute/value combinations.
Find by single query blockPOST/object/find
Example URI
Headers
Content-Type: application/jsonBody
{
"data": {
"query": {
"all": "%Groningen%",
"name": "A1234",
"label": "A1234",
"map_object_type_id": 17,
"geoObject": "Hello, world!"
},
"operator": "=",
"limit": 25
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"query": {
"type": "object",
"properties": {
"all": {
"type": "string",
"description": "Search simultaneously in the name, label, and address fields"
},
"name": {
"type": "string",
"description": "Filter map objects by name"
},
"label": {
"type": "string",
"description": "Filter map objects by label"
},
"map_object_type_id": {
"type": "number",
"description": "Filter on a specific type id"
},
"geoObject": {
"type": "string",
"description": "city_district: `Centrum` (string, optional) - Filter on the city district column of the related GeoObject"
}
},
"description": "Key/value combinations to search for"
},
"operator": {
"type": "string",
"enum": [
"=",
"!=",
">",
"<",
">=",
"<=",
"LIKE",
"ILIKE"
],
"description": "Operator that should be used for every key in the query"
},
"limit": {
"type": "number",
"description": "Maximum number of objects to return (hard limited by `dc.search.limit`)"
}
},
"required": [
"query"
]
}
}
}200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"name": "Bord",
"parent_id": 2,
"relation_id": 355,
"map_object_type_id": 3,
"geo_object_id": 4,
"map_object_status_id": 5,
"is_obstructed": false,
"network_id": 73,
"created_by": 14,
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0,
"geoObject": {
"data": {
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": []
},
"properties": {
"road": "AbcStreet",
"house_number": "12",
"city_district": "AbcDistrict",
"city": "AbcCity",
"postcode": "1234 AB",
"country_code": 528,
"length": 1000,
"start_point": 123,
"end_point": 123,
"area": 1000
},
"id": 1
}
}
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
}
}
}Find by chained query blocksPOST/object/find
Example URI
Headers
Content-Type: application/jsonBody
{
"data": {
"queries": [
{
"query": {
"all": "%Groningen%",
"name": "A1234",
"label": "A1234",
"map_object_type_id": 17,
"geoObject": "Hello, world!"
},
"operator": "=",
"limit": 25
}
],
"limit": 25
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"queries": {
"type": "array",
"description": "An ordered list of query blocks, each with its own operator and `query` object"
},
"limit": {
"type": "number",
"description": "Maximum number of objects to return (hard limited by `dc.search.limit`)"
}
},
"required": [
"queries"
]
}
}
}200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"name": "Bord",
"parent_id": 2,
"relation_id": 355,
"map_object_type_id": 3,
"geo_object_id": 4,
"map_object_status_id": 5,
"is_obstructed": false,
"network_id": 73,
"created_by": 14,
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0,
"geoObject": {
"data": {
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": []
},
"properties": {
"road": "AbcStreet",
"house_number": "12",
"city_district": "AbcDistrict",
"city": "AbcCity",
"postcode": "1234 AB",
"country_code": 528,
"length": 1000,
"start_point": 123,
"end_point": 123,
"area": 1000
},
"id": 1
}
}
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
}
}
}MapObject name suggestions ¶
Use the configured prefix of a MapObjectType to calculate the next available name.
Suggest the next nameGET/object/new-name/{mapObjectTypeId}
Example URI
- mapObjectTypeId
integer(required) Example: 14Id of the MapObjectType that defines the prefix
200Headers
Content-Type: application/jsonBody
{
"data": {
"name": "OBJ1100"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Suggested name for the next object of the provided type"
}
}
}
}
}Split a MapObject ¶
Split a LineString map object into two objects by inserting a coordinate.
Split a LineStringPOST/object/{mapObjectId}/split
Example URI
- mapObjectId
integer(required) Example: 10Id of the map object to split
Headers
Content-Type: application/jsonBody
{
"data": {
"coordinateIndex": 5,
"name": "Section B",
"map_object_type_id": 12
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"coordinateIndex": {
"type": "number",
"description": "Index of the coordinate (starting at zero) where the split should happen"
},
"name": {
"type": "string",
"description": "Name of the new map object that is created by splitting"
},
"map_object_type_id": {
"type": "number",
"description": "Type id of the new map object"
}
},
"required": [
"coordinateIndex",
"name",
"map_object_type_id"
]
}
}
}200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"name": "Bord",
"parent_id": 2,
"relation_id": 355,
"map_object_type_id": 3,
"geo_object_id": 4,
"map_object_status_id": 5,
"is_obstructed": false,
"network_id": 73,
"created_by": 14,
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0,
"geoObject": {
"data": {
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": []
},
"properties": {
"road": "AbcStreet",
"house_number": "12",
"city_district": "AbcDistrict",
"city": "AbcCity",
"postcode": "1234 AB",
"country_code": 528,
"length": 1000,
"start_point": 123,
"end_point": 123,
"area": 1000
},
"id": 1
}
}
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
}
}
}Bulk create MapObjects ¶
Create multiple map objects in a single request. Every item must omit the id field.
Bulk storePOST/object/bulk
Example URI
Headers
Content-Type: application/jsonBody
{
"data": [
{
"name": "Bord",
"parent_id": 2,
"map_object_type_id": 3,
"geo_object_id": 4,
"map_object_status_id": 5
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
}
}
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of stored data (can be empty on array inserts)"
}
}
}Bulk update MapObjects ¶
Update a set of map objects by passing an ids array and a single update block that contains the changes.
Bulk updatePUT/object/bulk
Example URI
Headers
Content-Type: application/jsonBody
{
"data": {
"ids": [
1,
2,
1
],
"update": {
"id": 1,
"name": "Bord",
"parent_id": 3,
"map_object_status_id": 5
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"ids": {
"type": "array",
"description": "The ids that will be updated"
},
"update": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "MapObject identifier"
},
"name": {
"type": "string",
"description": "Name of the object"
},
"parent_id": {
"type": "number",
"description": "Id of parent object"
},
"map_object_status_id": {
"type": "number",
"description": "Id of the current status"
}
},
"description": "The changes that should be applied to every provided id"
}
},
"required": [
"ids",
"update"
]
}
}
}200Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Bulk delete MapObjects ¶
Delete multiple map objects at once. When the remove_actions query parameter is set, their actions are deleted as well.
Bulk deletePOST/object/bulk/delete
Example URI
Headers
Content-Type: application/jsonBody
{
"data": [
1
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
}
}
}200Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of deleted data (can be empty on array inserts)"
}
}
}MapObject actions ¶
Get the actions that belong to the provided map object. When nested=true all descendant map objects are traversed as well.
Get MapObject actionsGET/object/{mapObjectId}/action{?nested}{?sort}{?sortBy}{?range}{?deleted_at}{?onlyNotFinal}
Example URI
- mapObjectId
integer(required) Example: 1Id of the map object
- nested
boolean(optional) Example: falseWhen true also include actions that belong to children of the map object
- sort
string(optional) Example: created_atColumn to order the result set by
- sortBy
string(optional) Example: descSort direction (
ascordesc)- range
number(optional) Example: 1693456800Only return actions updated since the provided UNIX timestamp
- deleted_at
boolean(optional) Example: falseInclude soft deleted actions
- onlyNotFinal
boolean(optional) Example: falseFilter out actions that have a final status
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"map_object_type_id": 2,
"action_status_id": 3,
"map_object_id": 7,
"geo_object_id": 2,
"dynamic_action_type_id": 9,
"action_priority_id": 10,
"created_by": 5,
"device": "web",
"network_id": 1,
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}MapObjectImages ¶
All calls for mapObject image management
MapObjectImage list ¶
Get a list of mapObject images
Get mapObject imagesGET/object/{mapObjectId}/image{?perPage}
Get a list of mapObject images.
Example URI
- mapObjectId
integer(required) Example: 1Id of an mapObject
- perPage
integer(optional) Default: 15 Example: 25The maximum number of mapObject images to return
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"map_object_id": 2,
"resource": "F34xfds",
"path": "mapobjects/2/F34xfds.jpg",
"link": "https://cdn.c-tip.com/mapobjects/2/F34xfds.jpg",
"title": "Nice picture"
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}Create new mapObject imagePOST/object/{mapObjectId}/image{?perPage}
Create a new mapObject image with the required parameters.
Example URI
- mapObjectId
integer(required) Example: 1Id of an mapObject
- perPage
integer(optional) Default: 15 Example: 25The maximum number of mapObject images to return
Headers
Content-Type: multipart/form-data; boundary=---BOUNDARY
Content-Length: $requestlenBody
---BOUNDARY
content-disposition: form-data; name="name"
Title
---BOUNDARY
content-disposition: form-data; name="image"; filename="$filename"
Content-Type: $mimetype
Content-Transfer-Encoding: binary
$binarydata
---BOUNDARY201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of stored data (can be empty on array inserts)"
}
}
}MapObjectImage ¶
Get a specific mapObject images
Get MapObjectImageGET/object/{mapObjectId}/image/{id}
Get a mapObject image.
Example URI
- mapObjectId
integer(required) Example: 1Id of an mapObject
- id
integer(required) Example: 1Id of a specific mapObject image
200Headers
Content-Type: application/jsonBody
{
"data": {
"id": 1,
"map_object_id": 2,
"resource": "F34xfds",
"path": "mapobjects/2/F34xfds.jpg",
"link": "https://cdn.c-tip.com/mapobjects/2/F34xfds.jpg",
"title": "Nice picture"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "MapObjectImage identifier"
},
"map_object_id": {
"type": "number",
"description": "Id of coupled mapObject"
},
"resource": {
"type": "string",
"description": "Resource key used inside storage"
},
"path": {
"type": "string",
"description": "Relative storage path"
},
"link": {
"type": "string",
"description": "Public URL to download the file"
},
"title": {
"type": "string",
"description": "Title of the image"
}
}
}
}
}Update an existing mapObject imagePUT/object/{mapObjectId}/image/{id}
Update a mapObject image
Example URI
- mapObjectId
integer(required) Example: 1Id of an mapObject
- id
integer(required) Example: 1Id of a specific mapObject image
Body
{
"title": "Nice picture"
}Schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "Title of the image"
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Patch an existing mapObject imagePATCH/object/{mapObjectId}/image/{id}
Patch a mapObject image
Example URI
- mapObjectId
integer(required) Example: 1Id of an mapObject
- id
integer(required) Example: 1Id of a specific mapObject image
Body
{
"title": "Nice picture"
}Schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "Title of the image"
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Delete an existing mapObject imageDELETE/object/{mapObjectId}/image/{id}
Delete a mapObject image
Example URI
- mapObjectId
integer(required) Example: 1Id of an mapObject
- id
integer(required) Example: 1Id of a specific mapObject image
200Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of deleted data (can be empty on array inserts)"
}
}
}Copy mapObject images ¶
Copy all images of one map object to another map object. Existing images on the target object remain untouched.
Copy all imagesPOST/object/{mapObjectId}/image/copy/{targetMapObjectId}
Example URI
- mapObjectId
integer(required) Example: 1Id of the source map object
- targetMapObjectId
integer(required) Example: 2Id of the destination map object
201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of stored data (can be empty on array inserts)"
}
}
}MapObjectTypes ¶
All calls for mapObjectType management
MapObjectType list ¶
Get a list of mapObjectTypes
Get mapObjectTypesGET/type{?perPage}
Get a list of mapObjectTypes.
Example URI
- perPage
integer(optional) Default: 15 Example: 25The maximum number of users to return
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"name": "Network",
"description": "Root node network",
"map_object_category_id": 1,
"created_at": 1449143207,
"updated_at": 1449143207
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}Create new mapObjectTypePOST/type{?perPage}
Create a new mapObjectType with the required parameters.
Example URI
- perPage
integer(optional) Default: 15 Example: 25The maximum number of users to return
Body
{
"data": {
"name": "Network",
"description": "Root node network",
"map_object_category_id": 1
},
"auth": {
"accessor_type": "user",
"access_level": 7,
"accessor_id": 1
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the mapObjectType"
},
"description": {
"type": "string",
"description": "Description of the mapObjectType"
},
"map_object_category_id": {
"type": "number",
"description": "Id of the mapObjectCategory the mapObjectType belongs to"
}
}
},
"auth": {
"type": "object",
"properties": {
"accessor_type": {
"enum": [
"user",
"role",
"tenant"
],
"description": "Type of authorization"
},
"access_level": {
"type": "number",
"description": "Accesslevel bit (read,write,full)"
},
"accessor_id": {
"type": "number",
"description": "Identifier of accessor type"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of stored data (can be empty on array inserts)"
}
}
}MapObjectType ¶
Get a specific mapObjectType
Get MapObjectTypeGET/type/{id}
Get a mapObjectType.
Example URI
- id
integer(required) Example: 1Id of a specific mapObjectType
200Headers
Content-Type: application/jsonBody
{
"data": {
"id": 1,
"name": "Network",
"description": "Root node network",
"map_object_category_id": 1,
"created_at": 1449143207,
"updated_at": 1449143207
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "MapObjectType identifier"
},
"name": {
"type": "string",
"description": "Name of the mapObjectType"
},
"description": {
"type": "string",
"description": "Description of the mapObjectType"
},
"map_object_category_id": {
"type": "number",
"description": "Id of the mapObjectCategory the mapObjectType belongs to"
},
"created_at": {
"type": "number",
"description": "Timestamp of user creation date"
},
"updated_at": {
"type": "number",
"description": "Timestamp of last user update"
}
}
}
}
}Update an existing mapObjectTypePUT/type/{id}
Update a mapObjectType
Example URI
- id
integer(required) Example: 1Id of a specific mapObjectType
Body
{
"data": {
"id": 1,
"name": "Network",
"description": "Root node network",
"map_object_category_id": 1
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "MapObjectType identifier"
},
"name": {
"type": "string",
"description": "Name of the mapObjectType"
},
"description": {
"type": "string",
"description": "Description of the mapObjectType"
},
"map_object_category_id": {
"type": "number",
"description": "Id of the mapObjectCategory the mapObjectType belongs to"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Patch an existing mapObjectTypePATCH/type/{id}
Patch a mapObjectType
Example URI
- id
integer(required) Example: 1Id of a specific mapObjectType
Body
{
"data": {
"id": 1,
"name": "Network",
"description": "Root node network",
"map_object_category_id": 1
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "MapObjectType identifier"
},
"name": {
"type": "string",
"description": "Name of the mapObjectType"
},
"description": {
"type": "string",
"description": "Description of the mapObjectType"
},
"map_object_category_id": {
"type": "number",
"description": "Id of the mapObjectCategory the mapObjectType belongs to"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Delete an existing mapObjectTypeDELETE/type/{id}
Delete a mapObjectType
Example URI
- id
integer(required) Example: 1Id of a specific mapObjectType
200Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of deleted data (can be empty on array inserts)"
}
}
}Network ¶
All calls for Network management. By default every response embeds the geoObject and role
relations. Use the include parameter to also fetch mapObject, tenant, user, topActionStatus,
and actionCount.
Network list ¶
Get a list of Networks
Get NetworksGET/network{?perPage}{?include}
Get a list of Networks.
Example URI
- perPage
integer(optional) Default: 15 Example: 25The maximum number of objects to return
- include
string(optional) Example: mapObjectComma separated list of relations to embed.
Choices:
geoObjectmapObjecttenantusertopActionStatusactionCount
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"name": "FKP Groningen",
"geo_object_id": 4,
"geoObject": {
"data": {
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": []
},
"properties": {
"road": "AbcStreet",
"house_number": "12",
"city_district": "AbcDistrict",
"city": "AbcCity",
"postcode": "1234 AB",
"country_code": 528,
"length": 1000,
"start_point": 123,
"end_point": 123,
"area": 1000
},
"id": 1
}
},
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}Create new NetworkPOST/network{?perPage}{?include}
Create a new Network with the required parameters.
Example URI
- perPage
integer(optional) Default: 15 Example: 25The maximum number of objects to return
- include
string(optional) Example: mapObjectComma separated list of relations to embed.
Choices:
geoObjectmapObjecttenantusertopActionStatusactionCount
Body
{
"data": {
"name": "Bord",
"geo_object_id": 4,
"add_standard_objects": false
},
"auth": {
"accessor_type": "user",
"access_level": 7,
"accessor_id": 1
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the network"
},
"geo_object_id": {
"type": "number",
"description": "Id of the location object"
},
"add_standard_objects": {
"type": "boolean",
"description": "When true a default set of objects is added to the network"
}
}
},
"auth": {
"type": "object",
"properties": {
"accessor_type": {
"enum": [
"user",
"role",
"tenant"
],
"description": "Type of authorization"
},
"access_level": {
"type": "number",
"description": "Accesslevel bit (read,write,full)"
},
"accessor_id": {
"type": "number",
"description": "Identifier of accessor type"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of stored data (can be empty on array inserts)"
}
}
}Network ¶
Get a specific network
Get NetworkGET/network/{id}{?include}
Example URI
- id
integer(required) Example: 1Id of a specific network
- include
string(optional) Example: mapObjectComma separated list of relations to embed.
Choices:
geoObjectmapObjecttenantusertopActionStatusactionCount
200Headers
Content-Type: application/jsonBody
{
"data": {
"id": 1,
"name": "FKP Groningen",
"geo_object_id": 4,
"geoObject": {
"data": {
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": []
},
"properties": {
"road": "AbcStreet",
"house_number": "12",
"city_district": "AbcDistrict",
"city": "AbcCity",
"postcode": "1234 AB",
"country_code": 528,
"length": 1000,
"start_point": 123,
"end_point": 123,
"area": 1000
},
"id": 1
}
},
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Network identifier"
},
"name": {
"type": "string",
"description": "Name of the network"
},
"geo_object_id": {
"type": "number",
"description": "Id of the location object"
},
"geoObject": {
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Type of format"
},
"geometry": {
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Type of geometry object"
},
"coordinates": {
"description": "Array of coordinates"
}
}
},
"properties": {
"type": "object",
"properties": {
"road": {
"type": "string",
"description": "Road of the GeoObject"
},
"house_number": {
"type": "string",
"description": "House number of the GeoObject"
},
"city_district": {
"type": "string",
"description": "City district of the GeoObject"
},
"city": {
"type": "string",
"description": "City of the GeoObject"
},
"postcode": {
"type": "string",
"description": "Postcode of the GeoObject"
},
"country_code": {
"type": "number",
"description": "Country Code of the GeoObject"
},
"length": {
"type": "number",
"description": "Length of the GeoObject (Only for LineStrings)"
},
"start_point": {
"type": "number",
"description": "MapObjectId of startpoint of the GeoObject (Only for LineStrings)"
},
"end_point": {
"type": "number",
"description": "MapObjectId of endpoint of the GeoObject (Only for LineStrings)"
},
"area": {
"type": "number",
"description": "Area of the GeoObject (Only for Polygons)"
}
},
"description": "Object with properties of object"
},
"id": {
"type": "number",
"description": "Id of geoObject"
}
}
}
}
},
"created_at": {
"type": "number",
"description": "Timestamp of creation"
},
"updated_at": {
"type": "number",
"description": "Timestamp of last update"
},
"deleted_at": {
"type": "number",
"description": "Timestamp when the network was soft deleted"
}
}
}
}
}Update an existing NetworkPUT/network/{id}{?include}
Example URI
- id
integer(required) Example: 1Id of a specific network
- include
string(optional) Example: mapObjectComma separated list of relations to embed.
Choices:
geoObjectmapObjecttenantusertopActionStatusactionCount
Body
{
"data": {
"id": 1,
"name": "WNT Groningen"
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Network identifier"
},
"name": {
"type": "string",
"description": "Name of the network"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}200Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Patch an existing NetworkPATCH/network/{id}{?include}
Example URI
- id
integer(required) Example: 1Id of a specific network
- include
string(optional) Example: mapObjectComma separated list of relations to embed.
Choices:
geoObjectmapObjecttenantusertopActionStatusactionCount
Body
{
"data": {
"id": 1,
"name": "WNT Groningen"
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Network identifier"
},
"name": {
"type": "string",
"description": "Name of the network"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}200Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Delete an existing NetworkDELETE/network/{id}{?include}
Example URI
- id
integer(required) Example: 1Id of a specific network
- include
string(optional) Example: mapObjectComma separated list of relations to embed.
Choices:
geoObjectmapObjecttenantusertopActionStatusactionCount
200Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of deleted data (can be empty on array inserts)"
}
}
}Network dataset ¶
Get the full cached dataset used by the C-TIP clients. The response contains map objects, actions, selections, attributes, map object types, and every related lookup record.
Get datasetGET/network/{id}/all
Example URI
- id
integer(required) Example: 1Id of a specific network
200Headers
Content-Type: application/jsonBody
{
"actionImageTypes": {},
"actionPriorities": {},
"actionStatuses": {},
"attributes": {},
"attributeGroups": {},
"dynamicActionTypes": {},
"dynamicActionTypeCategories": {},
"keyValues": {},
"mapObjectCategories": {},
"mapObjectSelections": {},
"mapObjectSelectionTypes": {},
"mapObjectStatuses": {},
"mapObjectTypes": {},
"mapObjectTypeMapObjectStatuses": {},
"mapObjectTypeActionStatuses": {},
"actions": {},
"mapObjects": {}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"actionImageTypes": {
"type": "object",
"properties": {},
"description": "Collection of action image type lookups"
},
"actionPriorities": {
"type": "object",
"properties": {},
"description": "Collection of action priorities"
},
"actionStatuses": {
"type": "object",
"properties": {},
"description": "Collection of action statuses"
},
"attributes": {
"type": "object",
"properties": {},
"description": "Collection of attributes"
},
"attributeGroups": {
"type": "object",
"properties": {},
"description": "Collection of attribute groups"
},
"dynamicActionTypes": {
"type": "object",
"properties": {},
"description": "Collection of dynamic action types"
},
"dynamicActionTypeCategories": {
"type": "object",
"properties": {},
"description": "Collection of dynamic action type categories"
},
"keyValues": {
"type": "object",
"properties": {},
"description": "Collection of reusable key/value pairs"
},
"mapObjectCategories": {
"type": "object",
"properties": {},
"description": "Collection of map object categories"
},
"mapObjectSelections": {
"type": "object",
"properties": {},
"description": "Collection of map object selections"
},
"mapObjectSelectionTypes": {
"type": "object",
"properties": {},
"description": "Collection of selection types"
},
"mapObjectStatuses": {
"type": "object",
"properties": {},
"description": "Collection of map object statuses"
},
"mapObjectTypes": {
"type": "object",
"properties": {},
"description": "Collection of map object types"
},
"mapObjectTypeMapObjectStatuses": {
"type": "object",
"properties": {},
"description": "Pivot information for allowed map object statuses per type"
},
"mapObjectTypeActionStatuses": {
"type": "object",
"properties": {},
"description": "Pivot information for allowed action statuses per type"
},
"actions": {
"type": "object",
"properties": {},
"description": "Map of action ids to action payloads"
},
"mapObjects": {
"type": "object",
"properties": {},
"description": "Map of map object ids to map object payloads"
}
}
}Network config ¶
Returns the cached configuration for a network (action statuses, attribute definitions, map object type permissions, lookups, etc.).
Get configGET/network/{id}/config
Example URI
- id
integer(required) Example: 1Id of a specific network
200Headers
Content-Type: application/jsonBody
{}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {}
}Network map objects ¶
Returns all map objects for a network using the same dataset as /network/{id}/all.
Get objectsGET/network/objects
Example URI
200Headers
Content-Type: application/jsonBody
{
"actionImageTypes": {},
"actionPriorities": {},
"actionStatuses": {},
"attributes": {},
"attributeGroups": {},
"dynamicActionTypes": {},
"dynamicActionTypeCategories": {},
"keyValues": {},
"mapObjectCategories": {},
"mapObjectSelections": {},
"mapObjectSelectionTypes": {},
"mapObjectStatuses": {},
"mapObjectTypes": {},
"mapObjectTypeMapObjectStatuses": {},
"mapObjectTypeActionStatuses": {},
"actions": {},
"mapObjects": {}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"actionImageTypes": {
"type": "object",
"properties": {},
"description": "Collection of action image type lookups"
},
"actionPriorities": {
"type": "object",
"properties": {},
"description": "Collection of action priorities"
},
"actionStatuses": {
"type": "object",
"properties": {},
"description": "Collection of action statuses"
},
"attributes": {
"type": "object",
"properties": {},
"description": "Collection of attributes"
},
"attributeGroups": {
"type": "object",
"properties": {},
"description": "Collection of attribute groups"
},
"dynamicActionTypes": {
"type": "object",
"properties": {},
"description": "Collection of dynamic action types"
},
"dynamicActionTypeCategories": {
"type": "object",
"properties": {},
"description": "Collection of dynamic action type categories"
},
"keyValues": {
"type": "object",
"properties": {},
"description": "Collection of reusable key/value pairs"
},
"mapObjectCategories": {
"type": "object",
"properties": {},
"description": "Collection of map object categories"
},
"mapObjectSelections": {
"type": "object",
"properties": {},
"description": "Collection of map object selections"
},
"mapObjectSelectionTypes": {
"type": "object",
"properties": {},
"description": "Collection of selection types"
},
"mapObjectStatuses": {
"type": "object",
"properties": {},
"description": "Collection of map object statuses"
},
"mapObjectTypes": {
"type": "object",
"properties": {},
"description": "Collection of map object types"
},
"mapObjectTypeMapObjectStatuses": {
"type": "object",
"properties": {},
"description": "Pivot information for allowed map object statuses per type"
},
"mapObjectTypeActionStatuses": {
"type": "object",
"properties": {},
"description": "Pivot information for allowed action statuses per type"
},
"actions": {
"type": "object",
"properties": {},
"description": "Map of action ids to action payloads"
},
"mapObjects": {
"type": "object",
"properties": {},
"description": "Map of map object ids to map object payloads"
}
}
}Network actions dataset ¶
Returns all actions for a network using the same dataset as /network/{id}/all.
Get actionsGET/network/actions
Example URI
200Headers
Content-Type: application/jsonBody
{
"actionImageTypes": {},
"actionPriorities": {},
"actionStatuses": {},
"attributes": {},
"attributeGroups": {},
"dynamicActionTypes": {},
"dynamicActionTypeCategories": {},
"keyValues": {},
"mapObjectCategories": {},
"mapObjectSelections": {},
"mapObjectSelectionTypes": {},
"mapObjectStatuses": {},
"mapObjectTypes": {},
"mapObjectTypeMapObjectStatuses": {},
"mapObjectTypeActionStatuses": {},
"actions": {},
"mapObjects": {}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"actionImageTypes": {
"type": "object",
"properties": {},
"description": "Collection of action image type lookups"
},
"actionPriorities": {
"type": "object",
"properties": {},
"description": "Collection of action priorities"
},
"actionStatuses": {
"type": "object",
"properties": {},
"description": "Collection of action statuses"
},
"attributes": {
"type": "object",
"properties": {},
"description": "Collection of attributes"
},
"attributeGroups": {
"type": "object",
"properties": {},
"description": "Collection of attribute groups"
},
"dynamicActionTypes": {
"type": "object",
"properties": {},
"description": "Collection of dynamic action types"
},
"dynamicActionTypeCategories": {
"type": "object",
"properties": {},
"description": "Collection of dynamic action type categories"
},
"keyValues": {
"type": "object",
"properties": {},
"description": "Collection of reusable key/value pairs"
},
"mapObjectCategories": {
"type": "object",
"properties": {},
"description": "Collection of map object categories"
},
"mapObjectSelections": {
"type": "object",
"properties": {},
"description": "Collection of map object selections"
},
"mapObjectSelectionTypes": {
"type": "object",
"properties": {},
"description": "Collection of selection types"
},
"mapObjectStatuses": {
"type": "object",
"properties": {},
"description": "Collection of map object statuses"
},
"mapObjectTypes": {
"type": "object",
"properties": {},
"description": "Collection of map object types"
},
"mapObjectTypeMapObjectStatuses": {
"type": "object",
"properties": {},
"description": "Pivot information for allowed map object statuses per type"
},
"mapObjectTypeActionStatuses": {
"type": "object",
"properties": {},
"description": "Pivot information for allowed action statuses per type"
},
"actions": {
"type": "object",
"properties": {},
"description": "Map of action ids to action payloads"
},
"mapObjects": {
"type": "object",
"properties": {},
"description": "Map of map object ids to map object payloads"
}
}
}Network selections dataset ¶
Returns all map object selections for a network using the same dataset as /network/{id}/all.
Get selectionsGET/network/selections
Example URI
200Headers
Content-Type: application/jsonBody
{
"actionImageTypes": {},
"actionPriorities": {},
"actionStatuses": {},
"attributes": {},
"attributeGroups": {},
"dynamicActionTypes": {},
"dynamicActionTypeCategories": {},
"keyValues": {},
"mapObjectCategories": {},
"mapObjectSelections": {},
"mapObjectSelectionTypes": {},
"mapObjectStatuses": {},
"mapObjectTypes": {},
"mapObjectTypeMapObjectStatuses": {},
"mapObjectTypeActionStatuses": {},
"actions": {},
"mapObjects": {}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"actionImageTypes": {
"type": "object",
"properties": {},
"description": "Collection of action image type lookups"
},
"actionPriorities": {
"type": "object",
"properties": {},
"description": "Collection of action priorities"
},
"actionStatuses": {
"type": "object",
"properties": {},
"description": "Collection of action statuses"
},
"attributes": {
"type": "object",
"properties": {},
"description": "Collection of attributes"
},
"attributeGroups": {
"type": "object",
"properties": {},
"description": "Collection of attribute groups"
},
"dynamicActionTypes": {
"type": "object",
"properties": {},
"description": "Collection of dynamic action types"
},
"dynamicActionTypeCategories": {
"type": "object",
"properties": {},
"description": "Collection of dynamic action type categories"
},
"keyValues": {
"type": "object",
"properties": {},
"description": "Collection of reusable key/value pairs"
},
"mapObjectCategories": {
"type": "object",
"properties": {},
"description": "Collection of map object categories"
},
"mapObjectSelections": {
"type": "object",
"properties": {},
"description": "Collection of map object selections"
},
"mapObjectSelectionTypes": {
"type": "object",
"properties": {},
"description": "Collection of selection types"
},
"mapObjectStatuses": {
"type": "object",
"properties": {},
"description": "Collection of map object statuses"
},
"mapObjectTypes": {
"type": "object",
"properties": {},
"description": "Collection of map object types"
},
"mapObjectTypeMapObjectStatuses": {
"type": "object",
"properties": {},
"description": "Pivot information for allowed map object statuses per type"
},
"mapObjectTypeActionStatuses": {
"type": "object",
"properties": {},
"description": "Pivot information for allowed action statuses per type"
},
"actions": {
"type": "object",
"properties": {},
"description": "Map of action ids to action payloads"
},
"mapObjects": {
"type": "object",
"properties": {},
"description": "Map of map object ids to map object payloads"
}
}
}Network action list ¶
Paginated list of actions for a network. See the Actions group for the response structure.
Get network actionsGET/network/{networkId}/action{?perPage}{?sort}{?sortBy}{?range}{?deleted_at}{?onlyNotFinal}
Example URI
- networkId
integer(required) Example: 5Id of the network
- perPage
integer(optional) Example: 25The maximum number of actions to return
- sort
string(optional) Example: created_atColumn to sort on
- sortBy
string(optional) Example: descSort direction (
ascordesc)- range
number(optional) Example: 1693456800Only return actions updated after the provided timestamp
- deleted_at
boolean(optional) Example: falseInclude soft deleted actions
- onlyNotFinal
boolean(optional) Example: falseFilter out actions that are already finalised
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"map_object_type_id": 2,
"action_status_id": 3,
"map_object_id": 7,
"geo_object_id": 2,
"dynamic_action_type_id": 9,
"action_priority_id": 10,
"created_by": 5,
"device": "web",
"network_id": 1,
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}Network action city districts ¶
Returns a de-duplicated list of the geoObject.city_district values that are used inside the actions of the provided network.
Get action city districtsGET/network/{networkId}/action/city_district
Example URI
- networkId
integer(required) Example: 5Id of the network
200Headers
Content-Type: application/jsonBody
[
"Hello, world!"
]Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}Network recurring actions ¶
Refer to the Recurring Actions group for the request parameters and response structure.
NetworkChildren ¶
All calls to get a lot of objects under a single network
Network Children ¶
Get Network ChildrenGET/network/{id}/children{?perPage}{?depth}{?include}{?updated_at}{?deleted_at}
Get the children objects under a network.
Example URI
- id
integer(required) Example: 1Id of a specific network
- perPage
integer(optional) Default: 15 Example: 25The maximum number of objects to return
- depth
boolean(optional) Default: false Example: trueWhether you only want the MapObject directly under the network, or also the children of those mapObjects and deeper
- include
string(optional) Example: geoObjectComma separated list of relations to embed for each returned MapObject.
Choices:
geoObjectattributemapObjectSelectionIdmapObjectTypemapObjectLabel- updated_at
number(optional) Example: 1693456800Only return MapObjects that were updated after the provided Unix timestamp.
- deleted_at
boolean(optional) Example: falseInclude soft deleted MapObjects when set to
true.- map_object_type_id
integer(optional) Example: 3Filter MapObjects by a specific type id.
- parent_id
integer(optional) Example: 10Only return children for the provided parent MapObject id.
- name
string(optional) Example: Lamp postFilter MapObjects by their exact name.
- label
string(optional) Example: A-01Filter MapObjects by their label.
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"name": "Bord",
"parent_id": 2,
"relation_id": 355,
"map_object_type_id": 3,
"geo_object_id": 4,
"map_object_status_id": 5,
"is_obstructed": false,
"network_id": 73,
"created_by": 14,
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0,
"geoObject": {
"data": {
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": []
},
"properties": {
"road": "AbcStreet",
"house_number": "12",
"city_district": "AbcDistrict",
"city": "AbcCity",
"postcode": "1234 AB",
"country_code": 528,
"length": 1000,
"start_point": 123,
"end_point": 123,
"area": 1000
},
"id": 1
}
}
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}Network Children Web ¶
Get Network WebGET/network/{id}/children/web
Get all the children MapObjects under a network. Returns the same structure as the paginated /children endpoint.
Example URI
- id
integer(required) Example: 1Id of a specific network
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"name": "Bord",
"parent_id": 2,
"relation_id": 355,
"map_object_type_id": 3,
"geo_object_id": 4,
"map_object_status_id": 5,
"is_obstructed": false,
"network_id": 73,
"created_by": 14,
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0,
"geoObject": {
"data": {
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": []
},
"properties": {
"road": "AbcStreet",
"house_number": "12",
"city_district": "AbcDistrict",
"city": "AbcCity",
"postcode": "1234 AB",
"country_code": 528,
"length": 1000,
"start_point": 123,
"end_point": 123,
"area": 1000
},
"id": 1
}
}
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}Network Children All ¶
Get Network AllGET/network/{id}/children/all
Get all the objects under a network.
Example URI
- id
integer(required) Example: 1Id of a specific network
200Headers
Content-Type: application/jsonBody
{
"actionImageTypes": {},
"actionPriorities": {},
"actionStatuses": {},
"attributes": {},
"attributeGroups": {},
"dynamicActionTypes": {},
"dynamicActionTypeCategories": {},
"keyValues": {},
"mapObjectCategories": {},
"mapObjectSelections": {},
"mapObjectSelectionTypes": {},
"mapObjectStatuses": {},
"mapObjectTypes": {},
"mapObjectTypeMapObjectStatuses": {},
"mapObjectTypeActionStatuses": {},
"actions": {},
"mapObjects": {}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"actionImageTypes": {
"type": "object",
"properties": {}
},
"actionPriorities": {
"type": "object",
"properties": {}
},
"actionStatuses": {
"type": "object",
"properties": {}
},
"attributes": {
"type": "object",
"properties": {}
},
"attributeGroups": {
"type": "object",
"properties": {}
},
"dynamicActionTypes": {
"type": "object",
"properties": {}
},
"dynamicActionTypeCategories": {
"type": "object",
"properties": {}
},
"keyValues": {
"type": "object",
"properties": {}
},
"mapObjectCategories": {
"type": "object",
"properties": {}
},
"mapObjectSelections": {
"type": "object",
"properties": {}
},
"mapObjectSelectionTypes": {
"type": "object",
"properties": {}
},
"mapObjectStatuses": {
"type": "object",
"properties": {}
},
"mapObjectTypes": {
"type": "object",
"properties": {}
},
"mapObjectTypeMapObjectStatuses": {
"type": "object",
"properties": {}
},
"mapObjectTypeActionStatuses": {
"type": "object",
"properties": {}
},
"actions": {
"type": "object",
"properties": {}
},
"mapObjects": {
"type": "object",
"properties": {}
}
}
}Network Children Config ¶
Get Network ConfigGET/network/{id}/children/config
Get all the config objects under a network.
Example URI
- id
integer(required) Example: 1Id of a specific network
200Headers
Content-Type: application/jsonBody
{
"actionImageTypes": {},
"actionPriorities": {},
"actionStatuses": {},
"attributes": {},
"attributeGroups": {},
"dynamicActionTypes": {},
"dynamicActionTypeCategories": {},
"keyValues": {},
"mapObjectCategories": {},
"mapObjectSelections": {},
"mapObjectSelectionTypes": {},
"mapObjectStatuses": {},
"mapObjectTypes": {},
"mapObjectTypeMapObjectStatuses": {},
"mapObjectTypeActionStatuses": {}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"actionImageTypes": {
"type": "object",
"properties": {}
},
"actionPriorities": {
"type": "object",
"properties": {}
},
"actionStatuses": {
"type": "object",
"properties": {}
},
"attributes": {
"type": "object",
"properties": {}
},
"attributeGroups": {
"type": "object",
"properties": {}
},
"dynamicActionTypes": {
"type": "object",
"properties": {}
},
"dynamicActionTypeCategories": {
"type": "object",
"properties": {}
},
"keyValues": {
"type": "object",
"properties": {}
},
"mapObjectCategories": {
"type": "object",
"properties": {}
},
"mapObjectSelections": {
"type": "object",
"properties": {}
},
"mapObjectSelectionTypes": {
"type": "object",
"properties": {}
},
"mapObjectStatuses": {
"type": "object",
"properties": {}
},
"mapObjectTypes": {
"type": "object",
"properties": {}
},
"mapObjectTypeMapObjectStatuses": {
"type": "object",
"properties": {}
},
"mapObjectTypeActionStatuses": {
"type": "object",
"properties": {}
}
}
}Network Children By MapObjectType ¶
Get Network By MapObjectTypeGET/network/{id}/children/type/{typeId}
Get all the objects under a network by a specific type. Returns the same payload as the regular children endpoints.
Example URI
- id
integer(required) Example: 1Id of a specific network
- typeId
integer(required) Example: 3Id of a specific MapObjecType
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"name": "Bord",
"parent_id": 2,
"relation_id": 355,
"map_object_type_id": 3,
"geo_object_id": 4,
"map_object_status_id": 5,
"is_obstructed": false,
"network_id": 73,
"created_by": 14,
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0,
"geoObject": {
"data": {
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": []
},
"properties": {
"road": "AbcStreet",
"house_number": "12",
"city_district": "AbcDistrict",
"city": "AbcCity",
"postcode": "1234 AB",
"country_code": 528,
"length": 1000,
"start_point": 123,
"end_point": 123,
"area": 1000
},
"id": 1
}
}
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}Role ¶
All calls for role management
Role list ¶
Get a list of roles
Get rolesGET/role{?perPage}
Get a list of roles.
Example URI
- perPage
integer(optional) Default: 15 Example: 25The maximum number of roles to return
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"name": "admin",
"display_name": "Admin",
"description": "Description of admin",
"created_at": 1449143207,
"updated_at": 1449143207
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}Create new rolePOST/role{?perPage}
Create a new role with the required parameters.
New roles
New roles are coupled to your current tenant.
Example URI
- perPage
integer(optional) Default: 15 Example: 25The maximum number of roles to return
Body
{
"data": {
"name": "admin",
"display_name": "Admin",
"description": "Description of admin"
},
"auth": {
"accessor_type": "user",
"access_level": 7,
"accessor_id": 1
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the role, lowercase for identification"
},
"display_name": {
"type": "string",
"description": "Display label of a role"
},
"description": {
"type": "string",
"description": "Description of a role"
}
}
},
"auth": {
"type": "object",
"properties": {
"accessor_type": {
"enum": [
"user",
"role",
"tenant"
],
"description": "Type of authorization"
},
"access_level": {
"type": "number",
"description": "Accesslevel bit (read,write,full)"
},
"accessor_id": {
"type": "number",
"description": "Identifier of accessor type"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of stored data (can be empty on array inserts)"
}
}
}Role ¶
Get a specific roles
Get RoleGET/role/{id}
Get a role.
Example URI
- id
integer(required) Example: 1Id of a specific role
200Headers
Content-Type: application/jsonBody
{
"data": {
"id": 1,
"name": "admin",
"display_name": "Admin",
"description": "Description of admin",
"created_at": 1449143207,
"updated_at": 1449143207
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Role identifier"
},
"name": {
"type": "string",
"description": "Name of the role, lowercase for identification"
},
"display_name": {
"type": "string",
"description": "Display label of a role"
},
"description": {
"type": "string",
"description": "Description of a role"
},
"created_at": {
"type": "number",
"description": "Timestamp of role creation date"
},
"updated_at": {
"type": "number",
"description": "Timestamp of last role update"
}
}
}
}
}Update an existing rolePUT/role/{id}
Update a role
Example URI
- id
integer(required) Example: 1Id of a specific role
Body
{
"data": {
"id": 1,
"name": "admin",
"display_name": "Admin",
"description": "Description of admin"
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Role identifier"
},
"name": {
"type": "string",
"description": "Name of the role, lowercase for identification"
},
"display_name": {
"type": "string",
"description": "Display label of a role"
},
"description": {
"type": "string",
"description": "Description of a role"
}
},
"required": [
"id"
]
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Patch an existing rolePATCH/role/{id}
Patch a role
Example URI
- id
integer(required) Example: 1Id of a specific role
Body
{
"data": {
"id": 1,
"name": "admin",
"display_name": "Admin",
"description": "Description of admin"
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Role identifier"
},
"name": {
"type": "string",
"description": "Name of the role, lowercase for identification"
},
"display_name": {
"type": "string",
"description": "Display label of a role"
},
"description": {
"type": "string",
"description": "Description of a role"
}
},
"required": [
"id"
]
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Delete an existing roleDELETE/role/{id}
Delete a role
Example URI
- id
integer(required) Example: 1Id of a specific role
200Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of deleted data (can be empty on array inserts)"
}
}
}Selections ¶
All calls for Selection management. The API automatically embeds the pivot data (order/label) when a
selection is loaded through a relation. Use the include parameter to also fetch related objects.
Selection list ¶
Get a list of Selections
Get SelectionsGET/selection{?perPage}{?include}
Get a list of Selections.
Example URI
- perPage
number(optional) Default: 15 Example: 25The maximum number of objects to return
- include
string(optional) Example: mapObjectOption to get related data, multiple options are available by joining them with a ‘,’ in between (i.e. ‘attribute,parent’). WARNING: this may increase loading times drastically
Choices:
mapObjectmapObjectSelectionTypemapObjectSelectionImageattributeparentmapObjectId
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"parent_id": 2,
"name": "Selectie",
"description": "Dit is een omschrijving",
"map_object_selection_type_id": 3,
"network_id": 73,
"status": "ok",
"created_at": 1449143207,
"updated_at": 1449143207,
"created_by": 1
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}Create new SelectionPOST/selection{?perPage}{?include}
Create a new Selection with the required parameters.
Example URI
- perPage
number(optional) Default: 15 Example: 25The maximum number of objects to return
- include
string(optional) Example: mapObjectOption to get related data, multiple options are available by joining them with a ‘,’ in between (i.e. ‘attribute,parent’). WARNING: this may increase loading times drastically
Choices:
mapObjectmapObjectSelectionTypemapObjectSelectionImageattributeparentmapObjectId
Body
{
"data": {
"name": "Bord",
"description": "Dit is een omschrijving",
"parent_id": 3,
"map_object_selection_type_id": 5
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the selection"
},
"description": {
"type": "string",
"description": "Description of the selection"
},
"parent_id": {
"type": "number",
"description": "Id of parent selection"
},
"map_object_selection_type_id": {
"type": "number",
"description": "Id of the selection type"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of stored data (can be empty on array inserts)"
}
}
}Selection ¶
Get a specific Selection
Get SelectionGET/selection/{id}
Get a Selection.
Example URI
- id
integer(required) Example: 1Id of a specific object
200Headers
Content-Type: application/jsonBody
{
"data": {
"id": 1,
"parent_id": 2,
"name": "Selectie",
"description": "Dit is een omschrijving",
"map_object_selection_type_id": 3,
"network_id": 73,
"status": "ok",
"created_at": 1449143207,
"updated_at": 1449143207,
"created_by": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Selection identifier"
},
"parent_id": {
"type": "number",
"description": "Id of parent selection"
},
"name": {
"type": "string",
"description": "Name of the selection"
},
"description": {
"type": "string",
"description": "Description of the selection"
},
"map_object_selection_type_id": {
"type": "number",
"description": "Id of the selection type"
},
"network_id": {
"type": "number",
"description": "Id of the network id"
},
"status": {
"type": "string",
"description": "Status of the selection, options: ok | broken | unknown"
},
"created_at": {
"type": "number",
"description": "Timestamp of selection creation date"
},
"updated_at": {
"type": "number",
"description": "Timestamp of last selection update"
},
"created_by": {
"type": "number",
"description": "User id of the creator of the selection"
}
}
}
}
}Update an existing SelectionPUT/selection/{id}
Update a Selection
Example URI
- id
integer(required) Example: 1Id of a specific object
Body
{
"data": {
"id": 1,
"name": "Bord",
"description": "Dit is een omschrijving",
"parent_id": 3,
"map_object_selection_type_id": 5
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Selection identifier"
},
"name": {
"type": "string",
"description": "Name of the selection"
},
"description": {
"type": "string",
"description": "Description of the selection"
},
"parent_id": {
"type": "number",
"description": "Id of parent selection"
},
"map_object_selection_type_id": {
"type": "number",
"description": "Id of the selection type"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Patch an existing SelectionPATCH/selection/{id}
Patch a Selection
Example URI
- id
integer(required) Example: 1Id of a specific object
Body
{
"data": {
"id": 1,
"name": "Bord",
"description": "Dit is een omschrijving",
"parent_id": 3,
"map_object_selection_type_id": 5
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Selection identifier"
},
"name": {
"type": "string",
"description": "Name of the selection"
},
"description": {
"type": "string",
"description": "Description of the selection"
},
"parent_id": {
"type": "number",
"description": "Id of parent selection"
},
"map_object_selection_type_id": {
"type": "number",
"description": "Id of the selection type"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Delete an existing SelectionDELETE/selection/{id}
Delete a Selection
Example URI
- id
integer(required) Example: 1Id of a specific object
200Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of deleted data (can be empty on array inserts)"
}
}
}Find selections ¶
Search selections by name, description, type, or free text.
Search selectionsPOST/selection/find
Example URI
Headers
Content-Type: application/jsonBody
{
"data": {
"query": {
"all": "%Bridge%",
"name": "Cycle route",
"description": "Downtown",
"map_object_selection_type_id": 7
},
"operator": "=",
"limit": 25
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"query": {
"type": "object",
"properties": {
"all": {
"type": "string",
"description": "Search in both name and description"
},
"name": {
"type": "string",
"description": "Filter by name"
},
"description": {
"type": "string",
"description": "Filter by description"
},
"map_object_selection_type_id": {
"type": "number",
"description": "Filter by selection type id"
}
},
"description": "Key/value combinations to search for"
},
"operator": {
"type": "string",
"enum": [
"=",
"!=",
">",
"<",
">=",
"<=",
"LIKE",
"ILIKE"
],
"description": "Operator applied to the supplied query (default `ILIKE`)"
},
"limit": {
"type": "number",
"description": "Maximum number of objects to return (hard limited by `dc.search.limit`)"
}
},
"required": [
"query"
]
}
}
}200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"parent_id": 2,
"name": "Selectie",
"description": "Dit is een omschrijving",
"map_object_selection_type_id": 3,
"network_id": 73,
"status": "ok",
"created_at": 1449143207,
"updated_at": 1449143207,
"created_by": 1
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
}
}
}Selection type ¶
Get the type configuration of a selection.
Get selection typeGET/selection/{id}/selection_type
Example URI
- id
integer(required) Example: 1Id of a specific selection
200Headers
Content-Type: application/jsonBody
{
"data": {
"id": 7,
"name": "Route",
"is_network": true,
"is_ordered": false,
"network_id": 3,
"created_at": 1449143207,
"updated_at": 1449143207
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identifier of the selection type"
},
"name": {
"type": "string",
"description": "Name of the selection type"
},
"is_network": {
"type": "boolean",
"description": "When true the selection is owned by the network"
},
"is_ordered": {
"type": "boolean",
"description": "Indicates whether the selection enforces ordering of map objects"
},
"network_id": {
"type": "number",
"description": "Id of the owning network"
},
"created_at": {
"type": "number",
"description": "Timestamp of creation date"
},
"updated_at": {
"type": "number",
"description": "Timestamp of last update"
}
}
}
}
}Selection objects ¶
Manage the map objects that belong to a selection.
Get selection objectsGET/selection/{id}/object
Example URI
- id
integer(required) Example: 1Id of a specific selection
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"name": "Bord",
"parent_id": 2,
"relation_id": 355,
"map_object_type_id": 3,
"geo_object_id": 4,
"map_object_status_id": 5,
"is_obstructed": false,
"network_id": 73,
"created_by": 14,
"created_at": 1449143207,
"updated_at": 1449143207,
"deleted_at": 0,
"geoObject": {
"data": {
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": []
},
"properties": {
"road": "AbcStreet",
"house_number": "12",
"city_district": "AbcDistrict",
"city": "AbcCity",
"postcode": "1234 AB",
"country_code": 528,
"length": 1000,
"start_point": 123,
"end_point": 123,
"area": 1000
},
"id": 1
}
}
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}Attach map objectsPOST/selection/{id}/object
Example URI
- id
integer(required) Example: 1Id of a specific selection
Headers
Content-Type: application/jsonBody
{
"data": {
"relation": [
{
"id": 42,
"order": 1,
"label": "Start"
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"relation": {
"type": "array",
"description": "The map objects that should be attached or detached"
}
},
"required": [
"relation"
]
}
}
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of stored data (can be empty on array inserts)"
}
}
}Remove map objectsDELETE/selection/object
Example URI
Headers
Content-Type: application/jsonBody
{
"data": {
"relation": [
{
"id": 42,
"order": 1,
"label": "Start"
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"relation": {
"type": "array",
"description": "The map objects that should be attached or detached"
}
},
"required": [
"relation"
]
}
}
}200Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of deleted data (can be empty on array inserts)"
}
}
}Selection images ¶
Manage the images that are linked to a selection.
Get selection imagesGET/selection/{id}/image
Example URI
- id
integer(required) Example: 1Id of a specific selection
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 10,
"map_object_selection_id": 5,
"resource": "F34xfds",
"path": "selections/5/F34xfds.jpg",
"link": "https://cdn.c-tip.com/selections/5/F34xfds.jpg",
"title": "Overview"
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}Add an imagePOST/selection/{id}/image
Example URI
- id
integer(required) Example: 1Id of a specific selection
Headers
Content-Type: multipart/form-data; boundary=---BOUNDARYBody
---BOUNDARY
content-disposition: form-data; name="title"
Optional title
---BOUNDARY
content-disposition: form-data; name="image"; filename="$filename"
Content-Type: $mimetype
Content-Transfer-Encoding: binary
$binarydata
---BOUNDARY201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of stored data (can be empty on array inserts)"
}
}
}Selection image ¶
Interact with a single selection image.
Get selection imageGET/selection/{id}/image/{imageId}
Example URI
- id
integer(required) Example: 1Id of a specific selection
- imageId
integer(required) Example: 5Id of the selection image
200Headers
Content-Type: application/jsonBody
{
"data": {
"id": 10,
"map_object_selection_id": 5,
"resource": "F34xfds",
"path": "selections/5/F34xfds.jpg",
"link": "https://cdn.c-tip.com/selections/5/F34xfds.jpg",
"title": "Overview"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identifier of the image"
},
"map_object_selection_id": {
"type": "number",
"description": "Id of the selection"
},
"resource": {
"type": "string",
"description": "Storage key used for the binary file"
},
"path": {
"type": "string",
"description": "Relative path to the stored file"
},
"link": {
"type": "string",
"description": "Public URL to download the file"
},
"title": {
"type": "string",
"description": "Optional title for the image"
}
}
}
}
}Update image metadataPUT/selection/{id}/image/{imageId}
Example URI
- id
integer(required) Example: 1Id of a specific selection
- imageId
integer(required) Example: 5Id of the selection image
Headers
Content-Type: application/jsonBody
{
"data": {
"title": "Overview"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "Optional title for the image"
}
}
}
}
}200Headers
Content-Type: application/jsonBody
{
"data": {
"id": 10,
"map_object_selection_id": 5,
"resource": "F34xfds",
"path": "selections/5/F34xfds.jpg",
"link": "https://cdn.c-tip.com/selections/5/F34xfds.jpg",
"title": "Overview"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identifier of the image"
},
"map_object_selection_id": {
"type": "number",
"description": "Id of the selection"
},
"resource": {
"type": "string",
"description": "Storage key used for the binary file"
},
"path": {
"type": "string",
"description": "Relative path to the stored file"
},
"link": {
"type": "string",
"description": "Public URL to download the file"
},
"title": {
"type": "string",
"description": "Optional title for the image"
}
}
}
}
}Delete an imageDELETE/selection/{id}/image/{imageId}
Example URI
- id
integer(required) Example: 1Id of a specific selection
- imageId
integer(required) Example: 5Id of the selection image
200Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of deleted data (can be empty on array inserts)"
}
}
}Tenants ¶
All calls for tenant management
Tenant list ¶
Get a list of tenants
Get TenantsGET/tenant{?perPage}
Get a list of tenants.
Example URI
- perPage
integer(optional) Default: 15 Example: 25The maximum number of users to return
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"parent_id": 2,
"name": "Office B.V.",
"created_at": 1449143207,
"updated_at": 1449143207
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}Create new tenantPOST/tenant{?perPage}
Create a new tenant with the required parameters.
Example URI
- perPage
integer(optional) Default: 15 Example: 25The maximum number of users to return
Body
{
"data": {
"name": "Company B.V.",
"parent_id": 3
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the tenant"
},
"parent_id": {
"type": "number",
"description": "Id of parent tenant, empty means create a root tenant"
}
},
"required": [
"name"
]
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of stored data (can be empty on array inserts)"
}
}
}Tenants ¶
Get a specific tenants
Get TenantGET/tenant/{id}
Get a tenant.
Example URI
- id
integer(required) Example: 1Id of a specific tenant
200Headers
Content-Type: application/jsonBody
{
"data": {
"id": 1,
"parent_id": 2,
"name": "Office B.V.",
"created_at": 1449143207,
"updated_at": 1449143207
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Tenant identifier"
},
"parent_id": {
"type": "number",
"description": "Id of the parent tenant, null means this is a root tenant"
},
"name": {
"type": "string",
"description": "Name of the tenant"
},
"created_at": {
"type": "number",
"description": "Timestamp of tenant creation date"
},
"updated_at": {
"type": "number",
"description": "Timestamp of last tenant update"
}
}
}
}
}Update an existing tenantPUT/tenant/{id}
Update a tenant
Example URI
- id
integer(required) Example: 1Id of a specific tenant
Body
{
"data": {
"name": "Company B.V."
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the tenant"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Patch an existing tenantPATCH/tenant/{id}
Patch a tenant
Example URI
- id
integer(required) Example: 1Id of a specific tenant
Body
{
"data": {
"name": "Company B.V."
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the tenant"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Delete an existing tenantDELETE/tenant/{id}
Delete a tenant
Example URI
- id
integer(required) Example: 1Id of a specific tenant
200Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of deleted data (can be empty on array inserts)"
}
}
}Tenant User Relation ¶
All calls for tenant user relation management
TenantUser Relation ¶
Create new tenant user relationPOST/tenant/{tenantId}/user{?sync}
Create a new tenant relation given the required user id’s.
Example URI
- tenantId
integer(required) Example: 1Id of a tenant
- sync
bool(optional) Example: trueDetermines whether data is thrown away and attached or attached
Body
{
"data": [
"1",
"2",
"3"
]
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array with user id's"
}
},
"required": [
"data"
],
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of stored data (can be empty on array inserts)"
}
}
}Delete an existing tenant user relationDELETE/tenant/{tenantId}/user{?sync}
Example URI
- tenantId
integer(required) Example: 1Id of a tenant
- sync
bool(optional) Example: trueDetermines whether data is thrown away and attached or attached
Body
{
"data": [
"1",
"2",
"3"
]
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array with user id's"
}
},
"required": [
"data"
],
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of deleted data (can be empty on array inserts)"
}
}
}200Headers
Content-Type: application/jsonUsers ¶
All calls for user management. Responses automatically embed the roles that belong to the user.
Use the include parameter to fetch tenant, userAttributes, primaryTenant, permissions, and team.
User list ¶
Get a list of users
Get usersGET/user{?perPage}{?include}
Get a list of users.
Example URI
- perPage
integer(optional) Default: 15 Example: 25The maximum number of users to return
- include
string(optional) Example: teamComma separated list of relations to embed
Choices:
roletenantuserAttributesprimaryTenantpermissionsteam
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"primary_tenant_id": 2,
"name": "John Doe",
"email": "john@rapide.software",
"super_admin": false,
"needs_license": false,
"created_at": 1449143207,
"updated_at": 1449143207
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}Create new userPOST/user{?perPage}{?include}
Create a new user with the required parameters.
New users
New users are coupled to your current tenant.
Example URI
- perPage
integer(optional) Default: 15 Example: 25The maximum number of users to return
- include
string(optional) Example: teamComma separated list of relations to embed
Choices:
roletenantuserAttributesprimaryTenantpermissionsteam
Body
{
"data": {
"primary_tenant_id": 2,
"name": "John Doe",
"email": "john@rapide.software"
},
"auth": {
"accessor_type": "user",
"access_level": 7,
"accessor_id": 1
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"primary_tenant_id": {
"type": "number",
"description": "Id of primary tenant"
},
"name": {
"type": "string",
"description": "Name of the user"
},
"email": {
"type": "string",
"description": "Email address of the user"
}
},
"required": [
"primary_tenant_id",
"name",
"email"
]
},
"auth": {
"type": "object",
"properties": {
"accessor_type": {
"enum": [
"user",
"role",
"tenant"
],
"description": "Type of authorization"
},
"access_level": {
"type": "number",
"description": "Accesslevel bit (read,write,full)"
},
"accessor_id": {
"type": "number",
"description": "Identifier of accessor type"
}
}
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of stored data (can be empty on array inserts)"
}
}
}User ¶
Get a specific users
Get UserGET/user/{id}
Get a user.
Example URI
- id
integer(required) Example: 1Id of a specific user
200Headers
Content-Type: application/jsonBody
{
"data": {
"id": 1,
"primary_tenant_id": 2,
"name": "John Doe",
"email": "john@rapide.software",
"super_admin": false,
"needs_license": false,
"created_at": 1449143207,
"updated_at": 1449143207
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "User identifier"
},
"primary_tenant_id": {
"type": "number",
"description": "Id of primary tenant"
},
"name": {
"type": "string",
"description": "Name of the user"
},
"email": {
"type": "string",
"description": "Email address of the user"
},
"super_admin": {
"type": "boolean",
"description": "Indicates whether the user has access to every tenant"
},
"needs_license": {
"type": "boolean",
"description": "When true the user must consume a license seat before logging in"
},
"created_at": {
"type": "number",
"description": "Timestamp of user creation date"
},
"updated_at": {
"type": "number",
"description": "Timestamp of last user update"
}
}
}
}
}Update an existing userPUT/user/{id}
Update a user
Example URI
- id
integer(required) Example: 1Id of a specific user
Body
{
"data": {
"id": 1,
"primary_tenant_id": 2,
"name": "John Doe",
"email": "john@rapide.software"
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "User identifier"
},
"primary_tenant_id": {
"type": "number",
"description": "Id of primary tenant"
},
"name": {
"type": "string",
"description": "Name of the user"
},
"email": {
"type": "string",
"description": "Email address of the user"
}
},
"required": [
"id"
]
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Patch an existing userPATCH/user/{id}
Patch a user
Example URI
- id
integer(required) Example: 1Id of a specific user
Body
{
"data": {
"id": 1,
"primary_tenant_id": 2,
"name": "John Doe",
"email": "john@rapide.software"
}
}Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "User identifier"
},
"primary_tenant_id": {
"type": "number",
"description": "Id of primary tenant"
},
"name": {
"type": "string",
"description": "Name of the user"
},
"email": {
"type": "string",
"description": "Email address of the user"
}
},
"required": [
"id"
]
}
},
"$schema": "http://json-schema.org/draft-04/schema#"
}201Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of updated data (can be empty on array inserts)"
}
}
}Delete an existing userDELETE/user/{id}
Delete a user
Example URI
- id
integer(required) Example: 1Id of a specific user
200Headers
Content-Type: application/jsonBody
{
"success": true,
"id": "1"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Success true or false"
},
"id": {
"type": "string",
"description": "Id of deleted data (can be empty on array inserts)"
}
}
}Send password reset mail ¶
Trigger the forgot password flow for a user. The endpoint sends an email with a reset link.
Request reset tokenPOST/user/account/password
Example URI
Headers
Content-Type: application/jsonBody
{
"data": {
"email": "user@example.com"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "Email address of the user that should receive the reset link"
}
},
"required": [
"email"
]
}
}
}200Headers
Content-Type: application/jsonBody
{
"id": 10,
"user_id": 1,
"token": "f6dea6d4-...",
"expire_time": 1449200000
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identifier of the password reset request"
},
"user_id": {
"type": "number",
"description": "Id of the affected user"
},
"token": {
"type": "string",
"description": "Password reset token (included for debugging purposes)"
},
"expire_time": {
"type": "number",
"description": "UNIX timestamp of when the reset token expires"
}
}
}UserTenants ¶
All calls for userTenant management
User list ¶
Get a list of root tenants based on a user id
Get tenantsGET/user/{id}/tenant{?perPage}
Get a list of tenants.
Example URI
- id
integer(required) Example: 1Id of a specific user
- perPage
integer(optional) Default: 15 Example: 25The maximum number of users to return
200Headers
Content-Type: application/jsonBody
{
"data": [
{
"id": 1,
"parent_id": 2,
"name": "Office B.V.",
"created_at": 1449143207,
"updated_at": 1449143207
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 15,
"current": 1,
"total_pages": 1,
"links": []
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "array"
},
"meta": {
"type": "object",
"properties": {
"pagination": {
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total number of objects"
},
"count": {
"type": "number",
"description": "Object on this page"
},
"per_page": {
"type": "number",
"description": "Object per page"
},
"current": {
"type": "number",
"description": "Current page number"
},
"total_pages": {
"type": "number",
"description": "Total number of pages"
},
"links": {
"description": "Array of meta links"
}
}
}
}
}
}
}User ¶
Get a specific tenant based on a user
Get TenantGET/user/{user_id}/tenant/{tenant_id}
Get a tenant.
Example URI
- user_id
integer(required) Example: 1Id of a specific user
- tenant_id
integer(required) Example: 1Id of a specific tenant
200Headers
Content-Type: application/jsonBody
{
"data": {
"id": 1,
"parent_id": 2,
"name": "Office B.V.",
"created_at": 1449143207,
"updated_at": 1449143207
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Tenant identifier"
},
"parent_id": {
"type": "number",
"description": "Id of the parent tenant, null means this is a root tenant"
},
"name": {
"type": "string",
"description": "Name of the tenant"
},
"created_at": {
"type": "number",
"description": "Timestamp of tenant creation date"
},
"updated_at": {
"type": "number",
"description": "Timestamp of last tenant update"
}
}
}
}
}