-1

I am working on a project that uses Scopus API to get document names or journal names under different scenarios. I am using ScopusSearch API (https://dev.elsevier.com/documentation/ScopusSearchAPI.wadl) and SerialTitle API (https://dev.elsevier.com/documentation/SerialTitleAPI.wadl) for the purpose.

However, the total number of documents I am able to retrieve using these API's is very few. I want to increase the number of documents being fetched. Now, I've been through the documentation of these API's a several times but I am confused with the use of start parameter and the cursor parameter. Take for example, ScopusSearch API, under its query params section:

start parameter use of start as query parameter cursor parameteruse of cursor

Can someone please help me understand the difference between these two? And more specifically when to use the start and when to use the cursor parameter?

1 Answers1

2

If you use pybliometrics, as your tag suggests, then you don't need to care about this.

The basic idea behind this pagination (that's what you're after) is:

  1. Run a query with unlimited number of results with cursor set to "*"
  2. Set start to 0 and get the first count results
  3. Set start to start+count+1 and get the next count results
  4. Repeat step 3 until all results are fetched
MERose
  • 4,048
  • 7
  • 53
  • 79
  • So you're saying every time we use `cursor` parameter, we have to specify `start` parameter along with it? – stackersTech101 Jun 14 '22 at 04:44
  • 1
    Yes, otherwise it doesn's make sense. It's like a book that they send you, but you have to retrieve it page by page. – MERose Jun 15 '22 at 19:35
  • Thankyou for your reply @MERose. But I am still confused at a point where with SerialSearch API I am using only 'start' parameter set to index from where I want to start my search, it fetches 200 results for me. It then gets updated and gets next 200. I am doing all of this without 'cursor' parameter. I still do not understand its need! – stackersTech101 Jun 23 '22 at 06:43
  • 1
    The API needs the cursor information filled to initiate pagination. If you provide `start` but not `cursor`, pybliometrics fills it for you. – MERose Jun 26 '22 at 14:50