Site Created Payload
Payload emitted when a new site is created. Carries the whole sites row — producers emit a full snapshot on every event, never a delta (RFC-030 §10), so consumers may converge onto payload contents. Nullable fields are emitted as null; keys are never dropped.
| $id | https://schemas.texecom-prod.com/v2/events/payload/service/device/site/created/v1.0.0.json |
| $schema | http://json-schema.org/draft-07/schema |
Properties
name
| Description |
Display name of the site. |
| Type | String |
| Required |
Yes |
countryCode
| Description |
ISO 3166-1 alpha-2 country code of the site. |
| Type | String |
| Required |
Yes |
siteType
| Description |
Category of the site. |
| Type | String |
| Required |
Yes |
| Enum |
|
address
| Description |
Street address of the site. |
| Type | String |
| Required |
Yes |
city
| Description |
City the site is located in. |
| Type | String |
| Required |
Yes |
postalCode
| Description |
Postal code of the site. |
| Type | String |
| Required |
Yes |
county
| Description |
County the site is located in, or null if not supplied. |
| Type | [string, null] |
| Required |
Yes |
clientName
| Description |
Name of the end client the site belongs to, or null if not supplied. |
| Type | [string, null] |
| Required |
Yes |
commissionedOn
| Description |
UTC timestamp when the site was handed over to the customer, in ISO 8601 format. Always null on creation — a site can only be commissioned by a later update. Present regardless, so created and updated payloads carry the same keys. |
| Type | [string, null] |
| Required |
Yes |
| Format |
date-time |
createdBy
| Description |
Identifier of the user who created the site, or null if not attributed. |
| Type | [string, null] |
| Required |
Yes |
version
| Description |
Monotonically incrementing row version, used by projections for last-write-wins ordering. |
| Type | Number |
| Required |
Yes |
occurredAt
| Description |
UTC timestamp when the site was created, in ISO 8601 format. |
| Type | String |
| Required |
Yes |
| Format |
date-time |
Schema
{
"$id": "https://schemas.texecom-prod.com/v2/events/payload/service/device/site/created/v1.0.0.json",
"$schema": "http://json-schema.org/draft-07/schema",
"title": "Site Created Payload",
"description": "Payload emitted when a new site is created. Carries the whole sites row — producers emit a full snapshot on every event, never a delta (RFC-030 §10), so consumers may converge onto payload contents. Nullable fields are emitted as null; keys are never dropped.",
"type": "object",
"properties": {
"name": {
"description": "Display name of the site.",
"type": "string"
},
"countryCode": {
"description": "ISO 3166-1 alpha-2 country code of the site.",
"type": "string"
},
"siteType": {
"description": "Category of the site.",
"type": "string",
"enum": [
"Residential",
"Commercial"
]
},
"address": {
"description": "Street address of the site.",
"type": "string"
},
"city": {
"description": "City the site is located in.",
"type": "string"
},
"postalCode": {
"description": "Postal code of the site.",
"type": "string"
},
"county": {
"description": "County the site is located in, or null if not supplied.",
"type": [
"string",
"null"
]
},
"clientName": {
"description": "Name of the end client the site belongs to, or null if not supplied.",
"type": [
"string",
"null"
]
},
"commissionedOn": {
"description": "UTC timestamp when the site was handed over to the customer, in ISO 8601 format. Always null on creation — a site can only be commissioned by a later update. Present regardless, so created and updated payloads carry the same keys.",
"type": [
"string",
"null"
],
"format": "date-time"
},
"createdBy": {
"description": "Identifier of the user who created the site, or null if not attributed.",
"type": [
"string",
"null"
]
},
"version": {
"description": "Monotonically incrementing row version, used by projections for last-write-wins ordering.",
"type": "number"
},
"occurredAt": {
"description": "UTC timestamp when the site was created, in ISO 8601 format.",
"type": "string",
"format": "date-time"
}
},
"required": [
"name",
"countryCode",
"siteType",
"address",
"city",
"postalCode",
"county",
"clientName",
"commissionedOn",
"createdBy",
"version",
"occurredAt"
],
"additionalProperties": false
}