entity | string • nullable | Server-set | Set by the server. Read-only on writes. |
owner | ContentOwner | Required | Type of the entity this annotation hangs off. See ContentOwner — usually Item; Annotation for replies on a thread. |
ownerId | string | Required | Id of the owning entity. |
annotator | AnnotatorType | Optional | Source of the annotation. See AnnotatorType. Common values: User (in-app comment), Email (inbound ticket email), System (automation rule). |
annotatorId | string | Required | Identifier for the annotator. User id when annotator=User; sender email address when annotator=Email; rule id when annotator=System. |
restrictedTo | array<string> | Optional | Optional ACL — list of user-group ids allowed to read this annotation. Empty array means inherits the owning entity’s read permissions. |
contentType | string | Optional | Format of content. The set of accepted values is tenant-configurable — fetch via GET /api/annotation/list-supported. Common: Text, Markdown, Html. |
content | string | Optional | The annotation body itself. Plain text, markdown, or HTML depending on contentType. |
meta | array<{ key: string, value: string }> | Optional | Free-form key/value metadata. The ticketing pipeline uses this for ekso_mailbox_id / ekso_ticketing_id cross-references on inbound emails. |
tenantId | string | Server-set | Set by the server. Read-only on writes. |
id | string | Server-set | Set by the server. Read-only on writes. |
created | string (date-time) | Server-set | Set by the server. Read-only on writes. |
createdBy | string | Server-set | Set by the server. Read-only on writes. |
updated | string (date-time) | Server-set | Set by the server. Read-only on writes. |
updatedBy | string | Server-set | Set by the server. Read-only on writes. |
deleted | boolean | Server-set | Set by the server. Read-only on writes. |