# Google Scholar Author Citation API

### Parameters <a href="#parameters" id="parameters"></a>

| Paramter                                                            | Description                                                                                                                                                                                                                                                                                                                                                                           |
| ------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p>citation\_id<br><br><mark style="color:red;">required</mark></p> | <p>The parameter is essential for fetching the citation of individual articles. It's mandatory when choosing "<code>view\_op=view\_citation</code>" and allows access to IDs within our structured JSON response.<br><br>Type: <em><strong>String</strong></em></p>                                                                                                                   |
| <p>view\_op<br><br><mark style="color:red;">required</mark></p>     | <p>Author ID of the person you want to get data </p><p>The parameter allows users to access specific sections of a page, offering two choices:</p><ul><li>Use "<code>view\_citation</code>" to display citations. It requires the citation ID.</li><li>Opt for "<code>list\_colleagues</code>" to view all co-authors.</li></ul><p><br><br>Type: <em><strong>String</strong></em></p> |

### API Example

{% tabs %}
{% tab title="cURL" %}

```json
cURL "https://api.scrapingdog.com/google_scholar/author?api_key=APIKEY&author_id=LSsXyncAAAAJ&view_op=view_citation&citation_id=LSsXyncAAAAJ:2osOgNQ5qMEC"
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

api_key = "APIKEY"
url = "https://api.scrapingdog.com/google_scholar/author"

params = {
    "api_key": api_key,
    "author_id": "LSsXyncAAAAJ",
    "citation_id": "LSsXyncAAAAJ:2osOgNQ5qMEC",
    "view_op": "view_citation"
}

response = requests.get(url, params=params)

if response.status_code == 200:
    data = response.json()
    print(data)
else:
    print(f"Request failed with status code: {response.status_code}")

```

{% endtab %}

{% tab title="Node JS" %}

```javascript
const axios = require('axios');

const api_key = 'APIKEY';
const url = 'https://api.scrapingdog.com/google_scholar/author';

const params = {
  api_key: api_key,
  author_id: 'LSsXyncAAAAJ',
  citation_id: "LSsXyncAAAAJ:2osOgNQ5qMEC",
  view_op: "view_citation"
};

axios
  .get(url, { params: params })
  .then(function (response) {
    if (response.status === 200) {
      const data = response.data;
      console.log(data)
    } else {
      console.log('Request failed with status code: ' + response.status);
    }
  })
  .catch(function (error) {
    console.error('Error making the request: ' + error.message);
  });

```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

// Set the API key and request parameters
$api_key = 'APIKEY';
$author_id = 'LSsXyncAAAAJ';
$citation_id: "LSsXyncAAAAJ:2osOgNQ5qMEC",
$view_op: "view_citation"

// Set the API endpoint
$url = 'https://api.scrapingdog.com/google_scholar/author/?api_key=' . $api_key . '&author_id=' . $author_id . '&citation_id' . $citation_id . '&view_op' . $view_op;

// Initialize cURL session
$ch = curl_init($url);

// Set cURL options
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// Execute the cURL request
$response = curl_exec($ch);

// Check if the request was successful
if ($response === false) {
    echo 'cURL error: ' . curl_error($ch);
} else {
    // Process the response data as needed
    echo $response;
}

// Close the cURL session
curl_close($ch);

```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'net/http'
require 'uri'

# Set the API key and request parameters
api_key = 'APIKEY'
author_id = 'LSsXyncAAAAJ'
citation_id = "LSsXyncAAAAJ:2osOgNQ5qMEC",
view_op = "view_citation"

# Construct the API endpoint URL
url = URI.parse("https://api.scrapingdog.com/google_scholar/author/?api_key=#{api_key}&author_id=#{author_id}&citation_id=#{citation_id}&view_op=#{view_op}")

# Create an HTTP GET request
request = Net::HTTP::Get.new(url)

# Create an HTTP client
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true # Enable SSL (https)

# Send the request and get the response
response = http.request(request)

# Check if the request was successful
if response.is_a?(Net::HTTPSuccess)
  puts response.body # Process the response data as needed
else
  puts "HTTP request failed with code: #{response.code}, message: #{response.message}"
end
```

{% endtab %}

{% tab title="Java" %}

```java
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.io.IOException;

public class Main {
    public static void main(String[] args) {
        try {
            // Set the API key and request parameters
            String apiKey = "APIKEY";
            String author_id = "LSsXyncAAAAJ";
            String citation_id = "LSsXyncAAAAJ:2osOgNQ5qMEC";
            String view_op = "view_citation"

            // Construct the API endpoint URL
            String apiUrl = "https://api.scrapingdog.com/google_scholar/author/?api_key=" + apiKey
                    + "&author_id =" + author_id 
                    + "&citation_id =" + citation_id 
                    + "&view_op =" + view_op 

            // Create a URL object from the API URL string
            URL url = new URL(apiUrl);

            // Open a connection to the URL
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();

            // Set the request method to GET
            connection.setRequestMethod("GET");

            // Get the response code
            int responseCode = connection.getResponseCode();

            if (responseCode == 200) {
                // Read the response from the connection
                BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
                String inputLine;
                StringBuilder response = new StringBuilder();

                while ((inputLine = reader.readLine()) != null) {
                    response.append(inputLine);
                }
                reader.close();

                // Process the response data as needed
                System.out.println(response.toString());
            } else {
                System.out.println("HTTP request failed with response code: " + responseCode);
            }

            // Close the connection
            connection.disconnect();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
```

