Glossaries API
Each organization has one organization glossary. Terms are the editable resources; there is no collection of separately created organization glossaries.
Get the organization glossary
Section titled “Get the organization glossary”GET /api/v1/organizations/:orgId/glossaryReturns the organization glossary, creating the default record when necessary. This route requires
session authentication and glossary.view.
curl -H "Cookie: __Host-sessionId=your_session" \ https://api.comvi.io/api/v1/organizations/1/glossaryList terms
Section titled “List terms”GET /api/v1/organizations/:orgId/glossary/terms| Parameter | Type | Required | Description |
|---|---|---|---|
cursor |
string |
No | Cursor returned by the previous page |
limit |
integer |
No | Page size from 1 to 100 |
search |
string |
No | Search text, up to 255 characters |
termType |
preferred | forbidden |
No | Filter by term type |
curl -H "Authorization: Bearer comvi_your_api_key" \ "https://api.comvi.io/api/v1/organizations/1/glossary/terms?search=dashboard&limit=10"The response uses cursor pagination:
{ "terms": [], "nextCursor": null, "hasMore": false}Create a term
Section titled “Create a term”POST /api/v1/organizations/:orgId/glossary/termsterm is required. Optional fields are definition, termType, partOfSpeech, gender,
isCaseSensitive, isExactMatch, and isTranslatable.
curl -X POST \ -H "Cookie: __Host-sessionId=your_session" \ -H "Content-Type: application/json" \ -d '{"term":"dashboard","definition":"Main analytics screen","termType":"preferred"}' \ https://api.comvi.io/api/v1/organizations/1/glossary/termsReturns 201 Created with the complete term, including its translations.
Get, update, or delete a term
Section titled “Get, update, or delete a term”GET /api/v1/organizations/:orgId/glossary/terms/:termIdPATCH /api/v1/organizations/:orgId/glossary/terms/:termIdDELETE /api/v1/organizations/:orgId/glossary/terms/:termIdGET accepts a session or an eligible project API key. PATCH and DELETE require a session.
Updates accept any subset of the term fields used during creation. Deletion returns 204 No Content.
Add or edit a translation
Section titled “Add or edit a translation”POST /api/v1/organizations/:orgId/glossary/terms/:termId/translationsThe create body requires localeId and text; termType is optional.
{ "localeId": 2, "text": "панель керування", "termType": "preferred"}Update or remove an existing translation by its translation ID:
PATCH /api/v1/organizations/:orgId/glossary/terms/:termId/translations/:translationIdDELETE /api/v1/organizations/:orgId/glossary/terms/:termId/translations/:translationIdAll translation mutations require a session with glossary.edit or glossary.delete as
appropriate.
Errors
Section titled “Errors”| Status | Meaning |
|---|---|
400 |
Invalid cursor, body, locale, or term shape |
401 |
Missing or invalid credentials |
403 |
Missing glossary permission or locale access |
404 |
Organization, term, or translation not found |
409 |
Conflicting term or translation |