Vocab Bloom Hub

API pública v1

La referencia de la API de solo lectura del diccionario, generada a partir del documento OpenAPI que publica el servidor — el mismo contrato del que se construyen los SDK.

Read-only dictionary API under /api/v1 (contract version 1): no authentication, every answer in a { data, meta } envelope, errors as { statusCode, message, error: true }, X-API-Version on every response. The /api/compat/freedictionaryapi/v1 routes use freedictionaryapi.com objects, language lists and plain-text errors. The /api/compat/dictionaryapi routes use dictionaryapi.dev v1/v2 arrays and errors, with additive vocabBloom provenance. Compatibility lookups ending in /datasets wrap the responses from all installed datasets in { data, meta }; each group has dataset terms, status and response. Successful GET answers carry ETag, Last-Modified and Cache-Control. Documentation: https://vocab-bloom-hub.com/en/docs/api.

URL basehttps://<instance>/api/v1
Cada instancia sirve la API bajo su propio origen; los ejemplos usan un marcador.
Contrato
Documento OpenAPI 3, servido por cada instancia en /api/v1/openapi.json; el archivo versionado
Seguir leyendo

Endpoints

GET/api/v1/meta

API and dataset versions, data license and counts of the served dictionary

Parámetros

Sin parámetros.

Respuestas

Ejemplo

curl 'https://your-instance.example/api/v1/meta'

Probar en el playground

GET/api/v1/openapi.json

The OpenAPI 3 document of the public API (this contract)

Parámetros

Sin parámetros.

Respuestas

  • 200OK — object
  • 429Rate limit of the public prefix exceeded (PUBLIC_API_RATE_LIMIT); retry after the window — PublicApiErrorT
  • 503Not available: a selected dataset could not be read, the OpenAPI document is not ready, or the suggestion queue is full — PublicApiErrorT

Ejemplo

curl 'https://your-instance.example/api/v1/openapi.json'

GET/api/v1/search/detailed

Search dictionary entries with pagination, meanings and translations

The detailed search: the same term and tiers, paged, with meanings and translations joined on request; the fields travel in the query string (`translation_languages` as a repeated key). Cacheable like every public GET.

Parámetros

NombreEnTipoObligatorioDescripción
searchquerystringsíThe term to search for
typequerystring
wordgrammar_patternphrase
noRestrict the answer to one entry type
limitqueryintegerno
por defecto: 10
pagequeryintegerno
por defecto: 1
with_meaningsquerybooleannoJoin the meanings (with translations, synonyms, antonyms) of every item
por defecto: false
with_translationsquerybooleannoJoin the short translations of every item
por defecto: false
translation_languagesquerystring[]
ruesfrdeptzhar
noKeep only these translation languages (a repeated key); omit the key for all of them
datasetquerystringnoPublic dataset name; omitted = the active dataset. Unknown or closed targets return 404, never a fallback.

Respuestas

  • 200OK — PublicSearchDetailedV1ResT
  • 400Invalid input: an unknown field, a value outside the allowed set, or a foreign cursor — PublicApiErrorT
  • 404Nothing matches — PublicApiErrorT
  • 429Rate limit of the public prefix exceeded (PUBLIC_API_RATE_LIMIT); retry after the window — PublicApiErrorT
  • 503Not available: a selected dataset could not be read, the OpenAPI document is not ready, or the suggestion queue is full — PublicApiErrorT

Ejemplo

curl 'https://your-instance.example/api/v1/search/detailed'

Probar en el playground

GET/api/v1/words/{word}

All entries of a headword: parts of speech, forms, meanings, translations, links

Parámetros

NombreEnTipoObligatorioDescripción
wordpathstringsíHeadword spelling, case-insensitive (spaces URL-encoded for phrases). An inflected form resolves to its base entry

Respuestas

Ejemplo

curl 'https://your-instance.example/api/v1/words/run'

Probar en el playground

GET/api/v1/words/{word}/meanings

The meanings of a headword across its entries

Parámetros

NombreEnTipoObligatorioDescripción
wordpathstringsíHeadword spelling, case-insensitive (spaces URL-encoded for phrases). An inflected form resolves to its base entry

Respuestas

Ejemplo

curl 'https://your-instance.example/api/v1/words/run/meanings'

Probar en el playground

GET/api/v1/words/{word}/translations

The short and per-meaning translations of a headword

Parámetros

NombreEnTipoObligatorioDescripción
wordpathstringsíHeadword spelling, case-insensitive (spaces URL-encoded for phrases). An inflected form resolves to its base entry
languagequerystring[]
ruesfrdeptzhar
noTranslation languages; no value means all of them

Respuestas

Ejemplo

curl 'https://your-instance.example/api/v1/words/run/translations'

Probar en el playground

GET/api/v1/words/{word}/forms

The inflected forms of a headword across its entries

Parámetros

NombreEnTipoObligatorioDescripción
wordpathstringsíHeadword spelling, case-insensitive (spaces URL-encoded for phrases). An inflected form resolves to its base entry

Respuestas

Ejemplo

curl 'https://your-instance.example/api/v1/words/run/forms'

Probar en el playground

GET/api/v1/words/{word}/synonyms

The synonyms of a headword, per meaning

One item per linked headword and meaning; each names its `meaning_id`, `word_id` and `part_of_speech`.

Parámetros

NombreEnTipoObligatorioDescripción
wordpathstringsíHeadword spelling, case-insensitive (spaces URL-encoded for phrases). An inflected form resolves to its base entry

Respuestas

Ejemplo

curl 'https://your-instance.example/api/v1/words/run/synonyms'

Probar en el playground

GET/api/v1/words/{word}/antonyms

The antonyms of a headword, per meaning

One item per linked headword and meaning; each names its `meaning_id`, `word_id` and `part_of_speech`.

Parámetros

NombreEnTipoObligatorioDescripción
wordpathstringsíHeadword spelling, case-insensitive (spaces URL-encoded for phrases). An inflected form resolves to its base entry

