# Free Dictionary Word Definitions Scraper (`parseforge/dictionaryapi-words-scraper`) Actor

Scrapes word definitions, phonetics, pronunciation audio, parts of speech, and examples from the Free Dictionary API. Supports 12 languages, no API key, up to a million words per run.

- **URL**: https://apify.com/parseforge/dictionaryapi-words-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Developer tools, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $4.52 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

[![ParseForge](https://raw.githubusercontent.com/ParseForge/apify-assets/main/banner.jpg)](https://apify.com/parseforge?fpr=vmoqkp)

### Free Dictionary Word Definitions Scraper

**Scrape word definitions, phonetics, and examples from the Free Dictionary API, in 12 languages, up to a million words per run.** Every word comes back as one flat row with its part of speech, pronunciation audio, synonyms, and usage examples. No API key, no rate limits. Export to CSV, JSON, Excel, or XML.

The Free Dictionary API gives you clean dictionary data without an API key, but calling it word by word and stitching the responses together is slow. This Actor takes a list of words, looks each one up in the language you choose, and returns every definition, phonetic, audio link, and example in one fixed schema. It is the fastest way to build a word list, a vocabulary dataset, or a language-learning resource.

| Who uses it | What they scrape Free Dictionary for |
|---|---|
| Language learners | Build a personal vocabulary list with definitions and audio for any word they look up |
| NLP engineers | Create a clean, structured dataset of words, parts of speech, and examples for model training |
| Content writers | Check definitions, synonyms, and usage examples while drafting or editing |
| Educators | Generate word lists with phonetics and examples for lesson plans or quizzes |
| App developers | Populate a dictionary or flashcard app with pronunciation audio and definitions |

### What it does

This Actor collects word definitions, phonetics, pronunciation audio, parts of speech, and example usage from the Free Dictionary API and returns each word as one flat row.

- 🌍 **12 languages:** English, Hindi, Spanish, French, Japanese, Russian, German, Italian, Korean, Brazilian Portuguese, Arabic, and Turkish.
- 🔊 **Pronunciation audio:** each word includes a direct link to its audio file when the dictionary provides one.
- 📚 **Full lexical data:** definitions, parts of speech, phonetics, synonyms, antonyms, and usage examples in one row.
- ⚡ **Batch lookup:** feed it a list of words and it fetches them all in one run, up to a million words.
- 🔑 **No API key:** the Free Dictionary API is public, so there is nothing to register or configure.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

### What you can do with Free Dictionary data

**📖 Build a vocabulary dataset.**

An NLP engineer feeds a list of 10,000 English words and exports the definitions, parts of speech, and examples to CSV for a language model training set.

**🎧 Create a pronunciation guide.**

A language teacher looks up 200 French words and uses the audio links and phonetics to build a listening exercise for students.

**✍️ Check usage while writing.**

A content writer runs a list of tricky words through the Actor and reviews the definitions and example sentences to choose the right one.

**📱 Populate a flashcard app.**

An app developer scrapes 5,000 Spanish words with audio and definitions, then imports the JSON into a spaced-repetition flashcard system.

**🌐 Compare translations.**

A researcher looks up the same 50 words in English, Spanish, and German to compare definitions and usage across languages.

### Why choose this scraper

| | What you get |
|---|---|
| **No API key** | The Free Dictionary API is public, so you can start scraping immediately without registration or authentication. |
| **12 languages** | Look up words in English, Hindi, Spanish, French, Japanese, Russian, German, Italian, Korean, Brazilian Portuguese, Arabic, or Turkish. |
| **Pronunciation audio** | Each word includes a direct link to its audio file when the dictionary provides one, ready for your app or dataset. |
| **Flat output** | Every word comes back as one row with definitions, phonetics, parts of speech, synonyms, antonyms, and examples, so you can export to CSV, JSON, Excel, or XML without reshaping. |
| **Batch up to a million** | Set maxItems to collect as many words as you need in a single run, from a handful to a million. |

### How it compares

This Actor focuses on the Free Dictionary API, while Urban Dictionary covers slang and the other Free Dictionary actors offer similar core lookups with different feature sets.

| Feature | ParseForge | Urban Dictionary | Free Dictionary API | Free Dictionary Scraper |
|---|---|---|---|---|
| Standard dictionary definitions | Yes | Not listed | Yes | Yes |
| Pronunciation audio links | Yes | Not listed | Yes | Yes |
| Slang definitions | Not listed | Yes | Not listed | Not listed |
| Multi-language support | Yes, 12 languages | Not listed | Not listed | Yes |
| Batch word lookup | Yes, up to 1,000,000 words | Not listed | Not listed | Not listed |
| No API key required | Yes | Not listed | Yes | Yes |

### Configure the run

Drive the Actor with a list of words and a language code, and set a maximum number of words to collect per run. The Actor looks up each word and returns every match in one flat row. The Input tab lists every parameter.

A first run with the defaults:

```json
{
 "words": [
 "serendipity",
 "ephemeral",
 "ubiquitous"
 ],
 "maxItems": 10
}
```

A larger pull:

```json
{
 "words": [
 "serendipity",
 "ephemeral",
 "ubiquitous"
 ],
 "maxItems": 200
}
```

### Pricing

Pay-per-result: **$0.005 per result** collected. You pay only for the results written to your dataset.

| Results collected | Approximate cost |
|---|---|
| 100 results | $0.50 |
| 1,000 results | $5.00 |
| 10,000 results | $50.00 |

New Apify accounts start with $5 in free credit.

### Free users

Free-plan runs return up to 10 results as a preview. [Upgrade your Apify plan](https://console.apify.com/sign-up?fpr=vmoqkp) to collect up to 1,000,000 results per run.

### Run it

1. [Create a free Apify account with $5 in credit](https://console.apify.com/sign-up?fpr=vmoqkp).
2. Open the [Free Dictionary Word Definitions Scraper](https://apify.com/parseforge/dictionaryapi-words-scraper?fpr=vmoqkp).
3. Set your inputs and any filters, then click **Start**.
4. Export the results as CSV, Excel, JSON, or XML from the **Dataset** tab.

Run it programmatically through the [Apify API](https://docs.apify.com/api/v2) (`run-sync-get-dataset-items`) or the [ApifyClient](https://docs.apify.com/api/client/js) for JavaScript and Python.

### Use with AI agents (MCP)

Give an AI agent live access to Free Dictionary through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

```bash
claude mcp add --transport http apify "https://mcp.apify.com/?tools=parseforge/dictionaryapi-words-scraper"
```

Then prompt it in plain language to run the scraper and read back the results.

### Troubleshooting

**Why am I getting no results?**

Check that your words list is not empty and that the language code is correct. If a word is misspelled or not in the dictionary, the API returns no data for that word, but the run should still complete.

**Why is the run slow?**

The Actor looks up words one by one to avoid overwhelming the API. For large lists, increase the timeout or split the list into multiple runs.

**Why are some fields empty?**

The Free Dictionary API does not provide every field for every word. For example, some words have no audio or no synonyms. Empty fields are normal.

**Can I change the language after starting?**

No, the language is set at the start of the run. To change it, create a new run with a different language code.

**Why did the run stop before processing all my words?**

Check the maxItems setting. The Actor stops after collecting that many words, even if your list is longer.

### FAQ

| Question | Answer |
|---|---|
| Do I need an API key to use this Actor? | No. The Free Dictionary API is public and does not require authentication, so you can run the Actor immediately. |
| Which languages are supported? | English, Hindi, Spanish, French, Japanese, Russian, German, Italian, Korean, Brazilian Portuguese, Arabic, and Turkish. English has the most complete data. |
| What does each result row contain? | Each row includes the word, its definitions, parts of speech, phonetics, pronunciation audio link, synonyms, antonyms, and example sentences when the dictionary provides them. |
| How many words can I look up in one run? | You can set maxItems from 1 up to 1,000,000 words per run. The Actor will process the list you provide up to that limit. |
| What if a word is not found? | The Actor will return an empty result or an error message for that word, depending on the API response, and continue with the next word in your list. |
| Can I export the results? | Yes. The Actor outputs a flat dataset that you can export to CSV, JSON, Excel, or XML from the Apify platform. |
| Is there a rate limit? | The Free Dictionary API does not impose rate limits, but the Actor processes words sequentially to be polite to the service. |
| Can I use this for commercial projects? | The Free Dictionary API data is free to use. Check the API's terms of service for any restrictions on commercial use. |
| How do I provide the list of words? | Use the words input field, which accepts a list of strings. You can paste them directly or upload a file in the Apify console. |
| Does it return pronunciation audio? | Yes, when the dictionary provides an audio file, the row includes a direct URL to the audio. |

### Related actors

Browse the full [ParseForge collection](https://apify.com/parseforge?fpr=vmoqkp) for more scrapers.

🆘 **Need help?** Email parseforge@protonmail.com with your run ID, your input, and what you expected.

⚠️ **Disclaimer.** This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by DictionaryAPI.dev. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

# Actor input Schema

## `words` (type: `array`):

List of words to look up. Leave empty to look up a sample set (serendipity, ephemeral, ubiquitous).

## `language` (type: `string`):

Dictionary language code. English is the most complete.

## `maxItems` (type: `integer`):

Maximum number of words to collect per run.

## Actor input object example

```json
{
  "words": [
    "serendipity",
    "ephemeral",
    "ubiquitous"
  ],
  "language": "en",
  "maxItems": 10
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "words": [
        "serendipity",
        "ephemeral",
        "ubiquitous"
    ],
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/dictionaryapi-words-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "words": [
        "serendipity",
        "ephemeral",
        "ubiquitous",
    ],
    "maxItems": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/dictionaryapi-words-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "words": [
    "serendipity",
    "ephemeral",
    "ubiquitous"
  ],
  "maxItems": 10
}' |
apify call parseforge/dictionaryapi-words-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,parseforge/dictionaryapi-words-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/jrvZrUuqQqOOzGgGU/builds/1S1ydP3nA3Xm0gZ73/openapi.json
