Skip to the page

Using the API

Languages

A card has one pronunciation field and one example. Most languages write them the same way; the languages on this page each have a format of their own, and Lymi's AI writes to it when it enriches a card.

Every other language

pronunciation holds IPA or a plain respelling, and example is a plain sentence. Two cards are duplicates when their term and language match.

Japanese

Tag ja, written in Jpan.

pronunciation, called Reading in the app
The reading in hiragana. Leave it out when the term is written only in kana. 食べる → たべる
example
The reading in hiragana in square brackets right after each run of kanji, and nothing over kana. 毎朝[まいあさ]パンを食[た]べます。 Each reading matches \[([\p{Script=Hiragana}\p{Script=Katakana}ー]{1,30})\] with the u flag.
Duplicates
The term and language, unless both cards have a reading and the readings differ: then they are two words.

Chinese

Tag zh, written in Hans or Hant.

pronunciation, called Reading in the app
Pinyin in tone marks and citation tones, as dictionaries write them: 不是 bù shì and 一起 yīqǐ, never the spoken bú or yì. A neutral tone has no mark (péngyou, dōngxi), an erhua r joins the syllable before it (yīdiǎnr), and letters stay as written (kǎlā OK). Where a character has two readings, as 行 háng and xíng do, the meaning decides. Not IPA or tone numbers. 学习 → xuéxí
example
Pinyin in square brackets right after each word of every example, one syllable for each character, in tone marks, and nothing after punctuation, letters or digits. 我[wǒ]去[qù]银行[yínháng]取钱[qǔqián]。 Each reading matches \[([\p{Script=Latin}\p{M}0-5 '’:]{1,60})\] with the u flag.
Duplicates
The term and language, unless both cards have a reading and the readings differ: then they are two words.

Ukrainian

Tag uk, written in Cyrl.

pronunciation, called Stress in the app
The term with U+0301 over the stressed vowel of each word of two or more syllables. Leave it out when every word of the term has one syllable. Not IPA. замок → за́мок
example
A plain sentence, with no readings inside it.
Duplicates
The term and language, unless both cards have a reading and the readings differ: then they are two words.

Russian

Tag ru, written in Cyrl.

pronunciation, called Stress in the app
The term with U+0301 over the stressed vowel of each word of two or more syllables, and ё where the term writes е. Leave it out when every word of the term has one syllable or is written with ё, and none writes е for ё. Not IPA. замок → за́мок
example
A plain sentence, with no readings inside it.
Duplicates
The term and language, unless both cards have a reading and the readings differ: then they are two words.

Tamil

Tag ta, written in Taml.

pronunciation, called Reading in the app
Only for a word not said as spelled, mostly a loanword, the reading in Latin letters: long vowels with a macron (ā ī ū ē ō), retroflex consonants with a dot below (ṭ ḍ ṇ ḷ), ழ as zh, ஷ as sh, and each stop voiced where it is said voiced. A word in grantha letters (ஜ ஷ ஸ ஹ) is said as spelled too. Leave it out when the word is said as spelled, because Lymi reads the spelling itself. Not IPA, and not the source word's own spelling: bēg for பேக், never bag. பஸ் → bas
example
A plain sentence, with no readings inside it.
Duplicates
The term and language, as for any language.

Cantonese

Tag yue, written in Hant or Hans.

pronunciation, called Reading in the app
Jyutping with a tone number from 1 to 6 after each syllable, as dictionaries write it: 你好 nei5 hou2, 唔該 m4 goi1. Write a changed tone as it is said (仔女 zai2 neoi2), letters as they are said or as written (T恤 ti1 seot1, 卡拉OK kaa1 laa1 OK), and where a character has two readings, as 行 hong4 and hang4 do, let the meaning decide. Not Yale, pinyin or IPA, and never tone marks. 學習 → hok6 zaap6
example
Jyutping with tone numbers in square brackets right after each word of every example, one syllable for each character, and nothing after punctuation, letters or digits. 我[ngo5]去[heoi3]銀行[ngan4 hong4]攞錢[lo2 cin2]。 Each reading matches \[([a-zA-Za-zA-Z1-6¹²³⁴⁵⁶1-6 '’-]{1,60})\] with the u flag.
Duplicates
The term and language, unless both cards have a reading and the readings differ: then they are two words.

Korean

Tag ko, written in Kore.

pronunciation, called Pronunciation in the app
How the term is said, in Hangul, only where that differs from its spelling. Leave it out when the term is said as written. Not romanization or IPA. 학교 → 학꾜
example
A plain sentence, with no readings inside it.
Duplicates
The term and language, as for any language.

Filipino

Tag fil, written in Latn.

pronunciation, called Pronunciation in the app
The term with its stress marks: an acute on the stressed vowel (báhay), a grave on a final vowel that ends in a glottal stop (bátà), and a circumflex where the two meet (basâ). Not IPA. bata → bátà
example
A plain sentence, with no readings inside it.
Duplicates
The term and language, as for any language.

Vietnamese

Tag vi, written in Latn.

pronunciation, called Pronunciation in the app
How the term is said, in Vietnamese spelling with every tone mark, only where the term does not show it: a term typed without its tone marks, or an abbreviation (km → ki-lô-mét). Leave it out when the term is written with its tone marks. Not IPA. cam on → cảm ơn
example
A plain sentence, with no readings inside it.
Duplicates
The term and language, as for any language.

Georgian

Tag ka, written in Geor.

pronunciation, called Pronunciation in the app
The term romanized letter by letter in the national system, with an apostrophe after each ejective: კ k', პ p', ტ t', წ ts', ჭ ch', ყ q'. Not IPA. ჭიქა → ch'ika
example
A plain sentence, with no readings inside it.
Duplicates
The term and language, as for any language.

Armenian

Tag hy, written in Armn.

pronunciation, called Pronunciation in the app
How the term is said in Eastern Armenian, romanized: an apostrophe after each aspirated consonant (թ t', փ p', ք k', ց ts', չ ch'), ու as u, ը as ə, and ե as ye, ո as vo and և as yev at the start of a word. Not IPA. քույր → k'uyr
example
A plain sentence, with no readings inside it.
Duplicates
The term and language, as for any language.

Lithuanian

Tag lt, written in Latn.

pronunciation, called Pronunciation in the app
The term with its accent mark, as Lithuanian dictionaries print it: an acute, grave or tilde on the stressed syllable (výras, kalbà). Not IPA. namas → nãmas
example
A plain sentence, with no readings inside it.
Duplicates
The term and language, as for any language.

Danish

Tag da, written in Latn.

pronunciation, called Pronunciation in the app
How the word is said, in IPA as Den Danske Ordbog writes it: stress ˈ, length ː and stød ˀ, leaving out the letters that are not said. Not a respelling. hus → ˈhuˀs
example
A plain sentence, with no readings inside it.
Duplicates
The term and language, as for any language.

French

Tag fr, written in Latn.

pronunciation, called Pronunciation in the app
IPA, without slashes. In a phrase, mark each liaison with ‿ (les amis → lez‿ami). Not a respelling. oiseau → wazo
example
A plain sentence, with no readings inside it.
Duplicates
The term and language, as for any language.

Portuguese

Tag pt, written in Latn.

pronunciation, called Pronunciation in the app
IPA as the word is said in Portugal, without slashes; a pt-BR deck is said as in Brazil. Not a respelling. obrigado → ɔbɾiˈɣaðu
example
A plain sentence, with no readings inside it.
Duplicates
The term and language, as for any language.

Brazilian Portuguese

Tag pt-BR, written in Latn.

pronunciation, called Pronunciation in the app
IPA as the word is said in Brazil, without slashes. Not a respelling. obrigado → obɾiˈɡadu
example
A plain sentence, with no readings inside it.
Duplicates
The term and language, as for any language.

Ask Lymi

The same facts come from GET /api/languages, which needs no key and may be cached for an hour. An assistant gets them from list_decks, as a languages map for the languages of the learner's decks.

Terminal
curl "$LYMI_URL/api/languages"
Response · 200, first entry
{
  "languages": [
    {
      "tag": "ja",
      "name": "Japanese",
      "scripts": [
        "Jpan"
      ],
      "pronunciation": {
        "label": "reading",
        "format": "The reading in hiragana. Leave it out when the term is written only in kana.",
        "sample": {
          "term": "食べる",
          "pronunciation": "たべる"
        }
      },
      "example": {
        "format": "The reading in hiragana in square brackets right after each run of kanji, and nothing over kana.",
        "pattern": "\\[([\\p{Script=Hiragana}\\p{Script=Katakana}ー]{1,30})\\]",
        "sample": "毎朝[まいあさ]パンを食[た]べます。"
      },
      "duplicates": "term-and-reading"
    }
  ]
}
Esc