Datamuse

App · Dictionaries & Language · 22 actions

Find the word you are reaching for. Datamuse searches 550,000 English words and phrases (and 500,000 Spanish ones) by meaning, sound, spelling or the company they keep: synonyms and antonyms, rhymes and near rhymes, homophones, the adjectives writers actually use for a noun, the words that follow or precede another in print, and the reverse dictionary that turns "ringing in the ears" into "tinnitus". Wildcard patterns solve crosswords and anagrams, the fill-in-the-blank search finds the word that fits between two others, and any word can be looked up for its definitions, pronunciation, syllable count and how common it is. Every search can be narrowed to a part of speech or a syllable count. No account or API key required.

Actions

ActionWhat it does
Fill in the blankFind the words that fit a gap in a sentence, given the word on either side of it.
Find adjectives that describe a nounFind the adjectives writers actually use for a noun, ranked by how often they appear together in Google Books: beach gives sandy, rocky, deserted.
Find antonymsFind words that mean the opposite, per WordNet.
Find associated wordsFind the words that turn up in the same writing as this one, what Datamuse calls triggers.
Find consonant matchesFind words with the same consonants in the same order, whatever the vowels do: sample and simple, letter and litter.
Find homophonesFind words pronounced exactly the same but spelled differently: course and coarse, their and there.
Find kinds of a wordMove down a level: find the specific things a general word covers, per WordNet.
Find near rhymesFind approximate rhymes: words that almost rhyme, which is what most song and verse actually uses.
Find nouns an adjective describesThe mirror of finding adjectives for a noun: give an adjective and get the nouns it is usually attached to.
Find rhymesFind perfect rhymes for a word, the ones that match from the stressed vowel to the end of the word.
Find synonymsFind words that mean the same thing, drawn from WordNet's synonym sets.
Find the parts of somethingFind what something is made of, per WordNet: a car comprises an accelerator, a clutch and a bumper.
Find what a word is a kind ofMove up a level: find the broader category a word belongs to, per WordNet.
Find what something is part ofThe mirror of finding the parts of something: give a part and get what it belongs to.
Find wordsThe full word search, with every constraint available at once: meaning, sound, spelling pattern, any of the fifteen lexical relations, and the words on either side of a blank.
Find words by spelling patternFind words matching a spelling pattern: t??k gives task, trek and tack; *ology gives every -ology.
Find words that come before a wordFind the words that most often come straight before this one in print, per Google Books: havoc is preceded by wreak.
Find words that follow a wordFind the words that most often come straight after this one in print, per Google Books: wreak is followed by havoc.
Find words that sound like thisFind real words that sound like something written down phonetically: "jirraf" comes back as giraffe.
Find words with a similar meaningThe reverse dictionary: describe the thing and get the word for it.
Look up a wordEverything Datamuse knows about one word: its definitions, its parts of speech, how it is pronounced in both IPA and Arpabet, how many syllables it has and how often it appears in print.
Suggest completions for a prefixAutocomplete a partly typed word.

Fill in the blank

Find the words that fit a gap in a sentence, given the word on either side of it. "Wreak ___" gives havoc and vengeance. Results are ranked by how often each word really does appear in that position in print, so after a very common word the commonest answers come first - add a meaning or a spelling pattern to get to the words you are after. No API key required.

Inputs

Word before the blankword_beforetext
Optional. The single word immediately to the left of the gap. Give this, the word after, or both.
Word after the blankword_aftertext
Optional. The single word immediately to the right of the gap.
Meaningmeans_liketext
Optional. Keep only words that mean roughly this, so the gap is filled by something you already have in mind.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find adjectives that describe a noun

Find the adjectives writers actually use for a noun, ranked by how often they appear together in Google Books: beach gives sandy, rocky, deserted. Add a topic hint to skew them, e.g. ocean with the topic "temperature". No API key required.

Inputs

NounnountextRequired
The noun to find describing adjectives for.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find antonyms

Find words that mean the opposite, per WordNet. No API key required.

Inputs

WordwordtextRequired
The word to find opposites for.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find associated words

Find the words that turn up in the same writing as this one, what Datamuse calls triggers. Cow brings back milking, dairy and udder. Good for brainstorming, tagging and keyword expansion, where a thesaurus is too narrow. No API key required.

