# Wikipedia Edits API
> Live Wikipedia editing activity as an API — a read on who is editing Wikipedia and what they are changing, served from the official MediaWiki API. It returns the firehose of recent edits across any language Wikipedia (page title, editor, edit summary, byte change, timestamp, and bot/minor/new flags), the profile and contribution stats of any editor (total edit count, registration date, account age and user groups), and an editor's own recent edits. Multilingual across the major Wikipedias. The contributor-and-edits layer for the world's encyclopedia, for social, research and dashboard apps. Live, no key, no cache. Distinct from Wikipedia content and search APIs and from pageview (reader) APIs — this is the live editing activity and the people behind it.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/wikiedits-api/..."
```

## Pricing
- **Free** (Free) — 12,000 calls/Mo, 5 req/s
- **Starter** ($8/Mo) — 155,000 calls/Mo, 15 req/s
- **Pro** ($20/Mo) — 760,000 calls/Mo, 40 req/s
- **Scale** ($46/Mo) — 3,800,000 calls/Mo, 100 req/s

## Endpoints

### Recent Changes

#### `GET /v1/recentchanges` — Live recent edits feed

**Parameters:**
- `lang` (query, optional, string) — Wikipedia language code Example: `en`
- `limit` (query, optional, string) — Max changes (1-100) Example: `25`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/wikiedits-api/v1/recentchanges?lang=en&limit=25"
```

**Response:**
```json
{
    "data": {
        "lang": "en",
        "count": 25,
        "changes": [
            {
                "url": "https://en.wikipedia.org/wiki/Vijayawada_railway_division",
                "type": "edit",
                "user": "Vikkyhere",
                "revid": 1358505955,
                "title": "Vijayawada railway division",
                "is_bot": false,
                "is_new": false,
                "comment": "/* */",
                "is_minor": true,
                "timestamp": "2026-06-09T03:02:11Z",
                "byte_change": -33
            },
            {
                "url": "https://en.wikipedia.org/wiki/East_Harptree",
                "type": "edit",
                "user": "Lexiconaut",
                "revid": 1358505959,
                "title": "East Harptree",
                "is_bot": false,
                "is_new": false,
                "comment": "ISBN template (via [[WP:JWB]])",
                "is_minor": false,
                "timestamp": "2026-06-09T03:02:11Z",
                "byte_change": -37
            },
            {
                "url": "https://en.wikipedia.org/wiki/St_Mary_MacKillop_College%2C_Albury",
                "type": "edit",
                "user": "~2026-33814-66",
                "revid": 1358505957,
                "title": "St Mary MacKillop College, Albury",
                "is_bot": false,
                "is_new": false,
                "comment": "/* Principals */",
                "is_minor": fal
…(truncated, see openapi.json for full schema)
```

### User

#### `GET /v1/user` — An editor profile and stats

**Parameters:**
- `name` (query, required, string) — Editor username Example: `Jimbo Wales`
- `lang` (query, optional, string) — Wikipedia language code Example: `en`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/wikiedits-api/v1/user?name=Jimbo+Wales&lang=en"
```

**Response:**
```json
{
    "data": {
        "lang": "en",
        "name": "Jimbo Wales",
        "groups": [
            "extendedconfirmed",
            "founder",
            "reviewer"
        ],
        "is_bot": false,
        "edit_count": 14949,
        "profile_url": "https://en.wikipedia.org/wiki/User:Jimbo_Wales",
        "registration": "2001-03-27T20:47:31Z",
        "account_age_days": 9204
    },
    "meta": {
        "timestamp": "2026-06-09T03:02:14.103Z",
        "request_id": "1805613d-4427-42d7-80b3-afd48e3cd193"
    },
    "status": "ok",
    "message": "User retrieved successfully",
    "success": true
}
```

### Contributions

#### `GET /v1/contributions` — An editor recent edits

**Parameters:**
- `user` (query, required, string) — Editor username Example: `Jimbo Wales`
- `lang` (query, optional, string) — Wikipedia language code Example: `en`
- `limit` (query, optional, string) — Max edits (1-100) Example: `25`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/wikiedits-api/v1/contributions?user=Jimbo+Wales&lang=en&limit=25"
```

**Response:**
```json
{
    "data": {
        "lang": "en",
        "user": "Jimbo Wales",
        "count": 25,
        "contributions": [
            {
                "url": "https://en.wikipedia.org/wiki/User_talk%3AJimbo_Wales",
                "revid": 1358134399,
                "title": "User talk:Jimbo Wales",
                "is_new": false,
                "is_top": false,
                "comment": "/* 1,000 English Wikipedians 100,000 edits */",
                "is_minor": false,
                "timestamp": "2026-06-06T20:07:53Z",
                "byte_change": 111
            },
            {
                "url": "https://en.wikipedia.org/wiki/Wikipedia%3AVillage_pump_(WMF)",
                "revid": 1356695939,
                "title": "Wikipedia:Village pump (WMF)",
                "is_new": false,
                "is_top": false,
                "comment": "/* I imagine I'll regret this */ Reply",
                "is_minor": false,
                "timestamp": "2026-05-29T07:36:30Z",
                "byte_change": 616
            },
            {
                "url": "https://en.wikipedia.org/wiki/Wikipedia%3AVillage_pump_(WMF)",
                "revid": 1356586438,
                "title": "Wikipedia:Village pump (WMF)",
                "is_new": false,
                "is_top": false,
                "comment": "/* I imagine I'll regret this */ Reply",
                "is_minor": false,
                "timestamp": "2026-05-28T17:58:17Z",
                "byte_change": 632
 
…(truncated, see openapi.json for full schema)
```

### Meta

#### `GET /v1/meta` — Service metadata

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/wikiedits-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "source": "MediaWiki action API (live)",
        "service": "wikiedits-api",
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/user": "An editor's profile and stats (name=Jimbo Wales, lang=en).",
            "GET /v1/contributions": "An editor's recent edits (user=Jimbo Wales, lang=en, limit).",
            "GET /v1/recentchanges": "Live recent edits feed (lang=en, limit up to 100)."
        },
        "languages": [
            "en",
            "de",
            "fr",
            "es",
            "it",
            "nl",
            "pt",
            "ru",
            "ja",
            "zh",
            "pl",
            "sv",
            "ar",
            "fa",
            "el"
        ],
        "description": "Live Wikipedia editing activity from the official MediaWiki API: the firehose of recent edits across any language Wikipedia (title, editor, summary, byte change, timestamp, bot/minor/new flags), any editor's profile and contribution stats (total edits, registration, account age, groups), and an editor's own recent edits. Live, no key, multilingual. Distinct from Wikipedia content/search APIs and from pageview APIs — this is the editor-and-edits layer.",
        "upstream_status": "ok"
    },
    "meta": {
        "timestamp": "2026-06-09T03:02:14.577Z",
        "request_id": "302b075a-71a2-408f-a2ba-4f2a5b5ce925"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


---
Marketplace page: https://www.oanor.com/api/wikiedits-api
OpenAPI spec: https://www.oanor.com/api/wikiedits-api/openapi.json
