v1

V1 Get Paper Repo

Fetch code/repo summary (README + file tree) for a paper (PAPI-08).

Looks up the paper's github_url in the DB, then queries the GitHub API for:

  • README content (base64-decoded, truncated to 3000 chars)
  • File tree (up to 100 blob paths, with truncation flag)

Both GitHub API calls are made in parallel via asyncio.gather.

GITHUB_TOKEN env var is optional. Without it, the GitHub API allows 60 req/hr (unauthenticated); with it, 5000 req/hr.

Rate limit: 10/minute per API key (conservative — each call makes 2 GitHub API requests).

Response shape (success): owner: str repo: str readme: str | null -- README content truncated to 3000 chars file_tree: list[str] -- up to 100 file paths from the repo root tree_truncated: bool -- True if the repo has >100 blobs (GitHub tree API limit)

Response shape (error): error: str -- error code (repo_not_found, private_repo, github_rate_limited, invalid_github_url) detail: str -- human-readable description

get/v1/papers/{arxiv_id}/repo

Request

  • Base URL: https://api.scholarfeed.org (the document declares no server; this is the origin it was published from)
  • URL: https://api.scholarfeed.org/v1/papers/{arxiv_id}/repo
  • Auth: HTTP bearer

Path parameters

arxiv_idstring required

Response

Successful Response

object required

Changes

No recorded changes to this operation across all 1 revision of this API.