Inputs

WordwordtextRequired
The word to find associations for.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find consonant matches

Find words with the same consonants in the same order, whatever the vowels do: sample and simple, letter and litter. Poets call it consonance. No API key required.

Inputs

WordwordtextRequired
The word whose consonant pattern should be matched.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find homophones

Find words pronounced exactly the same but spelled differently: course and coarse, their and there. Useful for proofreading rules and for word games. No API key required.

Inputs

WordwordtextRequired
The word to find sound-alikes for.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find kinds of a word

Move down a level: find the specific things a general word covers, per WordNet. Boat gives gondola, ferry and dinghy. No API key required.

Inputs

WordwordtextRequired
The general word to find specific kinds of.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find near rhymes

Find approximate rhymes: words that almost rhyme, which is what most song and verse actually uses. This is the action to reach for when a word has no perfect rhyme at all. No API key required.

Inputs

WordwordtextRequired
The word to find approximate rhymes for.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find nouns an adjective describes

The mirror of finding adjectives for a noun: give an adjective and get the nouns it is usually attached to. Yellow gives fever, ribbon and journalism. No API key required.

Inputs

AdjectiveadjectivetextRequired
The adjective to find described nouns for.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find rhymes

Find perfect rhymes for a word, the ones that match from the stressed vowel to the end of the word. Combine with the syllable and part-of-speech filters to get a rhyme that scans and fits: two-syllable adjectives that rhyme with gold, say. No API key required.

Inputs

WordwordtextRequired
The word to rhyme with. Rhymes are worked out from pronunciation, not spelling, so "through" rhymes with "blue".
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find synonyms

Find words that mean the same thing, drawn from WordNet's synonym sets. Narrow them by spelling, part of speech or syllable count to get a word that fits the sentence you already have. No API key required.

Inputs

WordwordtextRequired
The word to find synonyms for.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find the parts of something

Find what something is made of, per WordNet: a car comprises an accelerator, a clutch and a bumper. No API key required.

Inputs

WordwordtextRequired
The whole thing whose parts should be listed.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find what a word is a kind of

Move up a level: find the broader category a word belongs to, per WordNet. A gondola is a kind of boat, a sparrow a kind of bird. No API key required.

Inputs

WordwordtextRequired
The specific word to find the broader term for.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find what something is part of

The mirror of finding the parts of something: give a part and get what it belongs to. A trunk is part of a tree. No API key required.

Inputs

WordwordtextRequired
The part whose containing whole should be found.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find words

The full word search, with every constraint available at once: meaning, sound, spelling pattern, any of the fifteen lexical relations, and the words on either side of a blank. Set several and only the words satisfying all of them come back, five-letter synonyms of happy, or rhymes for blue that also mean sad. Use one of the dedicated actions when you want just one of these; use this one to combine them. No API key required.

Inputs

Means likemeans_liketext
Optional. Keep only words meaning roughly this. A word or a describing phrase both work.
Sounds likesounds_liketext
Optional. Keep only words pronounced like this string, spelled however you like.
Related torelated_totext
Optional. The word the chosen relations are measured against. Required when relations are chosen.
Relationsrelation_typeslist
Optional. How the results should be related to the word above. Choosing several requires all of them at once, so it narrows rather than widens. English only - Datamuse offers no relations for Spanish.One or more of: jja (Nouns it describes), jjb (Adjectives that describe it), syn (Synonyms), trg (Associated words), ant (Antonyms), spc (What it is a kind of), gen (Kinds of it), com (Its parts), par (What it is part of), bga (Words that follow it), and 5 more.
Word beforeword_beforetext
Optional. The single word the result should follow in a sentence. A ranking hint, not a filter.
Word afterword_aftertext
Optional. The single word the result should come before in a sentence. A ranking hint, not a filter.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Languagevocabularytext
Optional. Which vocabulary to search: 550,000 English words and phrases, or 500,000 Spanish ones. English by default.One of: en (English), es (Spanish). Default: en.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find words by spelling pattern

Find words matching a spelling pattern: t??k gives task, trek and tack; *ology gives every -ology. Wildcards are * for any run of letters, ? for exactly one, # for any consonant and @ for any vowel. Solves crossword clues and checks spellings. Pass a plain word with no wildcards to get the words spelled most like it, which is a spell-check. No API key required.