Respuestas

Ejemplo

curl 'https://your-instance.example/api/v1/words/run/antonyms'

Probar en el playground

GET/api/v1/words/{word}/history

What was changed or added on the instance in the entries of a headword

The edits that still show in what is served, the latest first, with the values before and after: the entries of such a headword carry `modified: true`. Empty for a headword served as its source has it.

Parámetros

NombreEnTipoObligatorioDescripción
wordpathstringsíHeadword spelling, case-insensitive (spaces URL-encoded for phrases). An inflected form resolves to its base entry

Respuestas

Ejemplo

curl 'https://your-instance.example/api/v1/words/run/history'

Probar en el playground

GET/api/v1/words/{word}/datasets

A headword as every open dataset of the instance has it, grouped by dataset

One group per open dataset, never merged: the terms of the dataset (`license`, `attribution`, `license_text`, …) and the entries `GET /words/{word}` would answer if that dataset were the served one. The spelling is matched inside each dataset, so a group has its own `word` and `variants`; a dataset without the headword answers an empty `entries`, and the request fails with 404 when no dataset holds it. Entries taken from several groups are bound by the terms of each. One request against the rate limit.

Parámetros

NombreEnTipoObligatorioDescripción
wordpathstringsíHeadword spelling, case-insensitive (spaces URL-encoded for phrases). An inflected form resolves to its base entry

Respuestas

Ejemplo

curl 'https://your-instance.example/api/v1/words/run/datasets'

Probar en el playground

GET/api/v1/words/{word}/datasets/{dataset}/history

What was changed or added on the instance in the entries of a headword, in one dataset

The answer of `GET /words/{word}/history` for a dataset named by its `dataset`: the edits behind `modified: true` of the entries of that group. 404 for a closed dataset or a dataset the instance does not hold.

Parámetros

NombreEnTipoObligatorioDescripción
wordpathstringsíHeadword spelling, case-insensitive (spaces URL-encoded for phrases). An inflected form resolves to its base entry
datasetpathstringsíThe name of a dataset of the instance, as `dataset` of a group of `GET /words/{word}/datasets` says it

Respuestas

Ejemplo

curl 'https://your-instance.example/api/v1/words/run/datasets/default/history'

Probar en el playground

GET/api/v1/words/id/{id}

One dictionary entry by its numeric id

Parámetros

NombreEnTipoObligatorioDescripción
idpathnumbersí

Respuestas

Ejemplo

curl 'https://your-instance.example/api/v1/words/id/1'

Probar en el playground

GET/api/v1/words

List dictionary entries by filters, cursor-paged and ordered by (word, id)

Every enum filter accepts a repeated key; values of one filter are OR-ed, filters are AND-ed. `search` keeps the headwords starting with the prefix (an autocomplete or an A–Z browser: cacheable, unlike the search). Pass `meta.next_cursor` back as `cursor` to read the next page.

Parámetros

NombreEnTipoObligatorioDescripción
searchquerystringnoHeadword prefix, case-insensitive (`ru` lists run, rung, runner, …)
is_obsoletequerybooleannotrue: obsolete entries only, false: current ones only
part_of_speechquerystring[]
nounverbmodal_verbadjectiveadverbpronounnumeralnumeral_fractionaldeterminerinterjectionarticleprepositionconjunctionletterphrasegrammar_pattern
no
word_levelquerystring[]
A1A2B1B2C1C2
no
language_registerquerystring[]
formalinformalslang
no
categoryquerystring[]
scientifictechnicalmedicallegalbusinessITartpoliticalsportculinary
noWords tagged with any of the categories
area_variantquerystring[]
commonbritishamericanaustralian
no
form_of_wordquerystring[]
base_formplural_formpossessive_singular_formpossessive_plural_formpast_simplepast_participlepresent_participlethird_person_singularcomparative_formsuperlative_formobjectpossessive_adjectivepossessive_pronounreflexiveordinalmultiplicative
noDefaults to base forms only
por defecto: ["base_form"]
cursorquerystringnoThe `meta.next_cursor` of the previous page; omit for the first page
limitqueryintegerno
por defecto: 20
with_meaningsquerybooleannoJoin the meanings of every word
por defecto: false
with_translationsquerybooleannoJoin the short translations of every word
por defecto: false

Respuestas

  • 200OK — PublicWordsV1ResT
  • 400Invalid input: an unknown field, a value outside the allowed set, or a foreign cursor — PublicApiErrorT
  • 429Rate limit of the public prefix exceeded (PUBLIC_API_RATE_LIMIT); retry after the window — PublicApiErrorT

Ejemplo

curl 'https://your-instance.example/api/v1/words'

Probar en el playground

GET/api/v1/random

A random dictionary entry matching the filters (base forms unless form_of_word is given)

Parámetros

NombreEnTipoObligatorioDescripción
searchquerystringnoHeadword prefix, case-insensitive (`ru` lists run, rung, runner, …)
is_obsoletequerybooleannotrue: obsolete entries only, false: current ones only
part_of_speechquerystring[]
nounverbmodal_verbadjectiveadverbpronounnumeralnumeral_fractionaldeterminerinterjectionarticleprepositionconjunctionletterphrasegrammar_pattern
no
word_levelquerystring[]
A1A2B1B2C1C2
no
language_registerquerystring[]
formalinformalslang
no
categoryquerystring[]
scientifictechnicalmedicallegalbusinessITartpoliticalsportculinary
noWords tagged with any of the categories
area_variantquerystring[]
commonbritishamericanaustralian
no
form_of_wordquerystring[]
base_formplural_formpossessive_singular_formpossessive_plural_formpast_simplepast_participlepresent_participlethird_person_singularcomparative_formsuperlative_formobjectpossessive_adjectivepossessive_pronounreflexiveordinalmultiplicative
noDefaults to base forms only
por defecto: ["base_form"]

Respuestas

Ejemplo

curl 'https://your-instance.example/api/v1/random'

