The Oxford Dictionaries API has a number of flexible plans to suit all types of application. Registration is free and you can get started using the data straight away with your unique App ID and App Key. If you want to try out the API before registering, the live documentation offers a playground to try real calls and view the data, but you will need to register in order to experience the full features and capability of the API. You can register here.

You can view our plans here. We offer a number of flexible free and paid plans to suit all types of application, based on the number of requests you expect to send to the API and whether you need to cache any data. There is no long term commitment required and you can change plans at any time.

We offer a number of flexible free and paid plans to suit all types of application, based on the number of requests you expect to send to the API and whether you need to cache any data. There is no long term commitment required and you can change plans at any time.

Our customers pre-pay for the month ahead. In general, invoices for all paying customers are generated on the first day of the month. They are then issued a few days later, at which point you will be notified of the amount that is due, and then you will be charged another two days later. If you sign up for a paid plan or change to a higher plan towards the middle of the month, you will only be charged for the remaining days of that month. If you have any questions, please contact us.

If it looks as though you are close to hitting your request limit for the month, you will receive a notification in plenty of time to log-in to your account and change it to a higher level account, with a greater request allowance.

You can change your plan by signing in and navigating to ‘API credentials’, clicking on the name of your application, and then clicking ‘Review/Change’. If you have a Free account, and choose the stay on your existing plan once you have hit your monthly allowance, your access will cease for the remainder of the month but you will not be charged anything extra. Those on our paid plans will still have access to the API once they have hit their monthly request limit, but will be charged £0.002 per additional call.

You can test out our live documentation. If you need some advice from those in the know, take a look at our forum, where you can get advice from our technical team, and receive input from other developers.

The Oxford Dictionaries API offers an easy way to access powerful lexical data (words, definitions, translations, audio pronunciations, synonyms, antonyms, parts of speech, and more) to use in your apps and websites. Our mission is to extend learning and education worldwide, so there are very few usage restrictions for the API and our data, but please read our Terms and Conditions before signing up. If you are unsure about anything just let us know and we'll be happy to discuss a solution for you.

The Oxford Dictionaries API provides access to our current English dictionaries which are available on en.oxforddictionaries.com. This is our most comprehensive current English dictionary dataset and includes enhanced, updated versions of the Oxford Dictionary of English and the New Oxford American Dictionary. It includes more than 350,000 entries and is regularly updated with new words, senses, and definitions.

We also have content in Spanish, German, Portuguese, Romanian, isiZulu, Northern Sotho, Malay, Indonesian...and many more, and we're adding more all the time. Take a look at our supported languages page for the most up-to-date list.

We are also currently looking at launching data from bab.la and the Oxford English Dictionary (OED). Bab.la offers bi-directional translations in more than 28 languages, while the OED offers information on the history, pronunciation and usage of more than 600,000 words, past and present. Please see our 'our data' page for further information.

Oxford Dictionaries and the Oxford English Dictionary both come from the same publisher, Oxford University Press, but are different products. While Oxford Dictionaries reflects current usage of English, the OED records how language has developed over time. You can learn more about the difference between the OED and Oxford Dictionaries here..

We are currently looking at offering OED data as an API, and you can take a look at the documentation for this here.

You are free to use Oxford Dictionaries content in your commercial (paid-for) application and can use 'Powered by Oxford Dictionaries' wording without prior approval. Other restrictions may apply, so please consult the terms and conditions page first. If you have any questions, please contact us.

You can use 'Powered by Oxford Dictionaries' wording without prior approval. For details on using the Oxford Dictionaries logo, please visit our Branding Resources page. If stating that you use our data, please use please use 'Oxford Dictionaries' rather than 'Oxford English Dictionary'. This page explains the difference in these dictionaries more fully.

Although the OED is part of Oxford Dictionaries, please use 'Oxford Dictionaries' rather than 'Oxford English Dictionary' if stating that you use data from us. This page explains the difference in these dictionaries more fully.

Caching is allowed only on our paid plans, and permission is granted on a case by case basis. Please contact us first on api@oxforddictionaries.com if you wish to cache content, with details of your use case. If you could estimate how much data you would initially anticipate caching (i.e. how many calls you would initially make to our API), and how often you would need to refresh your cache by making additional calls to the API, this will enable us to process your request more quickly.

In the API, we currently offer content in English, Spanish, German, Portuguese, Romanian, isiZulu, Northern Sotho, Latvian, Malay, Indonesian...and many more, and we're adding more all the time. Take a look at our supported languages page for the most up-to-date list.

