Definitions, examples, synonyms and antonyms of an English word
Returns the meanings of an English word, grouped by part of speech, with example sentences, synonyms and antonyms.
Request
GEThttps://english-dictionary.p.apihiver.com/v1/define/happy
*
String. An English word, e.g.
happy. Language
Client
1curl --request GET \
2 --url https://english-dictionary.p.apihiver.com/v1/define/happy \
3 --header 'Accept: application/json' \
4 --header 'X-API-Key: YOUR_API_KEY'Definitions, examples, synonyms and antonyms of an English word: English Dictionary API reference
Returns the meanings of an English word, grouped by part of speech, with example sentences, synonyms and antonyms. This endpoint is part of the English Dictionary API: English definitions, synonyms, antonyms, rhymes, 'words that mean…' and autocomplete — fast and fully offline.
Definitions, examples, synonyms and antonyms of an English word: example requests in every language
GET /v1/define/{word} in Shell (cURL)
curl --request GET \
--url https://english-dictionary.p.apihiver.com/v1/define/happy \
--header 'Accept: application/json' \
--header 'X-API-Key: YOUR_API_KEY'GET /v1/define/{word} in Shell (HTTPie)
http GET https://english-dictionary.p.apihiver.com/v1/define/happy \
Accept:application/json \
X-API-Key:YOUR_API_KEYGET /v1/define/{word} in Shell (Wget)
wget --quiet \
--method GET \
--header 'Accept: application/json' \
--header 'X-API-Key: YOUR_API_KEY' \
--output-document \
- https://english-dictionary.p.apihiver.com/v1/define/happyGET /v1/define/{word} in Node.js (http)
const http = require('https');
const options = {
method: 'GET',
hostname: 'english-dictionary.p.apihiver.com',
port: null,
path: '/v1/define/happy',
headers: {
Accept: 'application/json',
'X-API-Key': 'YOUR_API_KEY'
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on('data', function (chunk) {
chunks.push(chunk);
});
res.on('end', function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();GET /v1/define/{word} in Node.js (Request)
const request = require('request');
const options = {
method: 'GET',
url: 'https://english-dictionary.p.apihiver.com/v1/define/happy',
headers: {Accept: 'application/json', 'X-API-Key': 'YOUR_API_KEY'}
};
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});GET /v1/define/{word} in Node.js (Unirest)
const unirest = require('unirest');
const req = unirest('GET', 'https://english-dictionary.p.apihiver.com/v1/define/happy');
req.headers({
Accept: 'application/json',
'X-API-Key': 'YOUR_API_KEY'
});
req.end(function (res) {
if (res.error) throw new Error(res.error);
console.log(res.body);
});GET /v1/define/{word} in Node.js (Axios)
const axios = require('axios').default;
const options = {
method: 'GET',
url: 'https://english-dictionary.p.apihiver.com/v1/define/happy',
headers: {Accept: 'application/json', 'X-API-Key': 'YOUR_API_KEY'}
};
try {
const { data } = await axios.request(options);
console.log(data);
} catch (error) {
console.error(error);
}GET /v1/define/{word} in Node.js (Fetch)
const fetch = require('node-fetch');
const url = 'https://english-dictionary.p.apihiver.com/v1/define/happy';
const options = {
method: 'GET',
headers: {Accept: 'application/json', 'X-API-Key': 'YOUR_API_KEY'}
};
try {
const response = await fetch(url, options);
const data = await response.json();
console.log(data);
} catch (error) {
console.error(error);
}GET /v1/define/{word} in JavaScript (XMLHttpRequest)
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener('readystatechange', function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open('GET', 'https://english-dictionary.p.apihiver.com/v1/define/happy');
xhr.setRequestHeader('Accept', 'application/json');
xhr.setRequestHeader('X-API-Key', 'YOUR_API_KEY');
xhr.send(data);GET /v1/define/{word} in JavaScript (Axios)
import axios from 'axios';
const options = {
method: 'GET',
url: 'https://english-dictionary.p.apihiver.com/v1/define/happy',
headers: {Accept: 'application/json', 'X-API-Key': 'YOUR_API_KEY'}
};
try {
const { data } = await axios.request(options);
console.log(data);
} catch (error) {
console.error(error);
}GET /v1/define/{word} in JavaScript (Fetch)
const url = 'https://english-dictionary.p.apihiver.com/v1/define/happy';
const options = {
method: 'GET',
headers: {Accept: 'application/json', 'X-API-Key': 'YOUR_API_KEY'}
};
try {
const response = await fetch(url, options);
const data = await response.json();
console.log(data);
} catch (error) {
console.error(error);
}GET /v1/define/{word} in JavaScript (jQuery)
const settings = {
async: true,
crossDomain: true,
url: 'https://english-dictionary.p.apihiver.com/v1/define/happy',
method: 'GET',
headers: {
Accept: 'application/json',
'X-API-Key': 'YOUR_API_KEY'
}
};
$.ajax(settings).done(function (response) {
console.log(response);
});GET /v1/define/{word} in Python (http.client)
import http.client
conn = http.client.HTTPSConnection("english-dictionary.p.apihiver.com")
headers = {
'Accept': "application/json",
'X-API-Key': "YOUR_API_KEY"
}
conn.request("GET", "/v1/define/happy", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))GET /v1/define/{word} in Python (Requests)
import requests
url = "https://english-dictionary.p.apihiver.com/v1/define/happy"
headers = {
"Accept": "application/json",
"X-API-Key": "YOUR_API_KEY"
}
response = requests.get(url, headers=headers)
print(response.json())GET /v1/define/{word} in PHP (cURL)
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://english-dictionary.p.apihiver.com/v1/define/happy",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"X-API-Key: YOUR_API_KEY"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}GET /v1/define/{word} in PHP (Guzzle)
<?php
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'https://english-dictionary.p.apihiver.com/v1/define/happy', [
'headers' => [
'Accept' => 'application/json',
'X-API-Key' => 'YOUR_API_KEY',
],
]);
echo $response->getBody();GET /v1/define/{word} in PHP (PECL HTTP v1)
<?php
$request = new HttpRequest();
$request->setUrl('https://english-dictionary.p.apihiver.com/v1/define/happy');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders([
'Accept' => 'application/json',
'X-API-Key' => 'YOUR_API_KEY'
]);
try {
$response = $request->send();
echo $response->getBody();
} catch (HttpException $ex) {
echo $ex;
}GET /v1/define/{word} in PHP (PECL HTTP v2)
<?php
$client = new http\Client;
$request = new http\Client\Request;
$request->setRequestUrl('https://english-dictionary.p.apihiver.com/v1/define/happy');
$request->setRequestMethod('GET');
$request->setHeaders([
'Accept' => 'application/json',
'X-API-Key' => 'YOUR_API_KEY'
]);
$client->enqueue($request)->send();
$response = $client->getResponse();
echo $response->getBody();GET /v1/define/{word} in Java (AsyncHttp)
AsyncHttpClient client = new DefaultAsyncHttpClient();
client.prepare("GET", "https://english-dictionary.p.apihiver.com/v1/define/happy")
.setHeader("Accept", "application/json")
.setHeader("X-API-Key", "YOUR_API_KEY")
.execute()
.toCompletableFuture()
.thenAccept(System.out::println)
.join();
client.close();GET /v1/define/{word} in Java (java.net.http)
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://english-dictionary.p.apihiver.com/v1/define/happy"))
.header("Accept", "application/json")
.header("X-API-Key", "YOUR_API_KEY")
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());GET /v1/define/{word} in Java (OkHttp)
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://english-dictionary.p.apihiver.com/v1/define/happy")
.get()
.addHeader("Accept", "application/json")
.addHeader("X-API-Key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();GET /v1/define/{word} in Java (Unirest)
HttpResponse<String> response = Unirest.get("https://english-dictionary.p.apihiver.com/v1/define/happy")
.header("Accept", "application/json")
.header("X-API-Key", "YOUR_API_KEY")
.asString();GET /v1/define/{word} in C# (HttpClient)
using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Get,
RequestUri = new Uri("https://english-dictionary.p.apihiver.com/v1/define/happy"),
Headers =
{
{ "Accept", "application/json" },
{ "X-API-Key", "YOUR_API_KEY" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}GET /v1/define/{word} in C# (RestSharp)
var client = new RestClient("https://english-dictionary.p.apihiver.com/v1/define/happy");
var request = new RestRequest("", Method.Get);
request.AddHeader("Accept", "application/json");
request.AddHeader("X-API-Key", "YOUR_API_KEY");
var response = client.Execute(request);GET /v1/define/{word} in Go (NewRequest)
package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://english-dictionary.p.apihiver.com/v1/define/happy"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Accept", "application/json")
req.Header.Add("X-API-Key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}GET /v1/define/{word} in Ruby (net::http)
require 'uri'
require 'net/http'
url = URI("https://english-dictionary.p.apihiver.com/v1/define/happy")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Accept"] = 'application/json'
request["X-API-Key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_bodyGET /v1/define/{word} in Swift (NSURLSession)
import Foundation
let headers = [
"Accept": "application/json",
"X-API-Key": "YOUR_API_KEY"
]
let request = NSMutableURLRequest(url: NSURL(string: "https://english-dictionary.p.apihiver.com/v1/define/happy")! as URL,
cachePolicy: .useProtocolCachePolicy,
timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers
let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
if (error != nil) {
print(error as Any)
} else {
let httpResponse = response as? HTTPURLResponse
print(httpResponse)
}
})
dataTask.resume()GET /v1/define/{word} in Objective-C (NSURLSession)
#import <Foundation/Foundation.h>
NSDictionary *headers = @{ @"Accept": @"application/json",
@"X-API-Key": @"YOUR_API_KEY" };
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://english-dictionary.p.apihiver.com/v1/define/happy"]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:10.0];
[request setHTTPMethod:@"GET"];
[request setAllHTTPHeaderFields:headers];
NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (error) {
NSLog(@"%@", error);
} else {
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
NSLog(@"%@", httpResponse);
}
}];
[dataTask resume];GET /v1/define/{word} in Kotlin (OkHttp)
val client = OkHttpClient()
val request = Request.Builder()
.url("https://english-dictionary.p.apihiver.com/v1/define/happy")
.get()
.addHeader("Accept", "application/json")
.addHeader("X-API-Key", "YOUR_API_KEY")
.build()
val response = client.newCall(request).execute()GET /v1/define/{word} in C (libcurl)
CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "https://english-dictionary.p.apihiver.com/v1/define/happy");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Accept: application/json");
headers = curl_slist_append(headers, "X-API-Key: YOUR_API_KEY");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
CURLcode ret = curl_easy_perform(hnd);GET /v1/define/{word} in Clojure (clj-http)
(require '[clj-http.client :as client])
(client/get "https://english-dictionary.p.apihiver.com/v1/define/happy" {:headers {:X-API-Key "YOUR_API_KEY"}
:accept :json})GET /v1/define/{word} in OCaml (CoHTTP)
open Cohttp_lwt_unix
open Cohttp
open Lwt
let uri = Uri.of_string "https://english-dictionary.p.apihiver.com/v1/define/happy" in
let headers = Header.add_list (Header.init ()) [
("Accept", "application/json");
("X-API-Key", "YOUR_API_KEY");
] in
Client.call ~headers `GET uri
>>= fun (res, body_stream) ->
(* Do stuff with the result *)GET /v1/define/{word} in R (httr)
library(httr)
url <- "https://english-dictionary.p.apihiver.com/v1/define/happy"
response <- VERB("GET", url, add_headers('X-API-Key' = 'YOUR_API_KEY'), content_type(""), accept("application/json"))
content(response, "text")GET /v1/define/{word} in PowerShell (Invoke-WebRequest)
$headers=@{}
$headers.Add("Accept", "application/json")
$headers.Add("X-API-Key", "YOUR_API_KEY")
$response = Invoke-WebRequest -Uri 'https://english-dictionary.p.apihiver.com/v1/define/happy' -Method GET -Headers $headersGET /v1/define/{word} in PowerShell (Invoke-RestMethod)
$headers=@{}
$headers.Add("Accept", "application/json")
$headers.Add("X-API-Key", "YOUR_API_KEY")
$response = Invoke-RestMethod -Uri 'https://english-dictionary.p.apihiver.com/v1/define/happy' -Method GET -Headers $headersGET /v1/define/{word} in HTTP (HTTP/1.1)
GET /v1/define/happy HTTP/1.1
Accept: application/json
X-Api-Key: YOUR_API_KEY
Host: english-dictionary.p.apihiver.com
Example response (200, application/json)
Success.
1{
2 "word": "happy",
3 "source": "Princeton WordNet 3.0",
4 "antonyms": [
5 "unhappy"
6 ],
7 "meanings": [
8 {
9 "definitions": [
10 {
11 "examples": [
12 "a happy smile",
13 "spent many happy days on the beach",
14 "a happy marriage"
15 ],
16 "definition": "enjoying or showing or marked by joy or pleasure"
17 },
18 {
19 "examples": [
20 "a felicitous life",
21 "a happy outcome"
22 ],
23 "definition": "marked by good fortune"
24 },
25 {
26 "examples": [
27 "glad to help"
28 ],
29 "definition": "eagerly disposed to act or to be of service"
30 }
31 ],
32 "part_of_speech": "adjective"
33 }
34 ],
35 "synonyms": [
36 "felicitous",
37 "glad",
38 "well-chosen"
39 ],
40 "base_form": "happy"
41}Errors
- 400 — A required parameter is missing or a value has the wrong format.
1{ 2 "error": { 3 "code": "INVALID_INPUT", 4 "message": "Send a single English word or short phrase (letters, spaces, hyphens)." 5 } 6} - 404 — Nothing matches the value you sent.
1{ 2 "error": { 3 "code": "NOT_FOUND", 4 "message": "'qwxzvbn' isn't in the dictionary." 5 } 6}
Gateway errors (missing key, no subscription, rate limits) are listed in Error codes.
Other English Dictionary API endpoints
- GETBroader (hypernym) and narrower (hyponym) words — e.g. dog → canine / puppy
- GETWords that rhyme (perfect and near rhymes)
- GETWords with a similar meaning to a word or phrase (reverse dictionary)
- GETSpelling-tolerant word suggestions as the user types
English Dictionary API pricing →·English Dictionary API overview →