ChatsChat tags

Chat tags

Chats · 3 operations

GET

List chat tags

/api/chat-tag

Tags that can be put on chats (not lead tags). isRestricted=true hides its chats from roles not in roleIds; isSilent=true means new messages in its chats open no dialog. chatCount is how many of the chats the caller can open carry the tag, not all of them.

list_chat_tags

Query parameters · 5

pagenumbermin 1 · default 1
pageSizenumber1–250 · default 20
chatTagIdsnumber[]—
nameOfTagstringlength max 30
isArchivalobjectrequireddefault false

Response · 200

application/json

statusCodenumberrequiredexample 200
messagestringrequired—
dataobject4 fields
totalnumberrequired—
totalPagesnumberrequired—
currentPagenumberrequired—
chatTagsobject[]required11 fields
chatTagIdnumberrequired—
nameOfTagstringrequired—
notestringrequirednullable—
isRestrictedbooleanrequired—
isSilentbooleanrequired—
ordernumberrequired—
isArchivalbooleanrequired—
roleIdsnumber[]requiredRoles that see chats with the tag while it is restricted.
chatCountnumberrequiredChats carrying the tag; above 0 isRestricted and isSilent are locked.
updatedAtstringrequiredformat YYYY-MM-DDTHH:mm:ss
createdAtstringrequiredformat YYYY-MM-DDTHH:mm:ss
Errors400401403429500
curl "https://your-school.rist.pro/api/chat-tag?isArchival=false" \
  -H "Authorization: Bearer $RIST_API_KEY"
Response example · 200
{
  "statusCode": 200,
  "message": "Operation completed successfully",
  "data": {
    "total": 0,
    "totalPages": 0,
    "currentPage": 0,
    "chatTags": [
      {
        "chatTagId": 1,
        "nameOfTag": "string",
        "note": "string",
        "isRestricted": false,
        "isSilent": false,
        "order": 0,
        "isArchival": false,
        "roleIds": [
          1
        ],
        "chatCount": 0,
        "updatedAt": "2026-11-09T14:30:00",
        "createdAt": "2026-11-09T14:30:00"
      }
    ]
  }
}
POST

Create chat tag

/api/chat-tag

Add a chat tag (name up to 30 characters, optional note). isRestricted=true hides its chats from roles not in roleIds; without roleIds the caller's role is granted, [] grants nobody. isSilent=true: new messages in its chats open no dialog.

create_chat_tag

Request body

application/json · object

nameOfTagstringrequiredlength 1–30
notestringrequirednullablelength max 1500
isRestrictedbooleanHides the tag's chats from roles not in roleIds. Cannot change while the tag is on a chat (409).
isSilentbooleanNew messages in the tag's chats open no dialog. Cannot change while the tag is on a chat (409).
roleIdsnumber[]Roles that see chats with a restricted tag; replaces the stored list. Left out on create — the author's role; [] — nobody, the owner included.min 1

Response · 201

application/json

statusCodenumberrequiredexample 201
messagestringrequired—
dataobject11 fields
chatTagIdnumberrequired—
nameOfTagstringrequired—
notestringrequirednullable—
isRestrictedbooleanrequired—
isSilentbooleanrequired—
ordernumberrequired—
isArchivalbooleanrequired—
roleIdsnumber[]requiredRoles that see chats with the tag while it is restricted.
chatCountnumberrequiredChats carrying the tag; above 0 isRestricted and isSilent are locked.
updatedAtstringrequiredformat YYYY-MM-DDTHH:mm:ss
createdAtstringrequiredformat YYYY-MM-DDTHH:mm:ss
Errors400401403429500
curl -X POST "https://your-school.rist.pro/api/chat-tag" \
  -H "Authorization: Bearer $RIST_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "nameOfTag": "string",
    "note": "string",
    "isRestricted": false,
    "isSilent": false,
    "roleIds": [
      1
    ]
  }'
Response example · 201
{
  "statusCode": 201,
  "message": "Operation completed successfully",
  "data": {
    "chatTagId": 1,
    "nameOfTag": "string",
    "note": "string",
    "isRestricted": false,
    "isSilent": false,
    "order": 0,
    "isArchival": false,
    "roleIds": [
      1
    ],
    "chatCount": 0,
    "updatedAt": "2026-11-09T14:30:00",
    "createdAt": "2026-11-09T14:30:00"
  }
}
PUT

Update chat tag

/api/chat-tag/{id}

Change a chat tag; name is always required. roleIds, when sent, replaces the whole list of roles that see its chats. isRestricted and isSilent cannot change while chatCount > 0 (409).

update_chat_tag

Path parameters · 1

idnumberrequired—

Request body

application/json · object

nameOfTagstringrequiredlength 1–30
notestringrequirednullablelength max 1500
isRestrictedbooleanHides the tag's chats from roles not in roleIds. Cannot change while the tag is on a chat (409).
isSilentbooleanNew messages in the tag's chats open no dialog. Cannot change while the tag is on a chat (409).
roleIdsnumber[]Roles that see chats with a restricted tag; replaces the stored list. Left out on create — the author's role; [] — nobody, the owner included.min 1

Response · 200

application/json

statusCodenumberrequiredexample 200
messagestringrequired—
dataobject11 fields
chatTagIdnumberrequired—
nameOfTagstringrequired—
notestringrequirednullable—
isRestrictedbooleanrequired—
isSilentbooleanrequired—
ordernumberrequired—
isArchivalbooleanrequired—
roleIdsnumber[]requiredRoles that see chats with the tag while it is restricted.
chatCountnumberrequiredChats carrying the tag; above 0 isRestricted and isSilent are locked.
updatedAtstringrequiredformat YYYY-MM-DDTHH:mm:ss
createdAtstringrequiredformat YYYY-MM-DDTHH:mm:ss
Errors400401403429500
curl -X PUT "https://your-school.rist.pro/api/chat-tag/1" \
  -H "Authorization: Bearer $RIST_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "nameOfTag": "string",
    "note": "string",
    "isRestricted": false,
    "isSilent": false,
    "roleIds": [
      1
    ]
  }'
Response example · 200
{
  "statusCode": 200,
  "message": "Operation completed successfully",
  "data": {
    "chatTagId": 1,
    "nameOfTag": "string",
    "note": "string",
    "isRestricted": false,
    "isSilent": false,
    "order": 0,
    "isArchival": false,
    "roleIds": [
      1
    ],
    "chatCount": 0,
    "updatedAt": "2026-11-09T14:30:00",
    "createdAt": "2026-11-09T14:30:00"
  }
}