GrokRxiv

Public JSON API

Read-only, CORS-open for GET requests, and paginated. Only public reviews are returned; moderation-pending, withdrawn, and private reviews are never exposed. Review-start and moderation actions are operator CLI/internal surfaces, not public API endpoints.

GET/api/v1/reviews

List public review summaries. Query params: page (1+), limit (≤50), field, status (default published; allowed public statuses are pr_open, published, corrected, rejected).

curl https://grokrxiv.org/api/v1/reviews?limit=5

{
  "data": [
    {
      "id": "b1e6...",
      "paper_id": "f49a...",
      "status": "published",
      "github_pr_url": "https://github.com/GrokRxiv/grokrxiv-reviews/pull/42",
      "github_review_url": "https://github.com/GrokRxiv/grokrxiv-reviews/tree/main/reviews/2026/05/cs.LG/2401.12345",
      "created_at": "2026-05-13T18:00:00Z",
      "published_at": "2026-05-13T18:42:00Z"
    }
  ],
  "page": 1,
  "total": 142
}
GET/api/v1/reviews/:id

Fetch a single review by uuid. Returns 404 unless the review is public.

curl https://grokrxiv.org/api/v1/reviews/b1e6...
GET/api/v1/papers/:source_id

Fetch a paper and all of its public reviews by arXiv id or GrokRxiv source id.

curl https://grokrxiv.org/api/v1/papers/2401.12345
curl https://grokrxiv.org/api/v1/papers/local-pdf-d96363843fd8
POST/api/upload

Same-origin multipart upload from grokrxiv.org. Returns a sample, single-pass review preview — never indexed as a real GrokRxiv review.

curl -F file=@paper.pdf https://grokrxiv.org/api/upload

Review metadata

API responses include review status, source paper identifiers, archive links, and timestamps. Treat additional fields as optional metadata that may evolve over time.