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/v1/entries/'  + language + '/'  + word_id.lower()#url Normalized frequencyurlFR = 'https://od-api.oxforddictionaries.com:443/api/v1/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/v1/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/v1/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/http'word = 'small'uri = URI('https://od-api.oxforddictionaries.com:443/api/v1/entries/en' + word)req = Net::HTTP::Get.new(uri)# set headers on the requestreq['Authorization'] = '<< DEVKEY >>:<< APIKEY>>'req['Accept'] = 'application/json'# perform the requestresp, data = Net::HTTP.start(uri.hostname, uri.port) {|http|   http.request(req)}puts 'Code = ' + resp.codeputs 'Message = ' + resp.messageresp.each {|key, val| puts key + ' = ' + val}puts data
							

								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

Select your plan to get started. You can change plan at any time. If you require cached or offline data or need to use the Oxford Dictionaries logo, please enquire via the Enterprise form for permission. The Powered by OXFORD logo can be used without our express permission.

Free

Full access to Oxford Dictionaries data

3k requests per month

60 calls per minute

NEW! LexiStats

FREE
Basic

Full access to Oxford Dictionaries data

10k requests per month

200 requests per minute

£0.002 per additional call

NEW! LexiStats

£10/month
Pro

Full access to Oxford Dictionaries data

100k requests per month

500 requests per minute

£0.002 per additional call

NEW! LexiStats

£50/month

Premium

Full access to Oxford Dictionaries data

500k requests per month

500 requests per minute

£0.002 per additional call

NEW! LexiStats

£200/month
Enterprise

Contact us to discuss pricing for caching, offline use, and branding

TALK TO US
Research

Conducting academic research?

REQUEST FREE ACCESS
Enterprise

Want to talk about bespoke access?

TALK TO US
Research

Conducting academic research?

REQUEST FREE ACCESS