Enterprise API v1
S2S API Documentation
Programmatic access to research paper insights, viability scores, and trend analysis for your internal tools and workflows.
Authentication
All API requests require an API key in the Authorization header:
Authorization: Bearer s2s_YOUR_API_KEY
Get your API key from the Enterprise Dashboard → API Keys
Rate Limits
Daily Limit
Default: 1,000 requests/day. Check /api/v1/me for your remaining quota.
Response Headers
X-RateLimit-Remaining: Requests left todayX-RateLimit-Reset: Reset timestamp (UTC)
Quick Start
import requests
API_KEY = "s2s_YOUR_API_KEY"
BASE_URL = "https://sciencetostartup.com/api/v1"
response = requests.get(
f"{BASE_URL}/top-papers",
params={"topic": "battery-technology", "limit": 10, "min_score": 70},
headers={"Authorization": f"Bearer {API_KEY}"}
)
papers = response.json()["data"]
for paper in papers:
print(f"{paper['title']} - Score: {paper['viability_score']}")Endpoints
GET
/api/v1/top-papersrequires: readFetch top papers sorted by viability score
Parameters:
topic(string)Filter by topic/cluster (e.g., "quantum-computing")since(date)Papers published after this date (YYYY-MM-DD)limit(number)Max results (1-100, default: 50)offset(number)Pagination offsetmin_score(number)Minimum viability score (0-100)sort_by(string)"score" or "date" (default: score)GET
/api/v1/papersrequires: readGeneral paper search with extended filters
Parameters:
q(string)Full-text search in title/abstracttopic(string)Filter by topic/clustersince(date)Published after (YYYY-MM-DD)until(date)Published before (YYYY-MM-DD)min_score(number)Min viability scoremax_score(number)Max viability scoreinclude_analysis(boolean)Include full deep_dive_analysislimit(number)Max results (1-100)offset(number)Pagination offsetGET
/api/v1/topicsrequires: readList all topics/clusters with paper counts
GET
/api/v1/paper/{arxivId}requires: readGet single paper with full analysis
Parameters:
arxivId(path)ArXiv paper ID (e.g., "2501.00001")GET
/api/v1/exportrequires: exportBulk export papers as CSV or JSON
Parameters:
format(string)"csv" or "json" (default: json)topic(string)Filter by topicsince(date)Published afterlimit(number)Max results (up to 5000)GET
/api/v1/merequires: readCheck your API key info and remaining quota
Error Codes
| Code | Meaning |
|---|---|
| 400 | Bad Request - Invalid parameters |
| 401 | Unauthorized - Missing or invalid API key |
| 403 | Forbidden - Missing required permission scope |
| 404 | Not Found - Resource doesn't exist |
| 429 | Rate Limit Exceeded - Daily quota exhausted |
| 500 | Internal Error - Please retry or contact support |