Download OpenAPI specification:
Documentation for the endpoints provided by the Monkeytype API server.
Note that authentication is performed with the Authorization HTTP header in the format Authorization: ApeKey YOUR_APE_KEY
There is a rate limit of 30 requests per minute
across all endpoints with some endpoints being more strict. Rate limit rates are shared across all ape keys.
Get a user's data.
Rate limit: This operation can be called up to 60 times per hour for regular users.
{- "message": "string",
- "data": {
- "name": "string",
- "uid": "string",
- "addedAt": 0,
- "personalBests": {
- "time": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "words": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "quote": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "custom": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "zen": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}
}, - "lastReultHashes": [
- "string"
], - "completedTests": 0,
- "startedTests": 0,
- "timeTyping": 0,
- "streak": {
- "lastResultTimestamp": 0,
- "length": 0,
- "maxLength": 0,
- "hourOffset": -11
}, - "xp": 0,
- "discordId": "string",
- "discordAvatar": "string",
- "tags": [
- {
- "_id": "string",
- "name": "string",
- "personalBests": {
- "time": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "words": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "quote": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "custom": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "zen": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}
}
}
], - "profileDetails": {
- "bio": "string",
- "keyboard": "string",
}, - "customThemes": [
- {
- "_id": "string",
- "name": "string",
- "colors": null
}
], - "premium": {
- "startTimestamp": 0,
- "expirationTimestamp": 0
}, - "isPremium": true,
- "quoteRatings": {
- "property1": {
- "property1": 0,
- "property2": 0
}, - "property2": {
- "property1": 0,
- "property2": 0
}
}, - "favoriteQuotes": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "lbMemory": {
- "property1": {
- "property1": {
- "property1": 0,
- "property2": 0
}, - "property2": {
- "property1": 0,
- "property2": 0
}
}, - "property2": {
- "property1": {
- "property1": 0,
- "property2": 0
}, - "property2": {
- "property1": 0,
- "property2": 0
}
}
}, - "allTimeLbs": {
- "time": {
- "property1": {
- "property1": {
- "rank": 0,
- "count": 0
}, - "property2": {
- "rank": 0,
- "count": 0
}
}, - "property2": {
- "property1": {
- "rank": 0,
- "count": 0
}, - "property2": {
- "rank": 0,
- "count": 0
}
}
}
}, - "inventory": {
- "badges": [
- {
- "id": 0,
- "selected": true
}
]
}, - "banned": true,
- "lbOptOut": true,
- "verified": true,
- "needsToChangeName": true,
- "quoteMod": true,
- "resultFilterPresets": [
- {
- "_id": "string",
- "name": "string",
- "pb": {
- "no": true,
- "yes": true
}, - "difficulty": {
- "property1": true,
- "property2": true
}, - "mode": {
- "property1": true,
- "property2": true
}, - "words": {
- "property1": true,
- "property2": true
}, - "time": {
- "property1": true,
- "property2": true
}, - "quoteLength": {
- "property1": true,
- "property2": true
}, - "punctuation": {
- "on": true,
- "off": true
}, - "numbers": {
- "on": true,
- "off": true
}, - "date": {
- "last_day": true,
- "last_week": true,
- "last_month": true,
- "last_3months": true,
- "all": true
}, - "tags": {
- "property1": true,
- "property2": true
}, - "language": {
- "property1": true,
- "property2": true
}, - "funbox": {
- "property1": true,
- "property2": true
}
}
], - "testActivity": {
- "testsByDays": [
- 0
], - "lastDay": 0
}, - "inboxUnreadSize": 0
}
}
Creates a new user.
Rate limit: This operation can be called up to 2 times per day for regular users.
Required configuration: This operation can only be called if the configuration for users.signUp
is true
.
Body
string <email> | |
name required | string [ 1 .. 16 ] characters ^[\da-zA-Z_-]+$ |
uid | string |
captcha required | string |
{- "name": "string",
- "uid": "string",
- "captcha": "string"
}
{- "message": "string"
}
Checks to see if a username is available.
Rate limit: This operation can be called up to 60 times per minute for regular users.
name required | string [ 1 .. 16 ] characters ^[\da-zA-Z_-]+$ |
{- "message": "string"
}
Updates a user's name.
Rate limit: This operation can be called up to 3 times per day for regular users.
Body
name required | string [ 1 .. 16 ] characters ^[\da-zA-Z_-]+$ |
{- "name": "string"
}
{- "message": "string"
}
Updates a user's cached leaderboard state.
Rate limit: This operation can be called up to 60 times per minute for regular users.
Body
mode required | string Enum: "time" "words" "quote" "custom" "zen" |
required | (string or number) or string or string |
language required | string Enum: "english" "english_1k" "english_5k" "english_10k" "english_25k" "english_450k" "english_commonly_misspelled" "english_contractions" "english_doubleletter" "english_shakespearean" "english_old" "english_medical" "spanish" "spanish_1k" "spanish_10k" "spanish_650k" "french" "french_1k" "french_2k" "french_10k" "french_600k" "french_bitoduc" "nepali" "nepali_1k" "nepali_romanized" "sanskrit" "sanskrit_roman" "santali" "azerbaijani" "azerbaijani_1k" "arabic" "arabic_10k" "arabic_egypt" "arabic_egypt_1k" "malagasy" "malagasy_1k" "malay" "malay_1k" "mongolian" "mongolian_10k" "kannada" "korean" "korean_1k" "korean_5k" "khmer" "chinese_simplified" "chinese_simplified_1k" "chinese_simplified_5k" "chinese_simplified_10k" "chinese_simplified_50k" "chinese_traditional" "russian" "russian_1k" "russian_5k" "russian_10k" "russian_25k" "russian_50k" "russian_375k" "russian_contractions" "russian_contractions_1k" "russian_abbreviations" "ukrainian" "ukrainian_1k" "ukrainian_10k" "ukrainian_50k" "ukrainian_endings" "ukrainian_latynka" "ukrainian_latynka_1k" "ukrainian_latynka_10k" "ukrainian_latynka_50k" "ukrainian_latynka_endings" "portuguese" "portuguese_acentos_e_cedilha" "portuguese_1k" "portuguese_3k" "portuguese_5k" "portuguese_320k" "portuguese_550k" "indonesian" "indonesian_1k" "indonesian_10k" "kurdish_central" "kurdish_central_2k" "kurdish_central_4k" "german" "german_1k" "german_10k" "german_250k" "swiss_german" "swiss_german_1k" "swiss_german_2k" "afrikaans" "afrikaans_1k" "afrikaans_10k" "georgian" "tamil" "tamil_1k" "tanglish" "tamil_old" "telugu" "telugu_1k" "greek" "greek_1k" "greek_5k" "greek_10k" "greek_25k" "greeklish" "greeklish_1k" "greeklish_5k" "greeklish_10k" "greeklish_25k" "turkish" "turkish_1k" "turkish_5k" "irish" "italian" "italian_1k" "italian_7k" "italian_60k" "italian_280k" "friulian" "latin" "galician" "thai" "thai_1k" "thai_5k" "thai_10k" "thai_20k" "thai_50k" "thai_60k" "polish" "polish_2k" "polish_5k" "polish_10k" "polish_20k" "polish_40k" "polish_200k" "czech" "czech_1k" "czech_10k" "slovak" "slovak_1k" "slovak_10k" "slovenian" "slovenian_1k" "slovenian_5k" "croatian" "croatian_1k" "dutch" "dutch_1k" "dutch_10k" "filipino" "filipino_1k" "danish" "danish_1k" "danish_10k" "hungarian" "hungarian_2k" "norwegian_bokmal" "norwegian_bokmal_1k" "norwegian_bokmal_5k" "norwegian_bokmal_10k" "norwegian_bokmal_150k" "norwegian_bokmal_600k" "norwegian_nynorsk" "norwegian_nynorsk_1k" "norwegian_nynorsk_5k" "norwegian_nynorsk_10k" "norwegian_nynorsk_100k" "norwegian_nynorsk_400k" "hebrew" "hebrew_1k" "hebrew_5k" "hebrew_10k" "icelandic_1k" "romanian" "romanian_1k" "romanian_5k" "romanian_10k" "romanian_25k" "romanian_50k" "romanian_100k" "romanian_200k" "lorem_ipsum" "finnish" "finnish_1k" "finnish_10k" "estonian" "estonian_1k" "estonian_5k" "estonian_10k" "udmurt" "welsh" "welsh_1k" "persian" "persian_1k" "persian_5k" "persian_20k" "persian_romanized" "marathi" "kazakh" "kazakh_1k" "vietnamese" "vietnamese_1k" "vietnamese_5k" "jyutping" "pinyin" "pinyin_1k" "pinyin_10k" "hausa" "hausa_1k" "swedish" "swedish_1k" "swedish_diacritics" "serbian_latin" "serbian_latin_10k" "serbian" "serbian_10k" "yoruba_1k" "swahili_1k" "maori_1k" "catalan" "catalan_1k" "lojban_gismu" "lojban_cmavo" "lithuanian" "lithuanian_1k" "lithuanian_3k" "bulgarian" "bulgarian_latin" "bangla" "bangla_letters" "bangla_10k" "bosnian" "bosnian_4k" "toki_pona" "toki_pona_ku_suli" "toki_pona_ku_lili" "esperanto" "esperanto_1k" "esperanto_10k" "esperanto_25k" "esperanto_36k" "esperanto_x_sistemo" "esperanto_x_sistemo_1k" "esperanto_x_sistemo_10k" "esperanto_x_sistemo_25k" "esperanto_x_sistemo_36k" "esperanto_h_sistemo" "esperanto_h_sistemo_1k" "esperanto_h_sistemo_10k" "esperanto_h_sistemo_25k" "esperanto_h_sistemo_36k" "kyrgyz" "kyrgyz_1k" "urdu" "urdu_1k" "urdu_5k" "urdish" "albanian" "albanian_1k" "shona" "shona_1k" "armenian" "armenian_1k" "armenian_western" "armenian_western_1k" "myanmar_burmese" "japanese_hiragana" "japanese_katakana" "japanese_romaji" "japanese_romaji_1k" "sinhala" "latvian" "latvian_1k" "maltese" "maltese_1k" "twitch_emotes" "git" "pig_latin" "hindi" "hindi_1k" "hinglish" "gujarati" "gujarati_1k" "macedonian" "macedonian_1k" "macedonian_10k" "macedonian_75k" "belarusian" "belarusian_1k" "belarusian_5k" "belarusian_10k" "belarusian_25k" "belarusian_50k" "belarusian_100k" "belarusian_lacinka" "belarusian_lacinka_1k" "tatar" "tatar_1k" "tatar_5k" "tatar_9k" "tatar_crimean" "tatar_crimean_1k" "tatar_crimean_5k" "tatar_crimean_10k" "tatar_crimean_15k" "tatar_crimean_cyrillic" "tatar_crimean_cyrillic_1k" "tatar_crimean_cyrillic_5k" "tatar_crimean_cyrillic_10k" "tatar_crimean_cyrillic_15k" "uzbek" "uzbek_1k" "uzbek_70k" "malayalam" "amharic" "amharic_1k" "amharic_5k" "oromo" "oromo_1k" "oromo_5k" "wordle" "league_of_legends" "wordle_1k" "typing_of_the_dead" "yiddish" "frisian" "frisian_1k" "pashto" "euskera" "klingon" "klingon_1k" "quenya" "occitan" "occitan_1k" "occitan_2k" "occitan_5k" "occitan_10k" "bashkir" "zulu" "kabyle" "kabyle_1k" "kabyle_2k" "kabyle_5k" "kabyle_10k" "code_python" "code_python_1k" "code_python_2k" "code_python_5k" "code_fsharp" "code_c" "code_csharp" "code_css" "code_c++" "code_dart" "code_brainfck" "code_javascript" "code_javascript_1k" "code_javascript_react" "code_jule" "code_julia" "code_haskell" "code_html" "code_nim" "code_nix" "code_pascal" "code_java" "code_kotlin" "code_go" "code_rockstar" "code_rust" "code_ruby" "code_r" "code_r_2k" "code_swift" "code_scala" "code_bash" "code_powershell" "code_lua" "code_luau" "code_latex" "code_typst" "code_matlab" "code_sql" "code_perl" "code_php" "code_vim" "code_vimscript" "code_opencl" "code_visual_basic" "code_arduino" "code_systemverilog" "code_elixir" "code_zig" "code_gdscript" "code_gdscript_2" "code_assembly" "code_v" "code_ook" "code_typescript" "code_odin" "xhosa" "xhosa_3k" "tibetan" "tibetan_1k" "code_cobol" "code_common_lisp" "docker_file" "code_fortran" "viossa" "viossa_njutro" |
rank required | integer >= 0 |
{- "mode": "time",
- "mode2": "string",
- "language": "english",
- "rank": 0
}
{- "message": "string"
}
Updates a user's email.
Rate limit: This operation can be called up to 60 times per hour for regular users.
Body
newEmail required | string <email> |
previousEmail required | string <email> |
{- "previousEmail": "[email protected]"
}
{- "message": "string"
}
Updates a user's email.
Rate limit: This operation can be called up to 60 times per hour for regular users.
Body
newPassword required | string >= 6 characters |
{- "newPassword": "string"
}
{- "message": "string"
}
Get user's personal bests.
Rate limit: This operation can be called up to 60 times per hour for regular users.
mode required | string Enum: "time" "words" "quote" "custom" "zen" |
(string or number) or string or string |
{- "message": "string",
- "data": {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
}
Add a result filter preset.
Rate limit: This operation can be called up to 60 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for results.filterPresets.enabled
is true
.
Body
_id required | string^[a-zA-Z0-9_]+$ |
name required | string <= 16 characters ^[0-9a-zA-Z_.-]+$ |
required | object |
required | object |
required | object |
required | object |
required | object |
required | object |
required | object |
required | object |
required | object |
required | object |
required | object |
required | object |
{- "_id": "string",
- "name": "string",
- "pb": {
- "no": true,
- "yes": true
}, - "difficulty": {
- "property1": true,
- "property2": true
}, - "mode": {
- "property1": true,
- "property2": true
}, - "words": {
- "property1": true,
- "property2": true
}, - "time": {
- "property1": true,
- "property2": true
}, - "quoteLength": {
- "property1": true,
- "property2": true
}, - "punctuation": {
- "on": true,
- "off": true
}, - "numbers": {
- "on": true,
- "off": true
}, - "date": {
- "last_day": true,
- "last_week": true,
- "last_month": true,
- "last_3months": true,
- "all": true
}, - "tags": {
- "property1": true,
- "property2": true
}, - "language": {
- "property1": true,
- "property2": true
}, - "funbox": {
- "property1": true,
- "property2": true
}
}
{- "message": "string",
- "data": "string"
}
Remove a result filter preset.
Rate limit: This operation can be called up to 60 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for results.filterPresets.enabled
is true
.
presetId required | string^[a-zA-Z0-9_]+$ |
{- "message": "string"
}
Get the users tags.
Rate limit: This operation can be called up to 60 times per hour for regular users.
{- "message": "string",
- "data": [
- {
- "_id": "string",
- "name": "string",
- "personalBests": {
- "time": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "words": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "quote": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "custom": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "zen": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}
}
}
]
}
Add a tag for the current user.
Rate limit: This operation can be called up to 30 times per hour for regular users.
Body
tagName required | string <= 16 characters ^[0-9a-zA-Z_.-]+$ |
{- "tagName": "string"
}
{- "message": "string",
- "data": {
- "_id": "string",
- "name": "string",
- "personalBests": {
- "time": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "words": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "quote": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "custom": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "zen": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}
}
}
}
Edit a tag.
Rate limit: This operation can be called up to 30 times per hour for regular users.
Body
tagId required | string^[a-zA-Z0-9_]+$ |
newName required | string <= 16 characters ^[0-9a-zA-Z_.-]+$ |
{- "tagId": "string",
- "newName": "string"
}
{- "message": "string"
}
Delete personal bests of a tag.
Rate limit: This operation can be called up to 60 times per hour for regular users.
tagId required | string^[a-zA-Z0-9_]+$ |
{- "message": "string"
}
Get custom themes for the current user.
Rate limit: This operation can be called up to 30 times per hour for regular users.
{- "message": "string",
- "data": [
- {
- "_id": "string",
- "name": "string",
- "colors": null
}
]
}
Add a custom theme for the current user.
Rate limit: This operation can be called up to 30 times per hour for regular users.
Body
name required | string <= 16 characters ^[0-9a-zA-Z_-]+$ |
colors required | any |
{- "name": "string",
- "colors": null
}
{- "message": "string",
- "data": {
- "_id": "string",
- "name": "string"
}
}
Delete a custom theme.
Rate limit: This operation can be called up to 30 times per hour for regular users.
Body
themeId required | string^[a-zA-Z0-9_]+$ |
{- "themeId": "string"
}
{- "message": "string"
}
Edit a custom theme.
Rate limit: This operation can be called up to 30 times per hour for regular users.
Body
themeId required | string^[a-zA-Z0-9_]+$ |
required | object |
{- "themeId": "string",
- "theme": {
- "name": "string",
- "colors": null
}
}
{- "message": "string"
}
Start OAuth authentication with discord.
Rate limit: This operation can be called up to 15 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for users.discordIntegration.enabled
is true
.
{- "message": "string",
}
Links a user's account with a discord account.
Rate limit: This operation can be called up to 15 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for users.discordIntegration.enabled
is true
.
Body
tokenType required | string |
accessToken required | string |
state required | string = 20 characters |
{- "tokenType": "string",
- "accessToken": "string",
- "state": "stringstringstringst"
}
{- "message": "string",
- "data": {
- "discordId": "string",
- "discordAvatar": "string"
}
}
Gets a user's typing stats data.
Rate limit: This operation can be called up to 60 times per hour for regular users.
{- "message": "string",
- "data": {
- "completedTests": 0,
- "startedTests": 0,
- "timeTyping": 0
}
}
Sets a user's streak hour offset.
Rate limit: This operation can be called up to 5 times per hour for regular users.
Body
hourOffset required | integer [ -11 .. 12 ] |
{- "hourOffset": -11
}
{- "message": "string"
}
Gets a user's favorite quotes.
Rate limit: This operation can be called up to 50 times every 30 minutes for regular users.
{- "message": "string",
- "data": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}
}
Add a quote to the user's favorite quotes.
Rate limit: This operation can be called up to 50 times every 30 minutes for regular users.
Body
language required | string Enum: "english" "english_1k" "english_5k" "english_10k" "english_25k" "english_450k" "english_commonly_misspelled" "english_contractions" "english_doubleletter" "english_shakespearean" "english_old" "english_medical" "spanish" "spanish_1k" "spanish_10k" "spanish_650k" "french" "french_1k" "french_2k" "french_10k" "french_600k" "french_bitoduc" "nepali" "nepali_1k" "nepali_romanized" "sanskrit" "sanskrit_roman" "santali" "azerbaijani" "azerbaijani_1k" "arabic" "arabic_10k" "arabic_egypt" "arabic_egypt_1k" "malagasy" "malagasy_1k" "malay" "malay_1k" "mongolian" "mongolian_10k" "kannada" "korean" "korean_1k" "korean_5k" "khmer" "chinese_simplified" "chinese_simplified_1k" "chinese_simplified_5k" "chinese_simplified_10k" "chinese_simplified_50k" "chinese_traditional" "russian" "russian_1k" "russian_5k" "russian_10k" "russian_25k" "russian_50k" "russian_375k" "russian_contractions" "russian_contractions_1k" "russian_abbreviations" "ukrainian" "ukrainian_1k" "ukrainian_10k" "ukrainian_50k" "ukrainian_endings" "ukrainian_latynka" "ukrainian_latynka_1k" "ukrainian_latynka_10k" "ukrainian_latynka_50k" "ukrainian_latynka_endings" "portuguese" "portuguese_acentos_e_cedilha" "portuguese_1k" "portuguese_3k" "portuguese_5k" "portuguese_320k" "portuguese_550k" "indonesian" "indonesian_1k" "indonesian_10k" "kurdish_central" "kurdish_central_2k" "kurdish_central_4k" "german" "german_1k" "german_10k" "german_250k" "swiss_german" "swiss_german_1k" "swiss_german_2k" "afrikaans" "afrikaans_1k" "afrikaans_10k" "georgian" "tamil" "tamil_1k" "tanglish" "tamil_old" "telugu" "telugu_1k" "greek" "greek_1k" "greek_5k" "greek_10k" "greek_25k" "greeklish" "greeklish_1k" "greeklish_5k" "greeklish_10k" "greeklish_25k" "turkish" "turkish_1k" "turkish_5k" "irish" "italian" "italian_1k" "italian_7k" "italian_60k" "italian_280k" "friulian" "latin" "galician" "thai" "thai_1k" "thai_5k" "thai_10k" "thai_20k" "thai_50k" "thai_60k" "polish" "polish_2k" "polish_5k" "polish_10k" "polish_20k" "polish_40k" "polish_200k" "czech" "czech_1k" "czech_10k" "slovak" "slovak_1k" "slovak_10k" "slovenian" "slovenian_1k" "slovenian_5k" "croatian" "croatian_1k" "dutch" "dutch_1k" "dutch_10k" "filipino" "filipino_1k" "danish" "danish_1k" "danish_10k" "hungarian" "hungarian_2k" "norwegian_bokmal" "norwegian_bokmal_1k" "norwegian_bokmal_5k" "norwegian_bokmal_10k" "norwegian_bokmal_150k" "norwegian_bokmal_600k" "norwegian_nynorsk" "norwegian_nynorsk_1k" "norwegian_nynorsk_5k" "norwegian_nynorsk_10k" "norwegian_nynorsk_100k" "norwegian_nynorsk_400k" "hebrew" "hebrew_1k" "hebrew_5k" "hebrew_10k" "icelandic_1k" "romanian" "romanian_1k" "romanian_5k" "romanian_10k" "romanian_25k" "romanian_50k" "romanian_100k" "romanian_200k" "lorem_ipsum" "finnish" "finnish_1k" "finnish_10k" "estonian" "estonian_1k" "estonian_5k" "estonian_10k" "udmurt" "welsh" "welsh_1k" "persian" "persian_1k" "persian_5k" "persian_20k" "persian_romanized" "marathi" "kazakh" "kazakh_1k" "vietnamese" "vietnamese_1k" "vietnamese_5k" "jyutping" "pinyin" "pinyin_1k" "pinyin_10k" "hausa" "hausa_1k" "swedish" "swedish_1k" "swedish_diacritics" "serbian_latin" "serbian_latin_10k" "serbian" "serbian_10k" "yoruba_1k" "swahili_1k" "maori_1k" "catalan" "catalan_1k" "lojban_gismu" "lojban_cmavo" "lithuanian" "lithuanian_1k" "lithuanian_3k" "bulgarian" "bulgarian_latin" "bangla" "bangla_letters" "bangla_10k" "bosnian" "bosnian_4k" "toki_pona" "toki_pona_ku_suli" "toki_pona_ku_lili" "esperanto" "esperanto_1k" "esperanto_10k" "esperanto_25k" "esperanto_36k" "esperanto_x_sistemo" "esperanto_x_sistemo_1k" "esperanto_x_sistemo_10k" "esperanto_x_sistemo_25k" "esperanto_x_sistemo_36k" "esperanto_h_sistemo" "esperanto_h_sistemo_1k" "esperanto_h_sistemo_10k" "esperanto_h_sistemo_25k" "esperanto_h_sistemo_36k" "kyrgyz" "kyrgyz_1k" "urdu" "urdu_1k" "urdu_5k" "urdish" "albanian" "albanian_1k" "shona" "shona_1k" "armenian" "armenian_1k" "armenian_western" "armenian_western_1k" "myanmar_burmese" "japanese_hiragana" "japanese_katakana" "japanese_romaji" "japanese_romaji_1k" "sinhala" "latvian" "latvian_1k" "maltese" "maltese_1k" "twitch_emotes" "git" "pig_latin" "hindi" "hindi_1k" "hinglish" "gujarati" "gujarati_1k" "macedonian" "macedonian_1k" "macedonian_10k" "macedonian_75k" "belarusian" "belarusian_1k" "belarusian_5k" "belarusian_10k" "belarusian_25k" "belarusian_50k" "belarusian_100k" "belarusian_lacinka" "belarusian_lacinka_1k" "tatar" "tatar_1k" "tatar_5k" "tatar_9k" "tatar_crimean" "tatar_crimean_1k" "tatar_crimean_5k" "tatar_crimean_10k" "tatar_crimean_15k" "tatar_crimean_cyrillic" "tatar_crimean_cyrillic_1k" "tatar_crimean_cyrillic_5k" "tatar_crimean_cyrillic_10k" "tatar_crimean_cyrillic_15k" "uzbek" "uzbek_1k" "uzbek_70k" "malayalam" "amharic" "amharic_1k" "amharic_5k" "oromo" "oromo_1k" "oromo_5k" "wordle" "league_of_legends" "wordle_1k" "typing_of_the_dead" "yiddish" "frisian" "frisian_1k" "pashto" "euskera" "klingon" "klingon_1k" "quenya" "occitan" "occitan_1k" "occitan_2k" "occitan_5k" "occitan_10k" "bashkir" "zulu" "kabyle" "kabyle_1k" "kabyle_2k" "kabyle_5k" "kabyle_10k" "code_python" "code_python_1k" "code_python_2k" "code_python_5k" "code_fsharp" "code_c" "code_csharp" "code_css" "code_c++" "code_dart" "code_brainfck" "code_javascript" "code_javascript_1k" "code_javascript_react" "code_jule" "code_julia" "code_haskell" "code_html" "code_nim" "code_nix" "code_pascal" "code_java" "code_kotlin" "code_go" "code_rockstar" "code_rust" "code_ruby" "code_r" "code_r_2k" "code_swift" "code_scala" "code_bash" "code_powershell" "code_lua" "code_luau" "code_latex" "code_typst" "code_matlab" "code_sql" "code_perl" "code_php" "code_vim" "code_vimscript" "code_opencl" "code_visual_basic" "code_arduino" "code_systemverilog" "code_elixir" "code_zig" "code_gdscript" "code_gdscript_2" "code_assembly" "code_v" "code_ook" "code_typescript" "code_odin" "xhosa" "xhosa_3k" "tibetan" "tibetan_1k" "code_cobol" "code_common_lisp" "docker_file" "code_fortran" "viossa" "viossa_njutro" |
required | string or number |
{- "language": "english",
- "quoteId": "string"
}
{- "message": "string"
}
Remove a quote to the user's favorite quotes.
Rate limit: This operation can be called up to 50 times every 30 minutes for regular users.
Body
language required | string Enum: "english" "english_1k" "english_5k" "english_10k" "english_25k" "english_450k" "english_commonly_misspelled" "english_contractions" "english_doubleletter" "english_shakespearean" "english_old" "english_medical" "spanish" "spanish_1k" "spanish_10k" "spanish_650k" "french" "french_1k" "french_2k" "french_10k" "french_600k" "french_bitoduc" "nepali" "nepali_1k" "nepali_romanized" "sanskrit" "sanskrit_roman" "santali" "azerbaijani" "azerbaijani_1k" "arabic" "arabic_10k" "arabic_egypt" "arabic_egypt_1k" "malagasy" "malagasy_1k" "malay" "malay_1k" "mongolian" "mongolian_10k" "kannada" "korean" "korean_1k" "korean_5k" "khmer" "chinese_simplified" "chinese_simplified_1k" "chinese_simplified_5k" "chinese_simplified_10k" "chinese_simplified_50k" "chinese_traditional" "russian" "russian_1k" "russian_5k" "russian_10k" "russian_25k" "russian_50k" "russian_375k" "russian_contractions" "russian_contractions_1k" "russian_abbreviations" "ukrainian" "ukrainian_1k" "ukrainian_10k" "ukrainian_50k" "ukrainian_endings" "ukrainian_latynka" "ukrainian_latynka_1k" "ukrainian_latynka_10k" "ukrainian_latynka_50k" "ukrainian_latynka_endings" "portuguese" "portuguese_acentos_e_cedilha" "portuguese_1k" "portuguese_3k" "portuguese_5k" "portuguese_320k" "portuguese_550k" "indonesian" "indonesian_1k" "indonesian_10k" "kurdish_central" "kurdish_central_2k" "kurdish_central_4k" "german" "german_1k" "german_10k" "german_250k" "swiss_german" "swiss_german_1k" "swiss_german_2k" "afrikaans" "afrikaans_1k" "afrikaans_10k" "georgian" "tamil" "tamil_1k" "tanglish" "tamil_old" "telugu" "telugu_1k" "greek" "greek_1k" "greek_5k" "greek_10k" "greek_25k" "greeklish" "greeklish_1k" "greeklish_5k" "greeklish_10k" "greeklish_25k" "turkish" "turkish_1k" "turkish_5k" "irish" "italian" "italian_1k" "italian_7k" "italian_60k" "italian_280k" "friulian" "latin" "galician" "thai" "thai_1k" "thai_5k" "thai_10k" "thai_20k" "thai_50k" "thai_60k" "polish" "polish_2k" "polish_5k" "polish_10k" "polish_20k" "polish_40k" "polish_200k" "czech" "czech_1k" "czech_10k" "slovak" "slovak_1k" "slovak_10k" "slovenian" "slovenian_1k" "slovenian_5k" "croatian" "croatian_1k" "dutch" "dutch_1k" "dutch_10k" "filipino" "filipino_1k" "danish" "danish_1k" "danish_10k" "hungarian" "hungarian_2k" "norwegian_bokmal" "norwegian_bokmal_1k" "norwegian_bokmal_5k" "norwegian_bokmal_10k" "norwegian_bokmal_150k" "norwegian_bokmal_600k" "norwegian_nynorsk" "norwegian_nynorsk_1k" "norwegian_nynorsk_5k" "norwegian_nynorsk_10k" "norwegian_nynorsk_100k" "norwegian_nynorsk_400k" "hebrew" "hebrew_1k" "hebrew_5k" "hebrew_10k" "icelandic_1k" "romanian" "romanian_1k" "romanian_5k" "romanian_10k" "romanian_25k" "romanian_50k" "romanian_100k" "romanian_200k" "lorem_ipsum" "finnish" "finnish_1k" "finnish_10k" "estonian" "estonian_1k" "estonian_5k" "estonian_10k" "udmurt" "welsh" "welsh_1k" "persian" "persian_1k" "persian_5k" "persian_20k" "persian_romanized" "marathi" "kazakh" "kazakh_1k" "vietnamese" "vietnamese_1k" "vietnamese_5k" "jyutping" "pinyin" "pinyin_1k" "pinyin_10k" "hausa" "hausa_1k" "swedish" "swedish_1k" "swedish_diacritics" "serbian_latin" "serbian_latin_10k" "serbian" "serbian_10k" "yoruba_1k" "swahili_1k" "maori_1k" "catalan" "catalan_1k" "lojban_gismu" "lojban_cmavo" "lithuanian" "lithuanian_1k" "lithuanian_3k" "bulgarian" "bulgarian_latin" "bangla" "bangla_letters" "bangla_10k" "bosnian" "bosnian_4k" "toki_pona" "toki_pona_ku_suli" "toki_pona_ku_lili" "esperanto" "esperanto_1k" "esperanto_10k" "esperanto_25k" "esperanto_36k" "esperanto_x_sistemo" "esperanto_x_sistemo_1k" "esperanto_x_sistemo_10k" "esperanto_x_sistemo_25k" "esperanto_x_sistemo_36k" "esperanto_h_sistemo" "esperanto_h_sistemo_1k" "esperanto_h_sistemo_10k" "esperanto_h_sistemo_25k" "esperanto_h_sistemo_36k" "kyrgyz" "kyrgyz_1k" "urdu" "urdu_1k" "urdu_5k" "urdish" "albanian" "albanian_1k" "shona" "shona_1k" "armenian" "armenian_1k" "armenian_western" "armenian_western_1k" "myanmar_burmese" "japanese_hiragana" "japanese_katakana" "japanese_romaji" "japanese_romaji_1k" "sinhala" "latvian" "latvian_1k" "maltese" "maltese_1k" "twitch_emotes" "git" "pig_latin" "hindi" "hindi_1k" "hinglish" "gujarati" "gujarati_1k" "macedonian" "macedonian_1k" "macedonian_10k" "macedonian_75k" "belarusian" "belarusian_1k" "belarusian_5k" "belarusian_10k" "belarusian_25k" "belarusian_50k" "belarusian_100k" "belarusian_lacinka" "belarusian_lacinka_1k" "tatar" "tatar_1k" "tatar_5k" "tatar_9k" "tatar_crimean" "tatar_crimean_1k" "tatar_crimean_5k" "tatar_crimean_10k" "tatar_crimean_15k" "tatar_crimean_cyrillic" "tatar_crimean_cyrillic_1k" "tatar_crimean_cyrillic_5k" "tatar_crimean_cyrillic_10k" "tatar_crimean_cyrillic_15k" "uzbek" "uzbek_1k" "uzbek_70k" "malayalam" "amharic" "amharic_1k" "amharic_5k" "oromo" "oromo_1k" "oromo_5k" "wordle" "league_of_legends" "wordle_1k" "typing_of_the_dead" "yiddish" "frisian" "frisian_1k" "pashto" "euskera" "klingon" "klingon_1k" "quenya" "occitan" "occitan_1k" "occitan_2k" "occitan_5k" "occitan_10k" "bashkir" "zulu" "kabyle" "kabyle_1k" "kabyle_2k" "kabyle_5k" "kabyle_10k" "code_python" "code_python_1k" "code_python_2k" "code_python_5k" "code_fsharp" "code_c" "code_csharp" "code_css" "code_c++" "code_dart" "code_brainfck" "code_javascript" "code_javascript_1k" "code_javascript_react" "code_jule" "code_julia" "code_haskell" "code_html" "code_nim" "code_nix" "code_pascal" "code_java" "code_kotlin" "code_go" "code_rockstar" "code_rust" "code_ruby" "code_r" "code_r_2k" "code_swift" "code_scala" "code_bash" "code_powershell" "code_lua" "code_luau" "code_latex" "code_typst" "code_matlab" "code_sql" "code_perl" "code_php" "code_vim" "code_vimscript" "code_opencl" "code_visual_basic" "code_arduino" "code_systemverilog" "code_elixir" "code_zig" "code_gdscript" "code_gdscript_2" "code_assembly" "code_v" "code_ook" "code_typescript" "code_odin" "xhosa" "xhosa_3k" "tibetan" "tibetan_1k" "code_cobol" "code_common_lisp" "docker_file" "code_fortran" "viossa" "viossa_njutro" |
required | string or number |
{- "language": "english",
- "quoteId": "string"
}
{- "message": "string"
}
Gets a user's profile.
Rate limit: This operation can be called up to 100 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for users.profiles.enabled
is true
.
uidOrName required | string |
string or boolean Default: false |
{- "message": "string",
- "data": {
- "uid": "string",
- "name": "string",
- "banned": true,
- "addedAt": 0,
- "discordId": "string",
- "discordAvatar": "string",
- "xp": 0,
- "lbOptOut": true,
- "isPremium": true,
- "inventory": {
- "badges": [
- {
- "id": 0,
- "selected": true
}
]
}, - "allTimeLbs": {
- "time": {
- "property1": {
- "property1": {
- "rank": 0,
- "count": 0
}, - "property2": {
- "rank": 0,
- "count": 0
}
}, - "property2": {
- "property1": {
- "rank": 0,
- "count": 0
}, - "property2": {
- "rank": 0,
- "count": 0
}
}
}
}, - "typingStats": {
- "completedTests": 0,
- "startedTests": 0,
- "timeTyping": 0
}, - "personalBests": {
- "time": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}, - "words": {
- "property1": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
], - "property2": [
- {
- "acc": 100,
- "consistency": 100,
- "difficulty": "normal",
- "lazyMode": true,
- "language": "english",
- "punctuation": true,
- "numbers": true,
- "raw": 0,
- "wpm": 0,
- "timestamp": 0
}
]
}
}, - "streak": 0,
- "maxStreak": 0,
- "details": {
- "bio": "string",
- "keyboard": "string",
}
}
}
Update a user's profile.
Rate limit: This operation can be called up to 60 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for users.profiles.enabled
is true
.
Body
string or string | |
string or string | |
object | |
integer or number |
{- "bio": "string",
- "keyboard": "string",
- "selectedBadgeId": 0
}
{- "message": "string",
- "data": {
- "bio": "string",
- "keyboard": "string",
}
}
Gets the user's inbox.
Rate limit: This operation can be called up to 60 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for users.inbox.enabled
is true
.
{- "message": "string",
- "data": {
- "inbox": [
- {
- "id": "string",
- "subject": "string",
- "body": "string",
- "timestamp": 0,
- "read": true,
- "rewards": [
- {
- "type": "xp",
- "item": 0
}
]
}
], - "maxMail": 0
}
}
Updates the user's inbox.
Rate limit: This operation can be called up to 60 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for users.inbox.enabled
is true
.
Body
mailIdsToDelete | Array of strings <uuid> non-empty [ items <uuid > ] |
mailIdsToMarkRead | Array of strings <uuid> non-empty [ items <uuid > ] |
{- "mailIdsToDelete": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "mailIdsToMarkRead": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]
}
{- "message": "string"
}
Report a user.
Required permissions: canReport
Rate limit: This operation can be called up to 50 times every 30 minutes for regular users.
Required configuration: This operation can only be called if the configuration for quotes.reporting.enabled
is true
.
Body
uid required | string |
reason required | string Enum: "Inappropriate name" "Inappropriate bio" "Inappropriate social links" "Suspected cheating" |
string or string | |
captcha required | string |
{- "uid": "string",
- "reason": "Inappropriate name",
- "comment": "string",
- "captcha": "string"
}
{- "message": "string"
}
Send a forgot password email.
Rate limit: This operation can be called up to 1 times per minute for regular users.
Body
captcha required | string |
email required | string <email> |
{- "captcha": "string",
- "email": "[email protected]"
}
{- "message": "string"
}
Get test activity for the last up to 372 days for the current user .
Rate limit: This operation can be called up to 60 times per hour for regular users.
{- "message": "string",
- "data": {
- "testsByDays": [
- 0
], - "lastDay": 0
}
}
Get user's streak data.
Rate limit: This operation can be called up to 60 times per hour for regular users.
{- "message": "string",
- "data": {
- "lastResultTimestamp": 0,
- "length": 0,
- "maxLength": 0,
- "hourOffset": -11
}
}
Get config of the current user.
Rate limit: This operation can be called up to 120 times per hour for regular users.
{- "message": "string",
- "data": {
- "theme": "8008",
- "themeLight": "8008",
- "themeDark": "8008",
- "autoSwitchTheme": true,
- "customTheme": true,
- "customThemeColors": null,
- "favThemes": [
- "8008"
], - "showKeyTips": true,
- "smoothCaret": "off",
- "codeUnindentOnBackspace": true,
- "quickRestart": "off",
- "punctuation": true,
- "numbers": true,
- "words": 0,
- "time": 0,
- "mode": "time",
- "quoteLength": [
- -3
], - "language": "english",
- "fontSize": 0,
- "freedomMode": true,
- "difficulty": "normal",
- "blindMode": true,
- "quickEnd": true,
- "caretStyle": "off",
- "paceCaretStyle": "off",
- "flipTestColors": true,
- "layout": "default",
- "funbox": [
- "58008"
], - "confidenceMode": "off",
- "indicateTypos": "off",
- "timerStyle": "off",
- "liveSpeedStyle": "off",
- "liveAccStyle": "off",
- "liveBurstStyle": "off",
- "colorfulMode": true,
- "randomTheme": "off",
- "timerColor": "black",
- "timerOpacity": "0.25",
- "stopOnError": "off",
- "showAllLines": true,
- "keymapMode": "off",
- "keymapStyle": "staggered",
- "keymapLegendStyle": "lowercase",
- "keymapLayout": "overrideSync",
- "keymapShowTopRow": "always",
- "keymapSize": 0.5,
- "fontFamily": "string",
- "smoothLineScroll": true,
- "alwaysShowDecimalPlaces": true,
- "alwaysShowWordsHistory": true,
- "singleListCommandLine": "manual",
- "capsLockWarning": true,
- "playSoundOnError": "off",
- "playSoundOnClick": "off",
- "soundVolume": 1,
- "startGraphsAtZero": true,
- "showOutOfFocusWarning": true,
- "paceCaret": "off",
- "paceCaretCustomSpeed": 0,
- "repeatedPace": true,
- "accountChart": null,
- "minWpm": "off",
- "minWpmCustomSpeed": 0,
- "highlightMode": "off",
- "tapeMode": "off",
- "tapeMargin": 10,
- "typingSpeedUnit": "wpm",
- "ads": "off",
- "hideExtraLetters": true,
- "strictSpace": true,
- "minAcc": "off",
- "minAccCustom": 100,
- "monkey": true,
- "repeatQuotes": "off",
- "oppositeShiftMode": "off",
- "customBackgroundSize": "cover",
- "customBackgroundFilter": null,
- "customLayoutfluid": [
- "qwerty"
], - "monkeyPowerLevel": "off",
- "minBurst": "off",
- "minBurstCustomSpeed": 0,
- "burstHeatmap": true,
- "britishEnglish": true,
- "lazyMode": true,
- "showAverage": "off",
- "maxLineWidth": 20,
- "customPolyglot": [
- "english"
]
}
}
Update the config of the current user. Only provided values will be updated while the missing values will be unchanged.
Rate limit: This operation can be called up to 500 times per hour for regular users.
Body
theme | string Enum: "8008" "80s_after_dark" "9009" "aether" "alduin" "alpine" "anti_hero" "arch" "aurora" "beach" "bento" "bingsu" "bliss" "blue_dolphin" "blueberry_dark" "blueberry_light" "botanical" "bouquet" "breeze" "bushido" "cafe" "camping" "carbon" "catppuccin" "chaos_theory" "cheesecake" "cherry_blossom" "comfy" "copper" "creamsicle" "cy_red" "cyberspace" "dark" "dark_magic_girl" "dark_note" "darling" "deku" "desert_oasis" "dev" "diner" "dino" "discord" "dmg" "dollar" "dots" "dracula" "drowning" "dualshot" "earthsong" "everblush" "evil_eye" "ez_mode" "fire" "fledgling" "fleuriste" "floret" "froyo" "frozen_llama" "fruit_chew" "fundamentals" "future_funk" "github" "godspeed" "graen" "grand_prix" "grape" "gruvbox_dark" "gruvbox_light" "hammerhead" "hanok" "hedge" "honey" "horizon" "husqy" "iceberg_dark" "iceberg_light" "incognito" "ishtar" "iv_clover" "iv_spade" "joker" "laser" "lavender" "leather" "lil_dragon" "lilac_mist" "lime" "luna" "macroblank" "magic_girl" "mashu" "matcha_moccha" "material" "matrix" "menthol" "metaverse" "metropolis" "mexican" "miami" "miami_nights" "midnight" "milkshake" "mint" "mizu" "modern_dolch" "modern_dolch_light" "modern_ink" "monokai" "moonlight" "mountain" "mr_sleeves" "ms_cupcakes" "muted" "nautilus" "nebula" "night_runner" "nord" "nord_light" "norse" "oblivion" "olive" "olivia" "onedark" "our_theme" "paper" "passion_fruit" "pastel" "peach_blossom" "peaches" "phantom" "pink_lemonade" "pulse" "purpleish" "rainbow_trail" "red_dragon" "red_samurai" "repose_dark" "repose_light" "retro" "retrocast" "rgb" "rose_pine" "rose_pine_dawn" "rose_pine_moon" "rudy" "ryujinscales" "serika" "serika_dark" "sewing_tin" "sewing_tin_light" "shadow" "shoko" "slambook" "snes" "soaring_skies" "solarized_dark" "solarized_light" "solarized_osaka" "sonokai" "stealth" "strawberry" "striker" "suisei" "sunset" "superuser" "sweden" "tangerine" "taro" "terminal" "terra" "terrazzo" "terror_below" "tiramisu" "trackday" "trance" "tron_orange" "vaporwave" "vesper" "viridescent" "voc" "vscode" "watermelon" "wavez" "witch_girl" |
themeLight | string Enum: "8008" "80s_after_dark" "9009" "aether" "alduin" "alpine" "anti_hero" "arch" "aurora" "beach" "bento" "bingsu" "bliss" "blue_dolphin" "blueberry_dark" "blueberry_light" "botanical" "bouquet" "breeze" "bushido" "cafe" "camping" "carbon" "catppuccin" "chaos_theory" "cheesecake" "cherry_blossom" "comfy" "copper" "creamsicle" "cy_red" "cyberspace" "dark" "dark_magic_girl" "dark_note" "darling" "deku" "desert_oasis" "dev" "diner" "dino" "discord" "dmg" "dollar" "dots" "dracula" "drowning" "dualshot" "earthsong" "everblush" "evil_eye" "ez_mode" "fire" "fledgling" "fleuriste" "floret" "froyo" "frozen_llama" "fruit_chew" "fundamentals" "future_funk" "github" "godspeed" "graen" "grand_prix" "grape" "gruvbox_dark" "gruvbox_light" "hammerhead" "hanok" "hedge" "honey" "horizon" "husqy" "iceberg_dark" "iceberg_light" "incognito" "ishtar" "iv_clover" "iv_spade" "joker" "laser" "lavender" "leather" "lil_dragon" "lilac_mist" "lime" "luna" "macroblank" "magic_girl" "mashu" "matcha_moccha" "material" "matrix" "menthol" "metaverse" "metropolis" "mexican" "miami" "miami_nights" "midnight" "milkshake" "mint" "mizu" "modern_dolch" "modern_dolch_light" "modern_ink" "monokai" "moonlight" "mountain" "mr_sleeves" "ms_cupcakes" "muted" "nautilus" "nebula" "night_runner" "nord" "nord_light" "norse" "oblivion" "olive" "olivia" "onedark" "our_theme" "paper" "passion_fruit" "pastel" "peach_blossom" "peaches" "phantom" "pink_lemonade" "pulse" "purpleish" "rainbow_trail" "red_dragon" "red_samurai" "repose_dark" "repose_light" "retro" "retrocast" "rgb" "rose_pine" "rose_pine_dawn" "rose_pine_moon" "rudy" "ryujinscales" "serika" "serika_dark" "sewing_tin" "sewing_tin_light" "shadow" "shoko" "slambook" "snes" "soaring_skies" "solarized_dark" "solarized_light" "solarized_osaka" "sonokai" "stealth" "strawberry" "striker" "suisei" "sunset" "superuser" "sweden" "tangerine" "taro" "terminal" "terra" "terrazzo" "terror_below" "tiramisu" "trackday" "trance" "tron_orange" "vaporwave" "vesper" "viridescent" "voc" "vscode" "watermelon" "wavez" "witch_girl" |
themeDark | string Enum: "8008" "80s_after_dark" "9009" "aether" "alduin" "alpine" "anti_hero" "arch" "aurora" "beach" "bento" "bingsu" "bliss" "blue_dolphin" "blueberry_dark" "blueberry_light" "botanical" "bouquet" "breeze" "bushido" "cafe" "camping" "carbon" "catppuccin" "chaos_theory" "cheesecake" "cherry_blossom" "comfy" "copper" "creamsicle" "cy_red" "cyberspace" "dark" "dark_magic_girl" "dark_note" "darling" "deku" "desert_oasis" "dev" "diner" "dino" "discord" "dmg" "dollar" "dots" "dracula" "drowning" "dualshot" "earthsong" "everblush" "evil_eye" "ez_mode" "fire" "fledgling" "fleuriste" "floret" "froyo" "frozen_llama" "fruit_chew" "fundamentals" "future_funk" "github" "godspeed" "graen" "grand_prix" "grape" "gruvbox_dark" "gruvbox_light" "hammerhead" "hanok" "hedge" "honey" "horizon" "husqy" "iceberg_dark" "iceberg_light" "incognito" "ishtar" "iv_clover" "iv_spade" "joker" "laser" "lavender" "leather" "lil_dragon" "lilac_mist" "lime" "luna" "macroblank" "magic_girl" "mashu" "matcha_moccha" "material" "matrix" "menthol" "metaverse" "metropolis" "mexican" "miami" "miami_nights" "midnight" "milkshake" "mint" "mizu" "modern_dolch" "modern_dolch_light" "modern_ink" "monokai" "moonlight" "mountain" "mr_sleeves" "ms_cupcakes" "muted" "nautilus" "nebula" "night_runner" "nord" "nord_light" "norse" "oblivion" "olive" "olivia" "onedark" "our_theme" "paper" "passion_fruit" "pastel" "peach_blossom" "peaches" "phantom" "pink_lemonade" "pulse" "purpleish" "rainbow_trail" "red_dragon" "red_samurai" "repose_dark" "repose_light" "retro" "retrocast" "rgb" "rose_pine" "rose_pine_dawn" "rose_pine_moon" "rudy" "ryujinscales" "serika" "serika_dark" "sewing_tin" "sewing_tin_light" "shadow" "shoko" "slambook" "snes" "soaring_skies" "solarized_dark" "solarized_light" "solarized_osaka" "sonokai" "stealth" "strawberry" "striker" "suisei" "sunset" "superuser" "sweden" "tangerine" "taro" "terminal" "terra" "terrazzo" "terror_below" "tiramisu" "trackday" "trance" "tron_orange" "vaporwave" "vesper" "viridescent" "voc" "vscode" "watermelon" "wavez" "witch_girl" |
autoSwitchTheme | boolean |
customTheme | boolean |
customThemeColors | any |
favThemes | Array of strings Items Enum: "8008" "80s_after_dark" "9009" "aether" "alduin" "alpine" "anti_hero" "arch" "aurora" "beach" "bento" "bingsu" "bliss" "blue_dolphin" "blueberry_dark" "blueberry_light" "botanical" "bouquet" "breeze" "bushido" "cafe" "camping" "carbon" "catppuccin" "chaos_theory" "cheesecake" "cherry_blossom" "comfy" "copper" "creamsicle" "cy_red" "cyberspace" "dark" "dark_magic_girl" "dark_note" "darling" "deku" "desert_oasis" "dev" "diner" "dino" "discord" "dmg" "dollar" "dots" "dracula" "drowning" "dualshot" "earthsong" "everblush" "evil_eye" "ez_mode" "fire" "fledgling" "fleuriste" "floret" "froyo" "frozen_llama" "fruit_chew" "fundamentals" "future_funk" "github" "godspeed" "graen" "grand_prix" "grape" "gruvbox_dark" "gruvbox_light" "hammerhead" "hanok" "hedge" "honey" "horizon" "husqy" "iceberg_dark" "iceberg_light" "incognito" "ishtar" "iv_clover" "iv_spade" "joker" "laser" "lavender" "leather" "lil_dragon" "lilac_mist" "lime" "luna" "macroblank" "magic_girl" "mashu" "matcha_moccha" "material" "matrix" "menthol" "metaverse" "metropolis" "mexican" "miami" "miami_nights" "midnight" "milkshake" "mint" "mizu" "modern_dolch" "modern_dolch_light" "modern_ink" "monokai" "moonlight" "mountain" "mr_sleeves" "ms_cupcakes" "muted" "nautilus" "nebula" "night_runner" "nord" "nord_light" "norse" "oblivion" "olive" "olivia" "onedark" "our_theme" "paper" "passion_fruit" "pastel" "peach_blossom" "peaches" "phantom" "pink_lemonade" "pulse" "purpleish" "rainbow_trail" "red_dragon" "red_samurai" "repose_dark" "repose_light" "retro" "retrocast" "rgb" "rose_pine" "rose_pine_dawn" "rose_pine_moon" "rudy" "ryujinscales" "serika" "serika_dark" "sewing_tin" "sewing_tin_light" "shadow" "shoko" "slambook" "snes" "soaring_skies" "solarized_dark" "solarized_light" "solarized_osaka" "sonokai" "stealth" "strawberry" "striker" "suisei" "sunset" "superuser" "sweden" "tangerine" "taro" "terminal" "terra" "terrazzo" "terror_below" "tiramisu" "trackday" "trance" "tron_orange" "vaporwave" "vesper" "viridescent" "voc" "vscode" "watermelon" "wavez" "witch_girl" |
showKeyTips | boolean |
smoothCaret | string Enum: "off" "slow" "medium" "fast" |
codeUnindentOnBackspace | boolean |
quickRestart | string Enum: "off" "esc" "tab" "enter" |
punctuation | boolean |
numbers | boolean |
words | integer >= 0 |
time | integer >= 0 |
mode | string Enum: "time" "words" "quote" "custom" "zen" |
quoteLength | Array of numbers Items Enum: -3 -2 -1 0 1 2 3 |
language | string Enum: "english" "english_1k" "english_5k" "english_10k" "english_25k" "english_450k" "english_commonly_misspelled" "english_contractions" "english_doubleletter" "english_shakespearean" "english_old" "english_medical" "spanish" "spanish_1k" "spanish_10k" "spanish_650k" "french" "french_1k" "french_2k" "french_10k" "french_600k" "french_bitoduc" "nepali" "nepali_1k" "nepali_romanized" "sanskrit" "sanskrit_roman" "santali" "azerbaijani" "azerbaijani_1k" "arabic" "arabic_10k" "arabic_egypt" "arabic_egypt_1k" "malagasy" "malagasy_1k" "malay" "malay_1k" "mongolian" "mongolian_10k" "kannada" "korean" "korean_1k" "korean_5k" "khmer" "chinese_simplified" "chinese_simplified_1k" "chinese_simplified_5k" "chinese_simplified_10k" "chinese_simplified_50k" "chinese_traditional" "russian" "russian_1k" "russian_5k" "russian_10k" "russian_25k" "russian_50k" "russian_375k" "russian_contractions" "russian_contractions_1k" "russian_abbreviations" "ukrainian" "ukrainian_1k" "ukrainian_10k" "ukrainian_50k" "ukrainian_endings" "ukrainian_latynka" "ukrainian_latynka_1k" "ukrainian_latynka_10k" "ukrainian_latynka_50k" "ukrainian_latynka_endings" "portuguese" "portuguese_acentos_e_cedilha" "portuguese_1k" "portuguese_3k" "portuguese_5k" "portuguese_320k" "portuguese_550k" "indonesian" "indonesian_1k" "indonesian_10k" "kurdish_central" "kurdish_central_2k" "kurdish_central_4k" "german" "german_1k" "german_10k" "german_250k" "swiss_german" "swiss_german_1k" "swiss_german_2k" "afrikaans" "afrikaans_1k" "afrikaans_10k" "georgian" "tamil" "tamil_1k" "tanglish" "tamil_old" "telugu" "telugu_1k" "greek" "greek_1k" "greek_5k" "greek_10k" "greek_25k" "greeklish" "greeklish_1k" "greeklish_5k" "greeklish_10k" "greeklish_25k" "turkish" "turkish_1k" "turkish_5k" "irish" "italian" "italian_1k" "italian_7k" "italian_60k" "italian_280k" "friulian" "latin" "galician" "thai" "thai_1k" "thai_5k" "thai_10k" "thai_20k" "thai_50k" "thai_60k" "polish" "polish_2k" "polish_5k" "polish_10k" "polish_20k" "polish_40k" "polish_200k" "czech" "czech_1k" "czech_10k" "slovak" "slovak_1k" "slovak_10k" "slovenian" "slovenian_1k" "slovenian_5k" "croatian" "croatian_1k" "dutch" "dutch_1k" "dutch_10k" "filipino" "filipino_1k" "danish" "danish_1k" "danish_10k" "hungarian" "hungarian_2k" "norwegian_bokmal" "norwegian_bokmal_1k" "norwegian_bokmal_5k" "norwegian_bokmal_10k" "norwegian_bokmal_150k" "norwegian_bokmal_600k" "norwegian_nynorsk" "norwegian_nynorsk_1k" "norwegian_nynorsk_5k" "norwegian_nynorsk_10k" "norwegian_nynorsk_100k" "norwegian_nynorsk_400k" "hebrew" "hebrew_1k" "hebrew_5k" "hebrew_10k" "icelandic_1k" "romanian" "romanian_1k" "romanian_5k" "romanian_10k" "romanian_25k" "romanian_50k" "romanian_100k" "romanian_200k" "lorem_ipsum" "finnish" "finnish_1k" "finnish_10k" "estonian" "estonian_1k" "estonian_5k" "estonian_10k" "udmurt" "welsh" "welsh_1k" "persian" "persian_1k" "persian_5k" "persian_20k" "persian_romanized" "marathi" "kazakh" "kazakh_1k" "vietnamese" "vietnamese_1k" "vietnamese_5k" "jyutping" "pinyin" "pinyin_1k" "pinyin_10k" "hausa" "hausa_1k" "swedish" "swedish_1k" "swedish_diacritics" "serbian_latin" "serbian_latin_10k" "serbian" "serbian_10k" "yoruba_1k" "swahili_1k" "maori_1k" "catalan" "catalan_1k" "lojban_gismu" "lojban_cmavo" "lithuanian" "lithuanian_1k" "lithuanian_3k" "bulgarian" "bulgarian_latin" "bangla" "bangla_letters" "bangla_10k" "bosnian" "bosnian_4k" "toki_pona" "toki_pona_ku_suli" "toki_pona_ku_lili" "esperanto" "esperanto_1k" "esperanto_10k" "esperanto_25k" "esperanto_36k" "esperanto_x_sistemo" "esperanto_x_sistemo_1k" "esperanto_x_sistemo_10k" "esperanto_x_sistemo_25k" "esperanto_x_sistemo_36k" "esperanto_h_sistemo" "esperanto_h_sistemo_1k" "esperanto_h_sistemo_10k" "esperanto_h_sistemo_25k" "esperanto_h_sistemo_36k" "kyrgyz" "kyrgyz_1k" "urdu" "urdu_1k" "urdu_5k" "urdish" "albanian" "albanian_1k" "shona" "shona_1k" "armenian" "armenian_1k" "armenian_western" "armenian_western_1k" "myanmar_burmese" "japanese_hiragana" "japanese_katakana" "japanese_romaji" "japanese_romaji_1k" "sinhala" "latvian" "latvian_1k" "maltese" "maltese_1k" "twitch_emotes" "git" "pig_latin" "hindi" "hindi_1k" "hinglish" "gujarati" "gujarati_1k" "macedonian" "macedonian_1k" "macedonian_10k" "macedonian_75k" "belarusian" "belarusian_1k" "belarusian_5k" "belarusian_10k" "belarusian_25k" "belarusian_50k" "belarusian_100k" "belarusian_lacinka" "belarusian_lacinka_1k" "tatar" "tatar_1k" "tatar_5k" "tatar_9k" "tatar_crimean" "tatar_crimean_1k" "tatar_crimean_5k" "tatar_crimean_10k" "tatar_crimean_15k" "tatar_crimean_cyrillic" "tatar_crimean_cyrillic_1k" "tatar_crimean_cyrillic_5k" "tatar_crimean_cyrillic_10k" "tatar_crimean_cyrillic_15k" "uzbek" "uzbek_1k" "uzbek_70k" "malayalam" "amharic" "amharic_1k" "amharic_5k" "oromo" "oromo_1k" "oromo_5k" "wordle" "league_of_legends" "wordle_1k" "typing_of_the_dead" "yiddish" "frisian" "frisian_1k" "pashto" "euskera" "klingon" "klingon_1k" "quenya" "occitan" "occitan_1k" "occitan_2k" "occitan_5k" "occitan_10k" "bashkir" "zulu" "kabyle" "kabyle_1k" "kabyle_2k" "kabyle_5k" "kabyle_10k" "code_python" "code_python_1k" "code_python_2k" "code_python_5k" "code_fsharp" "code_c" "code_csharp" "code_css" "code_c++" "code_dart" "code_brainfck" "code_javascript" "code_javascript_1k" "code_javascript_react" "code_jule" "code_julia" "code_haskell" "code_html" "code_nim" "code_nix" "code_pascal" "code_java" "code_kotlin" "code_go" "code_rockstar" "code_rust" "code_ruby" "code_r" "code_r_2k" "code_swift" "code_scala" "code_bash" "code_powershell" "code_lua" "code_luau" "code_latex" "code_typst" "code_matlab" "code_sql" "code_perl" "code_php" "code_vim" "code_vimscript" "code_opencl" "code_visual_basic" "code_arduino" "code_systemverilog" "code_elixir" "code_zig" "code_gdscript" "code_gdscript_2" "code_assembly" "code_v" "code_ook" "code_typescript" "code_odin" "xhosa" "xhosa_3k" "tibetan" "tibetan_1k" "code_cobol" "code_common_lisp" "docker_file" "code_fortran" "viossa" "viossa_njutro" |
fontSize | number > 0 |
freedomMode | boolean |
difficulty | string Enum: "normal" "expert" "master" |
blindMode | boolean |
quickEnd | boolean |
caretStyle | string Enum: "off" "default" "block" "outline" "underline" "carrot" "banana" |
paceCaretStyle | string Enum: "off" "default" "block" "outline" "underline" "carrot" "banana" |
flipTestColors | boolean |
string or string | |
funbox | Array of strings <= 15 items Items Enum: "58008" "mirror" "upside_down" "nausea" "round_round_baby" "simon_says" "tts" "choo_choo" "arrows" "rAnDoMcAsE" "capitals" "layout_mirror" "layoutfluid" "earthquake" "space_balls" "gibberish" "ascii" "specials" "plus_one" "plus_zero" "plus_two" "plus_three" "read_ahead_easy" "read_ahead" "read_ahead_hard" "memory" "nospace" "poetry" "wikipedia" "weakspot" "pseudolang" "IPv4" "IPv6" "binary" "hexadecimal" "zipf" "morse" "crt" "backwards" "ddoouubblleedd" "instant_messaging" "underscore_spaces" "ALL_CAPS" "polyglot" "asl" "no_quit" |
confidenceMode | string Enum: "off" "on" "max" |
indicateTypos | string Enum: "off" "below" "replace" |
timerStyle | string Enum: "off" "bar" "text" "mini" |
liveSpeedStyle | string Enum: "off" "text" "mini" |
liveAccStyle | string Enum: "off" "text" "mini" |
liveBurstStyle | string Enum: "off" "text" "mini" |
colorfulMode | boolean |
randomTheme | string Enum: "off" "on" "fav" "light" "dark" "custom" |
timerColor | string Enum: "black" "sub" "text" "main" |
timerOpacity | string Enum: "0.25" "0.5" "0.75" "1" |
stopOnError | string Enum: "off" "word" "letter" |
showAllLines | boolean |
keymapMode | string Enum: "off" "static" "react" "next" |
keymapStyle | string Enum: "staggered" "alice" "matrix" "split" "split_matrix" "steno" "steno_matrix" |
keymapLegendStyle | string Enum: "lowercase" "uppercase" "blank" "dynamic" |
string or string | |
keymapShowTopRow | string Enum: "always" "layout" "never" |
keymapSize | number decimal places <= 1 [ 0.5 .. 3.5 ] |
fontFamily | string <= 50 characters ^[a-zA-Z0-9_\-+.]+$ |
smoothLineScroll | boolean |
alwaysShowDecimalPlaces | boolean |
alwaysShowWordsHistory | boolean |
singleListCommandLine | string Enum: "manual" "on" |
capsLockWarning | boolean |
playSoundOnError | string Enum: "off" "1" "2" "3" "4" |
playSoundOnClick | string Enum: "off" "1" "2" "3" "4" "5" "6" "7" "8" "9" "10" "11" "12" "13" "14" "15" |
soundVolume | number [ 0 .. 1 ] |
startGraphsAtZero | boolean |
showOutOfFocusWarning | boolean |
paceCaret | string Enum: "off" "average" "pb" "tagPb" "last" "custom" "daily" |
paceCaretCustomSpeed | number >= 0 |
repeatedPace | boolean |
accountChart | any |
minWpm | string Enum: "off" "custom" |
minWpmCustomSpeed | number >= 0 |
highlightMode | string Enum: "off" "letter" "word" "next_word" "next_two_words" "next_three_words" |
tapeMode | string Enum: "off" "letter" "word" |
tapeMargin | number [ 10 .. 90 ] |
typingSpeedUnit | string Enum: "wpm" "cpm" "wps" "cps" "wph" |
ads | string Enum: "off" "result" "on" "sellout" |
hideExtraLetters | boolean |
strictSpace | boolean |
minAcc | string Enum: "off" "custom" |
minAccCustom | number [ 0 .. 100 ] |
monkey | boolean |
repeatQuotes | string Enum: "off" "typing" |
oppositeShiftMode | string Enum: "off" "on" "keymap" |
string or string | |
customBackgroundSize | string Enum: "cover" "contain" "max" |
customBackgroundFilter | any |
customLayoutfluid | Array of strings [ 1 .. 15 ] items Items Enum: "qwerty" "dvorak" "colemak" "colemak_wide" "colemak_dh" "colemak_dh_iso" "colemak_dh_wide" "colemak_dh_iso_wide" "colemak_dhk" "colemak_dh_matrix" "colemak_dhk_iso" "colemak_dhv" "qwertz" "swiss_german" "swiss_french" "workman" "prog_workman" "turkish_q" "turkish_f" "turkish_e" "MTGAP_ASRT" "norman" "halmak" "QGMLWB" "QGMLWY" "qwpr" "uk_qwerty" "spanish_qwerty" "italian_qwerty" "latam_qwerty" "prog_dvorak" "prog_dvorak_prime" "german_dvorak" "german_dvorak_imp" "spanish_dvorak" "swedish_colemak" "swedish_dvorak" "dvorak_L" "dvorak_R" "dvorak_fr" "azerty" "bepo" "bepo_AFNOR" "alpha" "handsdown" "hungarian" "handsdown_alt" "handsdown_promethium" "typehack" "MTGAP" "MTGAP_full" "ina" "soul" "niro" "mongolian" "JCUKEN" "Diktor" "Diktor_VoronovMod" "Redaktor" "JUIYAF" "Zubachev" "ISRT" "ISRT_Angle" "colemak_Qix" "colemak_Qi" "colemaQ" "colemaQ_F" "engram" "engrammer" "semimak" "semimak_jq" "semimak_jqc" "canary" "canary_matrix" "japanese_hiragana" "boo" "boo_mangle" "APT" "APT_angle" "middlemak" "middlemak-nh" "hindi_inscript" "thai_kedmanee" "thai_pattachote" "thai_manoonchai" "persian_standard" "persian_farsi" "arabic_101" "arabic_102" "arabic_mac" "hebrew" "urdu_phonetic" "brasileiro_nativo" "Foalmak" "quartz" "arensito" "ARTS" "beakl_15" "beakl_19" "beakl_19_bis" "capewell_dvorak" "colman" "heart" "klauser" "oneproduct" "pine" "real" "rolll" "stndc" "three" "uciea" "asset" "dwarf" "flaw" "whorf" "whorf6" "whorfmax" "whorfmax_ortho" "sertain" "ctgap" "octa8" "polish_programmers" "bulgarian" "bulgarian_phonetic_traditional" "belarusian" "ukrainian" "russian" "neo" "bone" "AdNW" "mine" "noted" "koy" "3l" "korean" "ekverto_b" "nerps" "sturdy_angle_ansi" "sturdy_angle_iso" "sturdy_ortho" "ABNT2" "HiYou" "xenia" "xenia_alt" "burmese" "gallium" "gallium_angle" "gallium_v2" "gallium_v2_matrix" "maya" "gallaya_angle_ansi" "gallaya_angle_iso" "gallaya_matrix" "nila" "minimak_4k" "minimak_8k" "minimak_12k" "optimot" "norwegian_qwerty" "portuguese_pt_qwerty_iso" "portuguese_pt_qwerty_ansi" "swedish_qwerty" "danish_qwerty" "noctum" "graphite" "graphite_angle" "graphite_angle_vc" "graphite_angle_kp" "graphite_matrix" "macedonian" "UGJRMV" "pashto" "ORNATE" "estonian" "stronk" "dhorf" "recurva" "seht-drai" "ints" "rollla" "wreathy" "saiga" "saiga-e" "krai" "mir" "ergol" "cascade" "vylet" "hyperroll" "romak" "scythe" "inqwerted" "rain" "night" "whix2" "haruka" "kuntum" "anishtro" "Kuntem" "BEAKL_Zi" "snorkle" "MALTRON" "PRSTEN" "RSTHD" "dusk" "zenith" "focal" "panini" "panini_wide" "ergopti" "sword" "opy" "tarmak_1" "tarmak_2" "tarmak_3" "tarmak_4" |
monkeyPowerLevel | string Enum: "off" "1" "2" "3" "4" |
minBurst | string Enum: "off" "fixed" "flex" |
minBurstCustomSpeed | number >= 0 |
burstHeatmap | boolean |
britishEnglish | boolean |
lazyMode | boolean |
showAverage | string Enum: "off" "speed" "acc" "both" |
number or number | |
customPolyglot | Array of strings non-empty Items Enum: "english" "english_1k" "english_5k" "english_10k" "english_25k" "english_450k" "english_commonly_misspelled" "english_contractions" "english_doubleletter" "english_shakespearean" "english_old" "english_medical" "spanish" "spanish_1k" "spanish_10k" "spanish_650k" "french" "french_1k" "french_2k" "french_10k" "french_600k" "french_bitoduc" "nepali" "nepali_1k" "nepali_romanized" "sanskrit" "sanskrit_roman" "santali" "azerbaijani" "azerbaijani_1k" "arabic" "arabic_10k" "arabic_egypt" "arabic_egypt_1k" "malagasy" "malagasy_1k" "malay" "malay_1k" "mongolian" "mongolian_10k" "kannada" "korean" "korean_1k" "korean_5k" "khmer" "chinese_simplified" "chinese_simplified_1k" "chinese_simplified_5k" "chinese_simplified_10k" "chinese_simplified_50k" "chinese_traditional" "russian" "russian_1k" "russian_5k" "russian_10k" "russian_25k" "russian_50k" "russian_375k" "russian_contractions" "russian_contractions_1k" "russian_abbreviations" "ukrainian" "ukrainian_1k" "ukrainian_10k" "ukrainian_50k" "ukrainian_endings" "ukrainian_latynka" "ukrainian_latynka_1k" "ukrainian_latynka_10k" "ukrainian_latynka_50k" "ukrainian_latynka_endings" "portuguese" "portuguese_acentos_e_cedilha" "portuguese_1k" "portuguese_3k" "portuguese_5k" "portuguese_320k" "portuguese_550k" "indonesian" "indonesian_1k" "indonesian_10k" "kurdish_central" "kurdish_central_2k" "kurdish_central_4k" "german" "german_1k" "german_10k" "german_250k" "swiss_german" "swiss_german_1k" "swiss_german_2k" "afrikaans" "afrikaans_1k" "afrikaans_10k" "georgian" "tamil" "tamil_1k" "tanglish" "tamil_old" "telugu" "telugu_1k" "greek" "greek_1k" "greek_5k" "greek_10k" "greek_25k" "greeklish" "greeklish_1k" "greeklish_5k" "greeklish_10k" "greeklish_25k" "turkish" "turkish_1k" "turkish_5k" "irish" "italian" "italian_1k" "italian_7k" "italian_60k" "italian_280k" "friulian" "latin" "galician" "thai" "thai_1k" "thai_5k" "thai_10k" "thai_20k" "thai_50k" "thai_60k" "polish" "polish_2k" "polish_5k" "polish_10k" "polish_20k" "polish_40k" "polish_200k" "czech" "czech_1k" "czech_10k" "slovak" "slovak_1k" "slovak_10k" "slovenian" "slovenian_1k" "slovenian_5k" "croatian" "croatian_1k" "dutch" "dutch_1k" "dutch_10k" "filipino" "filipino_1k" "danish" "danish_1k" "danish_10k" "hungarian" "hungarian_2k" "norwegian_bokmal" "norwegian_bokmal_1k" "norwegian_bokmal_5k" "norwegian_bokmal_10k" "norwegian_bokmal_150k" "norwegian_bokmal_600k" "norwegian_nynorsk" "norwegian_nynorsk_1k" "norwegian_nynorsk_5k" "norwegian_nynorsk_10k" "norwegian_nynorsk_100k" "norwegian_nynorsk_400k" "hebrew" "hebrew_1k" "hebrew_5k" "hebrew_10k" "icelandic_1k" "romanian" "romanian_1k" "romanian_5k" "romanian_10k" "romanian_25k" "romanian_50k" "romanian_100k" "romanian_200k" "lorem_ipsum" "finnish" "finnish_1k" "finnish_10k" "estonian" "estonian_1k" "estonian_5k" "estonian_10k" "udmurt" "welsh" "welsh_1k" "persian" "persian_1k" "persian_5k" "persian_20k" "persian_romanized" "marathi" "kazakh" "kazakh_1k" "vietnamese" "vietnamese_1k" "vietnamese_5k" "jyutping" "pinyin" "pinyin_1k" "pinyin_10k" "hausa" "hausa_1k" "swedish" "swedish_1k" "swedish_diacritics" "serbian_latin" "serbian_latin_10k" "serbian" "serbian_10k" "yoruba_1k" "swahili_1k" "maori_1k" "catalan" "catalan_1k" "lojban_gismu" "lojban_cmavo" "lithuanian" "lithuanian_1k" "lithuanian_3k" "bulgarian" "bulgarian_latin" "bangla" "bangla_letters" "bangla_10k" "bosnian" "bosnian_4k" "toki_pona" "toki_pona_ku_suli" "toki_pona_ku_lili" "esperanto" "esperanto_1k" "esperanto_10k" "esperanto_25k" "esperanto_36k" "esperanto_x_sistemo" "esperanto_x_sistemo_1k" "esperanto_x_sistemo_10k" "esperanto_x_sistemo_25k" "esperanto_x_sistemo_36k" "esperanto_h_sistemo" "esperanto_h_sistemo_1k" "esperanto_h_sistemo_10k" "esperanto_h_sistemo_25k" "esperanto_h_sistemo_36k" "kyrgyz" "kyrgyz_1k" "urdu" "urdu_1k" "urdu_5k" "urdish" "albanian" "albanian_1k" "shona" "shona_1k" "armenian" "armenian_1k" "armenian_western" "armenian_western_1k" "myanmar_burmese" "japanese_hiragana" "japanese_katakana" "japanese_romaji" "japanese_romaji_1k" "sinhala" "latvian" "latvian_1k" "maltese" "maltese_1k" "twitch_emotes" "git" "pig_latin" "hindi" "hindi_1k" "hinglish" "gujarati" "gujarati_1k" "macedonian" "macedonian_1k" "macedonian_10k" "macedonian_75k" "belarusian" "belarusian_1k" "belarusian_5k" "belarusian_10k" "belarusian_25k" "belarusian_50k" "belarusian_100k" "belarusian_lacinka" "belarusian_lacinka_1k" "tatar" "tatar_1k" "tatar_5k" "tatar_9k" "tatar_crimean" "tatar_crimean_1k" "tatar_crimean_5k" "tatar_crimean_10k" "tatar_crimean_15k" "tatar_crimean_cyrillic" "tatar_crimean_cyrillic_1k" "tatar_crimean_cyrillic_5k" "tatar_crimean_cyrillic_10k" "tatar_crimean_cyrillic_15k" "uzbek" "uzbek_1k" "uzbek_70k" "malayalam" "amharic" "amharic_1k" "amharic_5k" "oromo" "oromo_1k" "oromo_5k" "wordle" "league_of_legends" "wordle_1k" "typing_of_the_dead" "yiddish" "frisian" "frisian_1k" "pashto" "euskera" "klingon" "klingon_1k" "quenya" "occitan" "occitan_1k" "occitan_2k" "occitan_5k" "occitan_10k" "bashkir" "zulu" "kabyle" "kabyle_1k" "kabyle_2k" "kabyle_5k" "kabyle_10k" "code_python" "code_python_1k" "code_python_2k" "code_python_5k" "code_fsharp" "code_c" "code_csharp" "code_css" "code_c++" "code_dart" "code_brainfck" "code_javascript" "code_javascript_1k" "code_javascript_react" "code_jule" "code_julia" "code_haskell" "code_html" "code_nim" "code_nix" "code_pascal" "code_java" "code_kotlin" "code_go" "code_rockstar" "code_rust" "code_ruby" "code_r" "code_r_2k" "code_swift" "code_scala" "code_bash" "code_powershell" "code_lua" "code_luau" "code_latex" "code_typst" "code_matlab" "code_sql" "code_perl" "code_php" "code_vim" "code_vimscript" "code_opencl" "code_visual_basic" "code_arduino" "code_systemverilog" "code_elixir" "code_zig" "code_gdscript" "code_gdscript_2" "code_assembly" "code_v" "code_ook" "code_typescript" "code_odin" "xhosa" "xhosa_3k" "tibetan" "tibetan_1k" "code_cobol" "code_common_lisp" "docker_file" "code_fortran" "viossa" "viossa_njutro" |
{- "theme": "8008",
- "themeLight": "8008",
- "themeDark": "8008",
- "autoSwitchTheme": true,
- "customTheme": true,
- "customThemeColors": null,
- "favThemes": [
- "8008"
], - "showKeyTips": true,
- "smoothCaret": "off",
- "codeUnindentOnBackspace": true,
- "quickRestart": "off",
- "punctuation": true,
- "numbers": true,
- "words": 0,
- "time": 0,
- "mode": "time",
- "quoteLength": [
- -3
], - "language": "english",
- "fontSize": 0,
- "freedomMode": true,
- "difficulty": "normal",
- "blindMode": true,
- "quickEnd": true,
- "caretStyle": "off",
- "paceCaretStyle": "off",
- "flipTestColors": true,
- "layout": "default",
- "funbox": [
- "58008"
], - "confidenceMode": "off",
- "indicateTypos": "off",
- "timerStyle": "off",
- "liveSpeedStyle": "off",
- "liveAccStyle": "off",
- "liveBurstStyle": "off",
- "colorfulMode": true,
- "randomTheme": "off",
- "timerColor": "black",
- "timerOpacity": "0.25",
- "stopOnError": "off",
- "showAllLines": true,
- "keymapMode": "off",
- "keymapStyle": "staggered",
- "keymapLegendStyle": "lowercase",
- "keymapLayout": "overrideSync",
- "keymapShowTopRow": "always",
- "keymapSize": 0.5,
- "fontFamily": "string",
- "smoothLineScroll": true,
- "alwaysShowDecimalPlaces": true,
- "alwaysShowWordsHistory": true,
- "singleListCommandLine": "manual",
- "capsLockWarning": true,
- "playSoundOnError": "off",
- "playSoundOnClick": "off",
- "soundVolume": 1,
- "startGraphsAtZero": true,
- "showOutOfFocusWarning": true,
- "paceCaret": "off",
- "paceCaretCustomSpeed": 0,
- "repeatedPace": true,
- "accountChart": null,
- "minWpm": "off",
- "minWpmCustomSpeed": 0,
- "highlightMode": "off",
- "tapeMode": "off",
- "tapeMargin": 10,
- "typingSpeedUnit": "wpm",
- "ads": "off",
- "hideExtraLetters": true,
- "strictSpace": true,
- "minAcc": "off",
- "minAccCustom": 100,
- "monkey": true,
- "repeatQuotes": "off",
- "oppositeShiftMode": "off",
- "customBackgroundSize": "cover",
- "customBackgroundFilter": null,
- "customLayoutfluid": [
- "qwerty"
], - "monkeyPowerLevel": "off",
- "minBurst": "off",
- "minBurstCustomSpeed": 0,
- "burstHeatmap": true,
- "britishEnglish": true,
- "lazyMode": true,
- "showAverage": "off",
- "maxLineWidth": 20,
- "customPolyglot": [
- "english"
]
}
{- "message": "string"
}
Get presets of the current user.
Rate limit: This operation can be called up to 60 times per hour for regular users.
{- "message": "string",
- "data": [
- {
- "_id": "string",
- "name": "string",
- "settingGroups": [
- "test"
], - "config": {
- "theme": "8008",
- "themeLight": "8008",
- "themeDark": "8008",
- "autoSwitchTheme": true,
- "customTheme": true,
- "customThemeColors": null,
- "favThemes": [
- "8008"
], - "showKeyTips": true,
- "smoothCaret": "off",
- "codeUnindentOnBackspace": true,
- "quickRestart": "off",
- "punctuation": true,
- "numbers": true,
- "words": 0,
- "time": 0,
- "mode": "time",
- "quoteLength": [
- -3
], - "language": "english",
- "fontSize": 0,
- "freedomMode": true,
- "difficulty": "normal",
- "blindMode": true,
- "quickEnd": true,
- "caretStyle": "off",
- "paceCaretStyle": "off",
- "flipTestColors": true,
- "layout": "default",
- "funbox": [
- "58008"
], - "confidenceMode": "off",
- "indicateTypos": "off",
- "timerStyle": "off",
- "liveSpeedStyle": "off",
- "liveAccStyle": "off",
- "liveBurstStyle": "off",
- "colorfulMode": true,
- "randomTheme": "off",
- "timerColor": "black",
- "timerOpacity": "0.25",
- "stopOnError": "off",
- "showAllLines": true,
- "keymapMode": "off",
- "keymapStyle": "staggered",
- "keymapLegendStyle": "lowercase",
- "keymapLayout": "overrideSync",
- "keymapShowTopRow": "always",
- "keymapSize": 0.5,
- "fontFamily": "string",
- "smoothLineScroll": true,
- "alwaysShowDecimalPlaces": true,
- "alwaysShowWordsHistory": true,
- "singleListCommandLine": "manual",
- "capsLockWarning": true,
- "playSoundOnError": "off",
- "playSoundOnClick": "off",
- "soundVolume": 1,
- "startGraphsAtZero": true,
- "showOutOfFocusWarning": true,
- "paceCaret": "off",
- "paceCaretCustomSpeed": 0,
- "repeatedPace": true,
- "accountChart": null,
- "minWpm": "off",
- "minWpmCustomSpeed": 0,
- "highlightMode": "off",
- "tapeMode": "off",
- "tapeMargin": 10,
- "typingSpeedUnit": "wpm",
- "ads": "off",
- "hideExtraLetters": true,
- "strictSpace": true,
- "minAcc": "off",
- "minAccCustom": 100,
- "monkey": true,
- "repeatQuotes": "off",
- "oppositeShiftMode": "off",
- "customBackgroundSize": "cover",
- "customBackgroundFilter": null,
- "customLayoutfluid": [
- "qwerty"
], - "monkeyPowerLevel": "off",
- "minBurst": "off",
- "minBurstCustomSpeed": 0,
- "burstHeatmap": true,
- "britishEnglish": true,
- "lazyMode": true,
- "showAverage": "off",
- "maxLineWidth": 20,
- "customPolyglot": [
- "english"
], - "tags": [
- "string"
]
}
}
]
}
Add a new preset for the current user.
Rate limit: This operation can be called up to 60 times per hour for regular users.
Body
name required | string <= 16 characters ^[0-9a-zA-Z_-]+$ |
settingGroups | Array of strings or null non-empty Enum: "test" "behavior" "input" "sound" "caret" "appearance" "theme" "hideElements" "ads" "hidden" |
required | object |
{- "name": "string",
- "settingGroups": [
- "test"
], - "config": {
- "theme": "8008",
- "themeLight": "8008",
- "themeDark": "8008",
- "autoSwitchTheme": true,
- "customTheme": true,
- "customThemeColors": null,
- "favThemes": [
- "8008"
], - "showKeyTips": true,
- "smoothCaret": "off",
- "codeUnindentOnBackspace": true,
- "quickRestart": "off",
- "punctuation": true,
- "numbers": true,
- "words": 0,
- "time": 0,
- "mode": "time",
- "quoteLength": [
- -3
], - "language": "english",
- "fontSize": 0,
- "freedomMode": true,
- "difficulty": "normal",
- "blindMode": true,
- "quickEnd": true,
- "caretStyle": "off",
- "paceCaretStyle": "off",
- "flipTestColors": true,
- "layout": "default",
- "funbox": [
- "58008"
], - "confidenceMode": "off",
- "indicateTypos": "off",
- "timerStyle": "off",
- "liveSpeedStyle": "off",
- "liveAccStyle": "off",
- "liveBurstStyle": "off",
- "colorfulMode": true,
- "randomTheme": "off",
- "timerColor": "black",
- "timerOpacity": "0.25",
- "stopOnError": "off",
- "showAllLines": true,
- "keymapMode": "off",
- "keymapStyle": "staggered",
- "keymapLegendStyle": "lowercase",
- "keymapLayout": "overrideSync",
- "keymapShowTopRow": "always",
- "keymapSize": 0.5,
- "fontFamily": "string",
- "smoothLineScroll": true,
- "alwaysShowDecimalPlaces": true,
- "alwaysShowWordsHistory": true,
- "singleListCommandLine": "manual",
- "capsLockWarning": true,
- "playSoundOnError": "off",
- "playSoundOnClick": "off",
- "soundVolume": 1,
- "startGraphsAtZero": true,
- "showOutOfFocusWarning": true,
- "paceCaret": "off",
- "paceCaretCustomSpeed": 0,
- "repeatedPace": true,
- "accountChart": null,
- "minWpm": "off",
- "minWpmCustomSpeed": 0,
- "highlightMode": "off",
- "tapeMode": "off",
- "tapeMargin": 10,
- "typingSpeedUnit": "wpm",
- "ads": "off",
- "hideExtraLetters": true,
- "strictSpace": true,
- "minAcc": "off",
- "minAccCustom": 100,
- "monkey": true,
- "repeatQuotes": "off",
- "oppositeShiftMode": "off",
- "customBackgroundSize": "cover",
- "customBackgroundFilter": null,
- "customLayoutfluid": [
- "qwerty"
], - "monkeyPowerLevel": "off",
- "minBurst": "off",
- "minBurstCustomSpeed": 0,
- "burstHeatmap": true,
- "britishEnglish": true,
- "lazyMode": true,
- "showAverage": "off",
- "maxLineWidth": 20,
- "customPolyglot": [
- "english"
], - "tags": [
- "string"
]
}
}
{- "message": "string",
- "data": {
- "presetId": "string"
}
}
Update an existing preset for the current user.
Rate limit: This operation can be called up to 60 times per hour for regular users.
Body
_id required | string^[a-zA-Z0-9_]+$ |
name required | string <= 16 characters ^[0-9a-zA-Z_-]+$ |
settingGroups | Array of strings or null non-empty Enum: "test" "behavior" "input" "sound" "caret" "appearance" "theme" "hideElements" "ads" "hidden" |
object |
{- "_id": "string",
- "name": "string",
- "settingGroups": [
- "test"
], - "config": {
- "theme": "8008",
- "themeLight": "8008",
- "themeDark": "8008",
- "autoSwitchTheme": true,
- "customTheme": true,
- "customThemeColors": null,
- "favThemes": [
- "8008"
], - "showKeyTips": true,
- "smoothCaret": "off",
- "codeUnindentOnBackspace": true,
- "quickRestart": "off",
- "punctuation": true,
- "numbers": true,
- "words": 0,
- "time": 0,
- "mode": "time",
- "quoteLength": [
- -3
], - "language": "english",
- "fontSize": 0,
- "freedomMode": true,
- "difficulty": "normal",
- "blindMode": true,
- "quickEnd": true,
- "caretStyle": "off",
- "paceCaretStyle": "off",
- "flipTestColors": true,
- "layout": "default",
- "funbox": [
- "58008"
], - "confidenceMode": "off",
- "indicateTypos": "off",
- "timerStyle": "off",
- "liveSpeedStyle": "off",
- "liveAccStyle": "off",
- "liveBurstStyle": "off",
- "colorfulMode": true,
- "randomTheme": "off",
- "timerColor": "black",
- "timerOpacity": "0.25",
- "stopOnError": "off",
- "showAllLines": true,
- "keymapMode": "off",
- "keymapStyle": "staggered",
- "keymapLegendStyle": "lowercase",
- "keymapLayout": "overrideSync",
- "keymapShowTopRow": "always",
- "keymapSize": 0.5,
- "fontFamily": "string",
- "smoothLineScroll": true,
- "alwaysShowDecimalPlaces": true,
- "alwaysShowWordsHistory": true,
- "singleListCommandLine": "manual",
- "capsLockWarning": true,
- "playSoundOnError": "off",
- "playSoundOnClick": "off",
- "soundVolume": 1,
- "startGraphsAtZero": true,
- "showOutOfFocusWarning": true,
- "paceCaret": "off",
- "paceCaretCustomSpeed": 0,
- "repeatedPace": true,
- "accountChart": null,
- "minWpm": "off",
- "minWpmCustomSpeed": 0,
- "highlightMode": "off",
- "tapeMode": "off",
- "tapeMargin": 10,
- "typingSpeedUnit": "wpm",
- "ads": "off",
- "hideExtraLetters": true,
- "strictSpace": true,
- "minAcc": "off",
- "minAccCustom": 100,
- "monkey": true,
- "repeatQuotes": "off",
- "oppositeShiftMode": "off",
- "customBackgroundSize": "cover",
- "customBackgroundFilter": null,
- "customLayoutfluid": [
- "qwerty"
], - "monkeyPowerLevel": "off",
- "minBurst": "off",
- "minBurstCustomSpeed": 0,
- "burstHeatmap": true,
- "britishEnglish": true,
- "lazyMode": true,
- "showAverage": "off",
- "maxLineWidth": 20,
- "customPolyglot": [
- "english"
], - "tags": [
- "string"
]
}
}
{- "message": "string"
}
Gets up to 1000 results.
Rate limit: This operation can be called up to 60 times per hour for regular users and up to 30 times per day with ApeKeys.
onOrAfterTimestamp | integer >= 1589428800000 Timestamp of the earliest result to fetch. If omitted the most recent results are fetched. |
offset | integer >= 0 Offset of the item at which to begin the response. |
limit | integer [ 0 .. 1000 ] Limit results to the given amount. |
{- "message": "string",
- "data": [
- {
- "wpm": 420,
- "rawWpm": 420,
- "charStats": null,
- "acc": 50,
- "mode": "time",
- "mode2": "string",
- "quoteLength": 3,
- "timestamp": 0,
- "testDuration": 1,
- "consistency": 100,
- "keyConsistency": 100,
- "uid": "string",
- "restartCount": 0,
- "incompleteTestSeconds": 0,
- "afkDuration": 0,
- "tags": [
- "string"
], - "bailedOut": true,
- "blindMode": true,
- "lazyMode": true,
- "funbox": [
- "58008"
], - "language": "english",
- "difficulty": "normal",
- "numbers": true,
- "punctuation": true,
- "_id": "string",
- "isPb": true
}
]
}
Add a test result for the current user.
Rate limit: This operation can be called up to 300 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for results.savingEnabled
is true
.
Body
required | object |
{- "result": {
- "wpm": 420,
- "rawWpm": 420,
- "charStats": null,
- "acc": 50,
- "mode": "time",
- "mode2": "string",
- "quoteLength": 3,
- "timestamp": 0,
- "testDuration": 1,
- "consistency": 100,
- "keyConsistency": 100,
- "chartData": {
- "wpm": [
- 0
], - "raw": [
- 0
], - "err": [
- 0
]
}, - "uid": "string",
- "restartCount": 0,
- "incompleteTestSeconds": 0,
- "afkDuration": 0,
- "tags": [
- "string"
], - "bailedOut": true,
- "blindMode": true,
- "lazyMode": true,
- "funbox": [
- "58008"
], - "language": "english",
- "difficulty": "normal",
- "numbers": true,
- "punctuation": true,
- "charTotal": 0,
- "challenge": "string",
- "customText": {
- "textLen": 0,
- "mode": "repeat",
- "pipeDelimiter": true,
- "limit": {
- "mode": "word",
- "value": 0
}
}, - "hash": "string",
- "keyDuration": [
- 0
], - "keySpacing": [
- 0
], - "keyOverlap": 0,
- "lastKeyToEnd": 0,
- "startToFirstKey": 0,
- "wpmConsistency": 100,
- "stopOnLetter": true,
- "incompleteTests": [
- {
- "acc": 100,
- "seconds": 0
}
]
}
}
{- "message": "string",
- "data": {
- "insertedId": "string",
- "isPb": true,
- "tagPbs": [
- "string"
], - "dailyLeaderboardRank": 0,
- "weeklyXpLeaderboardRank": 0,
- "xp": 0,
- "dailyXpBonus": true,
- "xpBreakdown": {
- "base": 0,
- "fullAccuracy": 0,
- "quote": 0,
- "corrected": 0,
- "punctuation": 0,
- "numbers": 0,
- "funbox": 0,
- "streak": 0,
- "incomplete": 0,
- "daily": 0,
- "accPenalty": 0,
- "configMultiplier": 0
}, - "streak": 0
}
}
Get result by id.
Rate limit: This operation can be called up to 300 times per hour for regular users and up to 60 times per hour with ApeKeys.
resultId required | string^[a-zA-Z0-9_]+$ |
{- "message": "string",
- "data": {
- "wpm": 420,
- "rawWpm": 420,
- "charStats": null,
- "acc": 50,
- "mode": "time",
- "mode2": "string",
- "quoteLength": 3,
- "timestamp": 0,
- "testDuration": 1,
- "consistency": 100,
- "keyConsistency": 100,
- "chartData": {
- "wpm": [
- 0
], - "raw": [
- 0
], - "err": [
- 0
]
}, - "uid": "string",
- "restartCount": 0,
- "incompleteTestSeconds": 0,
- "afkDuration": 0,
- "tags": [
- "string"
], - "bailedOut": true,
- "blindMode": true,
- "lazyMode": true,
- "funbox": [
- "58008"
], - "language": "english",
- "difficulty": "normal",
- "numbers": true,
- "punctuation": true,
- "_id": "string",
- "keySpacingStats": {
- "average": 0,
- "sd": 0
}, - "keyDurationStats": {
- "average": 0,
- "sd": 0
}, - "name": "string",
- "isPb": true
}
}
Labels a result with the specified tags.
Rate limit: This operation can be called up to 100 times per hour for regular users.
Body
tagIds required | Array of strings[ items^[a-zA-Z0-9_]+$ ] |
resultId required | string^[a-zA-Z0-9_]+$ |
{- "tagIds": [
- "string"
], - "resultId": "string"
}
{- "message": "string",
- "data": {
- "tagPbs": [
- "string"
]
}
}
Gets a user's last saved result.
Rate limit: This operation can be called up to 60 times per hour for regular users.
{- "message": "string",
- "data": {
- "wpm": 420,
- "rawWpm": 420,
- "charStats": null,
- "acc": 50,
- "mode": "time",
- "mode2": "string",
- "quoteLength": 3,
- "timestamp": 0,
- "testDuration": 1,
- "consistency": 100,
- "keyConsistency": 100,
- "chartData": {
- "wpm": [
- 0
], - "raw": [
- 0
], - "err": [
- 0
]
}, - "uid": "string",
- "restartCount": 0,
- "incompleteTestSeconds": 0,
- "afkDuration": 0,
- "tags": [
- "string"
], - "bailedOut": true,
- "blindMode": true,
- "lazyMode": true,
- "funbox": [
- "58008"
], - "language": "english",
- "difficulty": "normal",
- "numbers": true,
- "punctuation": true,
- "_id": "string",
- "keySpacingStats": {
- "average": 0,
- "sd": 0
}, - "keyDurationStats": {
- "average": 0,
- "sd": 0
}, - "name": "string",
- "isPb": true
}
}
Get ape keys of the current user.
Required permissions: canManageApeKeys
Rate limit: This operation can be called up to 120 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for apeKeys.endpointsEnabled
is true
.
{- "message": "string",
- "data": {
- "property1": {
- "name": "string",
- "enabled": true,
- "createdOn": 0,
- "modifiedOn": 0,
- "lastUsedOn": 0
}, - "property2": {
- "name": "string",
- "enabled": true,
- "createdOn": 0,
- "modifiedOn": 0,
- "lastUsedOn": 0
}
}
}
Add an ape key for the current user.
Required permissions: canManageApeKeys
Rate limit: This operation can be called up to 15 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for apeKeys.endpointsEnabled
is true
.
Body
name required | string <= 20 characters ^[0-9a-zA-Z_.-]+$ |
enabled required | boolean |
{- "name": "string",
- "enabled": true
}
{- "message": "string",
- "data": {
- "apeKeyId": "string",
- "apeKey": "string",
- "apeKeyDetails": {
- "name": "string",
- "enabled": true,
- "createdOn": 0,
- "modifiedOn": 0,
- "lastUsedOn": 0
}
}
}
Update an existing ape key for the current user.
Required permissions: canManageApeKeys
Rate limit: This operation can be called up to 15 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for apeKeys.endpointsEnabled
is true
.
apeKeyId required | string^[a-zA-Z0-9_]+$ |
Body
name | string <= 20 characters ^[0-9a-zA-Z_.-]+$ |
enabled | boolean |
{- "name": "string",
- "enabled": true
}
{- "message": "string"
}
Delete ape key by id.
Required permissions: canManageApeKeys
Rate limit: This operation can be called up to 15 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for apeKeys.endpointsEnabled
is true
.
apeKeyId required | string^[a-zA-Z0-9_]+$ |
{- "message": "string"
}
get number of users personal bests grouped by wpm level (multiples of ten).
Rate limit: This operation can be called up to 60 times per minute for regular users.
language required | string Enum: "english" "english_1k" "english_5k" "english_10k" "english_25k" "english_450k" "english_commonly_misspelled" "english_contractions" "english_doubleletter" "english_shakespearean" "english_old" "english_medical" "spanish" "spanish_1k" "spanish_10k" "spanish_650k" "french" "french_1k" "french_2k" "french_10k" "french_600k" "french_bitoduc" "nepali" "nepali_1k" "nepali_romanized" "sanskrit" "sanskrit_roman" "santali" "azerbaijani" "azerbaijani_1k" "arabic" "arabic_10k" "arabic_egypt" "arabic_egypt_1k" "malagasy" "malagasy_1k" "malay" "malay_1k" "mongolian" "mongolian_10k" "kannada" "korean" "korean_1k" "korean_5k" "khmer" "chinese_simplified" "chinese_simplified_1k" "chinese_simplified_5k" "chinese_simplified_10k" "chinese_simplified_50k" "chinese_traditional" "russian" "russian_1k" "russian_5k" "russian_10k" "russian_25k" "russian_50k" "russian_375k" "russian_contractions" "russian_contractions_1k" "russian_abbreviations" "ukrainian" "ukrainian_1k" "ukrainian_10k" "ukrainian_50k" "ukrainian_endings" "ukrainian_latynka" "ukrainian_latynka_1k" "ukrainian_latynka_10k" "ukrainian_latynka_50k" "ukrainian_latynka_endings" "portuguese" "portuguese_acentos_e_cedilha" "portuguese_1k" "portuguese_3k" "portuguese_5k" "portuguese_320k" "portuguese_550k" "indonesian" "indonesian_1k" "indonesian_10k" "kurdish_central" "kurdish_central_2k" "kurdish_central_4k" "german" "german_1k" "german_10k" "german_250k" "swiss_german" "swiss_german_1k" "swiss_german_2k" "afrikaans" "afrikaans_1k" "afrikaans_10k" "georgian" "tamil" "tamil_1k" "tanglish" "tamil_old" "telugu" "telugu_1k" "greek" "greek_1k" "greek_5k" "greek_10k" "greek_25k" "greeklish" "greeklish_1k" "greeklish_5k" "greeklish_10k" "greeklish_25k" "turkish" "turkish_1k" "turkish_5k" "irish" "italian" "italian_1k" "italian_7k" "italian_60k" "italian_280k" "friulian" "latin" "galician" "thai" "thai_1k" "thai_5k" "thai_10k" "thai_20k" "thai_50k" "thai_60k" "polish" "polish_2k" "polish_5k" "polish_10k" "polish_20k" "polish_40k" "polish_200k" "czech" "czech_1k" "czech_10k" "slovak" "slovak_1k" "slovak_10k" "slovenian" "slovenian_1k" "slovenian_5k" "croatian" "croatian_1k" "dutch" "dutch_1k" "dutch_10k" "filipino" "filipino_1k" "danish" "danish_1k" "danish_10k" "hungarian" "hungarian_2k" "norwegian_bokmal" "norwegian_bokmal_1k" "norwegian_bokmal_5k" "norwegian_bokmal_10k" "norwegian_bokmal_150k" "norwegian_bokmal_600k" "norwegian_nynorsk" "norwegian_nynorsk_1k" "norwegian_nynorsk_5k" "norwegian_nynorsk_10k" "norwegian_nynorsk_100k" "norwegian_nynorsk_400k" "hebrew" "hebrew_1k" "hebrew_5k" "hebrew_10k" "icelandic_1k" "romanian" "romanian_1k" "romanian_5k" "romanian_10k" "romanian_25k" "romanian_50k" "romanian_100k" "romanian_200k" "lorem_ipsum" "finnish" "finnish_1k" "finnish_10k" "estonian" "estonian_1k" "estonian_5k" "estonian_10k" "udmurt" "welsh" "welsh_1k" "persian" "persian_1k" "persian_5k" "persian_20k" "persian_romanized" "marathi" "kazakh" "kazakh_1k" "vietnamese" "vietnamese_1k" "vietnamese_5k" "jyutping" "pinyin" "pinyin_1k" "pinyin_10k" "hausa" "hausa_1k" "swedish" "swedish_1k" "swedish_diacritics" "serbian_latin" "serbian_latin_10k" "serbian" "serbian_10k" "yoruba_1k" "swahili_1k" "maori_1k" "catalan" "catalan_1k" "lojban_gismu" "lojban_cmavo" "lithuanian" "lithuanian_1k" "lithuanian_3k" "bulgarian" "bulgarian_latin" "bangla" "bangla_letters" "bangla_10k" "bosnian" "bosnian_4k" "toki_pona" "toki_pona_ku_suli" "toki_pona_ku_lili" "esperanto" "esperanto_1k" "esperanto_10k" "esperanto_25k" "esperanto_36k" "esperanto_x_sistemo" "esperanto_x_sistemo_1k" "esperanto_x_sistemo_10k" "esperanto_x_sistemo_25k" "esperanto_x_sistemo_36k" "esperanto_h_sistemo" "esperanto_h_sistemo_1k" "esperanto_h_sistemo_10k" "esperanto_h_sistemo_25k" "esperanto_h_sistemo_36k" "kyrgyz" "kyrgyz_1k" "urdu" "urdu_1k" "urdu_5k" "urdish" "albanian" "albanian_1k" "shona" "shona_1k" "armenian" "armenian_1k" "armenian_western" "armenian_western_1k" "myanmar_burmese" "japanese_hiragana" "japanese_katakana" "japanese_romaji" "japanese_romaji_1k" "sinhala" "latvian" "latvian_1k" "maltese" "maltese_1k" "twitch_emotes" "git" "pig_latin" "hindi" "hindi_1k" "hinglish" "gujarati" "gujarati_1k" "macedonian" "macedonian_1k" "macedonian_10k" "macedonian_75k" "belarusian" "belarusian_1k" "belarusian_5k" "belarusian_10k" "belarusian_25k" "belarusian_50k" "belarusian_100k" "belarusian_lacinka" "belarusian_lacinka_1k" "tatar" "tatar_1k" "tatar_5k" "tatar_9k" "tatar_crimean" "tatar_crimean_1k" "tatar_crimean_5k" "tatar_crimean_10k" "tatar_crimean_15k" "tatar_crimean_cyrillic" "tatar_crimean_cyrillic_1k" "tatar_crimean_cyrillic_5k" "tatar_crimean_cyrillic_10k" "tatar_crimean_cyrillic_15k" "uzbek" "uzbek_1k" "uzbek_70k" "malayalam" "amharic" "amharic_1k" "amharic_5k" "oromo" "oromo_1k" "oromo_5k" "wordle" "league_of_legends" "wordle_1k" "typing_of_the_dead" "yiddish" "frisian" "frisian_1k" "pashto" "euskera" "klingon" "klingon_1k" "quenya" "occitan" "occitan_1k" "occitan_2k" "occitan_5k" "occitan_10k" "bashkir" "zulu" "kabyle" "kabyle_1k" "kabyle_2k" "kabyle_5k" "kabyle_10k" "code_python" "code_python_1k" "code_python_2k" "code_python_5k" "code_fsharp" "code_c" "code_csharp" "code_css" "code_c++" "code_dart" "code_brainfck" "code_javascript" "code_javascript_1k" "code_javascript_react" "code_jule" "code_julia" "code_haskell" "code_html" "code_nim" "code_nix" "code_pascal" "code_java" "code_kotlin" "code_go" "code_rockstar" "code_rust" "code_ruby" "code_r" "code_r_2k" "code_swift" "code_scala" "code_bash" "code_powershell" "code_lua" "code_luau" "code_latex" "code_typst" "code_matlab" "code_sql" "code_perl" "code_php" "code_vim" "code_vimscript" "code_opencl" "code_visual_basic" "code_arduino" "code_systemverilog" "code_elixir" "code_zig" "code_gdscript" "code_gdscript_2" "code_assembly" "code_v" "code_ook" "code_typescript" "code_odin" "xhosa" "xhosa_3k" "tibetan" "tibetan_1k" "code_cobol" "code_common_lisp" "docker_file" "code_fortran" "viossa" "viossa_njutro" |
mode required | string Enum: "time" "words" "quote" "custom" "zen" |
required | (string or number) or string or string |
{- "message": "string",
- "data": {
- "property1": 0,
- "property2": 0
}
}
get number of tests and time users spend typing.
Rate limit: This operation can be called up to 60 times per minute for regular users.
{- "message": "string",
- "data": {
- "timeTyping": 0,
- "testsCompleted": 0,
- "testsStarted": 0
}
}
Get all-time leaderboard.
Rate limit: This operation can be called up to 500 times per hour for regular users.
language required | string Enum: "english" "english_1k" "english_5k" "english_10k" "english_25k" "english_450k" "english_commonly_misspelled" "english_contractions" "english_doubleletter" "english_shakespearean" "english_old" "english_medical" "spanish" "spanish_1k" "spanish_10k" "spanish_650k" "french" "french_1k" "french_2k" "french_10k" "french_600k" "french_bitoduc" "nepali" "nepali_1k" "nepali_romanized" "sanskrit" "sanskrit_roman" "santali" "azerbaijani" "azerbaijani_1k" "arabic" "arabic_10k" "arabic_egypt" "arabic_egypt_1k" "malagasy" "malagasy_1k" "malay" "malay_1k" "mongolian" "mongolian_10k" "kannada" "korean" "korean_1k" "korean_5k" "khmer" "chinese_simplified" "chinese_simplified_1k" "chinese_simplified_5k" "chinese_simplified_10k" "chinese_simplified_50k" "chinese_traditional" "russian" "russian_1k" "russian_5k" "russian_10k" "russian_25k" "russian_50k" "russian_375k" "russian_contractions" "russian_contractions_1k" "russian_abbreviations" "ukrainian" "ukrainian_1k" "ukrainian_10k" "ukrainian_50k" "ukrainian_endings" "ukrainian_latynka" "ukrainian_latynka_1k" "ukrainian_latynka_10k" "ukrainian_latynka_50k" "ukrainian_latynka_endings" "portuguese" "portuguese_acentos_e_cedilha" "portuguese_1k" "portuguese_3k" "portuguese_5k" "portuguese_320k" "portuguese_550k" "indonesian" "indonesian_1k" "indonesian_10k" "kurdish_central" "kurdish_central_2k" "kurdish_central_4k" "german" "german_1k" "german_10k" "german_250k" "swiss_german" "swiss_german_1k" "swiss_german_2k" "afrikaans" "afrikaans_1k" "afrikaans_10k" "georgian" "tamil" "tamil_1k" "tanglish" "tamil_old" "telugu" "telugu_1k" "greek" "greek_1k" "greek_5k" "greek_10k" "greek_25k" "greeklish" "greeklish_1k" "greeklish_5k" "greeklish_10k" "greeklish_25k" "turkish" "turkish_1k" "turkish_5k" "irish" "italian" "italian_1k" "italian_7k" "italian_60k" "italian_280k" "friulian" "latin" "galician" "thai" "thai_1k" "thai_5k" "thai_10k" "thai_20k" "thai_50k" "thai_60k" "polish" "polish_2k" "polish_5k" "polish_10k" "polish_20k" "polish_40k" "polish_200k" "czech" "czech_1k" "czech_10k" "slovak" "slovak_1k" "slovak_10k" "slovenian" "slovenian_1k" "slovenian_5k" "croatian" "croatian_1k" "dutch" "dutch_1k" "dutch_10k" "filipino" "filipino_1k" "danish" "danish_1k" "danish_10k" "hungarian" "hungarian_2k" "norwegian_bokmal" "norwegian_bokmal_1k" "norwegian_bokmal_5k" "norwegian_bokmal_10k" "norwegian_bokmal_150k" "norwegian_bokmal_600k" "norwegian_nynorsk" "norwegian_nynorsk_1k" "norwegian_nynorsk_5k" "norwegian_nynorsk_10k" "norwegian_nynorsk_100k" "norwegian_nynorsk_400k" "hebrew" "hebrew_1k" "hebrew_5k" "hebrew_10k" "icelandic_1k" "romanian" "romanian_1k" "romanian_5k" "romanian_10k" "romanian_25k" "romanian_50k" "romanian_100k" "romanian_200k" "lorem_ipsum" "finnish" "finnish_1k" "finnish_10k" "estonian" "estonian_1k" "estonian_5k" "estonian_10k" "udmurt" "welsh" "welsh_1k" "persian" "persian_1k" "persian_5k" "persian_20k" "persian_romanized" "marathi" "kazakh" "kazakh_1k" "vietnamese" "vietnamese_1k" "vietnamese_5k" "jyutping" "pinyin" "pinyin_1k" "pinyin_10k" "hausa" "hausa_1k" "swedish" "swedish_1k" "swedish_diacritics" "serbian_latin" "serbian_latin_10k" "serbian" "serbian_10k" "yoruba_1k" "swahili_1k" "maori_1k" "catalan" "catalan_1k" "lojban_gismu" "lojban_cmavo" "lithuanian" "lithuanian_1k" "lithuanian_3k" "bulgarian" "bulgarian_latin" "bangla" "bangla_letters" "bangla_10k" "bosnian" "bosnian_4k" "toki_pona" "toki_pona_ku_suli" "toki_pona_ku_lili" "esperanto" "esperanto_1k" "esperanto_10k" "esperanto_25k" "esperanto_36k" "esperanto_x_sistemo" "esperanto_x_sistemo_1k" "esperanto_x_sistemo_10k" "esperanto_x_sistemo_25k" "esperanto_x_sistemo_36k" "esperanto_h_sistemo" "esperanto_h_sistemo_1k" "esperanto_h_sistemo_10k" "esperanto_h_sistemo_25k" "esperanto_h_sistemo_36k" "kyrgyz" "kyrgyz_1k" "urdu" "urdu_1k" "urdu_5k" "urdish" "albanian" "albanian_1k" "shona" "shona_1k" "armenian" "armenian_1k" "armenian_western" "armenian_western_1k" "myanmar_burmese" "japanese_hiragana" "japanese_katakana" "japanese_romaji" "japanese_romaji_1k" "sinhala" "latvian" "latvian_1k" "maltese" "maltese_1k" "twitch_emotes" "git" "pig_latin" "hindi" "hindi_1k" "hinglish" "gujarati" "gujarati_1k" "macedonian" "macedonian_1k" "macedonian_10k" "macedonian_75k" "belarusian" "belarusian_1k" "belarusian_5k" "belarusian_10k" "belarusian_25k" "belarusian_50k" "belarusian_100k" "belarusian_lacinka" "belarusian_lacinka_1k" "tatar" "tatar_1k" "tatar_5k" "tatar_9k" "tatar_crimean" "tatar_crimean_1k" "tatar_crimean_5k" "tatar_crimean_10k" "tatar_crimean_15k" "tatar_crimean_cyrillic" "tatar_crimean_cyrillic_1k" "tatar_crimean_cyrillic_5k" "tatar_crimean_cyrillic_10k" "tatar_crimean_cyrillic_15k" "uzbek" "uzbek_1k" "uzbek_70k" "malayalam" "amharic" "amharic_1k" "amharic_5k" "oromo" "oromo_1k" "oromo_5k" "wordle" "league_of_legends" "wordle_1k" "typing_of_the_dead" "yiddish" "frisian" "frisian_1k" "pashto" "euskera" "klingon" "klingon_1k" "quenya" "occitan" "occitan_1k" "occitan_2k" "occitan_5k" "occitan_10k" "bashkir" "zulu" "kabyle" "kabyle_1k" "kabyle_2k" "kabyle_5k" "kabyle_10k" "code_python" "code_python_1k" "code_python_2k" "code_python_5k" "code_fsharp" "code_c" "code_csharp" "code_css" "code_c++" "code_dart" "code_brainfck" "code_javascript" "code_javascript_1k" "code_javascript_react" "code_jule" "code_julia" "code_haskell" "code_html" "code_nim" "code_nix" "code_pascal" "code_java" "code_kotlin" "code_go" "code_rockstar" "code_rust" "code_ruby" "code_r" "code_r_2k" "code_swift" "code_scala" "code_bash" "code_powershell" "code_lua" "code_luau" "code_latex" "code_typst" "code_matlab" "code_sql" "code_perl" "code_php" "code_vim" "code_vimscript" "code_opencl" "code_visual_basic" "code_arduino" "code_systemverilog" "code_elixir" "code_zig" "code_gdscript" "code_gdscript_2" "code_assembly" "code_v" "code_ook" "code_typescript" "code_odin" "xhosa" "xhosa_3k" "tibetan" "tibetan_1k" "code_cobol" "code_common_lisp" "docker_file" "code_fortran" "viossa" "viossa_njutro" |
mode required | string Enum: "time" "words" "quote" "custom" "zen" |
required | (string or number) or string or string |
page | integer [ 0 .. 9007199254740991 ] Default: 0 |
pageSize | integer ( 0 .. 200 ] Default: 50 |
{- "message": "string",
- "data": {
- "count": 0,
- "pageSize": 0,
- "entries": [
- {
- "wpm": 0,
- "acc": 100,
- "timestamp": 0,
- "raw": 0,
- "consistency": 0,
- "uid": "string",
- "name": "string",
- "discordId": "string",
- "discordAvatar": "string",
- "rank": 0,
- "badgeId": 0,
- "isPremium": true
}
]
}
}
Get the rank of the current user on the all-time leaderboard.
Rate limit: This operation can be called up to 500 times per hour for regular users.
language required | string Enum: "english" "english_1k" "english_5k" "english_10k" "english_25k" "english_450k" "english_commonly_misspelled" "english_contractions" "english_doubleletter" "english_shakespearean" "english_old" "english_medical" "spanish" "spanish_1k" "spanish_10k" "spanish_650k" "french" "french_1k" "french_2k" "french_10k" "french_600k" "french_bitoduc" "nepali" "nepali_1k" "nepali_romanized" "sanskrit" "sanskrit_roman" "santali" "azerbaijani" "azerbaijani_1k" "arabic" "arabic_10k" "arabic_egypt" "arabic_egypt_1k" "malagasy" "malagasy_1k" "malay" "malay_1k" "mongolian" "mongolian_10k" "kannada" "korean" "korean_1k" "korean_5k" "khmer" "chinese_simplified" "chinese_simplified_1k" "chinese_simplified_5k" "chinese_simplified_10k" "chinese_simplified_50k" "chinese_traditional" "russian" "russian_1k" "russian_5k" "russian_10k" "russian_25k" "russian_50k" "russian_375k" "russian_contractions" "russian_contractions_1k" "russian_abbreviations" "ukrainian" "ukrainian_1k" "ukrainian_10k" "ukrainian_50k" "ukrainian_endings" "ukrainian_latynka" "ukrainian_latynka_1k" "ukrainian_latynka_10k" "ukrainian_latynka_50k" "ukrainian_latynka_endings" "portuguese" "portuguese_acentos_e_cedilha" "portuguese_1k" "portuguese_3k" "portuguese_5k" "portuguese_320k" "portuguese_550k" "indonesian" "indonesian_1k" "indonesian_10k" "kurdish_central" "kurdish_central_2k" "kurdish_central_4k" "german" "german_1k" "german_10k" "german_250k" "swiss_german" "swiss_german_1k" "swiss_german_2k" "afrikaans" "afrikaans_1k" "afrikaans_10k" "georgian" "tamil" "tamil_1k" "tanglish" "tamil_old" "telugu" "telugu_1k" "greek" "greek_1k" "greek_5k" "greek_10k" "greek_25k" "greeklish" "greeklish_1k" "greeklish_5k" "greeklish_10k" "greeklish_25k" "turkish" "turkish_1k" "turkish_5k" "irish" "italian" "italian_1k" "italian_7k" "italian_60k" "italian_280k" "friulian" "latin" "galician" "thai" "thai_1k" "thai_5k" "thai_10k" "thai_20k" "thai_50k" "thai_60k" "polish" "polish_2k" "polish_5k" "polish_10k" "polish_20k" "polish_40k" "polish_200k" "czech" "czech_1k" "czech_10k" "slovak" "slovak_1k" "slovak_10k" "slovenian" "slovenian_1k" "slovenian_5k" "croatian" "croatian_1k" "dutch" "dutch_1k" "dutch_10k" "filipino" "filipino_1k" "danish" "danish_1k" "danish_10k" "hungarian" "hungarian_2k" "norwegian_bokmal" "norwegian_bokmal_1k" "norwegian_bokmal_5k" "norwegian_bokmal_10k" "norwegian_bokmal_150k" "norwegian_bokmal_600k" "norwegian_nynorsk" "norwegian_nynorsk_1k" "norwegian_nynorsk_5k" "norwegian_nynorsk_10k" "norwegian_nynorsk_100k" "norwegian_nynorsk_400k" "hebrew" "hebrew_1k" "hebrew_5k" "hebrew_10k" "icelandic_1k" "romanian" "romanian_1k" "romanian_5k" "romanian_10k" "romanian_25k" "romanian_50k" "romanian_100k" "romanian_200k" "lorem_ipsum" "finnish" "finnish_1k" "finnish_10k" "estonian" "estonian_1k" "estonian_5k" "estonian_10k" "udmurt" "welsh" "welsh_1k" "persian" "persian_1k" "persian_5k" "persian_20k" "persian_romanized" "marathi" "kazakh" "kazakh_1k" "vietnamese" "vietnamese_1k" "vietnamese_5k" "jyutping" "pinyin" "pinyin_1k" "pinyin_10k" "hausa" "hausa_1k" "swedish" "swedish_1k" "swedish_diacritics" "serbian_latin" "serbian_latin_10k" "serbian" "serbian_10k" "yoruba_1k" "swahili_1k" "maori_1k" "catalan" "catalan_1k" "lojban_gismu" "lojban_cmavo" "lithuanian" "lithuanian_1k" "lithuanian_3k" "bulgarian" "bulgarian_latin" "bangla" "bangla_letters" "bangla_10k" "bosnian" "bosnian_4k" "toki_pona" "toki_pona_ku_suli" "toki_pona_ku_lili" "esperanto" "esperanto_1k" "esperanto_10k" "esperanto_25k" "esperanto_36k" "esperanto_x_sistemo" "esperanto_x_sistemo_1k" "esperanto_x_sistemo_10k" "esperanto_x_sistemo_25k" "esperanto_x_sistemo_36k" "esperanto_h_sistemo" "esperanto_h_sistemo_1k" "esperanto_h_sistemo_10k" "esperanto_h_sistemo_25k" "esperanto_h_sistemo_36k" "kyrgyz" "kyrgyz_1k" "urdu" "urdu_1k" "urdu_5k" "urdish" "albanian" "albanian_1k" "shona" "shona_1k" "armenian" "armenian_1k" "armenian_western" "armenian_western_1k" "myanmar_burmese" "japanese_hiragana" "japanese_katakana" "japanese_romaji" "japanese_romaji_1k" "sinhala" "latvian" "latvian_1k" "maltese" "maltese_1k" "twitch_emotes" "git" "pig_latin" "hindi" "hindi_1k" "hinglish" "gujarati" "gujarati_1k" "macedonian" "macedonian_1k" "macedonian_10k" "macedonian_75k" "belarusian" "belarusian_1k" "belarusian_5k" "belarusian_10k" "belarusian_25k" "belarusian_50k" "belarusian_100k" "belarusian_lacinka" "belarusian_lacinka_1k" "tatar" "tatar_1k" "tatar_5k" "tatar_9k" "tatar_crimean" "tatar_crimean_1k" "tatar_crimean_5k" "tatar_crimean_10k" "tatar_crimean_15k" "tatar_crimean_cyrillic" "tatar_crimean_cyrillic_1k" "tatar_crimean_cyrillic_5k" "tatar_crimean_cyrillic_10k" "tatar_crimean_cyrillic_15k" "uzbek" "uzbek_1k" "uzbek_70k" "malayalam" "amharic" "amharic_1k" "amharic_5k" "oromo" "oromo_1k" "oromo_5k" "wordle" "league_of_legends" "wordle_1k" "typing_of_the_dead" "yiddish" "frisian" "frisian_1k" "pashto" "euskera" "klingon" "klingon_1k" "quenya" "occitan" "occitan_1k" "occitan_2k" "occitan_5k" "occitan_10k" "bashkir" "zulu" "kabyle" "kabyle_1k" "kabyle_2k" "kabyle_5k" "kabyle_10k" "code_python" "code_python_1k" "code_python_2k" "code_python_5k" "code_fsharp" "code_c" "code_csharp" "code_css" "code_c++" "code_dart" "code_brainfck" "code_javascript" "code_javascript_1k" "code_javascript_react" "code_jule" "code_julia" "code_haskell" "code_html" "code_nim" "code_nix" "code_pascal" "code_java" "code_kotlin" "code_go" "code_rockstar" "code_rust" "code_ruby" "code_r" "code_r_2k" "code_swift" "code_scala" "code_bash" "code_powershell" "code_lua" "code_luau" "code_latex" "code_typst" "code_matlab" "code_sql" "code_perl" "code_php" "code_vim" "code_vimscript" "code_opencl" "code_visual_basic" "code_arduino" "code_systemverilog" "code_elixir" "code_zig" "code_gdscript" "code_gdscript_2" "code_assembly" "code_v" "code_ook" "code_typescript" "code_odin" "xhosa" "xhosa_3k" "tibetan" "tibetan_1k" "code_cobol" "code_common_lisp" "docker_file" "code_fortran" "viossa" "viossa_njutro" |
mode required | string Enum: "time" "words" "quote" "custom" "zen" |
required | (string or number) or string or string |
{- "message": "string",
- "data": {
- "wpm": 0,
- "acc": 100,
- "timestamp": 0,
- "raw": 0,
- "consistency": 0,
- "uid": "string",
- "name": "string",
- "discordId": "string",
- "discordAvatar": "string",
- "rank": 0,
- "badgeId": 0,
- "isPremium": true
}
}
Get daily leaderboard.
Rate limit: This operation can be called up to 500 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for dailyLeaderboards.enabled
is true
.
language required | string Enum: "english" "english_1k" "english_5k" "english_10k" "english_25k" "english_450k" "english_commonly_misspelled" "english_contractions" "english_doubleletter" "english_shakespearean" "english_old" "english_medical" "spanish" "spanish_1k" "spanish_10k" "spanish_650k" "french" "french_1k" "french_2k" "french_10k" "french_600k" "french_bitoduc" "nepali" "nepali_1k" "nepali_romanized" "sanskrit" "sanskrit_roman" "santali" "azerbaijani" "azerbaijani_1k" "arabic" "arabic_10k" "arabic_egypt" "arabic_egypt_1k" "malagasy" "malagasy_1k" "malay" "malay_1k" "mongolian" "mongolian_10k" "kannada" "korean" "korean_1k" "korean_5k" "khmer" "chinese_simplified" "chinese_simplified_1k" "chinese_simplified_5k" "chinese_simplified_10k" "chinese_simplified_50k" "chinese_traditional" "russian" "russian_1k" "russian_5k" "russian_10k" "russian_25k" "russian_50k" "russian_375k" "russian_contractions" "russian_contractions_1k" "russian_abbreviations" "ukrainian" "ukrainian_1k" "ukrainian_10k" "ukrainian_50k" "ukrainian_endings" "ukrainian_latynka" "ukrainian_latynka_1k" "ukrainian_latynka_10k" "ukrainian_latynka_50k" "ukrainian_latynka_endings" "portuguese" "portuguese_acentos_e_cedilha" "portuguese_1k" "portuguese_3k" "portuguese_5k" "portuguese_320k" "portuguese_550k" "indonesian" "indonesian_1k" "indonesian_10k" "kurdish_central" "kurdish_central_2k" "kurdish_central_4k" "german" "german_1k" "german_10k" "german_250k" "swiss_german" "swiss_german_1k" "swiss_german_2k" "afrikaans" "afrikaans_1k" "afrikaans_10k" "georgian" "tamil" "tamil_1k" "tanglish" "tamil_old" "telugu" "telugu_1k" "greek" "greek_1k" "greek_5k" "greek_10k" "greek_25k" "greeklish" "greeklish_1k" "greeklish_5k" "greeklish_10k" "greeklish_25k" "turkish" "turkish_1k" "turkish_5k" "irish" "italian" "italian_1k" "italian_7k" "italian_60k" "italian_280k" "friulian" "latin" "galician" "thai" "thai_1k" "thai_5k" "thai_10k" "thai_20k" "thai_50k" "thai_60k" "polish" "polish_2k" "polish_5k" "polish_10k" "polish_20k" "polish_40k" "polish_200k" "czech" "czech_1k" "czech_10k" "slovak" "slovak_1k" "slovak_10k" "slovenian" "slovenian_1k" "slovenian_5k" "croatian" "croatian_1k" "dutch" "dutch_1k" "dutch_10k" "filipino" "filipino_1k" "danish" "danish_1k" "danish_10k" "hungarian" "hungarian_2k" "norwegian_bokmal" "norwegian_bokmal_1k" "norwegian_bokmal_5k" "norwegian_bokmal_10k" "norwegian_bokmal_150k" "norwegian_bokmal_600k" "norwegian_nynorsk" "norwegian_nynorsk_1k" "norwegian_nynorsk_5k" "norwegian_nynorsk_10k" "norwegian_nynorsk_100k" "norwegian_nynorsk_400k" "hebrew" "hebrew_1k" "hebrew_5k" "hebrew_10k" "icelandic_1k" "romanian" "romanian_1k" "romanian_5k" "romanian_10k" "romanian_25k" "romanian_50k" "romanian_100k" "romanian_200k" "lorem_ipsum" "finnish" "finnish_1k" "finnish_10k" "estonian" "estonian_1k" "estonian_5k" "estonian_10k" "udmurt" "welsh" "welsh_1k" "persian" "persian_1k" "persian_5k" "persian_20k" "persian_romanized" "marathi" "kazakh" "kazakh_1k" "vietnamese" "vietnamese_1k" "vietnamese_5k" "jyutping" "pinyin" "pinyin_1k" "pinyin_10k" "hausa" "hausa_1k" "swedish" "swedish_1k" "swedish_diacritics" "serbian_latin" "serbian_latin_10k" "serbian" "serbian_10k" "yoruba_1k" "swahili_1k" "maori_1k" "catalan" "catalan_1k" "lojban_gismu" "lojban_cmavo" "lithuanian" "lithuanian_1k" "lithuanian_3k" "bulgarian" "bulgarian_latin" "bangla" "bangla_letters" "bangla_10k" "bosnian" "bosnian_4k" "toki_pona" "toki_pona_ku_suli" "toki_pona_ku_lili" "esperanto" "esperanto_1k" "esperanto_10k" "esperanto_25k" "esperanto_36k" "esperanto_x_sistemo" "esperanto_x_sistemo_1k" "esperanto_x_sistemo_10k" "esperanto_x_sistemo_25k" "esperanto_x_sistemo_36k" "esperanto_h_sistemo" "esperanto_h_sistemo_1k" "esperanto_h_sistemo_10k" "esperanto_h_sistemo_25k" "esperanto_h_sistemo_36k" "kyrgyz" "kyrgyz_1k" "urdu" "urdu_1k" "urdu_5k" "urdish" "albanian" "albanian_1k" "shona" "shona_1k" "armenian" "armenian_1k" "armenian_western" "armenian_western_1k" "myanmar_burmese" "japanese_hiragana" "japanese_katakana" "japanese_romaji" "japanese_romaji_1k" "sinhala" "latvian" "latvian_1k" "maltese" "maltese_1k" "twitch_emotes" "git" "pig_latin" "hindi" "hindi_1k" "hinglish" "gujarati" "gujarati_1k" "macedonian" "macedonian_1k" "macedonian_10k" "macedonian_75k" "belarusian" "belarusian_1k" "belarusian_5k" "belarusian_10k" "belarusian_25k" "belarusian_50k" "belarusian_100k" "belarusian_lacinka" "belarusian_lacinka_1k" "tatar" "tatar_1k" "tatar_5k" "tatar_9k" "tatar_crimean" "tatar_crimean_1k" "tatar_crimean_5k" "tatar_crimean_10k" "tatar_crimean_15k" "tatar_crimean_cyrillic" "tatar_crimean_cyrillic_1k" "tatar_crimean_cyrillic_5k" "tatar_crimean_cyrillic_10k" "tatar_crimean_cyrillic_15k" "uzbek" "uzbek_1k" "uzbek_70k" "malayalam" "amharic" "amharic_1k" "amharic_5k" "oromo" "oromo_1k" "oromo_5k" "wordle" "league_of_legends" "wordle_1k" "typing_of_the_dead" "yiddish" "frisian" "frisian_1k" "pashto" "euskera" "klingon" "klingon_1k" "quenya" "occitan" "occitan_1k" "occitan_2k" "occitan_5k" "occitan_10k" "bashkir" "zulu" "kabyle" "kabyle_1k" "kabyle_2k" "kabyle_5k" "kabyle_10k" "code_python" "code_python_1k" "code_python_2k" "code_python_5k" "code_fsharp" "code_c" "code_csharp" "code_css" "code_c++" "code_dart" "code_brainfck" "code_javascript" "code_javascript_1k" "code_javascript_react" "code_jule" "code_julia" "code_haskell" "code_html" "code_nim" "code_nix" "code_pascal" "code_java" "code_kotlin" "code_go" "code_rockstar" "code_rust" "code_ruby" "code_r" "code_r_2k" "code_swift" "code_scala" "code_bash" "code_powershell" "code_lua" "code_luau" "code_latex" "code_typst" "code_matlab" "code_sql" "code_perl" "code_php" "code_vim" "code_vimscript" "code_opencl" "code_visual_basic" "code_arduino" "code_systemverilog" "code_elixir" "code_zig" "code_gdscript" "code_gdscript_2" "code_assembly" "code_v" "code_ook" "code_typescript" "code_odin" "xhosa" "xhosa_3k" "tibetan" "tibetan_1k" "code_cobol" "code_common_lisp" "docker_file" "code_fortran" "viossa" "viossa_njutro" |
mode required | string Enum: "time" "words" "quote" "custom" "zen" |
required | (string or number) or string or string |
daysBefore | number Value: 1 |
page | integer [ 0 .. 9007199254740991 ] Default: 0 |
pageSize | integer ( 0 .. 200 ] Default: 50 |
{- "message": "string",
- "data": {
- "count": 0,
- "pageSize": 0,
- "entries": [
- {
- "wpm": 0,
- "acc": 100,
- "timestamp": 0,
- "raw": 0,
- "consistency": 0,
- "uid": "string",
- "name": "string",
- "discordId": "string",
- "discordAvatar": "string",
- "rank": 0,
- "badgeId": 0,
- "isPremium": true
}
], - "minWpm": 0
}
}
Get the rank of the current user on the daily leaderboard.
Rate limit: This operation can be called up to 500 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for dailyLeaderboards.enabled
is true
.
language required | string Enum: "english" "english_1k" "english_5k" "english_10k" "english_25k" "english_450k" "english_commonly_misspelled" "english_contractions" "english_doubleletter" "english_shakespearean" "english_old" "english_medical" "spanish" "spanish_1k" "spanish_10k" "spanish_650k" "french" "french_1k" "french_2k" "french_10k" "french_600k" "french_bitoduc" "nepali" "nepali_1k" "nepali_romanized" "sanskrit" "sanskrit_roman" "santali" "azerbaijani" "azerbaijani_1k" "arabic" "arabic_10k" "arabic_egypt" "arabic_egypt_1k" "malagasy" "malagasy_1k" "malay" "malay_1k" "mongolian" "mongolian_10k" "kannada" "korean" "korean_1k" "korean_5k" "khmer" "chinese_simplified" "chinese_simplified_1k" "chinese_simplified_5k" "chinese_simplified_10k" "chinese_simplified_50k" "chinese_traditional" "russian" "russian_1k" "russian_5k" "russian_10k" "russian_25k" "russian_50k" "russian_375k" "russian_contractions" "russian_contractions_1k" "russian_abbreviations" "ukrainian" "ukrainian_1k" "ukrainian_10k" "ukrainian_50k" "ukrainian_endings" "ukrainian_latynka" "ukrainian_latynka_1k" "ukrainian_latynka_10k" "ukrainian_latynka_50k" "ukrainian_latynka_endings" "portuguese" "portuguese_acentos_e_cedilha" "portuguese_1k" "portuguese_3k" "portuguese_5k" "portuguese_320k" "portuguese_550k" "indonesian" "indonesian_1k" "indonesian_10k" "kurdish_central" "kurdish_central_2k" "kurdish_central_4k" "german" "german_1k" "german_10k" "german_250k" "swiss_german" "swiss_german_1k" "swiss_german_2k" "afrikaans" "afrikaans_1k" "afrikaans_10k" "georgian" "tamil" "tamil_1k" "tanglish" "tamil_old" "telugu" "telugu_1k" "greek" "greek_1k" "greek_5k" "greek_10k" "greek_25k" "greeklish" "greeklish_1k" "greeklish_5k" "greeklish_10k" "greeklish_25k" "turkish" "turkish_1k" "turkish_5k" "irish" "italian" "italian_1k" "italian_7k" "italian_60k" "italian_280k" "friulian" "latin" "galician" "thai" "thai_1k" "thai_5k" "thai_10k" "thai_20k" "thai_50k" "thai_60k" "polish" "polish_2k" "polish_5k" "polish_10k" "polish_20k" "polish_40k" "polish_200k" "czech" "czech_1k" "czech_10k" "slovak" "slovak_1k" "slovak_10k" "slovenian" "slovenian_1k" "slovenian_5k" "croatian" "croatian_1k" "dutch" "dutch_1k" "dutch_10k" "filipino" "filipino_1k" "danish" "danish_1k" "danish_10k" "hungarian" "hungarian_2k" "norwegian_bokmal" "norwegian_bokmal_1k" "norwegian_bokmal_5k" "norwegian_bokmal_10k" "norwegian_bokmal_150k" "norwegian_bokmal_600k" "norwegian_nynorsk" "norwegian_nynorsk_1k" "norwegian_nynorsk_5k" "norwegian_nynorsk_10k" "norwegian_nynorsk_100k" "norwegian_nynorsk_400k" "hebrew" "hebrew_1k" "hebrew_5k" "hebrew_10k" "icelandic_1k" "romanian" "romanian_1k" "romanian_5k" "romanian_10k" "romanian_25k" "romanian_50k" "romanian_100k" "romanian_200k" "lorem_ipsum" "finnish" "finnish_1k" "finnish_10k" "estonian" "estonian_1k" "estonian_5k" "estonian_10k" "udmurt" "welsh" "welsh_1k" "persian" "persian_1k" "persian_5k" "persian_20k" "persian_romanized" "marathi" "kazakh" "kazakh_1k" "vietnamese" "vietnamese_1k" "vietnamese_5k" "jyutping" "pinyin" "pinyin_1k" "pinyin_10k" "hausa" "hausa_1k" "swedish" "swedish_1k" "swedish_diacritics" "serbian_latin" "serbian_latin_10k" "serbian" "serbian_10k" "yoruba_1k" "swahili_1k" "maori_1k" "catalan" "catalan_1k" "lojban_gismu" "lojban_cmavo" "lithuanian" "lithuanian_1k" "lithuanian_3k" "bulgarian" "bulgarian_latin" "bangla" "bangla_letters" "bangla_10k" "bosnian" "bosnian_4k" "toki_pona" "toki_pona_ku_suli" "toki_pona_ku_lili" "esperanto" "esperanto_1k" "esperanto_10k" "esperanto_25k" "esperanto_36k" "esperanto_x_sistemo" "esperanto_x_sistemo_1k" "esperanto_x_sistemo_10k" "esperanto_x_sistemo_25k" "esperanto_x_sistemo_36k" "esperanto_h_sistemo" "esperanto_h_sistemo_1k" "esperanto_h_sistemo_10k" "esperanto_h_sistemo_25k" "esperanto_h_sistemo_36k" "kyrgyz" "kyrgyz_1k" "urdu" "urdu_1k" "urdu_5k" "urdish" "albanian" "albanian_1k" "shona" "shona_1k" "armenian" "armenian_1k" "armenian_western" "armenian_western_1k" "myanmar_burmese" "japanese_hiragana" "japanese_katakana" "japanese_romaji" "japanese_romaji_1k" "sinhala" "latvian" "latvian_1k" "maltese" "maltese_1k" "twitch_emotes" "git" "pig_latin" "hindi" "hindi_1k" "hinglish" "gujarati" "gujarati_1k" "macedonian" "macedonian_1k" "macedonian_10k" "macedonian_75k" "belarusian" "belarusian_1k" "belarusian_5k" "belarusian_10k" "belarusian_25k" "belarusian_50k" "belarusian_100k" "belarusian_lacinka" "belarusian_lacinka_1k" "tatar" "tatar_1k" "tatar_5k" "tatar_9k" "tatar_crimean" "tatar_crimean_1k" "tatar_crimean_5k" "tatar_crimean_10k" "tatar_crimean_15k" "tatar_crimean_cyrillic" "tatar_crimean_cyrillic_1k" "tatar_crimean_cyrillic_5k" "tatar_crimean_cyrillic_10k" "tatar_crimean_cyrillic_15k" "uzbek" "uzbek_1k" "uzbek_70k" "malayalam" "amharic" "amharic_1k" "amharic_5k" "oromo" "oromo_1k" "oromo_5k" "wordle" "league_of_legends" "wordle_1k" "typing_of_the_dead" "yiddish" "frisian" "frisian_1k" "pashto" "euskera" "klingon" "klingon_1k" "quenya" "occitan" "occitan_1k" "occitan_2k" "occitan_5k" "occitan_10k" "bashkir" "zulu" "kabyle" "kabyle_1k" "kabyle_2k" "kabyle_5k" "kabyle_10k" "code_python" "code_python_1k" "code_python_2k" "code_python_5k" "code_fsharp" "code_c" "code_csharp" "code_css" "code_c++" "code_dart" "code_brainfck" "code_javascript" "code_javascript_1k" "code_javascript_react" "code_jule" "code_julia" "code_haskell" "code_html" "code_nim" "code_nix" "code_pascal" "code_java" "code_kotlin" "code_go" "code_rockstar" "code_rust" "code_ruby" "code_r" "code_r_2k" "code_swift" "code_scala" "code_bash" "code_powershell" "code_lua" "code_luau" "code_latex" "code_typst" "code_matlab" "code_sql" "code_perl" "code_php" "code_vim" "code_vimscript" "code_opencl" "code_visual_basic" "code_arduino" "code_systemverilog" "code_elixir" "code_zig" "code_gdscript" "code_gdscript_2" "code_assembly" "code_v" "code_ook" "code_typescript" "code_odin" "xhosa" "xhosa_3k" "tibetan" "tibetan_1k" "code_cobol" "code_common_lisp" "docker_file" "code_fortran" "viossa" "viossa_njutro" |
mode required | string Enum: "time" "words" "quote" "custom" "zen" |
required | (string or number) or string or string |
daysBefore | number Value: 1 |
{- "message": "string",
- "data": {
- "wpm": 0,
- "acc": 100,
- "timestamp": 0,
- "raw": 0,
- "consistency": 0,
- "uid": "string",
- "name": "string",
- "discordId": "string",
- "discordAvatar": "string",
- "rank": 0,
- "badgeId": 0,
- "isPremium": true
}
}
Get weekly xp leaderboard.
Rate limit: This operation can be called up to 500 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for leaderboards.weeklyXp.enabled
is true
.
weeksBefore | number Value: 1 |
page | integer [ 0 .. 9007199254740991 ] Default: 0 |
pageSize | integer ( 0 .. 200 ] Default: 50 |
{- "message": "string",
- "data": {
- "count": 0,
- "pageSize": 0,
- "entries": [
- {
- "uid": "string",
- "name": "string",
- "lastActivityTimestamp": 0,
- "timeTypedSeconds": 0,
- "discordId": "string",
- "discordAvatar": "string",
- "badgeId": 0,
- "isPremium": true,
- "totalXp": 0,
- "rank": 0
}
]
}
}
Get the rank of the current user on the weekly xp leaderboard.
Rate limit: This operation can be called up to 500 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for leaderboards.weeklyXp.enabled
is true
.
weeksBefore | number Value: 1 |
{- "message": "string",
- "data": {
- "uid": "string",
- "name": "string",
- "lastActivityTimestamp": 0,
- "timeTypedSeconds": 0,
- "discordId": "string",
- "discordAvatar": "string",
- "badgeId": 0,
- "isPremium": true,
- "totalXp": 0,
- "rank": 0
}
}
Get list of public service announcements.
Rate limit: This operation can be called up to 60 times per minute for regular users.
{- "message": "string",
- "data": [
- {
- "_id": "string",
- "message": "string",
- "date": 0,
- "level": 0,
- "sticky": true
}
]
}
Get list of quote submissions.
Required permissions: quoteMod
Rate limit: This operation can be called up to 500 times per hour for regular users.
{- "message": "string",
- "data": [
- {
- "_id": "string",
- "text": "string",
- "source": "string",
- "language": "english",
- "submittedBy": "string",
- "timestamp": 0,
- "approved": true
}
]
}
Add a quote submission.
Rate limit: This operation can be called up to 60 times per hour for regular users.
Required configuration: This operation can only be called if the configuration for quotes.submissionsEnabled
is true
.
Body
text required | string >= 60 characters |
source required | string |
language required | string Enum: "english" "english_1k" "english_5k" "english_10k" "english_25k" "english_450k" "english_commonly_misspelled" "english_contractions" "english_doubleletter" "english_shakespearean" "english_old" "english_medical" "spanish" "spanish_1k" "spanish_10k" "spanish_650k" "french" "french_1k" "french_2k" "french_10k" "french_600k" "french_bitoduc" "nepali" "nepali_1k" "nepali_romanized" "sanskrit" "sanskrit_roman" "santali" "azerbaijani" "azerbaijani_1k" "arabic" "arabic_10k" "arabic_egypt" "arabic_egypt_1k" "malagasy" "malagasy_1k" "malay" "malay_1k" "mongolian" "mongolian_10k" "kannada" "korean" "korean_1k" "korean_5k" "khmer" "chinese_simplified" "chinese_simplified_1k" "chinese_simplified_5k" "chinese_simplified_10k" "chinese_simplified_50k" "chinese_traditional" "russian" "russian_1k" "russian_5k" "russian_10k" "russian_25k" "russian_50k" "russian_375k" "russian_contractions" "russian_contractions_1k" "russian_abbreviations" "ukrainian" "ukrainian_1k" "ukrainian_10k" "ukrainian_50k" "ukrainian_endings" "ukrainian_latynka" "ukrainian_latynka_1k" "ukrainian_latynka_10k" "ukrainian_latynka_50k" "ukrainian_latynka_endings" "portuguese" "portuguese_acentos_e_cedilha" "portuguese_1k" "portuguese_3k" "portuguese_5k" "portuguese_320k" "portuguese_550k" "indonesian" "indonesian_1k" "indonesian_10k" "kurdish_central" "kurdish_central_2k" "kurdish_central_4k" "german" "german_1k" "german_10k" "german_250k" "swiss_german" "swiss_german_1k" "swiss_german_2k" "afrikaans" "afrikaans_1k" "afrikaans_10k" "georgian" "tamil" "tamil_1k" "tanglish" "tamil_old" "telugu" "telugu_1k" "greek" "greek_1k" "greek_5k" "greek_10k" "greek_25k" "greeklish" "greeklish_1k" "greeklish_5k" "greeklish_10k" "greeklish_25k" "turkish" "turkish_1k" "turkish_5k" "irish" "italian" "italian_1k" "italian_7k" "italian_60k" "italian_280k" "friulian" "latin" "galician" "thai" "thai_1k" "thai_5k" "thai_10k" "thai_20k" "thai_50k" "thai_60k" "polish" "polish_2k" "polish_5k" "polish_10k" "polish_20k" "polish_40k" "polish_200k" "czech" "czech_1k" "czech_10k" "slovak" "slovak_1k" "slovak_10k" "slovenian" "slovenian_1k" "slovenian_5k" "croatian" "croatian_1k" "dutch" "dutch_1k" "dutch_10k" "filipino" "filipino_1k" "danish" "danish_1k" "danish_10k" "hungarian" "hungarian_2k" "norwegian_bokmal" "norwegian_bokmal_1k" "norwegian_bokmal_5k" "norwegian_bokmal_10k" "norwegian_bokmal_150k" "norwegian_bokmal_600k" "norwegian_nynorsk" "norwegian_nynorsk_1k" "norwegian_nynorsk_5k" "norwegian_nynorsk_10k" "norwegian_nynorsk_100k" "norwegian_nynorsk_400k" "hebrew" "hebrew_1k" "hebrew_5k" "hebrew_10k" "icelandic_1k" "romanian" "romanian_1k" "romanian_5k" "romanian_10k" "romanian_25k" "romanian_50k" "romanian_100k" "romanian_200k" "lorem_ipsum" "finnish" "finnish_1k" "finnish_10k" "estonian" "estonian_1k" "estonian_5k" "estonian_10k" "udmurt" "welsh" "welsh_1k" "persian" "persian_1k" "persian_5k" "persian_20k" "persian_romanized" "marathi" "kazakh" "kazakh_1k" "vietnamese" "vietnamese_1k" "vietnamese_5k" "jyutping" "pinyin" "pinyin_1k" "pinyin_10k" "hausa" "hausa_1k" "swedish" "swedish_1k" "swedish_diacritics" "serbian_latin" "serbian_latin_10k" "serbian" "serbian_10k" "yoruba_1k" "swahili_1k" "maori_1k" "catalan" "catalan_1k" "lojban_gismu" "lojban_cmavo" "lithuanian" "lithuanian_1k" "lithuanian_3k" "bulgarian" "bulgarian_latin" "bangla" "bangla_letters" "bangla_10k" "bosnian" "bosnian_4k" "toki_pona" "toki_pona_ku_suli" "toki_pona_ku_lili" "esperanto" "esperanto_1k" "esperanto_10k" "esperanto_25k" "esperanto_36k" "esperanto_x_sistemo" "esperanto_x_sistemo_1k" "esperanto_x_sistemo_10k" "esperanto_x_sistemo_25k" "esperanto_x_sistemo_36k" "esperanto_h_sistemo" "esperanto_h_sistemo_1k" "esperanto_h_sistemo_10k" "esperanto_h_sistemo_25k" "esperanto_h_sistemo_36k" "kyrgyz" "kyrgyz_1k" "urdu" "urdu_1k" "urdu_5k" "urdish" "albanian" "albanian_1k" "shona" "shona_1k" "armenian" "armenian_1k" "armenian_western" "armenian_western_1k" "myanmar_burmese" "japanese_hiragana" "japanese_katakana" "japanese_romaji" "japanese_romaji_1k" "sinhala" "latvian" "latvian_1k" "maltese" "maltese_1k" "twitch_emotes" "git" "pig_latin" "hindi" "hindi_1k" "hinglish" "gujarati" "gujarati_1k" "macedonian" "macedonian_1k" "macedonian_10k" "macedonian_75k" "belarusian" "belarusian_1k" "belarusian_5k" "belarusian_10k" "belarusian_25k" "belarusian_50k" "belarusian_100k" "belarusian_lacinka" "belarusian_lacinka_1k" "tatar" "tatar_1k" "tatar_5k" "tatar_9k" "tatar_crimean" "tatar_crimean_1k" "tatar_crimean_5k" "tatar_crimean_10k" "tatar_crimean_15k" "tatar_crimean_cyrillic" "tatar_crimean_cyrillic_1k" "tatar_crimean_cyrillic_5k" "tatar_crimean_cyrillic_10k" "tatar_crimean_cyrillic_15k" "uzbek" "uzbek_1k" "uzbek_70k" "malayalam" "amharic" "amharic_1k" "amharic_5k" "oromo" "oromo_1k" "oromo_5k" "wordle" "league_of_legends" "wordle_1k" "typing_of_the_dead" "yiddish" "frisian" "frisian_1k" "pashto" "euskera" "klingon" "klingon_1k" "quenya" "occitan" "occitan_1k" "occitan_2k" "occitan_5k" "occitan_10k" "bashkir" "zulu" "kabyle" "kabyle_1k" "kabyle_2k" "kabyle_5k" "kabyle_10k" "code_python" "code_python_1k" "code_python_2k" "code_python_5k" "code_fsharp" "code_c" "code_csharp" "code_css" "code_c++" "code_dart" "code_brainfck" "code_javascript" "code_javascript_1k" "code_javascript_react" "code_jule" "code_julia" "code_haskell" "code_html" "code_nim" "code_nix" "code_pascal" "code_java" "code_kotlin" "code_go" "code_rockstar" "code_rust" "code_ruby" "code_r" "code_r_2k" "code_swift" "code_scala" "code_bash" "code_powershell" "code_lua" "code_luau" "code_latex" "code_typst" "code_matlab" "code_sql" "code_perl" "code_php" "code_vim" "code_vimscript" "code_opencl" "code_visual_basic" "code_arduino" "code_systemverilog" "code_elixir" "code_zig" "code_gdscript" "code_gdscript_2" "code_assembly" "code_v" "code_ook" "code_typescript" "code_odin" "xhosa" "xhosa_3k" "tibetan" "tibetan_1k" "code_cobol" "code_common_lisp" "docker_file" "code_fortran" "viossa" "viossa_njutro" |
captcha required | string |
{- "text": "stringstringstringstringstringstringstringstringstringstring",
- "source": "string",
- "language": "english",
- "captcha": "string"
}
{- "message": "string"
}
Add a quote submission.
Required permissions: quoteMod
Rate limit: This operation can be called up to 500 times per hour for regular users.
Body
quoteId required | string^[a-zA-Z0-9_]+$ |
editText | string or null |
editSource | string or null |
{- "quoteId": "string",
- "editText": "string",
- "editSource": "string"
}
{- "message": "string",
- "data": {
- "id": 0,
- "text": "string",
- "source": "string",
- "length": 0,
- "approvedBy": "string"
}
}
Reject a quote submission.
Required permissions: quoteMod
Rate limit: This operation can be called up to 500 times per hour for regular users.
Body
quoteId required | string^[a-zA-Z0-9_]+$ |
{- "quoteId": "string"
}
{- "message": "string"
}
Get quote rating.
Rate limit: This operation can be called up to 500 times per hour for regular users.
required | integer or string |
language required | string Enum: "english" "english_1k" "english_5k" "english_10k" "english_25k" "english_450k" "english_commonly_misspelled" "english_contractions" "english_doubleletter" "english_shakespearean" "english_old" "english_medical" "spanish" "spanish_1k" "spanish_10k" "spanish_650k" "french" "french_1k" "french_2k" "french_10k" "french_600k" "french_bitoduc" "nepali" "nepali_1k" "nepali_romanized" "sanskrit" "sanskrit_roman" "santali" "azerbaijani" "azerbaijani_1k" "arabic" "arabic_10k" "arabic_egypt" "arabic_egypt_1k" "malagasy" "malagasy_1k" "malay" "malay_1k" "mongolian" "mongolian_10k" "kannada" "korean" "korean_1k" "korean_5k" "khmer" "chinese_simplified" "chinese_simplified_1k" "chinese_simplified_5k" "chinese_simplified_10k" "chinese_simplified_50k" "chinese_traditional" "russian" "russian_1k" "russian_5k" "russian_10k" "russian_25k" "russian_50k" "russian_375k" "russian_contractions" "russian_contractions_1k" "russian_abbreviations" "ukrainian" "ukrainian_1k" "ukrainian_10k" "ukrainian_50k" "ukrainian_endings" "ukrainian_latynka" "ukrainian_latynka_1k" "ukrainian_latynka_10k" "ukrainian_latynka_50k" "ukrainian_latynka_endings" "portuguese" "portuguese_acentos_e_cedilha" "portuguese_1k" "portuguese_3k" "portuguese_5k" "portuguese_320k" "portuguese_550k" "indonesian" "indonesian_1k" "indonesian_10k" "kurdish_central" "kurdish_central_2k" "kurdish_central_4k" "german" "german_1k" "german_10k" "german_250k" "swiss_german" "swiss_german_1k" "swiss_german_2k" "afrikaans" "afrikaans_1k" "afrikaans_10k" "georgian" "tamil" "tamil_1k" "tanglish" "tamil_old" "telugu" "telugu_1k" "greek" "greek_1k" "greek_5k" "greek_10k" "greek_25k" "greeklish" "greeklish_1k" "greeklish_5k" "greeklish_10k" "greeklish_25k" "turkish" "turkish_1k" "turkish_5k" "irish" "italian" "italian_1k" "italian_7k" "italian_60k" "italian_280k" "friulian" "latin" "galician" "thai" "thai_1k" "thai_5k" "thai_10k" "thai_20k" "thai_50k" "thai_60k" "polish" "polish_2k" "polish_5k" "polish_10k" "polish_20k" "polish_40k" "polish_200k" "czech" "czech_1k" "czech_10k" "slovak" "slovak_1k" "slovak_10k" "slovenian" "slovenian_1k" "slovenian_5k" "croatian" "croatian_1k" "dutch" "dutch_1k" "dutch_10k" "filipino" "filipino_1k" "danish" "danish_1k" "danish_10k" "hungarian" "hungarian_2k" "norwegian_bokmal" "norwegian_bokmal_1k" "norwegian_bokmal_5k" "norwegian_bokmal_10k" "norwegian_bokmal_150k" "norwegian_bokmal_600k" "norwegian_nynorsk" "norwegian_nynorsk_1k" "norwegian_nynorsk_5k" "norwegian_nynorsk_10k" "norwegian_nynorsk_100k" "norwegian_nynorsk_400k" "hebrew" "hebrew_1k" "hebrew_5k" "hebrew_10k" "icelandic_1k" "romanian" "romanian_1k" "romanian_5k" "romanian_10k" "romanian_25k" "romanian_50k" "romanian_100k" "romanian_200k" "lorem_ipsum" "finnish" "finnish_1k" "finnish_10k" "estonian" "estonian_1k" "estonian_5k" "estonian_10k" "udmurt" "welsh" "welsh_1k" "persian" "persian_1k" "persian_5k" "persian_20k" "persian_romanized" "marathi" "kazakh" "kazakh_1k" "vietnamese" "vietnamese_1k" "vietnamese_5k" "jyutping" "pinyin" "pinyin_1k" "pinyin_10k" "hausa" "hausa_1k" "swedish" "swedish_1k" "swedish_diacritics" "serbian_latin" "serbian_latin_10k" "serbian" "serbian_10k" "yoruba_1k" "swahili_1k" "maori_1k" "catalan" "catalan_1k" "lojban_gismu" "lojban_cmavo" "lithuanian" "lithuanian_1k" "lithuanian_3k" "bulgarian" "bulgarian_latin" "bangla" "bangla_letters" "bangla_10k" "bosnian" "bosnian_4k" "toki_pona" "toki_pona_ku_suli" "toki_pona_ku_lili" "esperanto" "esperanto_1k" "esperanto_10k" "esperanto_25k" "esperanto_36k" "esperanto_x_sistemo" "esperanto_x_sistemo_1k" "esperanto_x_sistemo_10k" "esperanto_x_sistemo_25k" "esperanto_x_sistemo_36k" "esperanto_h_sistemo" "esperanto_h_sistemo_1k" "esperanto_h_sistemo_10k" "esperanto_h_sistemo_25k" "esperanto_h_sistemo_36k" "kyrgyz" "kyrgyz_1k" "urdu" "urdu_1k" "urdu_5k" "urdish" "albanian" "albanian_1k" "shona" "shona_1k" "armenian" "armenian_1k" "armenian_western" "armenian_western_1k" "myanmar_burmese" "japanese_hiragana" "japanese_katakana" "japanese_romaji" "japanese_romaji_1k" "sinhala" "latvian" "latvian_1k" "maltese" "maltese_1k" "twitch_emotes" "git" "pig_latin" "hindi" "hindi_1k" "hinglish" "gujarati" "gujarati_1k" "macedonian" "macedonian_1k" "macedonian_10k" "macedonian_75k" "belarusian" "belarusian_1k" "belarusian_5k" "belarusian_10k" "belarusian_25k" "belarusian_50k" "belarusian_100k" "belarusian_lacinka" "belarusian_lacinka_1k" "tatar" "tatar_1k" "tatar_5k" "tatar_9k" "tatar_crimean" "tatar_crimean_1k" "tatar_crimean_5k" "tatar_crimean_10k" "tatar_crimean_15k" "tatar_crimean_cyrillic" "tatar_crimean_cyrillic_1k" "tatar_crimean_cyrillic_5k" "tatar_crimean_cyrillic_10k" "tatar_crimean_cyrillic_15k" "uzbek" "uzbek_1k" "uzbek_70k" "malayalam" "amharic" "amharic_1k" "amharic_5k" "oromo" "oromo_1k" "oromo_5k" "wordle" "league_of_legends" "wordle_1k" "typing_of_the_dead" "yiddish" "frisian" "frisian_1k" "pashto" "euskera" "klingon" "klingon_1k" "quenya" "occitan" "occitan_1k" "occitan_2k" "occitan_5k" "occitan_10k" "bashkir" "zulu" "kabyle" "kabyle_1k" "kabyle_2k" "kabyle_5k" "kabyle_10k" "code_python" "code_python_1k" "code_python_2k" "code_python_5k" "code_fsharp" "code_c" "code_csharp" "code_css" "code_c++" "code_dart" "code_brainfck" "code_javascript" "code_javascript_1k" "code_javascript_react" "code_jule" "code_julia" "code_haskell" "code_html" "code_nim" "code_nix" "code_pascal" "code_java" "code_kotlin" "code_go" "code_rockstar" "code_rust" "code_ruby" "code_r" "code_r_2k" "code_swift" "code_scala" "code_bash" "code_powershell" "code_lua" "code_luau" "code_latex" "code_typst" "code_matlab" "code_sql" "code_perl" "code_php" "code_vim" "code_vimscript" "code_opencl" "code_visual_basic" "code_arduino" "code_systemverilog" "code_elixir" "code_zig" "code_gdscript" "code_gdscript_2" "code_assembly" "code_v" "code_ook" "code_typescript" "code_odin" "xhosa" "xhosa_3k" "tibetan" "tibetan_1k" "code_cobol" "code_common_lisp" "docker_file" "code_fortran" "viossa" "viossa_njutro" |
{- "message": "string",
- "data": {
- "_id": "string",
- "language": "english",
- "quoteId": 0,
- "average": 0,
- "ratings": 0,
- "totalRating": 0
}
}
Add a quote rating.
Rate limit: This operation can be called up to 500 times per hour for regular users.
Body
required | integer or string |
language required | string Enum: "english" "english_1k" "english_5k" "english_10k" "english_25k" "english_450k" "english_commonly_misspelled" "english_contractions" "english_doubleletter" "english_shakespearean" "english_old" "english_medical" "spanish" "spanish_1k" "spanish_10k" "spanish_650k" "french" "french_1k" "french_2k" "french_10k" "french_600k" "french_bitoduc" "nepali" "nepali_1k" "nepali_romanized" "sanskrit" "sanskrit_roman" "santali" "azerbaijani" "azerbaijani_1k" "arabic" "arabic_10k" "arabic_egypt" "arabic_egypt_1k" "malagasy" "malagasy_1k" "malay" "malay_1k" "mongolian" "mongolian_10k" "kannada" "korean" "korean_1k" "korean_5k" "khmer" "chinese_simplified" "chinese_simplified_1k" "chinese_simplified_5k" "chinese_simplified_10k" "chinese_simplified_50k" "chinese_traditional" "russian" "russian_1k" "russian_5k" "russian_10k" "russian_25k" "russian_50k" "russian_375k" "russian_contractions" "russian_contractions_1k" "russian_abbreviations" "ukrainian" "ukrainian_1k" "ukrainian_10k" "ukrainian_50k" "ukrainian_endings" "ukrainian_latynka" "ukrainian_latynka_1k" "ukrainian_latynka_10k" "ukrainian_latynka_50k" "ukrainian_latynka_endings" "portuguese" "portuguese_acentos_e_cedilha" "portuguese_1k" "portuguese_3k" "portuguese_5k" "portuguese_320k" "portuguese_550k" "indonesian" "indonesian_1k" "indonesian_10k" "kurdish_central" "kurdish_central_2k" "kurdish_central_4k" "german" "german_1k" "german_10k" "german_250k" "swiss_german" "swiss_german_1k" "swiss_german_2k" "afrikaans" "afrikaans_1k" "afrikaans_10k" "georgian" "tamil" "tamil_1k" "tanglish" "tamil_old" "telugu" "telugu_1k" "greek" "greek_1k" "greek_5k" "greek_10k" "greek_25k" "greeklish" "greeklish_1k" "greeklish_5k" "greeklish_10k" "greeklish_25k" "turkish" "turkish_1k" "turkish_5k" "irish" "italian" "italian_1k" "italian_7k" "italian_60k" "italian_280k" "friulian" "latin" "galician" "thai" "thai_1k" "thai_5k" "thai_10k" "thai_20k" "thai_50k" "thai_60k" "polish" "polish_2k" "polish_5k" "polish_10k" "polish_20k" "polish_40k" "polish_200k" "czech" "czech_1k" "czech_10k" "slovak" "slovak_1k" "slovak_10k" "slovenian" "slovenian_1k" "slovenian_5k" "croatian" "croatian_1k" "dutch" "dutch_1k" "dutch_10k" "filipino" "filipino_1k" "danish" "danish_1k" "danish_10k" "hungarian" "hungarian_2k" "norwegian_bokmal" "norwegian_bokmal_1k" "norwegian_bokmal_5k" "norwegian_bokmal_10k" "norwegian_bokmal_150k" "norwegian_bokmal_600k" "norwegian_nynorsk" "norwegian_nynorsk_1k" "norwegian_nynorsk_5k" "norwegian_nynorsk_10k" "norwegian_nynorsk_100k" "norwegian_nynorsk_400k" "hebrew" "hebrew_1k" "hebrew_5k" "hebrew_10k" "icelandic_1k" "romanian" "romanian_1k" "romanian_5k" "romanian_10k" "romanian_25k" "romanian_50k" "romanian_100k" "romanian_200k" "lorem_ipsum" "finnish" "finnish_1k" "finnish_10k" "estonian" "estonian_1k" "estonian_5k" "estonian_10k" "udmurt" "welsh" "welsh_1k" "persian" "persian_1k" "persian_5k" "persian_20k" "persian_romanized" "marathi" "kazakh" "kazakh_1k" "vietnamese" "vietnamese_1k" "vietnamese_5k" "jyutping" "pinyin" "pinyin_1k" "pinyin_10k" "hausa" "hausa_1k" "swedish" "swedish_1k" "swedish_diacritics" "serbian_latin" "serbian_latin_10k" "serbian" "serbian_10k" "yoruba_1k" "swahili_1k" "maori_1k" "catalan" "catalan_1k" "lojban_gismu" "lojban_cmavo" "lithuanian" "lithuanian_1k" "lithuanian_3k" "bulgarian" "bulgarian_latin" "bangla" "bangla_letters" "bangla_10k" "bosnian" "bosnian_4k" "toki_pona" "toki_pona_ku_suli" "toki_pona_ku_lili" "esperanto" "esperanto_1k" "esperanto_10k" "esperanto_25k" "esperanto_36k" "esperanto_x_sistemo" "esperanto_x_sistemo_1k" "esperanto_x_sistemo_10k" "esperanto_x_sistemo_25k" "esperanto_x_sistemo_36k" "esperanto_h_sistemo" "esperanto_h_sistemo_1k" "esperanto_h_sistemo_10k" "esperanto_h_sistemo_25k" "esperanto_h_sistemo_36k" "kyrgyz" "kyrgyz_1k" "urdu" "urdu_1k" "urdu_5k" "urdish" "albanian" "albanian_1k" "shona" "shona_1k" "armenian" "armenian_1k" "armenian_western" "armenian_western_1k" "myanmar_burmese" "japanese_hiragana" "japanese_katakana" "japanese_romaji" "japanese_romaji_1k" "sinhala" "latvian" "latvian_1k" "maltese" "maltese_1k" "twitch_emotes" "git" "pig_latin" "hindi" "hindi_1k" "hinglish" "gujarati" "gujarati_1k" "macedonian" "macedonian_1k" "macedonian_10k" "macedonian_75k" "belarusian" "belarusian_1k" "belarusian_5k" "belarusian_10k" "belarusian_25k" "belarusian_50k" "belarusian_100k" "belarusian_lacinka" "belarusian_lacinka_1k" "tatar" "tatar_1k" "tatar_5k" "tatar_9k" "tatar_crimean" "tatar_crimean_1k" "tatar_crimean_5k" "tatar_crimean_10k" "tatar_crimean_15k" "tatar_crimean_cyrillic" "tatar_crimean_cyrillic_1k" "tatar_crimean_cyrillic_5k" "tatar_crimean_cyrillic_10k" "tatar_crimean_cyrillic_15k" "uzbek" "uzbek_1k" "uzbek_70k" "malayalam" "amharic" "amharic_1k" "amharic_5k" "oromo" "oromo_1k" "oromo_5k" "wordle" "league_of_legends" "wordle_1k" "typing_of_the_dead" "yiddish" "frisian" "frisian_1k" "pashto" "euskera" "klingon" "klingon_1k" "quenya" "occitan" "occitan_1k" "occitan_2k" "occitan_5k" "occitan_10k" "bashkir" "zulu" "kabyle" "kabyle_1k" "kabyle_2k" "kabyle_5k" "kabyle_10k" "code_python" "code_python_1k" "code_python_2k" "code_python_5k" "code_fsharp" "code_c" "code_csharp" "code_css" "code_c++" "code_dart" "code_brainfck" "code_javascript" "code_javascript_1k" "code_javascript_react" "code_jule" "code_julia" "code_haskell" "code_html" "code_nim" "code_nix" "code_pascal" "code_java" "code_kotlin" "code_go" "code_rockstar" "code_rust" "code_ruby" "code_r" "code_r_2k" "code_swift" "code_scala" "code_bash" "code_powershell" "code_lua" "code_luau" "code_latex" "code_typst" "code_matlab" "code_sql" "code_perl" "code_php" "code_vim" "code_vimscript" "code_opencl" "code_visual_basic" "code_arduino" "code_systemverilog" "code_elixir" "code_zig" "code_gdscript" "code_gdscript_2" "code_assembly" "code_v" "code_ook" "code_typescript" "code_odin" "xhosa" "xhosa_3k" "tibetan" "tibetan_1k" "code_cobol" "code_common_lisp" "docker_file" "code_fortran" "viossa" "viossa_njutro" |
rating required | integer [ 1 .. 5 ] |
{- "quoteId": 0,
- "language": "english",
- "rating": 1
}
{- "message": "string"
}
Report a quote.
Required permissions: canReport
Rate limit: This operation can be called up to 50 times every 30 minutes for regular users.
Required configuration: This operation can only be called if the configuration for quotes.reporting.enabled
is true
.
Body
required | integer or string |
quoteLanguage required | string Enum: "english" "english_1k" "english_5k" "english_10k" "english_25k" "english_450k" "english_commonly_misspelled" "english_contractions" "english_doubleletter" "english_shakespearean" "english_old" "english_medical" "spanish" "spanish_1k" "spanish_10k" "spanish_650k" "french" "french_1k" "french_2k" "french_10k" "french_600k" "french_bitoduc" "nepali" "nepali_1k" "nepali_romanized" "sanskrit" "sanskrit_roman" "santali" "azerbaijani" "azerbaijani_1k" "arabic" "arabic_10k" "arabic_egypt" "arabic_egypt_1k" "malagasy" "malagasy_1k" "malay" "malay_1k" "mongolian" "mongolian_10k" "kannada" "korean" "korean_1k" "korean_5k" "khmer" "chinese_simplified" "chinese_simplified_1k" "chinese_simplified_5k" "chinese_simplified_10k" "chinese_simplified_50k" "chinese_traditional" "russian" "russian_1k" "russian_5k" "russian_10k" "russian_25k" "russian_50k" "russian_375k" "russian_contractions" "russian_contractions_1k" "russian_abbreviations" "ukrainian" "ukrainian_1k" "ukrainian_10k" "ukrainian_50k" "ukrainian_endings" "ukrainian_latynka" "ukrainian_latynka_1k" "ukrainian_latynka_10k" "ukrainian_latynka_50k" "ukrainian_latynka_endings" "portuguese" "portuguese_acentos_e_cedilha" "portuguese_1k" "portuguese_3k" "portuguese_5k" "portuguese_320k" "portuguese_550k" "indonesian" "indonesian_1k" "indonesian_10k" "kurdish_central" "kurdish_central_2k" "kurdish_central_4k" "german" "german_1k" "german_10k" "german_250k" "swiss_german" "swiss_german_1k" "swiss_german_2k" "afrikaans" "afrikaans_1k" "afrikaans_10k" "georgian" "tamil" "tamil_1k" "tanglish" "tamil_old" "telugu" "telugu_1k" "greek" "greek_1k" "greek_5k" "greek_10k" "greek_25k" "greeklish" "greeklish_1k" "greeklish_5k" "greeklish_10k" "greeklish_25k" "turkish" "turkish_1k" "turkish_5k" "irish" "italian" "italian_1k" "italian_7k" "italian_60k" "italian_280k" "friulian" "latin" "galician" "thai" "thai_1k" "thai_5k" "thai_10k" "thai_20k" "thai_50k" "thai_60k" "polish" "polish_2k" "polish_5k" "polish_10k" "polish_20k" "polish_40k" "polish_200k" "czech" "czech_1k" "czech_10k" "slovak" "slovak_1k" "slovak_10k" "slovenian" "slovenian_1k" "slovenian_5k" "croatian" "croatian_1k" "dutch" "dutch_1k" "dutch_10k" "filipino" "filipino_1k" "danish" "danish_1k" "danish_10k" "hungarian" "hungarian_2k" "norwegian_bokmal" "norwegian_bokmal_1k" "norwegian_bokmal_5k" "norwegian_bokmal_10k" "norwegian_bokmal_150k" "norwegian_bokmal_600k" "norwegian_nynorsk" "norwegian_nynorsk_1k" "norwegian_nynorsk_5k" "norwegian_nynorsk_10k" "norwegian_nynorsk_100k" "norwegian_nynorsk_400k" "hebrew" "hebrew_1k" "hebrew_5k" "hebrew_10k" "icelandic_1k" "romanian" "romanian_1k" "romanian_5k" "romanian_10k" "romanian_25k" "romanian_50k" "romanian_100k" "romanian_200k" "lorem_ipsum" "finnish" "finnish_1k" "finnish_10k" "estonian" "estonian_1k" "estonian_5k" "estonian_10k" "udmurt" "welsh" "welsh_1k" "persian" "persian_1k" "persian_5k" "persian_20k" "persian_romanized" "marathi" "kazakh" "kazakh_1k" "vietnamese" "vietnamese_1k" "vietnamese_5k" "jyutping" "pinyin" "pinyin_1k" "pinyin_10k" "hausa" "hausa_1k" "swedish" "swedish_1k" "swedish_diacritics" "serbian_latin" "serbian_latin_10k" "serbian" "serbian_10k" "yoruba_1k" "swahili_1k" "maori_1k" "catalan" "catalan_1k" "lojban_gismu" "lojban_cmavo" "lithuanian" "lithuanian_1k" "lithuanian_3k" "bulgarian" "bulgarian_latin" "bangla" "bangla_letters" "bangla_10k" "bosnian" "bosnian_4k" "toki_pona" "toki_pona_ku_suli" "toki_pona_ku_lili" "esperanto" "esperanto_1k" "esperanto_10k" "esperanto_25k" "esperanto_36k" "esperanto_x_sistemo" "esperanto_x_sistemo_1k" "esperanto_x_sistemo_10k" "esperanto_x_sistemo_25k" "esperanto_x_sistemo_36k" "esperanto_h_sistemo" "esperanto_h_sistemo_1k" "esperanto_h_sistemo_10k" "esperanto_h_sistemo_25k" "esperanto_h_sistemo_36k" "kyrgyz" "kyrgyz_1k" "urdu" "urdu_1k" "urdu_5k" "urdish" "albanian" "albanian_1k" "shona" "shona_1k" "armenian" "armenian_1k" "armenian_western" "armenian_western_1k" "myanmar_burmese" "japanese_hiragana" "japanese_katakana" "japanese_romaji" "japanese_romaji_1k" "sinhala" "latvian" "latvian_1k" "maltese" "maltese_1k" "twitch_emotes" "git" "pig_latin" "hindi" "hindi_1k" "hinglish" "gujarati" "gujarati_1k" "macedonian" "macedonian_1k" "macedonian_10k" "macedonian_75k" "belarusian" "belarusian_1k" "belarusian_5k" "belarusian_10k" "belarusian_25k" "belarusian_50k" "belarusian_100k" "belarusian_lacinka" "belarusian_lacinka_1k" "tatar" "tatar_1k" "tatar_5k" "tatar_9k" "tatar_crimean" "tatar_crimean_1k" "tatar_crimean_5k" "tatar_crimean_10k" "tatar_crimean_15k" "tatar_crimean_cyrillic" "tatar_crimean_cyrillic_1k" "tatar_crimean_cyrillic_5k" "tatar_crimean_cyrillic_10k" "tatar_crimean_cyrillic_15k" "uzbek" "uzbek_1k" "uzbek_70k" "malayalam" "amharic" "amharic_1k" "amharic_5k" "oromo" "oromo_1k" "oromo_5k" "wordle" "league_of_legends" "wordle_1k" "typing_of_the_dead" "yiddish" "frisian" "frisian_1k" "pashto" "euskera" "klingon" "klingon_1k" "quenya" "occitan" "occitan_1k" "occitan_2k" "occitan_5k" "occitan_10k" "bashkir" "zulu" "kabyle" "kabyle_1k" "kabyle_2k" "kabyle_5k" "kabyle_10k" "code_python" "code_python_1k" "code_python_2k" "code_python_5k" "code_fsharp" "code_c" "code_csharp" "code_css" "code_c++" "code_dart" "code_brainfck" "code_javascript" "code_javascript_1k" "code_javascript_react" "code_jule" "code_julia" "code_haskell" "code_html" "code_nim" "code_nix" "code_pascal" "code_java" "code_kotlin" "code_go" "code_rockstar" "code_rust" "code_ruby" "code_r" "code_r_2k" "code_swift" "code_scala" "code_bash" "code_powershell" "code_lua" "code_luau" "code_latex" "code_typst" "code_matlab" "code_sql" "code_perl" "code_php" "code_vim" "code_vimscript" "code_opencl" "code_visual_basic" "code_arduino" "code_systemverilog" "code_elixir" "code_zig" "code_gdscript" "code_gdscript_2" "code_assembly" "code_v" "code_ook" "code_typescript" "code_odin" "xhosa" "xhosa_3k" "tibetan" "tibetan_1k" "code_cobol" "code_common_lisp" "docker_file" "code_fortran" "viossa" "viossa_njutro" |
reason required | string Enum: "Grammatical error" "Duplicate quote" "Inappropriate content" "Low quality content" "Incorrect source" |
string or string | |
captcha required | string |
{- "quoteId": 0,
- "quoteLanguage": "english",
- "reason": "Grammatical error",
- "comment": "string",
- "captcha": "string"
}
{- "message": "string"
}
Check for admin permission for the current user.
Required permissions: admin
Rate limit: This operation can be called up to 1 times every 5 seconds for regular users.
Required configuration: This operation can only be called if the configuration for admin.endpointsEnabled
is true
.
{- "message": "string"
}
Ban an unbanned user or unban a banned user.
Required permissions: admin
Rate limit: This operation can be called up to 1 times every 5 seconds for regular users.
Required configuration: This operation can only be called if the configuration for admin.endpointsEnabled
is true
.
Body
uid required | string^[a-zA-Z0-9_]+$ |
{- "uid": "string"
}
{- "message": "string",
- "data": {
- "banned": true
}
}
Clear the streak hour offset for a user.
Required permissions: admin
Rate limit: This operation can be called up to 1 times every 5 seconds for regular users.
Required configuration: This operation can only be called if the configuration for admin.endpointsEnabled
is true
.
Body
uid required | string^[a-zA-Z0-9_]+$ |
{- "uid": "string"
}
{- "message": "string"
}
Accept one or many reports.
Required permissions: admin
Rate limit: This operation can be called up to 1 times every 5 seconds for regular users.
Required configuration: This operation can only be called if the configuration for admin.endpointsEnabled
is true
.
Body
required | Array of objects non-empty |
{- "reports": [
- {
- "reportId": "string"
}
]
}
{- "message": "string"
}
Reject one or many reports.
Required permissions: admin
Rate limit: This operation can be called up to 1 times every 5 seconds for regular users.
Required configuration: This operation can only be called if the configuration for admin.endpointsEnabled
is true
.
Body
required | Array of objects non-empty |
{- "reports": [
- {
- "reportId": "string",
- "reason": "string"
}
]
}
{- "message": "string"
}
Send a forgot password email to the given user email.
Required permissions: admin
Rate limit: This operation can be called up to 1 times every 5 seconds for regular users.
Required configuration: This operation can only be called if the configuration for admin.endpointsEnabled
is true
.
Body
email required | string <email> |
{- "email": "[email protected]"
}
{- "message": "string"
}
{- "message": "string",
- "data": {
- "maintenance": true,
- "dev": {
- "responseSlowdownMs": 0
}, - "quotes": {
- "reporting": {
- "enabled": true,
- "maxReports": 0,
- "contentReportLimit": 0
}, - "submissionsEnabled": true,
- "maxFavorites": 0
}, - "results": {
- "savingEnabled": true,
- "objectHashCheckEnabled": true,
- "filterPresets": {
- "enabled": true,
- "maxPresetsPerUser": 0
}, - "limits": {
- "regularUser": 0,
- "premiumUser": 0
}, - "maxBatchSize": 0
}, - "users": {
- "signUp": true,
- "lastHashesCheck": {
- "enabled": true,
- "maxHashes": 0
}, - "autoBan": {
- "enabled": true,
- "maxCount": 0,
- "maxHours": 0
}, - "profiles": {
- "enabled": true
}, - "discordIntegration": {
- "enabled": true
}, - "xp": {
- "enabled": true,
- "funboxBonus": 0,
- "gainMultiplier": 0,
- "maxDailyBonus": 0,
- "minDailyBonus": 0,
- "streak": {
- "enabled": true,
- "maxStreakDays": 0,
- "maxStreakMultiplier": 0
}
}, - "inbox": {
- "enabled": true,
- "maxMail": 0
}, - "premium": {
- "enabled": true
}
}, - "admin": {
- "endpointsEnabled": true
}, - "apeKeys": {
- "endpointsEnabled": true,
- "acceptKeys": true,
- "maxKeysPerUser": 0,
- "apeKeyBytes": 0,
- "apeKeySaltRounds": 0
}, - "rateLimiting": {
- "badAuthentication": {
- "enabled": true,
- "penalty": 0,
- "flaggedStatusCodes": [
- 0
]
}
}, - "dailyLeaderboards": {
- "enabled": true,
- "leaderboardExpirationTimeInDays": 0,
- "maxResults": 0,
- "validModeRules": [
- {
- "language": "string",
- "mode": "string",
- "mode2": "string"
}
], - "scheduleRewardsModeRules": [
- {
- "language": "string",
- "mode": "string",
- "mode2": "string"
}
], - "topResultsToAnnounce": 0,
- "xpRewardBrackets": [
- {
- "minRank": 0,
- "maxRank": 0,
- "minReward": 0,
- "maxReward": 0
}
]
}, - "leaderboards": {
- "minTimeTyping": 0,
- "weeklyXp": {
- "enabled": true,
- "expirationTimeInDays": 0,
- "xpRewardBrackets": [
- {
- "minRank": 0,
- "maxRank": 0,
- "minReward": 0,
- "maxReward": 0
}
]
}
}
}
}
Update the server configuration. Only provided values will be updated while the missing values will be unchanged.
Required permissions: admin
Rate limit: This operation can be called up to 1 times every 5 seconds for regular users.
Body
required | object |
{- "configuration": {
- "maintenance": true,
- "dev": {
- "responseSlowdownMs": 0
}, - "quotes": {
- "reporting": {
- "enabled": true,
- "maxReports": 0,
- "contentReportLimit": 0
}, - "submissionsEnabled": true,
- "maxFavorites": 0
}, - "results": {
- "savingEnabled": true,
- "objectHashCheckEnabled": true,
- "filterPresets": {
- "enabled": true,
- "maxPresetsPerUser": 0
}, - "limits": {
- "regularUser": 0,
- "premiumUser": 0
}, - "maxBatchSize": 0
}, - "users": {
- "signUp": true,
- "lastHashesCheck": {
- "enabled": true,
- "maxHashes": 0
}, - "autoBan": {
- "enabled": true,
- "maxCount": 0,
- "maxHours": 0
}, - "profiles": {
- "enabled": true
}, - "discordIntegration": {
- "enabled": true
}, - "xp": {
- "enabled": true,
- "funboxBonus": 0,
- "gainMultiplier": 0,
- "maxDailyBonus": 0,
- "minDailyBonus": 0,
- "streak": {
- "enabled": true,
- "maxStreakDays": 0,
- "maxStreakMultiplier": 0
}
}, - "inbox": {
- "enabled": true,
- "maxMail": 0
}, - "premium": {
- "enabled": true
}
}, - "admin": {
- "endpointsEnabled": true
}, - "apeKeys": {
- "endpointsEnabled": true,
- "acceptKeys": true,
- "maxKeysPerUser": 0,
- "apeKeyBytes": 0,
- "apeKeySaltRounds": 0
}, - "rateLimiting": {
- "badAuthentication": {
- "enabled": true,
- "penalty": 0,
- "flaggedStatusCodes": [
- 0
]
}
}, - "dailyLeaderboards": {
- "enabled": true,
- "leaderboardExpirationTimeInDays": 0,
- "maxResults": 0,
- "validModeRules": [
- {
- "language": "string",
- "mode": "string",
- "mode2": "string"
}
], - "scheduleRewardsModeRules": [
- {
- "language": "string",
- "mode": "string",
- "mode2": "string"
}
], - "topResultsToAnnounce": 0,
- "xpRewardBrackets": [
- {
- "minRank": 0,
- "maxRank": 0,
- "minReward": 0,
- "maxReward": 0
}
]
}, - "leaderboards": {
- "minTimeTyping": 0,
- "weeklyXp": {
- "enabled": true,
- "expirationTimeInDays": 0,
- "xpRewardBrackets": [
- {
- "minRank": 0,
- "maxRank": 0,
- "minReward": 0,
- "maxReward": 0
}
]
}
}
}
}
{- "message": "string"
}
Get schema definition of the server configuration.
Required permissions: admin
Rate limit: This operation can be called up to 1 times every 5 seconds for regular users.
{- "message": "string",
- "data": { }
}
Generate test results for the given user.
Body
username required | string |
createUser | boolean If |
firstTestTimestamp | integer >= 0 |
lastTestTimestamp | integer >= 0 |
minTestsPerDay | integer >= 0 |
maxTestsPerDay | integer >= 0 |
{- "username": "string",
- "createUser": true,
- "firstTestTimestamp": 0,
- "lastTestTimestamp": 0,
- "minTestsPerDay": 0,
- "maxTestsPerDay": 0
}
{- "message": "string",
}
Announce github release.
Rate limit: This operation can be called up to 1 times per second for regular users.
x-hub-signature-256 required | string |
Body
required | string or string |
object |
{- "action": "published",
- "release": {
- "id": "string"
}
}
{- "message": "string"
}