Probar en el playground

GET/api/v1/search/semantic/status

Whether the instance enables semantic search

Reflects only SEMANTIC_SEARCH_ENABLED. Performs no inference and does not promise model/vector availability. Never cached.

Parámetros

Sin parámetros.

Respuestas

Ejemplo

curl 'https://your-instance.example/api/v1/search/semantic/status'

Probar en el playground

GET/api/v1/search/semantic

Find existing meanings from a description

Separate from spelling search; no lexical fallback. Requires SEMANTIC_SEARCH_ENABLED, PostgreSQL/pgvector, imported current vectors and a matching Ollama model. Disabled = 404 semantic_search_disabled; missing infrastructure, busy service or incompatible model = 503. Returns up to 20 meanings, ordered by cosine similarity then meaning ID. Scores are not confidence probabilities; no calibrated no-answer threshold. No pagination or cross-dataset ranking. Uses the shared public rate budget. Responses are no-store.

Parámetros

NombreEnTipoObligatorioDescripción
queryquerystringsíA description of the intended meaning, in English or another language supported by the model.
datasetquerystringnoOne public dataset; omitted = active dataset. Closed/unknown targets return 404.
limitqueryintegerno
por defecto: 10

Respuestas

  • 200OK — PublicSemanticSearchV1ResT
  • 400Invalid input: an unknown field, a value outside the allowed set, or a foreign cursor — PublicApiErrorT
  • 404Nothing matches — PublicApiErrorT
  • 429Rate limit of the public prefix exceeded (PUBLIC_API_RATE_LIMIT); retry after the window — PublicApiErrorT
  • 503Not available: a selected dataset could not be read, the OpenAPI document is not ready, or the suggestion queue is full — PublicApiErrorT

Ejemplo

curl 'https://your-instance.example/api/v1/search/semantic'

Probar en el playground

GET/api/compat/dictionaryapi/v2/entries/{language}/{word}/datasets

dictionaryapi.dev v2 responses from every open dataset

One group per installed dataset with its terms, status and response in the adapter format. Missing words have status 404 and the adapter error in response. The outer request returns 200 even when no dataset matches. English only; the usual headword and inflection rules apply in each dataset. No query parameters. Does not activate any dataset. One public rate-limit unit; cached across all datasets.

Parámetros

NombreEnTipoObligatorioDescripción
languagepathstring
enen_USen_GB
sí
wordpathstringsíHeadword spelling, case-insensitive (spaces URL-encoded for phrases). An inflected form resolves to its base entry

Respuestas

Ejemplo

curl 'https://your-instance.example/api/compat/dictionaryapi/v2/entries/en/run/datasets'

Probar en el playground

GET/api/compat/dictionaryapi/v1/entries/{language}/{word}/datasets

dictionaryapi.dev v1 responses from every open dataset

One group per installed dataset with its terms, status and response in the adapter format. Missing words have status 404 and the adapter error in response. The outer request returns 200 even when no dataset matches. English only; the usual headword and inflection rules apply in each dataset. No query parameters. Does not activate any dataset. One public rate-limit unit; cached across all datasets.

Parámetros

NombreEnTipoObligatorioDescripción
languagepathstring
enen_USen_GB
sí
wordpathstringsíHeadword spelling, case-insensitive (spaces URL-encoded for phrases). An inflected form resolves to its base entry

Respuestas

Ejemplo

curl 'https://your-instance.example/api/compat/dictionaryapi/v1/entries/en/run/datasets'

Probar en el playground

GET/api/compat/freedictionaryapi/v1/entries/{language}/{word}/datasets

freedictionaryapi.com responses from every open dataset

One group per installed dataset with its terms, status 200 and the adapter object in response. Exact spelling; en and all read English. Missing words and other languages have empty response.entries. The outer request returns 200 even when no dataset matches. Does not activate any dataset. One public rate-limit unit; cached across all datasets. Empty source links point here rather than active-only /meta.

Parámetros

NombreEnTipoObligatorioDescripción
languagepathstringsíen or all; other values return empty entries
wordpathstringsíExact case-sensitive spelling, encoded as one URL segment
prettyquerybooleannoIndent the whole response with two spaces; default false.
translationsquerybooleannoInclude supported translations; default false. Only true/false, first occurrence wins.

Respuestas

  • 200OK — FreeDictionaryDatasetsResT
  • 400Invalid input: an unknown field, a value outside the allowed set, or a foreign cursor
  • 429Rate limit of the public prefix exceeded (PUBLIC_API_RATE_LIMIT); retry after the window

Ejemplo

curl 'https://your-instance.example/api/compat/freedictionaryapi/v1/entries/example/run/datasets'

Probar en el playground

GET/api/compat/dictionaryapi/v2/entries/{language}/{word}

dictionaryapi.dev v2 lookup in the active dataset

Array response, with lossless provenance in vocabBloom. English only; native headword and inflection resolution. No dataset query parameter.

Parámetros

NombreEnTipoObligatorioDescripción
languagepathstring
enen_USen_GB
sí
wordpathstringsíHeadword spelling, case-insensitive (spaces URL-encoded for phrases). An inflected form resolves to its base entry

Respuestas

Ejemplo

curl 'https://your-instance.example/api/compat/dictionaryapi/v2/entries/en/run'

Probar en el playground

GET/api/compat/dictionaryapi/v1/entries/{language}/{word}

dictionaryapi.dev legacy v1 lookup in the active dataset

Same entries and terms as v2, with a meaning object keyed by part of speech instead of meanings. English only.

Parámetros

NombreEnTipoObligatorioDescripción
languagepathstring
enen_USen_GB
sí
wordpathstringsíHeadword spelling, case-insensitive (spaces URL-encoded for phrases). An inflected form resolves to its base entry

Respuestas

Ejemplo

curl 'https://your-instance.example/api/compat/dictionaryapi/v1/entries/en/run'

Probar en el playground

