Skip to main content
GET
Look up a vulnerability and affected packages

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

X-GitHits-Client-Name
string

Optional client attribution: trimmed printable ASCII, at most 80 bytes. Invalid optional values are dropped.

X-GitHits-Client-Version
string

Optional client-version attribution: trimmed printable ASCII, at most 80 bytes. Invalid optional values are dropped.

X-GitHits-Agent
string

Optional agent attribution: trimmed printable ASCII, at most 160 bytes. Invalid optional values are dropped.

X-GitHits-Session-ID
string

Optional caller-defined session ID: one to 64 ASCII letters, digits, underscores or hyphens, preserved exactly. Supply the header at most once. Invalid supplied IDs return 400 INVALID_SESSION_ID; no session is created.

Required string length: 1 - 64
Pattern: ^[A-Za-z0-9_-]{1,64}$

Path Parameters

id
string
required

Source ID or known imported alias. Trimmed, case-preserving, 1–512 UTF-8 bytes; embedded whitespace, control and format characters are forbidden. Encode punctuation such as slash within one path segment.

Query Parameters

limit
integer<int32>
default:5

Whole package groups per page, 1–8; default 5. One group is never split between advisory rows.

Required range: 1 <= x <= 8
after
string

Opaque end_cursor for this requested ID. Preserved unchanged. Evidence or revision changes invalidate continuation; changing limit is allowed. A stale/invalid page is a 400. No automatic draining.

Response

Attributed source and one whole-group package page, with explicit evidence coverage and diagnostics

One advisory lookup with independently usable source and grouped package evidence.

advisory
null | object
required

Current exact-first OSV source explanation. Its osv_id identifies the served record. Null on source lookup failure; inspect diagnostics with section advisory. Related source records are never merged.

affected_packages
null | object
required

Known named packages grouped by the existing registry identity rules, combining one served source record with exact-ID/direct-alias associations in the imported corpus. Package-less Git evidence remains under advisory.affected. A source failure preserves imported groups; an imported read failure preserves named source groups. Null means neither branch established package evidence; inspect diagnostics. An invalid or stale selected page returns 400 rather than a successful null page. The REST page defaults to limit 5 and accepts 1–8 complete groups; whole groups are never cut between their advisory rows. This endpoint returns one page without automatic draining.

diagnostics
object[]
required

Public outcomes from source/imported acquisition and optional displays. Shared acquisition outcomes occur once, ordered source then imported. Optional display diagnostics follow with a public field path; their missing presentation does not discard usable evidence.

requested_id
string
required

Trimmed, case-preserving input ID. It remains the requested ID even when a recorded alias resolves to another served source ID.