Inputs

Spelling patternpatterntextRequired
The pattern to match. * stands for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel. Wrap letters in double slashes to unscramble them: //aet// gives tea, eat and ate.
Languagevocabularytext
Optional. Which vocabulary to search: 550,000 English words and phrases, or 500,000 Spanish ones. English by default.One of: en (English), es (Spanish). Default: en.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find words that come before a word

Find the words that most often come straight before this one in print, per Google Books: havoc is preceded by wreak. No API key required.

Inputs

WordwordtextRequired
The second word of the pair.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find words that follow a word

Find the words that most often come straight after this one in print, per Google Books: wreak is followed by havoc. The way to finish a collocation you have half of. No API key required.

Inputs

WordwordtextRequired
The first word of the pair.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find words that sound like this

Find real words that sound like something written down phonetically: "jirraf" comes back as giraffe. This is the action for a word someone heard but cannot spell, and for cleaning up speech-to-text. No API key required.

Inputs

Sounds likesounds_liketextRequired
How the word sounds, spelled however you like. Datamuse works out the pronunciation, guessing from the spelling when it has to.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Languagevocabularytext
Optional. Which vocabulary to search: 550,000 English words and phrases, or 500,000 Spanish ones. English by default.One of: en (English), es (Spanish). Default: en.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Find words with a similar meaning

The reverse dictionary: describe the thing and get the word for it. "Ringing in the ears" comes back as tinnitus. Give it a single word instead and it works as a broad thesaurus, wider than the strict synonym sets. No API key required.

Inputs

MeaningdescriptiontextRequired
The meaning to search for: a word, or a phrase describing what you mean.
Spelled likespelled_liketext
Optional. Keep only words matching this spelling pattern. Use * for any run of letters, ? for exactly one letter, # for any consonant and @ for any vowel: b* starts with b, *ing ends in ing, ????? is any five-letter word.
Languagevocabularytext
Optional. Which vocabulary to search: 550,000 English words and phrases, or 500,000 Spanish ones. English by default.One of: en (English), es (Spanish). Default: en.
Topic hinttopicstext
Optional. Up to five words describing what is being written about. This does not filter anything out; it reorders the results so the ones that fit the subject come first. Nouns work best.
Part of speechpart_of_speechtext
Optional. Keep only words that can be used this way. Datamuse has no filter of its own for this, so a wider page of matches is fetched and narrowed here; a strict filter can return fewer words than asked for.One of: n (Noun), v (Verb), adj (Adjective), adv (Adverb), u (Other).
Fewest syllablesmin_syllablesnumber
Optional. Drop words with fewer syllables than this.From 1 to 20.
Most syllablesmax_syllablesnumber
Optional. Drop words with more syllables than this. Set both ends to ask for an exact length, e.g. 2 and 2 for two-syllable words only.From 1 to 20.
Number of wordsmax_resultsnumber
Optional. How many words to return, between 1 and 1000. 25 by default.From 1 to 1000. Default: 25.
Includeincludelist
Optional. Extra detail to attach to every word. Leave it empty for just the words, which is the fastest and smallest answer. Definitions in particular can run to dozens of senses per word.One or more of: definitions, parts_of_speech (Part of speech), syllables (Syllable count), pronunciation, frequency (How common the word is).

Outputs

candidates_considerednumber
How many words Datamuse returned before the part-of-speech and syllable filters were applied here. Equal to the count when neither filter was set; larger when one dropped words, which tells apart "Datamuse knows only three" from "only three got past the filter".
countnumber
How many words came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
What was searched for, echoed back so a message can name it without repeating the input.
wordslist
The matching words, best match first.
Example output
{
  "candidates_considered": 198,
  "count": 2,
  "query_url": "https://api.datamuse.com/words?rel_rhy=gold&md=dpsrf&ipa=1&max=200",
  "searched_for": "gold",
  "words": [
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Having a low temperature.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 67.632612,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj",
        "n",
        "adv"
      ],
      "pronunciation": "k\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "K OW1 L D",
      "score": 50061,
      "tags": [
        "adj",
        "n",
        "adv",
        "pron:K OW1 L D ",
        "f:67.632612"
      ],
      "word": "cold"
    },
    {
      "definition_headword": null,
      "definitions": [
        {
          "definition": "Courageous, daring.",
          "part_of_speech": "adj"
        }
      ],
      "frequency_per_million": 8.226663,
      "num_syllables": 1,
      "parts_of_speech": [
        "adj"
      ],
      "pronunciation": "b\u02c8o\u028a\u026ad",
      "pronunciation_arpabet": "B OW1 L D",
      "score": 22222,
      "tags": [
        "adj",
        "pron:B OW1 L D ",
        "f:8.226663"
      ],
      "word": "bold"
    }
  ]
}