GET/api/compat/freedictionaryapi/v1/entries/{language}/{word}

freedictionaryapi.com lookup in the active dataset

Exact spelling. en and all read the English database; other languages and missing spellings return empty entries. Full terms in vocabBloom.

Parámetros

NombreEnTipoObligatorioDescripción
languagepathstringsíen or all; other values return empty entries
wordpathstringsíExact case-sensitive spelling, encoded as one URL segment
prettyquerybooleannoIndent JSON with two spaces; default false.
translationsquerybooleannoInclude supported translations; default false. Only true/false, first occurrence wins.

Respuestas

  • 200OK — FreeDictionaryEntriesResT
  • 400Invalid input: an unknown field, a value outside the allowed set, or a foreign cursor
  • 429Rate limit of the public prefix exceeded (PUBLIC_API_RATE_LIMIT); retry after the window

Ejemplo

curl 'https://your-instance.example/api/compat/freedictionaryapi/v1/entries/example/run'

Probar en el playground

GET/api/compat/freedictionaryapi/v1/languages

Available headword languages and readable spelling counts

English only. Counts include phrases, inflections and alternative-only entry rows in the active dataset, once per readable spelling; unlinked placeholders are excluded.

Parámetros

NombreEnTipoObligatorioDescripción
prettyquerybooleannoIndent JSON with two spaces; default false.

Respuestas

  • 200OK — FreeDictionaryLanguagesResT
  • 400Invalid input: an unknown field, a value outside the allowed set, or a foreign cursor
  • 429Rate limit of the public prefix exceeded (PUBLIC_API_RATE_LIMIT); retry after the window

Ejemplo

curl 'https://your-instance.example/api/compat/freedictionaryapi/v1/languages'

Probar en el playground

GET/api/v1/search/datasets

Search up to five public datasets, in separate groups

Repeat datasets for each target (1–5 unique names). Groups follow installation order. The detailed search filters, limit (1–20) and page (1–20) apply independently to every group. Relevance scores are local to each dataset. Empty matches have status ok and an empty data array; failed readers have status unavailable and no results/pagination. Unknown or closed targets reject the entire request with 404. Partial failures return 200 with meta.partial and Cache-Control: no-store. Each selected dataset costs one unit of the shared public rate budget, including failed reads. Selected searches revalidate their ETag on every use.

Parámetros

NombreEnTipoObligatorioDescripción
searchquerystringsíThe term to search for
typequerystring
wordgrammar_patternphrase
noRestrict the answer to one entry type
limitqueryintegerno
por defecto: 10
pagequeryintegerno
por defecto: 1
with_meaningsquerybooleannoJoin the meanings (with translations, synonyms, antonyms) of every item
por defecto: false
with_translationsquerybooleannoJoin the short translations of every item
por defecto: false
translation_languagesquerystring[]
ruesfrdeptzhar
noKeep only these translation languages (a repeated key); omit the key for all of them
datasetsquerystring[]síPublic dataset names as repeated keys. Groups follow installation order. Each selected dataset costs one unit of the shared public rate budget.

Respuestas

Ejemplo

curl 'https://your-instance.example/api/v1/search/datasets?search=run&datasets=default'

Probar en el playground

GET/api/v1/datasets

Publicly readable datasets and their terms, in installation order

Parámetros

Sin parámetros.

Respuestas

Ejemplo

curl 'https://your-instance.example/api/v1/datasets'

Probar en el playground

POST/api/v1/words/batch

Up to 50 headwords in one request

Every spelling is matched like `GET /words/{word}`; the answer keeps the request order, collapses duplicates, and lists the spellings without an entry under `meta.not_found` instead of failing. One request against the rate limit, whatever the size of the batch.

Cuerpo de la petición · WordsBatchV1ReqDTO

NombreTipoObligatorioDescripción
wordsstring[]síHeadword spellings, 50 at most, each matched like GET /words/{word} (case-insensitively; an inflected form resolves to its base entry)

Respuestas

Ejemplo

curl -X POST 'https://your-instance.example/api/v1/words/batch' \
  -H 'Content-Type: application/json' \
  -d '{"words":["run","walk","nonexistentword"]}'

Probar en el playground

POST/api/v1/suggestions

Report a mistake in the dictionary data

Files a report for the instance admin to review: what is wrong with a headword (optionally one specific entry of it) and, ideally, what would be right. The headword must exist in the selected publicly open dataset. Pass dataset to target a viewed dataset; omitted means the active dataset. All IDs must belong to that dataset and headword. Closed, unknown or removed targets answer 404 without fallback. Rate limits are shared across datasets; a full target queue answers 503.

Cuerpo de la petición · CreateSuggestionV1ReqDTO

