---
title: "Referencing Properties"
slug: "referencing-properties"
updated: 2024-10-25T10:45:07Z
published: 2024-10-25T10:45:07Z
canonical: "learn.servitly.com/referencing-properties"
---
> ## Documentation Index
> Fetch the complete documentation index at: https://learn.servitly.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Referencing Properties
Properties can be used in different ways, for instance:
- You can display the value in a page template
- You can include the value in a text template (e.g. Mail Body)
- You can use the property as filtering condition or sorting criteria in an API request.
## Property value storage and access
Properties values are saved in the object, directly at the first level in case of predefined properties, else into a sublevel named "properties".
```json
{
"id": "123",
"name": "Boiler",
"properties": {
"prop1" : "foo",
"prop2" : "bar"
}
}
```
Properties do not have historical values, so at any time only the last updated value can be accessed.
The access to a property is made by using the dot notation, so you can access properties belonging to the related objects (e.g. thing → location → customer).
Custom properties require including also the "*properties."* sub-path*,* this is because custom properties values are stored under the parent object sub-node named "*properties*".
For instance, this is a JSON describing a thing.
```json
{
"id": "5aeae841005da10006e6be35",
"name": "Hall",
"serialNumber": "OVENx200014",
"customer": {
"id": "5aeae80405c5940006f7befe",
"name": "Ristorante Fornaroli",
"country": "Italy",
"properties": {
"vatNumber": "1234567890"
},
"type": "BUSINESS",
"code": "C000012"
},
"location": {
"id": "5aeae8054e22a20006f61476",
"country": "Italy",
"name": "Cisliano",
"gpsPosition": "45.444669,8.990243",
"properties": {
"address": "Via Montefeltro 140, 20080 Cisliano, MI",
"city": "Cisliano"
},
"partner": {
"id": "5cf5270f2d4d4a0008f5a27c",
"name": "Oven Service"
},
"metrics": {
"performance": {
"value": 0.5256877229073239,
"lastUpdateTimestamp": 1632961832517
}
}
},
"gpsPosition": "45.47072521359533,8.889312744140627",
"properties": {
"serviceDueDate": 1633108201324,
"status": "STANDBY"
},
"activationDate": 1525344321757,
"thingDefinition": {
"id": "5c795c602074420008bcd6ef",
"name": "Oven-1200w",
"description": "Oven 1200w with fan and steam.",
"properties": {
"fooBar2": "baz"
}
},
"serviceLevel": {
"id": "5aeae7a7d554780006bc0fed",
"name": "Free",
"level": 300,
"alertingFeature": false,
"notificationsFeature": false,
"_default": true,
"features": {
"OEE": false,
"Cookings": true,
"System_Status": true,
"Energy": false
}
},
"connectionStatus": 1,
"connectionStatusLastUpdateTimestamp": 1620735199626,
"partner": {
"id": "5cf5270f2d4d4a0008f5a27c",
"name": "Oven Service"
}
}
```
## Displaying Properties
When displaying a property within the page, the system uses the Label of the property, which can be localized according to the defined translations, see the [Labels](/docs/labels) article.
Depending on the property name, the widget retrieves the value from the context object (e.g. thing, location, customer, partner).
Here are reported some details-widgets for the various objects.
### Thing Details
```xml
```
### Location Details
```xml
```
### Customer Details
```xml
```
You can use properties also into other widgets, for instance:
- [Thing List](/docs/thing-list-widget)
- [Location List](/docs/location-list-widget)
- [Customer List](/docs/customer-list-widget)
- [Partner Details](/docs/partner-details-widget)
- [Partner List](/docs/partner-list-widget)
- and more...