Group member
Membership is what gives a team visibility over the tickets assigned to its group, and the role decides how far it reaches:
ADMIN
manages the group's membership
MEMBER
belongs to the group and sees its tickets
OBSERVER
sees the group's tickets without belonging to it
Returns who belongs to a group and in which role.
Filterable — groupId, contactId, role.
Sortable — groupId, contactId.
Searchable — nothing yet.
Token issued by the central equipme authentication, sent as Bearer <token>.
Group id
5JSON filter expression
Free-text term — no effect here
Comma-separated field:direction terms
Selection of fields and relations
contactId,roleNumber of entries to skip
0Page size, 1 to 100
100OK
Bad Request
Unauthorized
Forbidden
Not Found
Internal Server Error
GET /api/v1/groups/{groupId}/members HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"count": 1,
"data": [
{
"contact": {
"assignmentContext": "text",
"autoAssign": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"description": "text",
"email": "ada.lovelace@example.com",
"firstName": "Ada",
"id": 17,
"kind": "",
"lastName": "Lovelace",
"mobile": "text",
"phone": "text",
"tenant": {
"id": 1,
"name": "text"
},
"tenantId": 1,
"title": "text",
"updatedAt": "2026-01-01T00:00:00.000Z"
},
"contactId": 1,
"group": {
"assignmentContext": "text",
"autoAssign": true,
"contactId": 1,
"description": "text",
"email": "text",
"id": 1,
"members": [
{
"contact": {
"assignmentContext": "text",
"autoAssign": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"description": "text",
"email": "ada.lovelace@example.com",
"firstName": "Ada",
"id": 17,
"kind": "",
"lastName": "Lovelace",
"mobile": "text",
"phone": "text",
"tenant": {
"id": 1,
"name": "text"
},
"tenantId": 1,
"title": "text",
"updatedAt": "2026-01-01T00:00:00.000Z"
},
"contactId": 1,
"group": "[Circular Reference]",
"groupId": 1,
"role": ""
}
],
"name": "text",
"phone": "text",
"tenant": {
"id": 1,
"name": "text"
},
"tenantId": 1
},
"groupId": 1,
"role": ""
}
]
}Adds members to a group. Each entry needs a contactId and a role of ADMIN, MEMBER or OBSERVER, and every contact has to belong to the same tenant as the group.
A contact that is already a member is left as it is — the request succeeds without changing that member's role. Use the PATCH endpoint to change a role.
Token issued by the central equipme authentication, sent as Bearer <token>.
Group id
5OK
Bad Request
Unauthorized
Forbidden
Not Found
Internal Server Error
POST /api/v1/groups/{groupId}/members HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 2
{}{
"data": [
{
"contact": {
"assignmentContext": "text",
"autoAssign": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"description": "text",
"email": "ada.lovelace@example.com",
"firstName": "Ada",
"id": 17,
"kind": "",
"lastName": "Lovelace",
"mobile": "text",
"phone": "text",
"tenant": {
"id": 1,
"name": "text"
},
"tenantId": 1,
"title": "text",
"updatedAt": "2026-01-01T00:00:00.000Z"
},
"contactId": 1,
"group": {
"assignmentContext": "text",
"autoAssign": true,
"contactId": 1,
"description": "text",
"email": "text",
"id": 1,
"members": [
{
"contact": {
"assignmentContext": "text",
"autoAssign": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"description": "text",
"email": "ada.lovelace@example.com",
"firstName": "Ada",
"id": 17,
"kind": "",
"lastName": "Lovelace",
"mobile": "text",
"phone": "text",
"tenant": {
"id": 1,
"name": "text"
},
"tenantId": 1,
"title": "text",
"updatedAt": "2026-01-01T00:00:00.000Z"
},
"contactId": 1,
"group": "[Circular Reference]",
"groupId": 1,
"role": ""
}
],
"name": "text",
"phone": "text",
"tenant": {
"id": 1,
"name": "text"
},
"tenantId": 1
},
"groupId": 1,
"role": ""
}
]
}Removes members from a group. Contacts that do not belong to it are ignored, so the request is idempotent, and it answers with 204 and no body.
Removing a member takes away the visibility that membership granted; the tickets themselves are untouched.
Token issued by the central equipme authentication, sent as Bearer <token>.
Group id
5No Content
No content
Bad Request
Unauthorized
Forbidden
Not Found
Internal Server Error
DELETE /api/v1/groups/{groupId}/members HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 2
{}No content
Changes the role of members that already belong to the group. Only a group ADMIN — or someone with the explicit permission — may do this.
Token issued by the central equipme authentication, sent as Bearer <token>.
Group id
5OK
Bad Request
Unauthorized
Forbidden
Not Found
Internal Server Error
PATCH /api/v1/groups/{groupId}/members HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 2
{}{
"data": [
{
"contact": {
"assignmentContext": "text",
"autoAssign": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"description": "text",
"email": "ada.lovelace@example.com",
"firstName": "Ada",
"id": 17,
"kind": "",
"lastName": "Lovelace",
"mobile": "text",
"phone": "text",
"tenant": {
"id": 1,
"name": "text"
},
"tenantId": 1,
"title": "text",
"updatedAt": "2026-01-01T00:00:00.000Z"
},
"contactId": 1,
"group": {
"assignmentContext": "text",
"autoAssign": true,
"contactId": 1,
"description": "text",
"email": "text",
"id": 1,
"members": [
{
"contact": {
"assignmentContext": "text",
"autoAssign": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"description": "text",
"email": "ada.lovelace@example.com",
"firstName": "Ada",
"id": 17,
"kind": "",
"lastName": "Lovelace",
"mobile": "text",
"phone": "text",
"tenant": {
"id": 1,
"name": "text"
},
"tenantId": 1,
"title": "text",
"updatedAt": "2026-01-01T00:00:00.000Z"
},
"contactId": 1,
"group": "[Circular Reference]",
"groupId": 1,
"role": ""
}
],
"name": "text",
"phone": "text",
"tenant": {
"id": 1,
"name": "text"
},
"tenantId": 1
},
"groupId": 1,
"role": ""
}
]
}Last updated
Was this helpful?