> For the complete documentation index, see [llms.txt](https://docs.riskbase.uk/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.riskbase.uk/riskbase-docs/api/properties.md).

# Properties

## GET /properties/groups

> Get Property Groups

```json
{"openapi":"3.1.1","info":{"title":"RiskBase API","version":"0.0.1"},"tags":[{"name":"Properties","description":""}],"servers":[{"url":"https://api3.riskbase.uk"}],"security":[{"Bearer Authentication":[]}],"components":{"securitySchemes":{"Bearer Authentication":{"type":"http","scheme":"bearer","description":"`Authorization: Bearer {AuthorizationToken}`"}}},"paths":{"/properties/groups":{"get":{"tags":["Properties"],"summary":"Get Property Groups","parameters":[{"schema":{"type":"integer","minimum":1,"maximum":1000,"default":1000},"in":"query","name":"limit"},{"schema":{"type":"integer","default":1},"in":"query","name":"page"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"total":{"type":"integer"},"propertyGroups":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"UID"},"name":{"type":"string"},"reference":{"type":"string"},"customReference":{"type":"string"}}}}}}}}}}}}}}
```

## GET /properties

> Get Properties

```json
{"openapi":"3.1.1","info":{"title":"RiskBase API","version":"0.0.1"},"tags":[{"name":"Properties","description":""}],"servers":[{"url":"https://api3.riskbase.uk"}],"security":[{"Bearer Authentication":[]}],"components":{"securitySchemes":{"Bearer Authentication":{"type":"http","scheme":"bearer","description":"`Authorization: Bearer {AuthorizationToken}`"}}},"paths":{"/properties":{"get":{"tags":["Properties"],"summary":"Get Properties","parameters":[{"schema":{"type":"integer","minimum":1,"maximum":1000,"default":1000},"in":"query","name":"limit"},{"schema":{"type":"integer","default":1},"in":"query","name":"page"},{"schema":{"type":"string"},"in":"query","name":"property","description":"Comma separated property IDs"},{"schema":{"type":"string"},"in":"query","name":"customreference","description":"Comma separated property custom references"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"total":{"type":"integer"},"properties":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"reference":{"type":"string"},"customReference":{"type":"string"},"photoId":{"type":["string","null"]},"address":{"type":"object","properties":{"line1":{"type":"string"},"line2":{"type":"string"},"city":{"type":"string"},"county":{"type":"string"},"postcode":{"type":"string"}}}}}}}}}}}}}}}}
```

## Create Property

> \- Triggers the \`property\` webhook.<br>

```json
{"openapi":"3.1.1","info":{"title":"RiskBase API","version":"0.0.1"},"tags":[{"name":"Properties","description":""}],"servers":[{"url":"https://api3.riskbase.uk"}],"security":[{"Bearer Authentication":[]}],"components":{"securitySchemes":{"Bearer Authentication":{"type":"http","scheme":"bearer","description":"`Authorization: Bearer {AuthorizationToken}`"}}},"paths":{"/properties":{"post":{"tags":["Properties"],"summary":"Create Property","description":"- Triggers the `property` webhook.\n","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["name"],"properties":{"name":{"type":"string","required":true},"parent":{"type":"string","nullable":"true,","format":"UID","description":"Parent property or property group ID. If null is provided, the property will be created in a property group called \"Created by API\""},"customReference":{"type":"string"},"address":{"type":"object","properties":{"line1":{"type":"string"},"line2":{"type":"string"},"city":{"type":"string"},"county":{"type":"string"},"postcode":{"type":"string"}}},"skipWebhook":{"type":"boolean","default":false}}}}}},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"id":{"type":"string","format":"UID"}}}}}},"400":{"content":{"application/json":{"schema":{"oneOf":[{"title":"PropertyCreateNameRequired","properties":{"code":{"type":"PropertyCreateNameRequired"}}},{"title":"PropertyCreateInvalidParent","properties":{"code":{"type":"PropertyCreateInvalidParent"}}}]}}}}}}}}}
```

## GET /properties/tree

> Get Property Tree

```json
{"openapi":"3.1.1","info":{"title":"RiskBase API","version":"0.0.1"},"tags":[{"name":"Properties","description":""}],"servers":[{"url":"https://api3.riskbase.uk"}],"security":[{"Bearer Authentication":[]}],"components":{"securitySchemes":{"Bearer Authentication":{"type":"http","scheme":"bearer","description":"`Authorization: Bearer {AuthorizationToken}`"}}},"paths":{"/properties/tree":{"get":{"tags":["Properties"],"summary":"Get Property Tree","responses":{"200":{"content":{"application/json":{"schema":{"properties":{"tree":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"enum","enum":["Organisation","Property Group","Property"]},"children":{"type":"array","description":"Recurring tree","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"enum","enum":["Organisation","Property Group","Property"]},"children":{"type":"array","description":"Recurring tree","items":{"type":"object"}}}}}}}}}}}}}}}}}}
```

## Update Property

> Update a property's name and address.\
> \- Triggers the \`property\` webhook.<br>

```json
{"openapi":"3.1.1","info":{"title":"RiskBase API","version":"0.0.1"},"tags":[{"name":"Properties","description":""}],"servers":[{"url":"https://api3.riskbase.uk"}],"security":[{"Bearer Authentication":[]}],"components":{"securitySchemes":{"Bearer Authentication":{"type":"http","scheme":"bearer","description":"`Authorization: Bearer {AuthorizationToken}`"}}},"paths":{"/properties/{propertyId}":{"patch":{"tags":["Properties"],"summary":"Update Property","description":"Update a property's name and address.\n- Triggers the `property` webhook.\n","parameters":[{"schema":{"type":"string","format":"UID"},"in":"path","name":"propertyId","required":true}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"customReference":{"type":"string"},"address":{"type":"object","properties":{"line1":{"type":"string"},"line2":{"type":"string"},"city":{"type":"string"},"county":{"type":"string"},"postcode":{"type":"string"}}},"skipWebhook":{"type":"boolean","default":false}}}}}},"responses":{"204":{"content":"application/json"},"400":{"content":{"application/json":{"schema":{"oneOf":[{"title":"PropertyNotFound","properties":{"code":{"type":"PropertyNotFound"}}}]}}}}}}}}}
```

## Move Property

> Move a property to a different position in the property tree; either below a property group or another property.\
> \- Triggers the \`property\` webhook.<br>

```json
{"openapi":"3.1.1","info":{"title":"RiskBase API","version":"0.0.1"},"tags":[{"name":"Properties","description":""}],"servers":[{"url":"https://api3.riskbase.uk"}],"security":[{"Bearer Authentication":[]}],"components":{"securitySchemes":{"Bearer Authentication":{"type":"http","scheme":"bearer","description":"`Authorization: Bearer {AuthorizationToken}`"}}},"paths":{"/properties/{propertyId}/parent":{"patch":{"tags":["Properties"],"summary":"Move Property","description":"Move a property to a different position in the property tree; either below a property group or another property.\n- Triggers the `property` webhook.\n","parameters":[{"schema":{"type":"string","format":"UID"},"in":"path","name":"propertyId","required":true}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["parent"],"properties":{"parent":{"type":"string","format":"UID","description":"Parent property or property group ID"},"skipWebhook":{"type":"boolean","default":false}}}}}},"responses":{"204":{"content":"application/json"},"400":{"content":{"application/json":{"schema":{"oneOf":[{"title":"PropertyNotFound","properties":{"code":{"type":"PropertyNotFound"}}},{"title":"PropertyParentNotFound","properties":{"code":{"type":"PropertyParentNotFound"}}},{"title":"PropertyMoveParentIsChild","properties":{"code":{"type":"PropertyMoveParentIsChild"},"error":{"type":"Parent property is currently a child of the property being moved"}}},{"title":"PropertyMoveInvalidParentPropertyGroup","properties":{"code":{"type":"PropertyMoveInvalidParentPropertyGroup"},"error":{"type":"Property groups can only exist under an organisation or another property group"}}},{"title":"PropertyMoveInvalidParentProperty","properties":{"code":{"type":"PropertyMoveInvalidParentProperty"},"error":{"type":"Property can only exist under a property group or another property"}}}]}}}}}}}}}
```

## Get Property Team Users

> Get a list of users responsible for teams for all properties in your organisation.\
> \- Responsible users are auto-assigned to tasks that are assigned to their team.\
> \- Users are automatically given access to properties they are responsible for.<br>

```json
{"openapi":"3.1.1","info":{"title":"RiskBase API","version":"0.0.1"},"tags":[{"name":"Properties","description":""}],"servers":[{"url":"https://api3.riskbase.uk"}],"security":[{"Bearer Authentication":[]}],"components":{"securitySchemes":{"Bearer Authentication":{"type":"http","scheme":"bearer","description":"`Authorization: Bearer {AuthorizationToken}`"}}},"paths":{"/properties/teamusers":{"get":{"tags":["Properties"],"summary":"Get Property Team Users","description":"Get a list of users responsible for teams for all properties in your organisation.\n- Responsible users are auto-assigned to tasks that are assigned to their team.\n- Users are automatically given access to properties they are responsible for.\n","parameters":[{"schema":{"type":"string","format":"UID"},"in":"query","name":"property","description":"Comma separated property IDs"},{"schema":{"type":"string","format":"UID"},"in":"query","name":"user","description":"Comma separated user IDs"},{"schema":{"type":"boolean","default":false},"in":"query","name":"includeinherited","description":"Responsibility is inherited down the property tree. By default this endpoint will list responsbility which has been set explicitly. Set this to true to include inherited responsibility."}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"properties":{"type":"object","properties":{"propertyId":{"type":"object","properties":{"teamId":{"type":"array","items":{"type":"string","format":"UID"}}}}}}}}}}}}}}}}
```

## Add Property Team Users

> Set which users are responsible for teams at this property.\
> \- Users are added as members of the team if they aren't already. Triggers the team webhook if users are added to the team.\
> \- Invalid user IDs are silently ignored.<br>

```json
{"openapi":"3.1.1","info":{"title":"RiskBase API","version":"0.0.1"},"tags":[{"name":"Properties","description":""}],"servers":[{"url":"https://api3.riskbase.uk"}],"security":[{"Bearer Authentication":[]}],"components":{"securitySchemes":{"Bearer Authentication":{"type":"http","scheme":"bearer","description":"`Authorization: Bearer {AuthorizationToken}`"}}},"paths":{"/properties/{propertyId}/teamusers/add":{"patch":{"tags":["Properties"],"summary":"Add Property Team Users","description":"Set which users are responsible for teams at this property.\n- Users are added as members of the team if they aren't already. Triggers the team webhook if users are added to the team.\n- Invalid user IDs are silently ignored.\n","parameters":[{"schema":{"type":"string","format":"UID"},"in":"path","name":"propertyId","required":true}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["team","users"],"properties":{"team":{"type":"string","format":"UID"},"users":{"type":"array","items":{"type":"string","format":"UID"}},"skipWebhook":{"type":"boolean","default":false}}}}}},"responses":{"204":{"content":"application/json"},"400":{"content":{"application/json":{"schema":{"oneOf":[{"title":"PropertyNotFound","properties":{"code":{"type":"PropertyNotFound"}}},{"title":"TeamNotFound","properties":{"code":{"type":"TeamNotFound"}}}]}}}}}}}}}
```

## Remove Property Team Users

> Remove users as responsible for teams at this property.\
> \- Users are unassigned from any tasks they were auto-assigned to.\
> \- Invalid user IDs are silently ignored.\
> \- Users are not removed as members of the team.<br>

```json
{"openapi":"3.1.1","info":{"title":"RiskBase API","version":"0.0.1"},"tags":[{"name":"Properties","description":""}],"servers":[{"url":"https://api3.riskbase.uk"}],"security":[{"Bearer Authentication":[]}],"components":{"securitySchemes":{"Bearer Authentication":{"type":"http","scheme":"bearer","description":"`Authorization: Bearer {AuthorizationToken}`"}}},"paths":{"/properties/{propertyId}/teamusers/remove":{"patch":{"tags":["Properties"],"summary":"Remove Property Team Users","description":"Remove users as responsible for teams at this property.\n- Users are unassigned from any tasks they were auto-assigned to.\n- Invalid user IDs are silently ignored.\n- Users are not removed as members of the team.\n","parameters":[{"schema":{"type":"string","format":"UID"},"in":"path","name":"propertyId","required":true}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["team","users"],"properties":{"team":{"type":"string","format":"UID"},"users":{"type":"array","items":{"type":"string","format":"UID"}}}}}}},"responses":{"204":{"content":"application/json"},"400":{"content":{"application/json":{"schema":{"oneOf":[{"title":"PropertyNotFound","properties":{"code":{"type":"PropertyNotFound"}}},{"title":"TeamNotFound","properties":{"code":{"type":"TeamNotFound"}}}]}}}}}}}}}
```
