D61-IA / stellar-gnosis

Gnosis paper management and collaboration tool
Apache License 2.0
0 stars 1 forks source link

Explore IEEE API #47

Open PantelisElinas opened 4 years ago

PantelisElinas commented 4 years ago

The IEEE provides an API for their publications. Information about the IEEEXplore Digital Library API is available at,

https://developer.ieee.org/ https://developer.ieee.org/Python_Software_Development_Kit (Python API) https://developer.ieee.org/docs/read/IEEE_Xplore_Metadata_API_Overview (API Use Cases; looks like the first one is our use-case so we should be ok to use their API.)

We want to explore the API. Can we use the API to allow Gnosis users to import papers directly from IEEEXplore without us having to manually scrape the data from a paper's page?

Looking at the documentation, we can make search queries for papers by title, and abstract, (and others) and also search for authors. This behaviour is different than our current paper import from URL functionality because we provide a paper's page from which we extract the relevant information. If IEEE API is based around search then maybe we can add searching the IEEE as part of Paper search or Universal Search in our UI with an option to import the data if the relevant paper is found.

The tasks for this ticket are rather open ended because we first need to understand the API before we can judge how we might be able to integrate with Gnosis.

Zhenghao-Zhao commented 4 years ago

I have attained the API key but still awaiting activation from IEEE.

Zhenghao-Zhao commented 4 years ago

The API key has been activated.

Zhenghao-Zhao commented 4 years ago

I found some limitations with the IEEE API that would make it unusable for Gnosis:

  1. Allowed API calls: 10 calls per second, 200 calls per day (https://developer.ieee.org/apps/mykeys). Exemptions to increase allowed API calls could possibly be made by contacting IEEE (https://developer.ieee.org/docs/read/IEEE_Xplore_Metadata_API_Overview).
  2. Only supports Python 2.7.x (https://developer.ieee.org/Python_Software_Development_Kit).
  3. "You must keep your API Keys confidential and not share them with any third party. You are solely and entirely responsible for all uses of the APIs and the Content occurring under your API Keys." (https://developer.ieee.org/API_Terms_of_Use2).

Due to above limitations we will pause our work for this ticket until a solution is found.