API reference

codqual is a REST API. Point any HTTP client or coding agent at it with a bearer token. This page documents every endpoint an API key can reach.

Stable contract for agents

GET /issues, GET /reviews, and GET /reviews/:id are the blessed, contract-tested public surface — described by the OpenAPI spec at https://api.codqual.com/openapi.json. Other endpoints on this page work with the same key but may evolve with the dashboard.

Authentication

codqual's REST API lives at one base URL. Every request must include an API key as a bearer token in the Authorization header.

https://api.codqual.com
Authorization: Bearer cc_...

Create keys in Settings → API Keys, or copy the one shown once at signup. The secret is shown only once; you can revoke a key anytime.

curl -H "Authorization: Bearer $CODQUAL_API_KEY" https://api.codqual.com/reviews

Read endpoints

Every read endpoint accepts the same bearer token. Lists come back newest-first and page with a cursor — pass the last item's cursor value to fetch the next page.

Endpoint Returns Useful parameters
GET /reviews Your reviews, newest first. repo, focus, source, cursor (ISO date), limit (max 100)
GET /reviews/:id One review and all of its findings. (UUID)
GET /issues Your deduplicated open-issue state (up to 500 issues). repo, branch, status (default open), module, severity
GET /issues/:id/timeline The full history of one issue — every observation, status change, and merge.
GET /scans/:id One scan run. Poll it until run.reviewId is set — that is completion — and the same response then carries the scan and its findings.
GET /repositories The repositories you can see.
GET /repositories/:fullName One repository's detail and its review history.
GET /repositories/:fullName/branches The repository's live branch list.
GET /activity Your organization's review and scan feed. source, cursor
GET /maturity The current 25-check maturity rubric result for a repository. repo
GET /maturity/history A repository's maturity-score trend (up to 90 points).
curl -H "Authorization: Bearer $CODQUAL_API_KEY" "https://api.codqual.com/issues?status=open&severity=high"

The API is read-only

An API key is a read credential. It reads the results codqual has already produced — your issues, reviews, findings, scans, and maturity scores — and nothing on this page starts an analysis.

Analysis has exactly two triggers. The GitHub App reviews a pull request on every push to it. The dashboard scans a whole repository when you press Scan now, or when the weekly schedule fires.

The dashboard also owns the rest of the write surface: creating and revoking API keys, changing an issue's status, suppressing findings, and managing repositories, teams, and webhooks. Feedback on a finding goes back through the /codqual PR-comment commands.

Errors

Status Meaning
401 Your API key is missing or invalid.
404 Not found — or not yours. codqual returns 404 instead of 403, so it never confirms that a resource you cannot see exists.
429 Rate limit reached — 120 requests per minute on the read endpoints.

Outbound webhooks

Configure webhook endpoints in Settings → Webhooks (dashboard only). codqual POSTs review.completed and finding.created events to your HTTPS URL, each signed with an HMAC secret shown once when you create the endpoint.