Oxford Dictionaries API

Get your API Key

Dictionaries

World-renowned monolingual and bilingual dictionary data

LexiStats

Corpus derived statistical data

Community

Support from a Forum, Webinars, and Blog

Enter a word above to see the API in action …
Definition Example sentence Corpus frequency
  • Python
  • Java
  • Ruby
  • Node

									# for more information on how to install requests# http://docs.python-requests.org/en/master/user/install/#installimport  requestsimport json# TODO: replace with your own app_id and app_keyapp_id = '<my app_id>'app_key = '<my app_key>'language = 'en'word_id = 'Ace'url = 'https://od-api.oxforddictionaries.com:443/api/v2/entries/'  + language + '/'  + word_id.lower()#url Normalized frequencyurlFR = 'https://od-api.oxforddictionaries.com:443/api/v2/stats/frequency/word/'  + language + '/?corpus=nmc&lemma=' + word_id.lower()r = requests.get(url, headers = {'app_id' : app_id, 'app_key' : app_key})print("code {}\n".format(r.status_code))print("text \n" + r.text)print("json \n" + json.dumps(r.json()))
							
                            import  org.json.simple.JSONArray;import  org.json.simple.JSONObject;import  org.json.simple.parser.JSONParser;import  javax.net.ssl.HttpsURLConnection;import java.io.BufferedReader;import  java.io.InputStreamReader;import  java.net.URL;import java.rmi.RemoteException;import java.rmi.server.UnicastRemoteObject;// Created by ahmedengu.public class Oxfordextends UnicastRemoteObjectimplements OxfordInterface{   protectedOxford() throws RemoteException{  }  public String dictionary(String word){    JSONParser parser=new  JSONParser();    String ret="404"    try{       final String result=getRequest(buildURL(word));       final Object parse=parser.parse(result);     catch (Exception e){       System.out.println(e);    }     return ret}   private String buildURL(final  String word){    final String language="en";    final String word_id=word.toLowerCase();    return "https://od-api.oxforddictionaries.com:443/api/v2/entries/" + language + "/" + word_id;  }// Created url Normalized frequency   private String buildURLFrequency(final  String word){    final String language="en";    final String word_id=word.toLowerCase();    return "https://od-api.oxforddictionaries.com:443/api/v2/stats/frequency/word/" + language + "/?corpus=nmc&lemma=" + word_id;  }  private String getRequest(String link){    final  String app_id="my_app_id"    final  String app_key="my_app_key"    try{       URL url=new  URL(link)       HttpsURLConnection urlConnection=(HttpsURLConnection) url.openConnection();       urlConnection.setRequestProperty("Accept", "application/json");       urlConnection.setRequestProperty("app_id", app_id);       urlConnection.setRequestProperty("app_key", app_key);      // read the output from the server       BufferedReader reader=new BufferedReader(new InputStreamReader(urlConnection.getInputStream()));       StringBuilder stringBuilder=new StringBuilder();       String=null      while ((line=reader.readLine()) !=null){         stringBuilder.append(line + "\n");      }      return stringBuilder.toString();    }catch (Exeption e){       e.printStackTrace();       return e.toString();    }  }}
							
                            require 'net/https'require 'httparty'   # gem install httppartyresponse = nilword = 'small'uri = URI('https://od-api.oxforddictionaries.com:443/api/v2/entries/en-gb/' + word)use_ssl = truehttp = Net::HTTP.new(uri.host, uri.port)http.use_ssl = use_sslhttp.start do |http|   req = Net::HTTP::Get.new(uri)   req['app_id'] = 'YOURAPPID'   req['app_key'] = 'YOURAPPKEY'   req['Accept'] = 'application/json'   response = http.request(req)   resp = response.body  puts respend
							

								var Dictionary = require("oxford-dictionary-api");var app_id = "your oxford-account app id";var app_key = "your oxford-account app key";var dict = new Dictionary(app_id, app_key);dict.find("ace",function(error,data){if(error) return console.log(error); console.log(data); });
							

Find out what we can do for you…

Oxford Dictionaries is at the forefront of lexical research and our products will help you succeed whether you are building a game, learning application, or next-generation speech and text technology

Get your API Key

What's possible with our dictionary data?

Games

Enhance word games with approved wordlists and definition lookups

Bots and AI

Accurate, structured data and large corpora help solve many language problems

Learning

Audio, examples and synonyms are just some data types that can help learners

Research

Trusted, deep content for academic research, often for free!

amazon
zynga
google
facebook
microsoft
Prototype
Perfect for getting started 1000 requests per month Limited data access Limited request rate
Developer Access to all data and functionality
No usage cap Tiered discounts 1-10k @ £0.002
10-100k @ £0.001
100k+ @ £0.0005
Prices shown per request No caching ‘Powered by Oxford’ branding
ENTERPRISE
Bespoke pricing based on requirements Caching and offline usage XML and JSON data licensing Branding options
If you are conducting lexical research affiliated with an academic institution, you can apply for non-commercial research access to the API. We ask for full details of your intended research, and your required use of the API to grant access. Submit your details HERE and we will get back to you.