Search IEEE's 6M+ engineering and CS publications via the Xplore API
Scanned 6/6/2026
Install via CLI
openskills install brycewang-stanford/Auto-Empirical-Research-Skills---
name: ieee-xplore-api
description: "Search IEEE's 6M+ engineering and CS publications via the Xplore API"
metadata:
openclaw:
emoji: "🔌"
category: "literature"
subcategory: "search"
keywords: ["ieee", "engineering literature", "computer science", "technical standards", "conference papers", "xplore"]
source: "https://developer.ieee.org/"
---
# 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/)
No comments yet. Be the first to comment!