Send a violation notice to the tenants
Tells the lease's tenants about the violation by chat message, by email, or both, and stamps notificationSentAt on the violation. The violation must be tied to a lease.
Authorization
AuthorizationstringrequiredPath parameters
violationIdstringrequiredThe association violation to act on. A Snowflake id sent as a decimal string.
Body
application/json
chatMessagestringMessage to post into the chat thread. Leave it out to send no chat message.
emailMessagestringBody of the email to send. Leave it out to send no email.
subjectstringSubject line for the email. Falls back to Association Violation when left out or blank.
chatAttachmentSessionIdsstring[]Upload sessions whose files go on the chat message. When present it must hold at least one id.
emailAttachmentSessionIdsstring[]Upload sessions whose files go on the email. When present it must hold at least one id.
Response
200 · The violation, with `notificationSentAt` updated.
idstringThe violation. A Snowflake id sent as a decimal string.
portfolioIdstringThe portfolio the violation was raised against.
propertyIdstringThe property the violation was raised against.
unitIdstringThe unit the violation was raised against. Absent when the violation is property-wide.
leaseIdstringThe lease the violation was raised against. Absent when no lease is involved.
statusenum<string>Where the violation sits in its workflow.
hoaVendorIdstringThe vendor record for the homeowners association that issued the violation.
referencestringThe association's own reference for the violation. Generated automatically when the caller did not supply one.
violationReceivedDatestring · dateThe day the association's notice reached the property manager.
violationDatestring · dateThe day the violation itself happened.
fixByDatestring · dateThe deadline the association gave for putting it right. Absent when no deadline was given.
associationFinenumberThe fine the association charges, for example 250.00. Absent when no fine was recorded.
titlestringShort title. Written by an AI summary of the description when the caller did not supply one.
descriptionstringWhat the association says is wrong.
notificationSentAtstring · date-timeWhen a notice was last sent to the lease or the owners, in the company's timezone. Absent while no notice has been sent.
filesobject[]Files attached to the violation, such as the association's own notice.
propertyFineBillobjectThe vendor bill raised against the property for the association's fine. Absent until the fine is charged.
leaseFineBillobjectThe lease charge raised when the fine was passed on to the tenant. Absent when the fine was not passed on.
portfolioobjectThe portfolio the violation belongs to.
propertyobjectThe property the violation was raised against.
unitobjectThe unit the violation was raised against. Absent when the violation is property-wide.
leaseobjectThe lease the violation was raised against. Absent when no lease is involved.
workOrdersobject[]Work orders raised from this violation.
leaseBillsobject[]Extra lease charges added against this violation, beyond the fine itself.
ownersobject[]Owners of the property, as used when sending an owner notice.
workOrderVendorsobject[]Vendors assigned to the work orders above.
401 · The access token is missing, expired, or not valid for this company.
404 · No association violation with that id exists in the caller's company.
Sending a chat message and sending an email are two separate decisions. Supply chatMessage for the first, emailMessage for the second, or both. Supplying neither still stamps notificationSentAt.
A violation raised against a property or a unit with no lease has nobody to notify, and this call fails.
One chat message goes to the lease's shared thread, not one per tenant. If the lease has no chat thread yet, one is created.