NombreTipoObligatorioDescripción
datasetstringnoInstalled, publicly open dataset containing the headword and all supplied IDs. Omit to use the active dataset.
headwordstringsíThe headword the report is about; must exist in the dictionary
word_idobjectnoId of the entry (part of speech) the report points at, from the word answers
kindstring
reportedit
no
por defecto: "report"
messageobjectnoWhat is wrong and, ideally, what would be right. Required for a report; an optional comment on an edit
editsSuggestionEditV1DTO[]noEdit flow: every touched target of the word form with its proposed values
author_nameobjectnoThe name the sender wants to be credited by (issue #531). Kept only together with `author_consent: true`: once the correction is applied the name is shown next to it and travels with the copies of the data
author_consentobjectnoThe sender agrees that `author_name` is shown and exported; required when a name is given

Respuestas

Ejemplo

curl -X POST 'https://your-instance.example/api/v1/suggestions' \
  -H 'Content-Type: application/json' \
  -d '{"headword":"run","message":"Please check the definition of this word."}'

Probar en el playground

Esquemas

SuggestionEditV1DTO

NombreTipoObligatorioDescripción
target_typestring
wordmeaningmeaning_translationshort_translation
sí
target_idnumbersíId of the targeted row, from the word answers
changesobjectsíThe proposed field values, e.g. { "definition": "…" }. The accepted fields depend on target_type; unknown fields, empty values and values equal to the current ones are rejected

CreateSuggestionV1ReqDTO

NombreTipoObligatorioDescripción
datasetstringnoInstalled, publicly open dataset containing the headword and all supplied IDs. Omit to use the active dataset.
headwordstringsíThe headword the report is about; must exist in the dictionary
word_idobjectnoId of the entry (part of speech) the report points at, from the word answers
kindstring
reportedit
no
por defecto: "report"
messageobjectnoWhat is wrong and, ideally, what would be right. Required for a report; an optional comment on an edit
editsSuggestionEditV1DTO[]noEdit flow: every touched target of the word form with its proposed values
author_nameobjectnoThe name the sender wants to be credited by (issue #531). Kept only together with `author_consent: true`: once the correction is applied the name is shown next to it and travels with the copies of the data
author_consentobjectnoThe sender agrees that `author_name` is shown and exported; required when a name is given

WordsBatchV1ReqDTO

NombreTipoObligatorioDescripción
wordsstring[]síHeadword spellings, 50 at most, each matched like GET /words/{word} (case-insensitively; an inflected form resolves to its base entry)

PublicSearchV1MetaT

NombreTipoObligatorioDescripción
datasetstringnoPresent only for an explicitly selected dataset.
countintegersí
fuzzybooleansí
short_termbooleansí

PublicSearchV1ResT

NombreTipoObligatorioDescripción
dataPublicSearchWordV1T[]sí
metaPublicSearchV1MetaTsí

PublicSearchWordV1T

NombreTipoObligatorioDescripción
alternativesstring[]noAlternative spellings of this headword, shared by all its parts of speech.
originsOriginT[]no
contributionsOriginT[]noTerms of the datasets whose edits still contribute to this word.
licensesWordLicenseT[]no
idintegersí
wordstringsí
part_of_speechEnPartOfSpeechEsí
form_of_wordEnWordFormsEsí
is_obsoletebooleansí
is_abbreviationbooleansí
word_levelWordLevelE | nullsí
area_variantEnAreaVariantsE | nullsí
categoriesCategoryE[]sí
language_registerLanguageRegisterE | nullsí
descriptionstring | nullsí
transcriptionstring | nullsí
pronunciationsPronunciationT[]noOrdered pronunciations, with legacy transcription and base-form fallback.
patternstring[] | nullsí
noun___irregular_pluralboolean | nullsí
noun___uncountableboolean | nullsí
noun___is_properboolean | nullsí
noun___always_pluralboolean | nullsí
verb___is_irregularboolean | nullsí
verb___transitivityEnVerbTransitivityE | nullsí
verb___is_phrasalboolean | nullsí
verb___phrasal_object_patternEnPhrasalObjectPatternE | nullsí
base_phrasalstring | nullsí
formsPublicWordV1FormT[]sí
similaritynumberno
sourcestringno
modifiedbooleanno

OriginT

NombreTipoObligatorioDescripción
idstringsí
namestringsí
versionstring | nullsí
urlstringno
record_urlstringno
licensesOriginLicenseT[]sí
license_relationstring
allany
síAll obligations apply, or the source explicitly offers a choice.
attributionstringsí
noticesstring[]sí
scopestring
worddataset
síDataset means that distribution between individual words is unknown.
methodstring
datasetmanual
sí
recorded_atstring | nullsí
acquisitionsOriginAcquisitionT[]noCopy/fork events belonging to this source snapshot; absent before any acquisition.
inheritedbooleansíAutomatically inherited terms cannot be removed by ordinary editing.

OriginLicenseT

A durable statement of terms, not a pointer to a mutable dataset registry.

NombreTipoObligatorioDescripción
spdxstringno
namestringsí
urlstringsí
textstringnoRequired for custom licenses; preserved verbatim when supplied.

OriginAcquisitionT

An acquisition of a source snapshot, without repeating its license terms.

NombreTipoObligatorioDescripción
idstringsí
methodstring
copyfork
sí
recorded_atstring | nullsí
revisionstringno
viaobjectnoThe intermediate dataset the material passed through; this adds no license obligations.

WordLicenseT

One license can occur more than once; origin_id refers to origins or contributions.

NombreTipoObligatorioDescripción
origin_idstringsí
spdxstringno
namestringsí
urlstringsí
textstringnoRequired for custom licenses; preserved verbatim when supplied.

EnPartOfSpeechE

Uno de: noun, verb, modal_verb, adjective, adverb, pronoun, numeral, numeral_fractional, determiner, interjection, article, preposition, conjunction, letter, phrase, grammar_pattern

EnWordFormsE

Uno de: base_form, plural_form, possessive_singular_form, possessive_plural_form, past_simple, past_participle, present_participle, third_person_singular, comparative_form, superlative_form, object, possessive_adjective, possessive_pronoun, reflexive, ordinal, multiplicative

WordLevelE

Uno de: A1, A2, B1, B2, C1, C2

EnAreaVariantsE

Uno de: common, british, american, australian

CategoryE

Uno de: scientific, technical, medical, legal, business, IT, art, political, sport, culinary

LanguageRegisterE

Uno de: formal, informal, slang

PronunciationT

Portable pronunciation; database IDs never travel in datasets or public responses.

NombreTipoObligatorioDescripción
audioPronunciationAudioT[]noRecordings carry their own terms, independent of the word's text.
typestring
ipaenpr
sí
textstring | nullsí
area_variantEnAreaVariantsEsí
sort_orderintegersí

PronunciationAudioT

External recordings only; missing license metadata is an empty list, never the text license.

NombreTipoObligatorioDescripción
urlstringsí
source_urlstring | nullno
attributionstring | nullno
licensesOriginLicenseT[]sí
sort_orderintegersí

EnVerbTransitivityE

Uno de: transitive, intransitive, both

EnPhrasalObjectPatternE

Uno de: no_object, inseparable, separable, separable_pronoun_only

PublicWordV1FormT

NombreTipoObligatorioDescripción
alternativesstring[]no
idintegersí
wordstringsí
form_of_wordEnWordFormsEsí
area_variantEnAreaVariantsEsí
transcriptionstring | nullsí
pronunciationsPronunciationT[]noOrdered pronunciations, with legacy transcription and base-form fallback.

PublicSearchDetailedV1MetaT

NombreTipoObligatorioDescripción
datasetstringnoPresent only for an explicitly selected dataset.
pageintegersí
limitintegersí
has_morebooleansí
fuzzybooleansí
short_termbooleansí

PublicSearchDetailedV1ResT

NombreTipoObligatorioDescripción
dataPublicWordV1T[]sí
metaPublicSearchDetailedV1MetaTsí

PublicWordV1T

NombreTipoObligatorioDescripción
etymologiesobject[]no
meaningsPublicWordV1MeaningT[]sí
short_translationsPublicWordV1ShortTranslationT[]sí
phrasal_variantsstring[]no
alternativesstring[]noAlternative spellings of this headword, shared by all its parts of speech.
originsOriginT[]no
contributionsOriginT[]noTerms of the datasets whose edits still contribute to this word.
licensesWordLicenseT[]no
idintegersí
wordstringsí
part_of_speechEnPartOfSpeechEsí
form_of_wordEnWordFormsEsí
is_obsoletebooleansí
is_abbreviationbooleansí
word_levelWordLevelE | nullsí
area_variantEnAreaVariantsE | nullsí
categoriesCategoryE[]sí
language_registerLanguageRegisterE | nullsí
descriptionstring | nullsí
transcriptionstring | nullsí
pronunciationsPronunciationT[]noOrdered pronunciations, with legacy transcription and base-form fallback.
patternstring[] | nullsí
noun___irregular_pluralboolean | nullsí
noun___uncountableboolean | nullsí
noun___is_properboolean | nullsí
noun___always_pluralboolean | nullsí
verb___is_irregularboolean | nullsí
verb___transitivityEnVerbTransitivityE | nullsí
verb___is_phrasalboolean | nullsí
verb___phrasal_object_patternEnPhrasalObjectPatternE | nullsí
base_phrasalstring | nullsí
formsPublicWordV1FormT[]sí
similaritynumberno
sourcestringno
modifiedbooleanno

PublicWordV1MeaningT

NombreTipoObligatorioDescripción
etymology_numberinteger | nullnoLocal number of the owning word etymology; null when unknown.
idintegersí
sort_orderintegersí
titlestringsí
definitionstringsí
is_obsoletebooleansí
examplesstring[]sí
quotesMeaningQuoteT[]no
categoriesCategoryE[]sí
meaning_levelWordLevelE | nullsí
area_variantEnAreaVariantsEsí
language_registerLanguageRegisterE | nullsí
translationsPublicWordV1MeaningTranslationT[]sí
synonymsstring[]sí
antonymsstring[]sí

MeaningQuoteT

A sourced quotation, in authored array order. Missing attribution is explicit.

NombreTipoObligatorioDescripción
textstringsí
referencestring | nullsí
source_urlstring | nullno

PublicWordV1MeaningTranslationT

NombreTipoObligatorioDescripción
idintegersí
languageAvailableTranslationLanguagesEsí
titlestringsí
definitionstringsí
variants_of_wordsstring[]sí

AvailableTranslationLanguagesE

Uno de: ru, es, fr, de, pt, zh, ar

PublicWordV1ShortTranslationT

NombreTipoObligatorioDescripción
idintegersí
languageAvailableTranslationLanguagesEsí
descriptionstringsí
variants_of_wordsstring[]sí

PublicWordV1ResT

NombreTipoObligatorioDescripción
dataPublicWordV1Tsí

PublicHeadwordV1MetaT

NombreTipoObligatorioDescripción
wordstringsí
countintegersí
variantsstring[]no

PublicHeadwordV1ResT

NombreTipoObligatorioDescripción
dataPublicWordV1T[]sí
metaPublicHeadwordV1MetaTsí

PublicMeaningV1T

NombreTipoObligatorioDescripción
originsOriginT[]no
contributionsOriginT[]no
licensesWordLicenseT[]no
word_idintegersí
part_of_speechEnPartOfSpeechEsí
sourcestringno
modifiedbooleanno
etymology_numberinteger | nullnoLocal number of the owning word etymology; null when unknown.
idintegersí
sort_orderintegersí
titlestringsí
definitionstringsí
is_obsoletebooleansí
examplesstring[]sí
quotesMeaningQuoteT[]no
categoriesCategoryE[]sí
meaning_levelWordLevelE | nullsí
area_variantEnAreaVariantsEsí
language_registerLanguageRegisterE | nullsí
translationsPublicWordV1MeaningTranslationT[]sí
synonymsstring[]sí
antonymsstring[]sí

PublicHeadwordMeaningsV1ResT

NombreTipoObligatorioDescripción
dataPublicMeaningV1T[]sí
metaPublicHeadwordV1MetaTsí

PublicWordFormV1T

NombreTipoObligatorioDescripción
originsOriginT[]no
contributionsOriginT[]no
licensesWordLicenseT[]no
word_idintegersí
part_of_speechEnPartOfSpeechEsí
sourcestringno
modifiedbooleanno
alternativesstring[]no
idintegersí
wordstringsí
form_of_wordEnWordFormsEsí
area_variantEnAreaVariantsEsí
transcriptionstring | nullsí
pronunciationsPronunciationT[]noOrdered pronunciations, with legacy transcription and base-form fallback.

PublicHeadwordFormsV1ResT

NombreTipoObligatorioDescripción
dataPublicWordFormV1T[]sí
metaPublicHeadwordV1MetaTsí

PublicShortTranslationV1T

NombreTipoObligatorioDescripción
originsOriginT[]no
contributionsOriginT[]no
licensesWordLicenseT[]no
word_idintegersí
part_of_speechEnPartOfSpeechEsí
sourcestringno
modifiedbooleanno
idintegersí
languageAvailableTranslationLanguagesEsí
descriptionstringsí
variants_of_wordsstring[]sí

PublicMeaningTranslationV1T

NombreTipoObligatorioDescripción
meaning_idintegersí
originsOriginT[]no
contributionsOriginT[]no
licensesWordLicenseT[]no
word_idintegersí
part_of_speechEnPartOfSpeechEsí
sourcestringno
modifiedbooleanno
idintegersí
languageAvailableTranslationLanguagesEsí
titlestringsí
definitionstringsí
variants_of_wordsstring[]sí

PublicWordLinkV1T

NombreTipoObligatorioDescripción
meaning_idintegersí
wordstringsí
originsOriginT[]no
contributionsOriginT[]no
licensesWordLicenseT[]no
word_idintegersí
part_of_speechEnPartOfSpeechEsí
sourcestringno
modifiedbooleanno

PublicHeadwordLinksV1ResT

NombreTipoObligatorioDescripción
dataPublicWordLinkV1T[]sí
metaPublicHeadwordV1MetaTsí

PublicChangeV1T

NombreTipoObligatorioDescripción
inherited_fromOriginT | nullno
contributionOriginT | nullnoTerms captured when this edit was made, independent of later dataset changes.
reasonstring | nullno
created_atstringsí
wordstringsí
part_of_speechstring | nullsí
entityChangeEntityEsí
actionChangeActionEsí
recordChangeRecordT | nullsí
diffChangeDiffTsí
originChangeOriginEsí
authorstring | nullsí
sourcestringno

ChangeEntityE

What was edited

Uno de: word, word_form, meaning, meaning_translation, short_translation

ChangeActionE

Uno de: create, update, delete

ChangeRecordT

The record of an entry an edit is about, by what it says rather than by its id: ids change when a dataset is updated and differ between instances. Null for the word itself — the headword and the part of speech name it.

NombreTipoObligatorioDescripción

ChangeFormRecordT

NombreTipoObligatorioDescripción
wordstringsí
form_of_wordstringsí

ChangeMeaningRecordT

NombreTipoObligatorioDescripción
titlestringsí
sort_orderintegersí

ChangeTranslationRecordT

NombreTipoObligatorioDescripción
meaningChangeMeaningRecordTsí
languagestringsí
titlestringsí

ChangeShortTranslationRecordT

NombreTipoObligatorioDescripción
languagestringsí
descriptionstringsí

ChangeDiffT

The values an edit changed: `{ field: { before, after } }`; a creation has no `before`, a deletion no `after`

NombreTipoObligatorioDescripción

ChangeOriginE

Where an edit came from

Uno de: admin, suggestion, revert

PublicHeadwordHistoryV1MetaT

NombreTipoObligatorioDescripción
wordstringsí
countintegersí
variantsstring[]no

PublicHeadwordHistoryV1ResT

NombreTipoObligatorioDescripción
dataPublicChangeV1T[]sí
metaPublicHeadwordHistoryV1MetaTsí

PublicDatasetTermsV1T

NombreTipoObligatorioDescripción
originsOriginT[]no
licensesWordLicenseT[]no
descriptionstring | nullno
datasetstringsí
titlestringno
activebooleansí
sourcestringsí
dataset_versionstring | nullsí
licensestringsí
license_urlstringsí
attributionstringsí
attribution_urlstring | nullsí
noticestringsí
license_textstringsí

PublicWordDatasetV1T

NombreTipoObligatorioDescripción
wordstringsí
variantsstring[]sí
countintegersí
entriesPublicWordV1T[]sí
originsOriginT[]no
licensesWordLicenseT[]no
descriptionstring | nullno
datasetstringsí
titlestringno
activebooleansí
sourcestringsí
dataset_versionstring | nullsí
licensestringsí
license_urlstringsí
attributionstringsí
attribution_urlstring | nullsí
noticestringsí
license_textstringsí

PublicWordDatasetsV1MetaT

NombreTipoObligatorioDescripción
wordstringsí
datasetsintegersí
foundintegersí

PublicWordDatasetsV1ResT

NombreTipoObligatorioDescripción
dataPublicWordDatasetV1T[]sí
metaPublicWordDatasetsV1MetaTsí

PublicHeadwordTranslationsV1T

NombreTipoObligatorioDescripción
short_translationsPublicShortTranslationV1T[]sí
meaning_translationsPublicMeaningTranslationV1T[]sí

PublicHeadwordTranslationsV1ResT

NombreTipoObligatorioDescripción
metaPublicHeadwordV1MetaTsí
dataPublicHeadwordTranslationsV1Tsí

PublicWordsBatchItemV1T

NombreTipoObligatorioDescripción
wordstringsí
countintegersí
entriesPublicWordV1T[]sí

PublicWordsBatchV1MetaT

NombreTipoObligatorioDescripción
countintegersí
not_foundstring[]sí

PublicWordsBatchV1ResT

NombreTipoObligatorioDescripción
dataPublicWordsBatchItemV1T[]sí
metaPublicWordsBatchV1MetaTsí

PublicWordsV1MetaT

NombreTipoObligatorioDescripción
limitintegersí
has_morebooleansí
next_cursorstring | nullsí

PublicWordsV1ResT

NombreTipoObligatorioDescripción
dataPublicWordV1T[]sí
metaPublicWordsV1MetaTsí

PublicDatasetCountsV1T

NombreTipoObligatorioDescripción
entriesintegersí
wordsintegersí
phrasesintegersí
grammar_patternsintegersí
word_formsintegersí
meaningsintegersí
meaning_translationsintegersí
short_translationsintegersí

PublicMetaV1T

NombreTipoObligatorioDescripción
originsOriginT[]no
licensesWordLicenseT[]no
descriptionstring | nullno
api_versionstringsí
app_versionstringsí
dataset_versionstring | nullsí
licensestringsí
license_urlstringsí
attributionstringsí
noticestringsí
datasetstringno
titlestringno
sourcestringno
attribution_urlstring | nullno
license_textstringno
modified_entriesintegerno
countsPublicDatasetCountsV1Tsí
available_languagesPublicAvailableLanguagesV1Tsí

PublicAvailableLanguagesV1T

NombreTipoObligatorioDescripción
sourcestring[]sí
translationsAvailableTranslationLanguagesE[]sí

PublicMetaV1ResT

NombreTipoObligatorioDescripción
dataPublicMetaV1Tsí

PublicSuggestionCreatedV1T

NombreTipoObligatorioDescripción
idintegersí
statusstringsí

PublicSuggestionCreatedV1ResT

NombreTipoObligatorioDescripción
dataPublicSuggestionCreatedV1Tsí

PublicApiErrorT

NombreTipoObligatorioDescripción
statusCodenumbersí
messagestringsí
errorbooleansí

DictionaryApiV1DatasetsResT

NombreTipoObligatorioDescripción
dataobject[]sí
metaobjectsífound counts datasets with entries, including for adapters whose misses are HTTP 200.

DictionaryApiV1ResT

NombreTipoObligatorioDescripción

DictionaryApiDefinitionT

NombreTipoObligatorioDescripción
definitionstringsí
examplestringno
synonymsstring[]sí
antonymsstring[]sí

DictionaryApiPhoneticT

NombreTipoObligatorioDescripción
textstringno
audiostringsí
sourceUrlstringno
licenseDictionaryApiLicenseTno
vocabBloomobjectnoLossless recording terms; the upstream singular license cannot express all of these.

DictionaryApiLicenseT

NombreTipoObligatorioDescripción
namestringsí
urlstringsí

DictionaryApiErrorT

NombreTipoObligatorioDescripción
titlestringsí
messagestringsí
resolutionstringsí

DictionaryApiV2DatasetsResT

NombreTipoObligatorioDescripción
dataobject[]sí
metaobjectsífound counts datasets with entries, including for adapters whose misses are HTTP 200.

DictionaryApiV2ResT

NombreTipoObligatorioDescripción

DictionaryApiMeaningT

NombreTipoObligatorioDescripción
partOfSpeechstringsí
definitionsDictionaryApiDefinitionT[]sí
synonymsstring[]sí
antonymsstring[]sí

FreeDictionaryDatasetsResT

NombreTipoObligatorioDescripción
dataobject[]sí
metaobjectsífound counts datasets with entries, including for adapters whose misses are HTTP 200.

FreeDictionaryEntriesResT

NombreTipoObligatorioDescripción
wordstringsí
entriesFreeDictionaryEntryT[]sí
sourceobjectsí
vocabBloomPublicDatasetTermsV1TsíTerms of the dataset read. Word-specific origins are retained on each entry.

FreeDictionaryEntryT

NombreTipoObligatorioDescripción
languageFreeDictionaryLanguageTsí
partOfSpeechstringsí
pronunciationsobject[]sí
formsobject[]sí
sensesFreeDictionarySenseT[]sí
synonymsstring[]sí
antonymsstring[]sí
vocabBloomobjectsíNative entry identity and lossless terms; additive to the upstream format.

FreeDictionaryLanguageT

NombreTipoObligatorioDescripción
codestringsí
namestringsí

FreeDictionarySenseT

NombreTipoObligatorioDescripción
definitionstringsí
tagsstring[]sí
examplesstring[]sí
quotesobject[]sí
synonymsstring[]sí
antonymsstring[]sí
translationsobject[]no
subsensesFreeDictionarySenseT[]sí

FreeDictionaryErrorT

Upstream parameter errors are plain text, not the native error envelope.

NombreTipoObligatorioDescripción

FreeDictionaryLanguagesResT

NombreTipoObligatorioDescripción

PublicDatasetsV1ResT

Public selector inventory, in installation order; no dictionary connections or counts.

NombreTipoObligatorioDescripción
dataPublicDatasetTermsV1T[]sí
metaobjectsí

PublicSearchDatasetResultV1T

NombreTipoObligatorioDescripción
statusstring
ok
sí
dataPublicWordV1T[]sí
metaPublicSearchDetailedV1MetaTsí
originsOriginT[]no
licensesWordLicenseT[]no
descriptionstring | nullno
datasetstringsí
titlestringno
activebooleansí
sourcestringsí
dataset_versionstring | nullsí
licensestringsí
license_urlstringsí
attributionstringsí
attribution_urlstring | nullsí
noticestringsí
license_textstringsí

PublicSearchDatasetUnavailableV1T

A failed reader has no result list or paging metadata; it is not an empty match.

NombreTipoObligatorioDescripción
statusstring
unavailable
sí
errorstring
dataset_unavailable
sí
originsOriginT[]no
licensesWordLicenseT[]no
descriptionstring | nullno
datasetstringsí
titlestringno
activebooleansí
sourcestringsí
dataset_versionstring | nullsí
licensestringsí
license_urlstringsí
attributionstringsí
attribution_urlstring | nullsí
noticestringsí
license_textstringsí

PublicSearchDatasetV1T

NombreTipoObligatorioDescripción

PublicSearchDatasetsV1ResT

NombreTipoObligatorioDescripción
dataPublicSearchDatasetV1T[]sí
metaobjectsí

PublicSemanticMatchV1T

A matching existing sense, with cosine similarity (not a confidence probability).

NombreTipoObligatorioDescripción
wordPublicSearchWordV1Tsí
meaningobjectsí
scorenumbersíCosine similarity from -1 to 1; no calibrated no-answer threshold.

PublicSemanticSearchV1ResT

NombreTipoObligatorioDescripción
dataPublicSemanticMatchV1T[]sí
metaobjectsí

PublicSemanticStatusV1ResT

NombreTipoObligatorioDescripción
dataobjectsí