Google Scholar

Connect Google Scholar to show publications, citations, and h-index, search research papers, and export citations in your BJCRUM app.

The Google Scholar connector lets applications you build with BJCRUM work with scholarly data from Google Scholar.

You can use Google Scholar for:

Connect Google Scholar. Describe the research page you need. BJCRUM builds it.

How the Connection Works

Google Scholar has no official API.

Your app reaches it through SerpApi, a service that fetches public Google Scholar results, using your own SerpApi key.

Conceptually:

Visitor opens page
        ↓
Your app's saved copy
        ↓
Refresh when too old
        ↓
SerpApi
        ↓
Google Scholar

Every request to SerpApi uses one search from your SerpApi plan. Your app saves every answer and serves pages from that saved copy, so visitors never use up your searches by opening a page.

Before You Start

You'll need:

At the time of writing, SerpApi's free plan includes 250 searches a month and 50 an hour. That's plenty for a profile page that refreshes daily, but too few for a busy public search page.

If you want to show a profile, it must be public on Google Scholar. Your profile address contains user=, followed by your profile's ID.

Connect Google Scholar to BJCRUM

  1. Create a SerpApi account

    Sign up at serpapi.com and confirm your email address.

  2. Copy your API key

    Open the API key page in your SerpApi dashboard and copy your private key.

  3. Open the connector

    Open your BJCRUM project, go to Connectors, and select Google Scholar.

  4. Paste your key

    Paste the key into the SerpApi key field. It stays on your app's server and is never sent to visitors' browsers.

  5. Add your profile (optional)

    Open your profile on Google Scholar, copy the address from your browser, and paste it under Your Scholar profile.

Once connected, the connector page shows your SerpApi plan and how many searches you have left. Checking the connection doesn't use a search.

If you added a profile, use the Open this profile on Google Scholar link to make sure it's the right one.

Build a Publications Page

The most common use is a page that presents a researcher or a lab.

Tell BJCRUM:

Build a publications page for my lab from my Google Scholar profile, with my h-index and citations per year.

The page can include:

The profile refreshes once a day. Each refresh uses one search for every 100 publications.

You can also build a search page for research papers.

For example:

Add a literature search page where I can find research papers by year.

Search results can include the title, authors, a short snippet, the number of citations, a link to the PDF when one is available, and a Cite button.

You can add:

Results show a snippet from the paper, not its abstract.

Each new search uses one search from your plan. The same search again within a day is answered from your app's saved copy.

Citation Alerts

Want to know when someone cites your work?

Email me when one of my papers gets new citations.

Your published app checks your profile once a day. When a paper's citation count goes up, it finds the new citing papers and emails you.

Alerts start on the second day: the first check only records what already cites each paper.

Email alerts need an email connector as well, such as Resend or Gmail.

Research Group Dashboard

For a lab or a department:

Compare the h-index and citations of everyone in our research group.

The dashboard can show a table of each researcher's citations, h-index, i10-index, and recent citations, sortable by any column, with one combined chart of citations per year.

Researchers are added by their Google Scholar profile address. Google no longer allows searching for profiles by name, so a name alone isn't enough.

Profiles load one after another to stay within SerpApi's hourly limit.

Cite and Export

Researchers often need citations in a specific format.

For example:

Let visitors copy a BibTeX entry for each paper.

Your app can show the formats Google Scholar offers, such as APA and MLA, with a copy button for each, and a .bib file download.

Once a citation has been fetched, your app keeps it, so the same citation never uses another search.

How Searches Are Counted

Your app only uses a search when it needs fresh data:

What your app does Searches used
Refresh a profile, per 100 publications 1 a day
A new search, per page of 20 results 1, then free for a day
The papers citing a result, per page 1, then free for 7 days
Citation formats for a paper 1 or 2, then free from then on
Citation alerts The daily profile refresh, plus at most 3 a day

A profile page that refreshes daily uses about 30 to 60 searches a month.

SerpApi only counts successful searches, and the same request repeated within an hour is free.

What Your App Never Does

The Google Scholar connector follows strict data rules:

When no profile is set, your app shows an empty state that asks you to add one, rather than sample data.

Common Problems

The connection check says the key is invalid

Copy the private key from the API key page in your SerpApi dashboard again and paste it into the SerpApi key field.

You're out of searches

Your plan's searches are used up until it renews. The connector page shows when. Your app keeps showing the data it has already saved, and you can upgrade your SerpApi plan for more searches.

The publications page is empty

No profile is set. Paste your Google Scholar profile address under Your Scholar profile on the connector page.

The profile can't be found

Check that the address contains user= and that the profile is public on Google Scholar.

The numbers differ from Google Scholar

Your app refreshes once a day, so its figures can be up to a day behind. A manual refresh is limited to once an hour.

You can't add a researcher by name

Google Scholar no longer allows searching for profiles by name. Ask the researcher for their profile address, or find it on Google Scholar yourself.

Debugging Google Scholar

A good Debug Mode request might look like:

Expected: The publications page should show my profile, my h-index, and my citations per year.

Actual: The page shows an empty state.

Google Scholar shows as connected, and my profile address is set on the connector page.

Error: [PASTE ERROR IF AVAILABLE]

Debug the Google Scholar part of the page without changing its layout.

Never paste your SerpApi key into a prompt.

Test Your Research Pages

Before publishing, test:

A Good Google Scholar Prompt

A strong request defines:

For example:

Build a publications page for our lab from my Google Scholar profile. Show my citations, h-index, and i10-index, a chart of citations per year, and my publications sorted by most cited, with a Cite button for each paper. Add a members page comparing everyone in the group, and email me when one of my papers gets new citations.

That's significantly stronger than:

Add Google Scholar.

Next: Request a Connector

You've now covered the currently documented BJCRUM connectors:

But your application may need another service.

Next, we'll cover Request a Connector: what to do when the integration you need isn't currently available inside BJCRUM.