{% endtab %}
{% endtabs %}

### Response

<figure><img src="https://3220516214-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FvE2Vtwnb3KioBGnU6f6o%2Fuploads%2FZrUCeTuySj1NR1q01S4a%2Fgoogle-scholar-author-citation.png?alt=media&#x26;token=27faa355-e4ba-4378-a319-210f52775f5d" alt=""><figcaption></figcaption></figure>

```json
{
  "citations": {
    "title": "Model-based analysis of ChIP-Seq (MACS)",
    "link": "https://link.springer.com/article/10.1186/GB-2008-9-9-R137",
    "resources": [
      {
        "title": "from springer.com",
        "file_format": "HTML",
        "link": "https://link.springer.com/article/10.1186/GB-2008-9-9-R137"
      },
      {
        "file_format": "",
        "link": "https://link.springer.com/content/pdf/10.1186/gb-2008-9-9-r137.pdf"
      }
    ],
    "authors": "Yong Zhang, Tao Liu, Clifford A Meyer, Jérôme Eeckhoute, David S Johnson, Bradley E Bernstein, Chad Nusbaum, Richard M Myers, Myles Brown, Wei Li, X Shirley Liu",
    "publication_date": "2008/11",
    "journal": "Genome biology",
    "volume": "9",
    "pages": "1-9",
    "publisher": "BioMed Central",
    "description": "               We present Model-based Analysis of ChIP-Seq data, MACS, which analyzes data generated by short read sequencers such as Solexa's Genome Analyzer. MACS empirically models the shift size of ChIP-Seq tags, and uses it to improve the spatial resolution of predicted binding sites. MACS also uses a dynamic Poisson distribution to effectively capture local biases in the genome, allowing for more robust predictions. MACS compares favorably to existing ChIP-Seq peak-finding algorithms, and is freely available.",
    "total_citations": {
      "cited_by": {
        "total": "16193",
        "link": "https://scholar.google.com/scholar?oi=bibs&hl=en&cites=14252090027271643524&as_sdt=5",
        "scrapingdog_link": "https://api.scrapingdog.com/google_scholar?api_key=64ba3a568de9be3484544209&cites=14252090027271643524&hl=en",
        "cites_id": "14252090027271643524"
      },
      "table": [
        {
          "year": "2010",
          "citations": "129"
        },
        {
          "year": "2011",
          "citations": "254"
        },
        {
          "year": "2012",
          "citations": "372"
        },
        {
          "year": "2013",
          "citations": "476"
        },
        {
          "year": "2014",
          "citations": "676"
        },
        {
          "year": "2015",
          "citations": "697"
        },
        {
          "year": "2016",
          "citations": "815"
        },
        {
          "year": "2017",
          "citations": "982"
        },
        {
          "year": "2018",
          "citations": "1147"
        },
        {
          "year": "2019",
          "citations": "1420"
        },
        {
          "year": "2020",
          "citations": "1546"
        },
        {
          "year": "2021",
          "citations": "1968"
        },
        {
          "year": "2022",
          "citations": "1943"
        },
        {
          "year": "2023",
          "citations": "2019"
        },
        {
          "year": "2024",
          "citations": "1647"
        }
      ]
    },
    "scholar_articles": [
      {
        "title": "Model-based analysis of ChIP-Seq (MACS)",
        "link": "https://www.google.com/scholar?oi=bibs&cluster=14252090027271643524&btnI=1&hl=en",
        "authors": "Y Zhang, T Liu, CA Meyer, J Eeckhoute, DS Johnson… - Genome biology, 2008",
        "cited_by": {
          "total": "16193",
          "link": "https://scholar.google.com/scholar?oi=bibs&hl=en&cites=14252090027271643524&as_sdt=5",
          "scrapingdog_link": "https://api.scrapingdog.com/google_scholar?api_key=64ba3a568de9be3484544209&cites=14252090027271643524&hl=en",
          "cites_id": "14252090027271643524"
        },
        "versions": {
          "total": "All 31 versions",
          "link": "https://scholar.google.com/scholar?oi=bibs&hl=en&cluster=14252090027271643524",
          "scrapingdog_link": "https://api.scrapingdog.com/google_scholar?api_key=64ba3a568de9be3484544209&cluster=14252090027271643524&hl=en",
          "cluster_id": "14252090027271643524"
        }
      }
    ]
  }
}
```
