PaperFoxPaperFox
API

API Changelog

Every change to the PaperFox API, newest first.

Changes that are additive under the compatibility policy — new endpoints, new optional parameters, new response fields, new enum members — ship without a version bump and are recorded here. Breaking changes would require /api/v2; there have been none.

Subscribe to this page's URL if your integration is load-bearing.

Create submissions

Added POST /api/v1/submissions — create a paper. Requires the write scope and an Idempotency-Key header. Enforces the same submission window, late pass, and quota rules as the web form, and validates the body against the track's submission form.

Additive under the compatibility policy: a new endpoint, no change to any existing one.

v1 — initial release

The first public version. Read-only.

Endpoints

  • GET /me — the key's owner, its scopes and restriction, and the conferences and roles it can reach.
  • GET /conferences, GET /conferences/{conference-slug} — conferences you hold a role in, plus tracks and phases.
  • GET /submissions, GET /submissions/{submission-slug} — scoped to your role: chairs see the conference, track chairs see their tracks, authors see their own papers.
  • GET /submissions/{submission-slug}/reviews — full review content. Conference chairs and track chairs only.
  • GET /assignments — your own review assignments.
  • GET /registrations — conference chairs only.

Conventions

  • Bearer API keys (pfx_live_…), created under Settings → API Keys. A key acts with your live roles — never more.
  • Cursor pagination (limit + opaque cursornextCursor, hasMore).
  • Errors follow RFC 9457 (application/problem+json); branch on code.
  • Rate limits are per user, with X-RateLimit-* and RateLimit headers on every response.
  • Timestamps are RFC 3339 UTC.
  • The OpenAPI 3.1 spec is published at /api/v1/openapi.json.

On this page