Look up a word

Everything Datamuse knows about one word: its definitions, its parts of speech, how it is pronounced in both IPA and Arpabet, how many syllables it has and how often it appears in print. Also says whether the word is in the dictionary at all, which is how to check a spelling or vet a name. No API key required.

Inputs

WordwordtextRequired
The word or phrase to look up. Common multiword phrases such as "hot dog" work too.
Languagevocabularytext
Optional. Which vocabulary to search: 550,000 English words and phrases, or 500,000 Spanish ones. English by default.One of: en (English), es (Spanish). Default: en.

Outputs

in_vocabularytrue/false
True when Datamuse holds dictionary knowledge for this word - a definition or a part of speech. False means it has never seen the word: it still answers, but the pronunciation and the syllable count are guesses from the spelling. This is the field to test to check whether something is a real word.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
wordobject
One matching word, with whatever metadata was asked for.
Example output
{
  "in_vocabulary": true,
  "query_url": "https://api.datamuse.com/words?sp=flower&md=dpsrf&ipa=1&qe=sp&max=1",
  "word": {
    "definition_headword": null,
    "definitions": [
      {
        "definition": "A plant that bears flowers, especially a plant that is small and lacks wood.",
        "part_of_speech": "n"
      }
    ],
    "frequency_per_million": 14.690756,
    "num_syllables": 2,
    "parts_of_speech": [
      "n",
      "v"
    ],
    "pronunciation": "f\u026b\u02c8a\u028a\u025d",
    "pronunciation_arpabet": "F L AW1 ER0",
    "score": 2147483647,
    "tags": [
      "n",
      "v",
      "pron:F L AW1 ER0 ",
      "ipa_pron:f\u026b\u02c8a\u028a\u025d",
      "f:14.690756"
    ],
    "word": "flower"
  }
}

Suggest completions for a prefix

Autocomplete a partly typed word. This is Datamuse's search-box backend: it spell-corrects as it goes and falls back to words that sound or mean something similar when nothing starts with what was typed, so "rawand" still reaches Rwanda. Suggestions are ranked by popularity. No API key required.

Inputs

Typed so farprefixtextRequired
The characters typed so far. A suggestion is not always a completion of them - a misspelling gets corrected rather than extended.
Languagevocabularytext
Optional. Which vocabulary to search: 550,000 English words and phrases, or 500,000 Spanish ones. English by default.One of: en (English), es (Spanish). Default: en.
Number of suggestionsmax_resultsnumber
Optional. How many suggestions to return, between 1 and 1000. 10 by default, which is what a search box usually shows.From 1 to 1000. Default: 10.

Outputs

countnumber
How many suggestions came back.
query_urltext
The exact Datamuse request this step made, so a surprising result can be opened in a browser and checked.
searched_fortext
The prefix that was typed, echoed back.
suggestionslist
The suggested words, most popular first. The autocomplete endpoint never carries metadata, so every field but the word and its score is empty.
Example output
{
  "count": 2,
  "query_url": "https://api.datamuse.com/sug?s=rawand&max=10",
  "searched_for": "rawand",
  "suggestions": [
    {
      "definition_headword": null,
      "definitions": [],
      "frequency_per_million": null,
      "num_syllables": null,
      "parts_of_speech": [],
      "pronunciation": null,
      "pronunciation_arpabet": null,
      "score": 145038,
      "tags": [],
      "word": "rawanda"
    },
    {
      "definition_headword": null,
      "definitions": [],
      "frequency_per_million": null,
      "num_syllables": null,
      "parts_of_speech": [],
      "pronunciation": null,
      "pronunciation_arpabet": null,
      "score": 26,
      "tags": [],
      "word": "rwanda"
    }
  ]
}

On this page