| name | open-syllabus-api |
| description | Analyze most-taught books and texts via Open Syllabus analytics |
| metadata | {"openclaw":{"emoji":"📖","category":"domains","subcategory":"education","keywords":["Open Syllabus","syllabi analytics","teaching data","textbook rankings","curriculum analysis","higher education"],"source":"https://opensyllabus.org/"}} |
Open Syllabus API
Overview
Open Syllabus analyzes 20M+ college course syllabi from 7,000+ institutions in 140+ countries, tracking which books, articles, and media are most frequently assigned in higher education. The Explorer provides teaching frequency rankings and co-assignment patterns. Useful for curriculum research, textbook selection, and understanding disciplinary norms. Free for basic search; institutional subscription for full API access.
Explorer Interface
Web Search
API Access
curl -H "Authorization: Bearer $OS_TOKEN" \
"https://api.opensyllabus.org/v1/titles?query=republic+plato&limit=20"
curl -H "Authorization: Bearer $OS_TOKEN" \
"https://api.opensyllabus.org/v1/titles/12345"
curl -H "Authorization: Bearer $OS_TOKEN" \
"https://api.opensyllabus.org/v1/titles/12345/co-assigned?limit=20"
curl -H "Authorization: Bearer $OS_TOKEN" \
"https://api.opensyllabus.org/v1/rankings?field=Economics&limit=50"
Query Parameters
| Parameter | Description | Example |
|---|
query | Search text | query=machine+learning |
field | Academic discipline | field=Computer Science |
country | Country filter | country=US |
institution | Institution filter | institution=Harvard |
year_from | Start year | year_from=2020 |
year_to | End year | year_to=2026 |
limit | Results per page | limit=50 |
Key Metrics
| Metric | Description |
|---|
| Teaching Score | 0-100 normalized frequency of syllabi appearances |
| Count | Raw number of syllabi featuring the title |
| Rank | Position in overall or field-specific ranking |
| Co-assignment | Titles frequently taught alongside this one |
Python Usage
import requests
BASE_URL = "https://api.opensyllabus.org/v1"
def search_titles(query: str, field: str = None,
country: str = None,
limit: int = 20, token: str = "") -> list:
"""Search Open Syllabus for assigned titles."""
headers = {"Authorization": f"Bearer {token}"} if token else {}
params = {"query": query, "limit": limit}
if field:
params["field"] = field
if country:
params["country"] = country
resp = requests.get(
f"{BASE_URL}/titles",
headers=headers,
params=params,
)
resp.raise_for_status()
data = resp.json()
results = []
for item in data.get("results", []):
results.append({
"title": item.get("title"),
"authors": item.get("authors"),
"teaching_score": item.get("teaching_score"),
"count": item.get("appearance_count"),
"rank": item.get("rank"),
"top_fields": item.get("top_fields", []),
})
return results
() -> :
headers = {: } token {}
resp = requests.get(
,
headers=headers,
params={: limit},
)
resp.raise_for_status()
resp.json().get(, [])
() -> :
headers = {: } token {}
resp = requests.get(
,
headers=headers,
params={: field, : limit},
)
resp.raise_for_status()
resp.json().get(, [])
Top Assigned Works (Examples)
| Rank | Title | Author | Field |
|---|
| 1 | The Elements of Style | Strunk & White | Writing |
| 2 | The Republic | Plato | Philosophy |
| 3 | A Manual for Writers | Turabian | Writing |
| ~10 | Thinking, Fast and Slow | Kahneman | Psychology |
| ~50 | Introduction to Algorithms | CLRS | CS |
Use Cases
- Curriculum design: Find canonical texts in a discipline
- Textbook market research: Identify widely adopted materials
- Teaching trends: Track changes in assigned readings over time
- Interdisciplinary mapping: Discover texts bridging fields
- Academic publishing: Understand teaching impact vs. citation impact
References