Low-Level API (Direct Mapping to Web API)
Both the low- and high-level APIs start off with an instance of SemanticScholarConnection, which handles managing the request rate.
julia> using SemanticScholar
julia> s2c = SemanticScholarConnection()
SemanticScholarConnection(Dates.DateTime[])
This s2c struct is then passed to all of the functions to make requests to the Semantic Scholar API.
Paper Related
SemanticScholar.paper_search — Functionpaper_search(s2c, query; fields=["title"], limit=10, offset=0)Make a paper search request to the S2 API (equivalent to "/paper/search" endpoint). The query must be "plaintext" with no special search filters.
SemanticScholar.paper_details — Functionpaper_details(s2c, paper_id; fields)Make a request for details about a paper to the S2 API (equivalent to "/paper/{paper_id}" endpoint).
SemanticScholar.paper_authors — Functionpaper_authors(s2c, paper_id; fields=[], offset=0, limit=500)Make a paper authors request to the S2 API (equivalent to "/paper/{paper_id}/authors" endpoint).
SemanticScholar.paper_citations — Functionpaper_citations(s2c, paper_id; fields=[], offset=0, limit=500)Make a paper citations request to the S2 API (equivalent to "/paper/{paper_id}/citations" endpoint).
SemanticScholar.paper_references — Functionpaper_references(s2c, paper_id; fields=[], offset=0, limit=500)Make a paper references request to the S2 API (equivalent to "/paper/{paper_id}/references" endpoint).
Author Related
SemanticScholar.author_search — Functionauthor_search(s2c, query; fields=["title"], limit=10, offset=0)Make an author search request to the S2 API (equivalent to "/author/search" endpoint).
SemanticScholar.author_details — Functionauthor_details(s2c, author_id; fields)Make a request for author details to the S2 API (equivalent to "/author/{author_id}" endpoint).
SemanticScholar.author_papers — Functionauthor_papers(s2c, author_id; fields=[], offset=0, limit=500)Make an author papers request to the S2 API (equivalent to "/author/{author_id}/papers" endpoint).