Google Scholar

Search Google Scholar to retrieve academic papers, articles, and research results in JSON format.

Endpoint

GET /v1/scholar/{query}

Description

The Google Scholar Search endpoint allows you to search for academic papers, articles, and research on Google Scholar. The query parameter should be a URL-encoded query string that follows Google's search parameter format.

For reference on Google search parameters, check out our Google Search Operators guide.

Authentication

All requests require authentication using the X-Api-Key header. See the Authentication guide for more details.

Path Parameters

query (required)

Type: string

A URL-encoded query string. This should follow Google's search parameter format.

Examples:

  • q=high+frequency+trading
  • q=machine+learning+neural+networks

Request Headers

X-Proxy-Location (optional)

Type: string

Specify the proxy location for the search. Available options:

  • EU - European Union
  • CA - Canada
  • US - United States
  • IE - Ireland
  • GB - United Kingdom
  • FR - France
  • DE - Germany
  • SE - Sweden
  • IN - India
  • JP - Japan
  • KR - South Korea
  • SG - Singapore
  • AU - Australia
  • BR - Brazil

X-User-Agent (optional)

Type: string

Specify the user agent type. Available options:

  • desktop - Desktop user agent (default)
  • mobile - Mobile user agent

Request Example

Using cURL

curl --request GET \
  --url 'https://api.serply.io/v1/scholar/q=high+frequency+trading' \
  --header 'X-Api-Key: YOUR_API_KEY' | jq

Using JavaScript/Node.js

const response = await fetch('https://api.serply.io/v1/scholar/q=high+frequency+trading', {
  headers: {
    'X-Api-Key': 'YOUR_API_KEY'
  }
});
const data = await response.json();
console.log(data);

Using Python

import requests

headers = {
    'X-Api-Key': 'YOUR_API_KEY'
}

response = requests.get(
    'https://api.serply.io/v1/scholar/q=high+frequency+trading',
    headers=headers
)
data = response.json()
print(data)

Response

The API returns a JSON object containing an array of search results.

Response Structure

{
  "results": [
    {
      "title": "Paper Title",
      "link": "https://example.com/paper.pdf",
      "description": "Abstract or description of the paper..."
    }
  ],
  "total": 100,
  "ts": 1234567890,
  "device_region": "US",
  "device_type": "desktop"
}

Response Fields

  • results (array): An array of search result objects
    • title (string): The title of the academic paper or article
    • link (string): The URL to the paper or article
    • description (string): The abstract or description of the paper
  • total (integer): Total number of results available
  • ts (integer): Timestamp of the search
  • device_region (string): The device region used for the search
  • device_type (string): The device type used for the search

Example Response

{
  "results": [
    {
      "title": "High-Frequency Trading in a Limit Order Market",
      "link": "https://www.jstor.org/stable/2325066",
      "description": "We analyze a limit order market where traders can submit both market and limit orders. We show that high-frequency traders..."
    },
    {
      "title": "The Impact of High-Frequency Trading on Market Quality",
      "link": "https://www.sciencedirect.com/science/article/pii/S0304407613001234",
      "description": "This paper examines the impact of high-frequency trading on various measures of market quality including liquidity, volatility, and price efficiency..."
    }
  ],
  "total": 1250,
  "ts": 1234567890,
  "device_region": "US",
  "device_type": "desktop"
}

Status Codes

  • 200 OK - Successful response
  • 404 Not Found - The requested resource was not found
  • 422 Unprocessable Entity - The request was well-formed but contains semantic errors
  • 429 Too Many Requests - Rate limit exceeded

Error Responses

See the Errors guide for information on error response formats.