Terms
A term is one designation of a concept in one language. The terms of one concept form a term entry, which carries what all of them share: definitions, topics, tags and term entry fields.
https://api.lexeri.comAuthenticationBearer tokenFormatJSONEndpoints of this resource
GET/terms
List and search terms
Lists the published terms of the termbase, 500 per page by default. Filters combine with AND.
search finds terms whose value contains the query or is similar to it, best matches first. Without
search, terms are sorted by value.
The list carries a short form of each term; fields adds more, GET /terms/{identifier} returns all of it.
Query parameters
searchstring- Text the term's value contains or is similar to. Case-insensitive.
locale_codestring- Only terms in this language. Repeat as
locale_code[]for several. Includes the terms of the language's fallback language (seehide_fallback_locale) and terms marked as not to be translated (dnt). hide_fallback_localeboolean- With
locale_code, leave out the terms of the fallback language. statestring- Only terms with this usage state. Repeat as
state[]for several. term_typestring | null- Only terms of this type.Allowed values:
fullForm,abbreviation,acronym,short,variant,colloquial,combination tagstring- Only terms whose term entry carries this tag. Repeat as
tag[]for several; an entry must carry all of them. topicstring · uuid- Only terms whose term entry belongs to this topic (identifier). Subtopics are not included.
term_entry_identifierstring- Only terms of the term entry with this ID of your own (
term_entry.term_entry_identifier), not itsidentifier. initial_characterstring- Only terms whose value begins with this text.
missing_locale_codestring- Only terms whose term entry has no term in this language yet — what still needs translating.
missing_term_entry_fieldsstring- Only terms whose term entry lacks these, comma-separated:
topic,images,definition. A missing definition is looked for inmissing_field_locale_code. missing_field_locale_codestring- The language of the definition
missing_term_entry_fields=definitionlooks for. last_updated_afterstring · date- Only terms changed on or after this day, a change of the term entry included.
term_entry_statestring- With
include_drafts, only terms of term entries in this state.Allowed values:published,draft,suggested,rejected include_draftsboolean- Also return terms that are not published yet (term requests, imports, extractions, tasks).
term_entry_field_{identifier}string- Only terms whose term entry has this value in the custom field
{identifier}, e.g.term_entry_field_f1e2d3c4=Fenster. Works for picklist, number and boolean fields. For date fields useterm_entry_field_{identifier}_startand_end. term_field_{identifier}string- Like
term_entry_field_{identifier}, for the custom fields of terms. sortingstring- Sort by last change (
last_updated) or last comment (last_commented) instead of value. fieldsstring- Adds to each term, comma-separated or as
fields[]:locale_code,locale,preferred_term,term_entry,term_entry_identifier,publishing_info. pageintegerDefault:1- Page to return, from 1.
per_pageintegerDefault:500- Terms per page, at most 500.
Responses
- 200 OKOne page of terms.
- 401 UnauthorizedThe token is missing, invalid, expired or revoked, its user has no access to the termbase any more, or it lacks the required scope.
Response headers
x-pageinteger- The page returned.
x-per-pageinteger- Terms per page.
x-totalinteger- Terms on all pages.
x-total-pagesinteger- Number of pages.
Fields of each item (14)
identifierstring · uuidrequiredvaluestringrequired- The term.
value_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
statestringrequiredpreferred,admitted,deprecated,not_recommendedor the identifier of a custom state of the termbase.usagestring | null- How to use the term — or why not to.
created_atstring · date-timerequiredpublishedboolean- Only with
fields=publishing_info. Whether the term itself is published. has_unpublished_changesboolean- Only with
fields=publishing_info. Whether a task, import or term request holds a change of it. term_entry_publishedboolean- Only with
fields=publishing_info. Whether its term entry is published. locale_codestring- Only with
fields=locale_code, or always whenlocale_codehas a fallback language. localeobject4 fields
codestringrequired- The locale code.
namestring | nullrequired- Name of the language, in
translation_locale_codeif given. plural_formsstring | null- The grammatical numbers the language distinguishes, comma-separated (
one,other). An empty string means the language has no grammatical number,nullthat it is unknown. tagsstring[]
preferred_termobject | []- Only with
fields=preferred_term. The term to use instead, in the same language; an empty array when there is none. 9 fields
identifierstring · uuidrequiredvaluestringrequired- The term.
value_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
statestringrequiredpreferred,admitted,deprecated,not_recommendedor the identifier of a custom state of the termbase.usagestring | null- How to use the term — or why not to.
created_atstring · date-timerequiredpublishedboolean- Only with
fields=publishing_info. Whether the term itself is published. has_unpublished_changesboolean- Only with
fields=publishing_info. Whether a task, import or term request holds a change of it. term_entry_publishedboolean- Only with
fields=publishing_info. Whether its term entry is published.
term_entry_identifierstring · uuid- Only with
fields=term_entry_identifier. Theidentifierof its term entry. term_entryobject8 fields
identifierstring · uuidrequiredterm_entry_identifierstring | null- An ID of your own for the term entry.
statestringrequiredpublishedin the termbase,draftbeing worked on in an import or a task,suggestedproposed in a term request or term extraction,rejectedturned down there.titlestring | null- The entry's leading term, in
locale_codeif given. title_locale_codestring | nulltitle_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
fieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}). topicsobject[]required5 fields
identifierstring · uuidrequiredtitles{ [key]: string }required- Title by locale code.
titlestring | nullrequired- The title in
translation_locale_code, else in the first language that has one. is_root_topicbooleanrequired- Whether the topic is at the top level.
has_childrenbooleanrequired- Whether topics are nested below it.
curl -G https://api.lexeri.com/terms \ -H "Authorization: Bearer $LEXERI_API_TOKEN" \ --data-urlencode "search=luftdicht" \ --data-urlencode "locale_code=de" \ --data-urlencode "fields=locale_code,preferred_term,term_entry_identifier"[ { "identifier": "7d510628-4df7-4429-89c7-51f8d23e0224", "value": "Luftdichte", "value_formatting": [], "usage": "Bezeichnet die Dichte der Luft, nicht die Eigenschaft der Gebäudehülle.", "state": "not_recommended", "created_at": "2026-10-11T20:19:08.847Z", "locale_code": "de", "preferred_term": { "identifier": "284fdf93-6cb5-4bed-b2d3-d3d530e97511", "value": "Luftdichtheit", "value_formatting": [], "usage": "Fachbegriff nach DIN 4108-7.", "state": "preferred", "created_at": "2026-10-11T20:19:08.837Z" }, "term_entry_identifier": "cf46f6cc-d6b9-4d2a-b9fc-deaf8f9177a4" }, { "identifier": "284fdf93-6cb5-4bed-b2d3-d3d530e97511", "value": "Luftdichtheit", "value_formatting": [], "usage": "Fachbegriff nach DIN 4108-7.", "state": "preferred", "created_at": "2026-10-11T20:19:08.837Z", "locale_code": "de", "preferred_term": [], "term_entry_identifier": "cf46f6cc-d6b9-4d2a-b9fc-deaf8f9177a4" }]POST/terms
Create a term
Required scope:edit_terms
Creates a term. Without term_entry_id it starts a new term entry, which subject, tags, topics and
term_entry_fields describe; with term_entry_id it joins that existing entry (a synonym or a translation)
and those four are ignored.
The term is published at once. Nothing is created if the request is answered with an error.
Send a state: without one the term is stored with the placeholder active, which is no usage state.
Body parameters · JSON
valuestringrequired- The term.
term_entry_idstring · uuid- The
identifierof the term entry to add the term to. Without it, a new term entry is created. subjectstring- Subject area of the new term entry.
tagsstring[]- Tags of the new term entry.
topicsstring[] · uuid- Identifiers of the topics of the new term entry.
term_entry_fieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}). locale_codestringrequired- Language of the term.
statestringpreferred,admitted,deprecated,not_recommendedor the identifier of a custom state of the termbase.term_typestring | nullfullFormfull form,abbreviationabbreviation,acronymacronym,shortshort form,variantvariant,colloquialcolloquial term,combinationterm combination.part_of_speechstring | null- Allowed values:
noun,proper_noun,verb,adj,adv grammatical_genderstring | null- Allowed values:
masculine,feminine,neuter,other grammatical_numberstring | null- The plural category (Unicode CLDR) the term is in, e.g.
onesingular,otherplural in German and English.Allowed values:zero,one,two,few,many,other usagestring- How to use the term — or why not to.
sourcestring- Where the term comes from, as free text.
contextstring- A sentence the term was found in.
ignore_caseboolean- Find the term regardless of upper and lower case in term checks.
value_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
fieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}).
Responses
- 200 OKThe new term.
- 401 UnauthorizedThe token is missing, invalid, expired or revoked, its user has no access to the termbase any more, or it lacks the required scope.
- 404 Not FoundNot found in the token's termbase.
- 422 Unprocessable EntityA parameter has an invalid value, e.g. a required custom field is empty or
valueis blank.
Fields of the response (28)
identifierstring · uuidrequired- The term's identifier for the current version; an identifier of its own for each earlier one.
valuestringrequired- The term.
value_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
locale_codestringrequiredlocaleobject4 fields
codestringrequired- The locale code.
namestring | nullrequired- Name of the language, in
translation_locale_codeif given. plural_formsstring | null- The grammatical numbers the language distinguishes, comma-separated (
one,other). An empty string means the language has no grammatical number,nullthat it is unknown. tagsstring[]
statestringrequiredpreferred,admitted,deprecated,not_recommendedor the identifier of a custom state of the termbase.term_typestring | nullfullFormfull form,abbreviationabbreviation,acronymacronym,shortshort form,variantvariant,colloquialcolloquial term,combinationterm combination.part_of_speechstring | null- Allowed values:
noun,proper_noun,verb,adj,adv grammatical_genderstring | null- Allowed values:
masculine,feminine,neuter,other grammatical_numberstring | null- The plural category (Unicode CLDR) the term is in, e.g.
onesingular,otherplural in German and English.Allowed values:zero,one,two,few,many,other usagestring | null- How to use the term — or why not to.
sourcestring | null- Where the term comes from, as free text. Structured sources are in
sources. subjectstring | null- Subject area of the term entry.
contextstring | null- A sentence the term was found in.
fieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}). ignore_caseboolean | null- Whether the term check finds the term regardless of upper and lower case.
variantsstring[]- Spelling variants the term check finds as well.
deletedbooleanrequired- True for earlier versions and deleted terms.
changelogobject[]required- What changed compared to the version before.
4 fields
identifierstringrequired- The attribute, or the identifier of a custom field.
namestring- Name of the custom field.
old_valueany- The value before, of any type; null when there was none.
new_valueany- The value after, of any type; null when it was removed.
comments_countinteger | nullcreatorobjectrequired6 fields
identifierstring · uuidrequirednamestringrequiredfirst_namestring | nulllast_namestring | nullemailstring | nullimage_urlstring | null- URL of the user's avatar.
term_entryobjectrequired14 fields
identifierstring · uuidrequiredterm_entry_identifierstring | null- An ID of your own for the term entry.
statestringrequiredpublishedin the termbase,draftbeing worked on in an import or a task,suggestedproposed in a term request or term extraction,rejectedturned down there.titlestring | null- The entry's leading term, in
locale_codeif given. title_locale_codestring | nulltitle_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
fieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}). topicsobject[]required5 fields
identifierstring · uuidrequiredtitles{ [key]: string }required- Title by locale code.
titlestring | nullrequired- The title in
translation_locale_code, else in the first language that has one. is_root_topicbooleanrequired- Whether the topic is at the top level.
has_childrenbooleanrequired- Whether topics are nested below it.
tagsstring[]requiredlocale_fieldsobject- Values of the per-language custom fields, by locale code.
definitionsobject[]required- At most one definition per language.
5 fields
identifierstring · uuidrequiredtextstringrequiredsourcestring | nullsourcesobject[]6 fields
identifierstringrequiredtypestringrequired- Allowed values:
text,link,reference_document textstring | nulllinkstring | nullmetadataobject | null- E.g. the
pageof a reference document. reference_documentobject | null- The reference document cited.
localeobject4 fields
codestringrequired- The locale code.
namestring | nullrequired- Name of the language, in
translation_locale_codeif given. plural_formsstring | null- The grammatical numbers the language distinguishes, comma-separated (
one,other). An empty string means the language has no grammatical number,nullthat it is unknown. tagsstring[]
preferred_termsobject[]required- The preferred terms of the entry, in all languages.
13 fields
identifierstring · uuidrequiredvaluestringrequiredvalue_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
locale_codestringrequiredstatestringrequiredpreferred,admitted,deprecated,not_recommendedor the identifier of a custom state of the termbase.term_typestring | nullfullFormfull form,abbreviationabbreviation,acronymacronym,shortshort form,variantvariant,colloquialcolloquial term,combinationterm combination.part_of_speechstring | null- Allowed values:
noun,proper_noun,verb,adj,adv grammatical_genderstring | null- Allowed values:
masculine,feminine,neuter,other grammatical_numberstring | null- The plural category (Unicode CLDR) the term is in, e.g.
onesingular,otherplural in German and English.Allowed values:zero,one,two,few,many,other usagestring | nullsourcestring | nullfieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}). ignore_caseboolean | null- Whether the term check finds the term regardless of upper and lower case.
number_of_treesinteger- Number of concept hierarchies the entry belongs to.
has_unpublished_term_changesboolean- Whether a task, import or term request holds changes of its terms.
number_of_usage_examplesintegernumber_of_versionsintegersourcesobject[]required6 fields
identifierstringrequiredtypestringrequired- Allowed values:
text,link,reference_document textstring | nulllinkstring | nullmetadataobject | null- E.g. the
pageof a reference document. reference_documentobject | null- The reference document cited.
created_atstring · date-timerequiredupdated_atstring · date-timerequiredtermbaseobject- Only in
GET /terms/{identifier}. 6 fields
identifierstring · uuidrequirednamestringrequireddescriptionstring | nullsource_locale_codestring | nullcreated_atstring · date-timeupdated_atstring · date-time
curl -X POST https://api.lexeri.com/terms \ -H "Authorization: Bearer $LEXERI_API_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "value": "Blower-Door-Test", "locale_code": "de", "state": "preferred", "term_type": "fullForm", "part_of_speech": "noun", "grammatical_gender": "masculine", "grammatical_number": "one", "usage": "Messverfahren für die Luftdichtheit nach DIN EN ISO 9972.", "fields": { "a9b8c7d6": "Bindestriche beibehalten." }, "topics": ["23f9c4bd-9bb4-47f0-9950-33551a70ec70"], "term_entry_fields": { "f1e2d3c4": "Fenster" } }'{ "identifier": "4a1c2e3f-5b6d-4e7f-8a9b-0c1d2e3f4a5b", "value": "Blower-Door-Test", "value_formatting": [], "locale_code": "de", "state": "preferred", "term_type": "fullForm", "part_of_speech": "noun", "grammatical_gender": "masculine", "grammatical_number": "one", "usage": "Messverfahren für die Luftdichtheit nach DIN EN ISO 9972.", "source": null, "subject": null, "context": null, "fields": { "a9b8c7d6": "Bindestriche beibehalten." }, "ignore_case": false, "variants": [], "deleted": false, "changelog": [], "comments_count": null, "creator": { "identifier": "ecb20516-ae20-44bf-8c91-0503fa7bd59a", "email": "anna.berger@example.com", "first_name": "Anna", "last_name": "Berger", "name": "Anna Berger", "image_url": "https://www.gravatar.com/avatar/00000000000000000000000000000000?d=identicon&s=300" }, "locale": { "code": "de", "name": "Deutsch", "plural_forms": "one,other", "tags": [] }, "term_entry": { "identifier": "6178d9f8-8ab5-409c-9c48-4c847041d313", "term_entry_identifier": "BP-0043", "state": "published", "title": "Blower-Door-Test", "title_locale_code": "de", "title_formatting": [], "fields": { "f1e2d3c4": "Fenster" }, "locale_fields": {}, "tags": [], "topics": [ { "identifier": "23f9c4bd-9bb4-47f0-9950-33551a70ec70", "titles": { "de": "Gebäudehülle", "en": "Building envelope" }, "title": "Gebäudehülle", "is_root_topic": true, "has_children": false } ], "definitions": [], "preferred_terms": [ { "identifier": "4a1c2e3f-5b6d-4e7f-8a9b-0c1d2e3f4a5b", "state": "preferred", "locale_code": "de", "value": "Blower-Door-Test", "value_formatting": [], "grammatical_number": "one", "grammatical_gender": "masculine", "part_of_speech": "noun", "term_type": "fullForm", "usage": "Messverfahren für die Luftdichtheit nach DIN EN ISO 9972.", "source": null, "fields": { "a9b8c7d6": "Bindestriche beibehalten." }, "ignore_case": false } ], "number_of_trees": 0, "has_unpublished_term_changes": false }, "number_of_usage_examples": 0, "number_of_versions": 1, "sources": [], "created_at": "2026-10-11T20:19:09.441Z", "updated_at": "2026-10-11T20:19:09.441Z"}GET/terms/:identifier
Get a term
Returns a term with its term entry, the entry's definitions and preferred terms, and the term's sources.
Path parameters
identifierstring · uuidrequired- Identifier of the term.
Query parameters
translation_locale_codestring- Language in which names of languages and titles of topics are returned, e.g.
en. fieldsstringpublishing_infoaddspublished,has_unpublished_changesandterm_entry_published.
Responses
- 200 OKThe term.
- 401 UnauthorizedThe token is missing, invalid, expired or revoked, its user has no access to the termbase any more, or it lacks the required scope.
- 404 Not FoundNot found in the token's termbase.
Fields of the response (28)
identifierstring · uuidrequired- The term's identifier for the current version; an identifier of its own for each earlier one.
valuestringrequired- The term.
value_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
locale_codestringrequiredlocaleobject4 fields
codestringrequired- The locale code.
namestring | nullrequired- Name of the language, in
translation_locale_codeif given. plural_formsstring | null- The grammatical numbers the language distinguishes, comma-separated (
one,other). An empty string means the language has no grammatical number,nullthat it is unknown. tagsstring[]
statestringrequiredpreferred,admitted,deprecated,not_recommendedor the identifier of a custom state of the termbase.term_typestring | nullfullFormfull form,abbreviationabbreviation,acronymacronym,shortshort form,variantvariant,colloquialcolloquial term,combinationterm combination.part_of_speechstring | null- Allowed values:
noun,proper_noun,verb,adj,adv grammatical_genderstring | null- Allowed values:
masculine,feminine,neuter,other grammatical_numberstring | null- The plural category (Unicode CLDR) the term is in, e.g.
onesingular,otherplural in German and English.Allowed values:zero,one,two,few,many,other usagestring | null- How to use the term — or why not to.
sourcestring | null- Where the term comes from, as free text. Structured sources are in
sources. subjectstring | null- Subject area of the term entry.
contextstring | null- A sentence the term was found in.
fieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}). ignore_caseboolean | null- Whether the term check finds the term regardless of upper and lower case.
variantsstring[]- Spelling variants the term check finds as well.
deletedbooleanrequired- True for earlier versions and deleted terms.
changelogobject[]required- What changed compared to the version before.
4 fields
identifierstringrequired- The attribute, or the identifier of a custom field.
namestring- Name of the custom field.
old_valueany- The value before, of any type; null when there was none.
new_valueany- The value after, of any type; null when it was removed.
comments_countinteger | nullcreatorobjectrequired6 fields
identifierstring · uuidrequirednamestringrequiredfirst_namestring | nulllast_namestring | nullemailstring | nullimage_urlstring | null- URL of the user's avatar.
term_entryobjectrequired14 fields
identifierstring · uuidrequiredterm_entry_identifierstring | null- An ID of your own for the term entry.
statestringrequiredpublishedin the termbase,draftbeing worked on in an import or a task,suggestedproposed in a term request or term extraction,rejectedturned down there.titlestring | null- The entry's leading term, in
locale_codeif given. title_locale_codestring | nulltitle_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
fieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}). topicsobject[]required5 fields
identifierstring · uuidrequiredtitles{ [key]: string }required- Title by locale code.
titlestring | nullrequired- The title in
translation_locale_code, else in the first language that has one. is_root_topicbooleanrequired- Whether the topic is at the top level.
has_childrenbooleanrequired- Whether topics are nested below it.
tagsstring[]requiredlocale_fieldsobject- Values of the per-language custom fields, by locale code.
definitionsobject[]required- At most one definition per language.
5 fields
identifierstring · uuidrequiredtextstringrequiredsourcestring | nullsourcesobject[]6 fields
identifierstringrequiredtypestringrequired- Allowed values:
text,link,reference_document textstring | nulllinkstring | nullmetadataobject | null- E.g. the
pageof a reference document. reference_documentobject | null- The reference document cited.
localeobject4 fields
codestringrequired- The locale code.
namestring | nullrequired- Name of the language, in
translation_locale_codeif given. plural_formsstring | null- The grammatical numbers the language distinguishes, comma-separated (
one,other). An empty string means the language has no grammatical number,nullthat it is unknown. tagsstring[]
preferred_termsobject[]required- The preferred terms of the entry, in all languages.
13 fields
identifierstring · uuidrequiredvaluestringrequiredvalue_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
locale_codestringrequiredstatestringrequiredpreferred,admitted,deprecated,not_recommendedor the identifier of a custom state of the termbase.term_typestring | nullfullFormfull form,abbreviationabbreviation,acronymacronym,shortshort form,variantvariant,colloquialcolloquial term,combinationterm combination.part_of_speechstring | null- Allowed values:
noun,proper_noun,verb,adj,adv grammatical_genderstring | null- Allowed values:
masculine,feminine,neuter,other grammatical_numberstring | null- The plural category (Unicode CLDR) the term is in, e.g.
onesingular,otherplural in German and English.Allowed values:zero,one,two,few,many,other usagestring | nullsourcestring | nullfieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}). ignore_caseboolean | null- Whether the term check finds the term regardless of upper and lower case.
number_of_treesinteger- Number of concept hierarchies the entry belongs to.
has_unpublished_term_changesboolean- Whether a task, import or term request holds changes of its terms.
number_of_usage_examplesintegernumber_of_versionsintegersourcesobject[]required6 fields
identifierstringrequiredtypestringrequired- Allowed values:
text,link,reference_document textstring | nulllinkstring | nullmetadataobject | null- E.g. the
pageof a reference document. reference_documentobject | null- The reference document cited.
created_atstring · date-timerequiredupdated_atstring · date-timerequiredtermbaseobject- Only in
GET /terms/{identifier}. 6 fields
identifierstring · uuidrequirednamestringrequireddescriptionstring | nullsource_locale_codestring | nullcreated_atstring · date-timeupdated_atstring · date-time
curl https://api.lexeri.com/terms/284fdf93-6cb5-4bed-b2d3-d3d530e97511 \ -H "Authorization: Bearer $LEXERI_API_TOKEN"{ "identifier": "284fdf93-6cb5-4bed-b2d3-d3d530e97511", "value": "Luftdichtheit", "value_formatting": [], "locale_code": "de", "state": "preferred", "term_type": "fullForm", "part_of_speech": "noun", "grammatical_gender": "feminine", "grammatical_number": "one", "usage": "Fachbegriff nach DIN 4108-7.", "source": "DIN 4108-7", "subject": null, "context": null, "fields": { "a9b8c7d6": "Nicht mit Winddichtheit verwechseln." }, "ignore_case": false, "variants": [], "deleted": false, "changelog": [], "comments_count": null, "creator": { "identifier": "ecb20516-ae20-44bf-8c91-0503fa7bd59a", "email": "anna.berger@example.com", "first_name": "Anna", "last_name": "Berger", "name": "Anna Berger", "image_url": "https://www.gravatar.com/avatar/00000000000000000000000000000000?d=identicon&s=300" }, "locale": { "code": "de", "name": "Deutsch", "plural_forms": "one,other", "tags": [] }, "term_entry": { "identifier": "cf46f6cc-d6b9-4d2a-b9fc-deaf8f9177a4", "term_entry_identifier": "BP-0042", "state": "published", "title": "Luftdichtheit", "title_locale_code": "de", "title_formatting": [], "fields": { "f1e2d3c4": "Fenster" }, "locale_fields": {}, "tags": [ "Normen" ], "topics": [ { "identifier": "23f9c4bd-9bb4-47f0-9950-33551a70ec70", "titles": { "de": "Gebäudehülle", "en": "Building envelope" }, "title": "Gebäudehülle", "is_root_topic": true, "has_children": false } ], "definitions": [ { "identifier": "507c6fae-cc5d-4458-be86-270f8a24e6c0", "text": "Eigenschaft der Gebäudehülle, keine Luft unkontrolliert durch Fugen und Ritzen strömen zu lassen.", "source": "DIN 4108-7", "sources": [], "locale": { "code": "de", "name": "Deutsch", "plural_forms": "one,other", "tags": [] } } ], "preferred_terms": [ { "identifier": "284fdf93-6cb5-4bed-b2d3-d3d530e97511", "state": "preferred", "locale_code": "de", "value": "Luftdichtheit", "value_formatting": [], "grammatical_number": "one", "grammatical_gender": "feminine", "part_of_speech": "noun", "term_type": "fullForm", "usage": "Fachbegriff nach DIN 4108-7.", "source": "DIN 4108-7", "fields": { "a9b8c7d6": "Nicht mit Winddichtheit verwechseln." }, "ignore_case": false }, { "identifier": "9b89e4c8-b4bd-47db-bfc7-01f71524194e", "state": "preferred", "locale_code": "en", "value": "airtightness", "value_formatting": [], "grammatical_number": "one", "grammatical_gender": null, "part_of_speech": "noun", "term_type": "fullForm", "usage": null, "source": null, "fields": {}, "ignore_case": false } ], "number_of_trees": 0, "has_unpublished_term_changes": false }, "number_of_usage_examples": 1, "number_of_versions": 1, "sources": [], "termbase": { "identifier": "6b0f3c8e-2f4d-4c1a-9e7b-1d2a3c4b5e6f", "name": "Bauphysik", "description": "Terminologie für Bauphysik und Gebäudetechnik", "source_locale_code": "de", "created_at": "2026-10-11T20:19:08.778Z", "updated_at": "2026-10-11T20:19:08.782Z" }, "created_at": "2026-10-11T20:19:08.837Z", "updated_at": "2026-10-11T20:19:08.837Z"}PATCH/terms/:identifier
Change a term
Required scope:edit_terms
Changes the attributes sent; the others stay. The change is published at once and recorded as a new version
(GET /terms/{identifier}/versions); the term keeps its identifier.
fields replaces all custom field values of the term: send the ones to keep, too. subject belongs to the
term entry and changes it for all of its terms.
Path parameters
identifierstring · uuidrequired- Identifier of the term.
Body parameters · JSON
valuestring- The term.
subjectstring- Subject area of the term entry; changes it for all of its terms.
locale_codestring- Language of the term.
statestringpreferred,admitted,deprecated,not_recommendedor the identifier of a custom state of the termbase.term_typestring | nullfullFormfull form,abbreviationabbreviation,acronymacronym,shortshort form,variantvariant,colloquialcolloquial term,combinationterm combination.part_of_speechstring | null- Allowed values:
noun,proper_noun,verb,adj,adv grammatical_genderstring | null- Allowed values:
masculine,feminine,neuter,other grammatical_numberstring | null- The plural category (Unicode CLDR) the term is in, e.g.
onesingular,otherplural in German and English.Allowed values:zero,one,two,few,many,other usagestring- How to use the term — or why not to.
sourcestring- Where the term comes from, as free text.
contextstring- A sentence the term was found in.
ignore_caseboolean- Find the term regardless of upper and lower case in term checks.
value_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
fieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}).
Responses
- 200 OKThe changed term.
- 401 UnauthorizedThe token is missing, invalid, expired or revoked, its user has no access to the termbase any more, or it lacks the required scope.
- 404 Not FoundNot found in the token's termbase.
- 422 Unprocessable EntityA parameter has an invalid value, e.g. a required custom field is empty or
valueis blank.
Fields of the response (28)
identifierstring · uuidrequired- The term's identifier for the current version; an identifier of its own for each earlier one.
valuestringrequired- The term.
value_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
locale_codestringrequiredlocaleobject4 fields
codestringrequired- The locale code.
namestring | nullrequired- Name of the language, in
translation_locale_codeif given. plural_formsstring | null- The grammatical numbers the language distinguishes, comma-separated (
one,other). An empty string means the language has no grammatical number,nullthat it is unknown. tagsstring[]
statestringrequiredpreferred,admitted,deprecated,not_recommendedor the identifier of a custom state of the termbase.term_typestring | nullfullFormfull form,abbreviationabbreviation,acronymacronym,shortshort form,variantvariant,colloquialcolloquial term,combinationterm combination.part_of_speechstring | null- Allowed values:
noun,proper_noun,verb,adj,adv grammatical_genderstring | null- Allowed values:
masculine,feminine,neuter,other grammatical_numberstring | null- The plural category (Unicode CLDR) the term is in, e.g.
onesingular,otherplural in German and English.Allowed values:zero,one,two,few,many,other usagestring | null- How to use the term — or why not to.
sourcestring | null- Where the term comes from, as free text. Structured sources are in
sources. subjectstring | null- Subject area of the term entry.
contextstring | null- A sentence the term was found in.
fieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}). ignore_caseboolean | null- Whether the term check finds the term regardless of upper and lower case.
variantsstring[]- Spelling variants the term check finds as well.
deletedbooleanrequired- True for earlier versions and deleted terms.
changelogobject[]required- What changed compared to the version before.
4 fields
identifierstringrequired- The attribute, or the identifier of a custom field.
namestring- Name of the custom field.
old_valueany- The value before, of any type; null when there was none.
new_valueany- The value after, of any type; null when it was removed.
comments_countinteger | nullcreatorobjectrequired6 fields
identifierstring · uuidrequirednamestringrequiredfirst_namestring | nulllast_namestring | nullemailstring | nullimage_urlstring | null- URL of the user's avatar.
term_entryobjectrequired14 fields
identifierstring · uuidrequiredterm_entry_identifierstring | null- An ID of your own for the term entry.
statestringrequiredpublishedin the termbase,draftbeing worked on in an import or a task,suggestedproposed in a term request or term extraction,rejectedturned down there.titlestring | null- The entry's leading term, in
locale_codeif given. title_locale_codestring | nulltitle_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
fieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}). topicsobject[]required5 fields
identifierstring · uuidrequiredtitles{ [key]: string }required- Title by locale code.
titlestring | nullrequired- The title in
translation_locale_code, else in the first language that has one. is_root_topicbooleanrequired- Whether the topic is at the top level.
has_childrenbooleanrequired- Whether topics are nested below it.
tagsstring[]requiredlocale_fieldsobject- Values of the per-language custom fields, by locale code.
definitionsobject[]required- At most one definition per language.
5 fields
identifierstring · uuidrequiredtextstringrequiredsourcestring | nullsourcesobject[]6 fields
identifierstringrequiredtypestringrequired- Allowed values:
text,link,reference_document textstring | nulllinkstring | nullmetadataobject | null- E.g. the
pageof a reference document. reference_documentobject | null- The reference document cited.
localeobject4 fields
codestringrequired- The locale code.
namestring | nullrequired- Name of the language, in
translation_locale_codeif given. plural_formsstring | null- The grammatical numbers the language distinguishes, comma-separated (
one,other). An empty string means the language has no grammatical number,nullthat it is unknown. tagsstring[]
preferred_termsobject[]required- The preferred terms of the entry, in all languages.
13 fields
identifierstring · uuidrequiredvaluestringrequiredvalue_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
locale_codestringrequiredstatestringrequiredpreferred,admitted,deprecated,not_recommendedor the identifier of a custom state of the termbase.term_typestring | nullfullFormfull form,abbreviationabbreviation,acronymacronym,shortshort form,variantvariant,colloquialcolloquial term,combinationterm combination.part_of_speechstring | null- Allowed values:
noun,proper_noun,verb,adj,adv grammatical_genderstring | null- Allowed values:
masculine,feminine,neuter,other grammatical_numberstring | null- The plural category (Unicode CLDR) the term is in, e.g.
onesingular,otherplural in German and English.Allowed values:zero,one,two,few,many,other usagestring | nullsourcestring | nullfieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}). ignore_caseboolean | null- Whether the term check finds the term regardless of upper and lower case.
number_of_treesinteger- Number of concept hierarchies the entry belongs to.
has_unpublished_term_changesboolean- Whether a task, import or term request holds changes of its terms.
number_of_usage_examplesintegernumber_of_versionsintegersourcesobject[]required6 fields
identifierstringrequiredtypestringrequired- Allowed values:
text,link,reference_document textstring | nulllinkstring | nullmetadataobject | null- E.g. the
pageof a reference document. reference_documentobject | null- The reference document cited.
created_atstring · date-timerequiredupdated_atstring · date-timerequiredtermbaseobject- Only in
GET /terms/{identifier}. 6 fields
identifierstring · uuidrequirednamestringrequireddescriptionstring | nullsource_locale_codestring | nullcreated_atstring · date-timeupdated_atstring · date-time
curl -X PATCH https://api.lexeri.com/terms/284fdf93-6cb5-4bed-b2d3-d3d530e97511 \ -H "Authorization: Bearer $LEXERI_API_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "usage": "Fachbegriff nach DIN 4108-7. In Normtexten verwenden." }'DELETE/terms/:identifier
Delete a term
Required scope:edit_terms
Deletes the term. Deleting the last term of a term entry deletes the whole entry with its definitions, notes and images.
Path parameters
identifierstring · uuidrequired- Identifier of the term.
Responses
- 204 No ContentDeleted.
- 401 UnauthorizedThe token is missing, invalid, expired or revoked, its user has no access to the termbase any more, or it lacks the required scope.
- 404 Not FoundNot found in the token's termbase.
curl -X DELETE https://api.lexeri.com/terms/284fdf93-6cb5-4bed-b2d3-d3d530e97511 \ -H "Authorization: Bearer $LEXERI_API_TOKEN"GET/terms/:identifier/versions
List the versions of a term
Returns every version of the term, newest first — the current one included. Each version's changelog
lists what changed compared to the version before it. Earlier versions carry deleted: true and an
identifier of their own.
Path parameters
identifierstring · uuidrequired- Identifier of the term.
Responses
- 200 OKThe versions of the term.
- 401 UnauthorizedThe token is missing, invalid, expired or revoked, its user has no access to the termbase any more, or it lacks the required scope.
- 404 Not FoundNot found in the token's termbase.
Fields of each item (27)
identifierstring · uuidrequired- The term's identifier for the current version; an identifier of its own for each earlier one.
valuestringrequired- The term.
value_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
locale_codestringrequiredlocaleobject4 fields
codestringrequired- The locale code.
namestring | nullrequired- Name of the language, in
translation_locale_codeif given. plural_formsstring | null- The grammatical numbers the language distinguishes, comma-separated (
one,other). An empty string means the language has no grammatical number,nullthat it is unknown. tagsstring[]
statestringrequiredpreferred,admitted,deprecated,not_recommendedor the identifier of a custom state of the termbase.term_typestring | nullfullFormfull form,abbreviationabbreviation,acronymacronym,shortshort form,variantvariant,colloquialcolloquial term,combinationterm combination.part_of_speechstring | null- Allowed values:
noun,proper_noun,verb,adj,adv grammatical_genderstring | null- Allowed values:
masculine,feminine,neuter,other grammatical_numberstring | null- The plural category (Unicode CLDR) the term is in, e.g.
onesingular,otherplural in German and English.Allowed values:zero,one,two,few,many,other usagestring | null- How to use the term — or why not to.
sourcestring | null- Where the term comes from, as free text. Structured sources are in
sources. subjectstring | null- Subject area of the term entry.
contextstring | null- A sentence the term was found in.
fieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}). ignore_caseboolean | null- Whether the term check finds the term regardless of upper and lower case.
variantsstring[]- Spelling variants the term check finds as well.
deletedbooleanrequired- True for earlier versions and deleted terms.
changelogobject[]required- What changed compared to the version before.
4 fields
identifierstringrequired- The attribute, or the identifier of a custom field.
namestring- Name of the custom field.
old_valueany- The value before, of any type; null when there was none.
new_valueany- The value after, of any type; null when it was removed.
comments_countinteger | nullcreatorobject6 fields
identifierstring · uuidrequirednamestringrequiredfirst_namestring | nulllast_namestring | nullemailstring | nullimage_urlstring | null- URL of the user's avatar.
term_entryobject14 fields
identifierstring · uuidrequiredterm_entry_identifierstring | null- An ID of your own for the term entry.
statestringrequiredpublishedin the termbase,draftbeing worked on in an import or a task,suggestedproposed in a term request or term extraction,rejectedturned down there.titlestring | null- The entry's leading term, in
locale_codeif given. title_locale_codestring | nulltitle_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
fieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}). topicsobject[]required5 fields
identifierstring · uuidrequiredtitles{ [key]: string }required- Title by locale code.
titlestring | nullrequired- The title in
translation_locale_code, else in the first language that has one. is_root_topicbooleanrequired- Whether the topic is at the top level.
has_childrenbooleanrequired- Whether topics are nested below it.
tagsstring[]requiredlocale_fieldsobject- Values of the per-language custom fields, by locale code.
definitionsobject[]required- At most one definition per language.
5 fields
identifierstring · uuidrequiredtextstringrequiredsourcestring | nullsourcesobject[]6 fields
identifierstringrequiredtypestringrequired- Allowed values:
text,link,reference_document textstring | nulllinkstring | nullmetadataobject | null- E.g. the
pageof a reference document. reference_documentobject | null- The reference document cited.
localeobject4 fields
codestringrequired- The locale code.
namestring | nullrequired- Name of the language, in
translation_locale_codeif given. plural_formsstring | null- The grammatical numbers the language distinguishes, comma-separated (
one,other). An empty string means the language has no grammatical number,nullthat it is unknown. tagsstring[]
preferred_termsobject[]required- The preferred terms of the entry, in all languages.
13 fields
identifierstring · uuidrequiredvaluestringrequiredvalue_formattingobject[]- Subscript and superscript in the value, as ranges over it:
startandend(exclusive) count UTF-16 code units, soCO2with a subscript2is[{"start": 2, "end": 3, "type": "sub"}]. 3 fields
startintegerrequiredendintegerrequiredtypestringrequired- Allowed values:
sub,sup
locale_codestringrequiredstatestringrequiredpreferred,admitted,deprecated,not_recommendedor the identifier of a custom state of the termbase.term_typestring | nullfullFormfull form,abbreviationabbreviation,acronymacronym,shortshort form,variantvariant,colloquialcolloquial term,combinationterm combination.part_of_speechstring | null- Allowed values:
noun,proper_noun,verb,adj,adv grammatical_genderstring | null- Allowed values:
masculine,feminine,neuter,other grammatical_numberstring | null- The plural category (Unicode CLDR) the term is in, e.g.
onesingular,otherplural in German and English.Allowed values:zero,one,two,few,many,other usagestring | nullsourcestring | nullfieldsobject- Values of custom fields, keyed by their identifier (see
GET /termbases/{identifier}). ignore_caseboolean | null- Whether the term check finds the term regardless of upper and lower case.
number_of_treesinteger- Number of concept hierarchies the entry belongs to.
has_unpublished_term_changesboolean- Whether a task, import or term request holds changes of its terms.
number_of_usage_examplesintegernumber_of_versionsintegersourcesobject[]6 fields
identifierstringrequiredtypestringrequired- Allowed values:
text,link,reference_document textstring | nulllinkstring | nullmetadataobject | null- E.g. the
pageof a reference document. reference_documentobject | null- The reference document cited.
created_atstring · date-timerequiredupdated_atstring · date-timerequired
curl https://api.lexeri.com/terms/284fdf93-6cb5-4bed-b2d3-d3d530e97511/versions \ -H "Authorization: Bearer $LEXERI_API_TOKEN"