Connection Integration System Api Streamline Icon: https://streamlinehq.com

API Docs

Paper Search API

Search through academic papers with our powerful research API.

Search Papers

POST
https://api.emergentmind.com/v1/papers/search

Search through arXiv papers using natural language queries with date filtering and result limits.

Authorization

x-api-key
string
header
required

Your API key for authentication. Get one from your API Keys dashboard.

Request Body

query
string
required

The search query string. Use natural language to describe what you're looking for.

Example: "transformer attention mechanisms"
num_results
integer
default: 10

Number of search results to return.

Range: 1 ≤ x ≤ 50
Example: 25
start_published_date
string<date>

Only return papers published on or after this date. Must be in YYYY-MM-DD format.

Example: "2024-01-01"
end_published_date
string<date>

Only return papers published on or before this date. Must be in YYYY-MM-DD format.

Example: "2024-12-31"

Response

200 - application/json
request_id
string

Unique identifier for the request.

Example: "b5947044-c4b7-8efa-9552-a7c89b306d95"
results
object[]

Array of paper objects matching the search query.

Result Object Properties:
id string

arXiv ID for the paper

title string

Title of the paper

abstract string

Abstract of the paper

published_at string<datetime>

Publication date in ISO 8601 format

Example

Request
POST /v1/papers/search
x-api-key: your_api_key_here
Content-Type: application/json
Request Body:
{
  "query": "transformer attention mechanisms",
  "num_results": 5,
  "start_published_date": "2024-01-01",
  "end_published_date": "2024-12-31"
}
Response
{
 "request_id": "b5947044-c4b7-8efa-9552-a7c89b306d95",
 "results": [
  {
   "id": "https://arxiv.org/abs/2301.12345",
   "title": "Attention Mechanisms in Transformers: A Comprehensive Survey",
   "abstract": "This paper provides a comprehensive survey of attention mechanisms used in transformer architectures...",
   "published_at": "2024-01-15T10:30:00.000Z"
  },
  {
   "id": "https://arxiv.org/abs/2302.67890",
   "title": "Efficient Attention: Reducing Computational Complexity",
   "abstract": "We propose a novel approach to reduce the computational complexity of attention mechanisms...",
   "published_at": "2024-02-20T14:15:00.000Z"
  }
 ]
}

Error Responses

400 Bad Request
{
 "error": "query is missing",
 "request_id": "b5947044-c4b7-8efa-9552-a7c89b306d95"
}
401 Unauthorized
{
 "error": "Invalid API key"
}
500 Internal Server Error
{
 "error": "An error occurred while processing your request",
 "request_id": "b5947044-c4b7-8efa-9552-a7c89b306d95"
}

Rate Limits

Free Plan

25 requests total

Paid Plans

2500 requests per billing cycle

Code Examples

cURL
curl -X POST "https://api.emergentmind.com/v1/papers/search" \
 -H "x-api-key: your_api_key_here" \
 -H "Content-Type: application/json" \
 -d '{
  "query": "transformer attention mechanisms",
  "num_results": 10,
  "start_published_date": "2024-01-01"
}'
Python
import requests

url = "https://api.emergentmind.com/v1/papers/search"
headers = {
    "x-api-key": "your_api_key_here",
    "Content-Type": "application/json"
}
data = {
    "query": "transformer attention mechanisms",
    "num_results": 10,
    "start_published_date": "2024-01-01"
}

response = requests.post(url, headers=headers, json=data)
result = response.json()
print(result)
JavaScript
const url = 'https://api.emergentmind.com/v1/papers/search';
const data = {
    query: 'transformer attention mechanisms',
    num_results: 10,
    start_published_date: '2024-01-01'
};

const response = await fetch(url, {
    method: 'POST',
    headers: {
        'x-api-key': 'your_api_key_here',
        'Content-Type': 'application/json'
    },
    body: JSON.stringify(data)
});

const result = await response.json();
console.log(result);
Agno (Python Agent Framework)
import json
import httpx
from urllib.parse import urlencode

from agno.agent import Agent

def search_emergentmind(query: str, num_results: int = 10, start_published_date: str = None, end_published_date: str = None) -> str:
    """
    Search for papers on Emergent Mind using the API.

    Args:
        query (str): Search query for papers.
        num_results (int): Number of papers to return. Defaults to 10.
        start_published_date (str, optional): Start date filter for published papers (YYYY-MM-DD format).
        end_published_date (str, optional): End date filter for published papers (YYYY-MM-DD format).

    Returns:
        dict: JSON response containing search results from Emergent Mind API.
    """

    # Fetch papers using properly encoded URL parameters
    base_url = 'https://api.emergentmind.com/v1/papers/search'

    # Build parameters dictionary, filtering out None values
    params = {
        'query': query,
        'num_results': num_results,
        'start_published_date': start_published_date,
        'end_published_date': end_published_date
    }

    # Set a header for the request with the api key
    headers = {
        'x-api-key': 'your_api_key_here',
        'Content-Type': 'application/json'
    }

    response = httpx.post(base_url, json=params, headers=headers)
    # print(response.json())
    return response.json()

agent = Agent(tools=[search_emergentmind], show_tool_calls=True, markdown=True)
agent.print_response("Get the papers about AI co-scientists published in 2025", stream=True)