If you’re looking for a dictionary dataset for a language which isn’t currently available via the API, we might still be able to help. We have over 35 language datasets, from Afrikaans to Vietnamese, available to license via Oxford Dictionaries Licensing. We are also building content in 100 of the world's languages, many of which are digitally under-represented, as part of our Oxford Global Languages initiative.

Please take a look at our supported languages page. If your requested language isn't available through our API, it may be available through our licensing programme. If licensing is not the right option for you, please do let us know, as the more a language is requested, the more likely it is that we will be able to prioritize it for inclusion it the future.

You can access entire entries using the ‘entries’ endpoint either at the generic //entries/{source_lang}/{word_id} for the whole entry or specifically limited to the definition at //entries/{source_lang}/{word_id}/definitions. It is worth exploring the documentation page to see what is available.

The Thesaurus endpoint returns synonyms and/or antonyms for a given word. Try the URL entries/{source lang}/{word id}/synonyms to retrieve synonyms for each sense of the given word, or entries/{source lang}/{word id}/antonyms for antonyms . To retrieve both synonyms and antonyms at the same time, end the request with /synonyms;antonyms

You can produce a wordlist from the Wordlist endpoint. It is worth exploring the documentation page to see which filters can be applied. Note that while all matching base forms are returned, inflected forms will only be returned if they exactly match the prefix e.g. creating a call to find nouns starting ‘ca’ will return ‘cat’ (amongst many other things) but not ‘cats’ (the plural form); in order to return ‘cats’ you would need to set the prefix to ‘cats’.

You will need to call on /search/{source_lang} and make sure you set the ‘prefix’ to false (which is the default). If you would like to generate a list of phrases, you can also apply a lexicalCategory=idiomatic filter to our Worldist endpoint.

The sentence dictionary endpoint gives you access to corpus collected examples of how a word is used. You need to make a call to “/entries/{source_language}/{word_id}/sentences” for this content. You can double-check that you have the correct match for the definition call by using the sense-level IDs: “senseIds” in the sentence dictionary which should match “id” in the definition call and will take the format “m_en_...” or similar.

The best thing to do would be to explore our documentation page, which lays out all of the available options. The ‘utility’ section at the bottom of the page lists all of the available labels applicable to each filter.

You can use the documentation page to generate a URL for any call you make. Please note that this URL cannot be used directly in your application as it uses a different hostname but the rest of the URL can be copied and pasted into your code.

Our entries are listed as a base form (the ‘headword’) and that is what needs to be searched to trigger a response. We would recommend that you explore how to use the Lemmatron endpoint, which will tell you that a word is a derivative, and which word is a derivative of. You should then be able to use the Lemmatron output to create a second call to retrieve the definition for the base word.

Look out for the ‘homographNumber’ attribute. The structure of our data means that the numbering cannot be sequential but, in general, the lower the homographNumber, the more common the associated sense of the word is.

At present, this is not something that is possible through our API. However, if you are trying to retrieve the most common definition of a particular word, look out for the ‘homographNumber’ attribute. The structure of our data means that the numbering cannot be sequential but, in general, the lower the homographNumber, the more common the associated sense of the word is.

If you make an entry search with a regional filter (//entries/{source_lang}/{word_id}/regions=us), it will contain all of the pronunciation information relevant to the specified region. Each pronunciation attribute also contains a URL link to the relevant sound file, which is free to access.

Although this isn't currently a feature of our API, there is a way to retrieve a random word. You could randomly select an offset value for the wordlist and limit the output to one result, which would effectively be the same as a random word selection. Please note that you would need to specify a filter before you do so, and that each call to the wordlist endpoint equates to 500 requests. If a random word feature would be useful to you, please contact us to let us know. It may be something that we can consider for future development.

One wordlist request counts as 500 calls. It can contain up to 5000 words. But if you made a request that yielded 100 words, that would be worth the same (i.e. 1 wordlist call=500 calls) as a response that yielded 5000 words. Therefore, if you were using our free plan, with an allowance of 3000 requests, if you made a wordlist request for, for example, 50 words, you would then have 2500 requests left.

To find full lists of the categories available in each filter, use the Utility section of the API. Select the category you are interested in and then choose the relevant dictionary.
For example, to get a list of lexical categories in our English dictionaries, you would use “get /lexicalcategories/{language}” and select the language “En”. The endpoint will then reveal that the full list of English lexical categories: Adjective, Adverb, Noun, and so on. The full list of registers can be viewed using GET /registers/{source_language} in the Utility section of the documentation. You can then limit the API call to find specific registers using, e.g. /registers%3DDerogatory

If you explore our documentation page, you will find information on what each error code might mean under the 'response messages' for each endpoint. If you need any further help on resolving your problem, please contact us.