ieee-xplore-api

Search IEEE's 6M+ engineering and CS publications via the Xplore API

191 stars

Best use case

ieee-xplore-api is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Search IEEE's 6M+ engineering and CS publications via the Xplore API

Teams using ieee-xplore-api should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/ieee-xplore-api/SKILL.md --create-dirs "https://raw.githubusercontent.com/wentorai/research-plugins/main/skills/literature/search/ieee-xplore-api/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/ieee-xplore-api/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How ieee-xplore-api Compares

Feature / Agentieee-xplore-apiStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Search IEEE's 6M+ engineering and CS publications via the Xplore API

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# IEEE Xplore API

## Overview

IEEE Xplore provides access to over 6 million technical documents — journal articles, conference proceedings, technical standards, and books — covering electrical engineering, computer science, and related fields. The API enables metadata search, full-text access (with subscription), and DOI-based batch lookup. Requires an API key (free registration) and institutional subscription for full features.

## API Endpoints

### Base URL

```
https://ieeexploreapi.ieee.org/api/v1/search/articles
```

### Metadata Search

```bash
# Basic keyword search
curl "https://ieeexploreapi.ieee.org/api/v1/search/articles?\
apikey=YOUR_API_KEY&\
querytext=transformer+attention+mechanism&\
max_records=25"

# Search with filters
curl "https://ieeexploreapi.ieee.org/api/v1/search/articles?\
apikey=YOUR_API_KEY&\
querytext=federated+learning&\
start_year=2022&\
end_year=2026&\
content_type=Conferences&\
max_records=50"
```

### Query Parameters

| Parameter | Description | Example |
|-----------|-------------|---------|
| `apikey` | API key (required) | `apikey=YOUR_KEY` |
| `querytext` | Free-text search | `querytext=neural+network` |
| `article_title` | Title search | `article_title=BERT` |
| `author` | Author name | `author=Vaswani` |
| `abstract` | Abstract search | `abstract=reinforcement+learning` |
| `index_terms` | IEEE keyword terms | `index_terms=machine+learning` |
| `d-au` | Exact author | `d-au=Yann+LeCun` |
| `start_year` | From year | `start_year=2020` |
| `end_year` | To year | `end_year=2026` |
| `content_type` | Document type | `Journals`, `Conferences`, `Standards`, `Books` |
| `publication_title` | Venue name | `publication_title=CVPR` |
| `max_records` | Results (max 200) | `max_records=50` |
| `start_record` | Pagination offset | `start_record=51` |
| `sort_field` | Sort by | `article_date`, `article_title` |
| `sort_order` | Sort direction | `asc` or `desc` |

### Boolean Search

```bash
# Boolean operators: AND, OR, NOT
querytext=(machine AND learning) NOT survey

# Phrase search
querytext="graph neural network"

# Field-specific boolean
article_title="attention" AND author="Vaswani"
```

### DOI Batch Lookup

```bash
# Look up up to 25 DOIs at once
curl "https://ieeexploreapi.ieee.org/api/v1/search/articles?\
apikey=YOUR_API_KEY&\
doi=10.1109/CVPR.2024.12345&\
doi=10.1109/TPAMI.2023.67890"
```

## Response Structure

```json
{
  "total_records": 1250,
  "articles": [
    {
      "title": "Article Title",
      "authors": {
        "authors": [
          {"full_name": "Author Name", "affiliation": "University"}
        ]
      },
      "abstract": "The abstract text...",
      "publication_title": "IEEE CVPR 2024",
      "content_type": "Conferences",
      "doi": "10.1109/CVPR.2024.12345",
      "publication_date": "2024-06-01",
      "start_page": "100",
      "end_page": "110",
      "citing_paper_count": 15,
      "pdf_url": "https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=12345",
      "html_url": "https://ieeexplore.ieee.org/document/12345"
    }
  ]
}
```

## Python Usage

```python
import os
import requests

API_KEY = os.environ["IEEE_API_KEY"]
BASE_URL = "https://ieeexploreapi.ieee.org/api/v1/search/articles"

def search_ieee(query: str, max_results: int = 25,
                content_type: str = None, start_year: int = None) -> list:
    """Search IEEE Xplore for technical publications."""
    params = {
        "apikey": API_KEY,
        "querytext": query,
        "max_records": max_results,
        "sort_field": "article_date",
        "sort_order": "desc"
    }
    if content_type:
        params["content_type"] = content_type
    if start_year:
        params["start_year"] = start_year

    resp = requests.get(BASE_URL, params=params)
    resp.raise_for_status()
    data = resp.json()

    results = []
    for article in data.get("articles", []):
        authors = [a["full_name"] for a in article.get("authors", {}).get("authors", [])]
        results.append({
            "title": article.get("title"),
            "authors": authors,
            "venue": article.get("publication_title"),
            "year": article.get("publication_date", "")[:4],
            "doi": article.get("doi"),
            "citations": article.get("citing_paper_count", 0),
            "url": article.get("html_url")
        })
    return results

# Example
papers = search_ieee("edge computing IoT", content_type="Journals", start_year=2023)
for p in papers:
    print(f"[{p['year']}] {p['title']} — {p['venue']} (cited: {p['citations']})")
```

## Access Tiers

| Tier | Access Level | Requirements |
|------|-------------|-------------|
| **Free** | Metadata + abstracts | API key registration |
| **Open Access** | Full text of OA articles | API key |
| **Institutional** | Full text of all articles | API key + subscription |

## References

- [IEEE Xplore API Portal](https://developer.ieee.org/)
- [API Documentation](https://developer.ieee.org/docs)
- [IEEE Xplore Digital Library](https://ieeexplore.ieee.org/)