REST API endpoints for security advisories
Use the REST API to create and manage innersource security alerts
Sync innersource vulnerabilities for an enterprise
Synchronize innersource vulnerability data with the Advisory Database for an enterprise. This endpoint receives vulnerability data in OSV format and creates, updates, or withdraws innersource vulnerabilities accordingly. Dependabot alerting is triggered for created and updated vulnerabilities.
The request body accepts up to 100 vulnerabilities per call. The request is validated and
then queued for asynchronous processing: a successful request returns 202 Accepted with a
Location header pointing to a status URL that you poll for the final result.
Syncing vulnerabilities too quickly using this endpoint may result in secondary rate limiting. For more information, see "Rate limits for the API" and "Best practices for using the REST API."
This endpoint does not support OAuth apps or personal access tokens.
Feinkörnige Zugriffstoken für "Sync innersource vulnerabilities for an enterprise"
Dieser Endpunkt funktioniert mit den folgenden differenzierten Tokentypen.:
Das differenzierte Token muss über den folgenden Berechtigungssatz verfügen.:
- "Enterprise innersource vulnerabilities" enterprise permissions (write)
Parameter für "Sync innersource vulnerabilities for an enterprise"
| Name, Typ, BESCHREIBUNG |
|---|
accept string Setting to |
| Name, Typ, BESCHREIBUNG |
|---|
enterprise string ErforderlichThe slug version of the enterprise name. |
| Name, Typ, BESCHREIBUNG | ||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
array Array of vulnerabilities in OSV format to synchronize | ||||||||||||||||||||||||||||||||||||||
Properties of
affected array of objects Packages and versions affected by the vulnerability Properties of |
| Name, Typ, BESCHREIBUNG | |||||||||
|---|---|---|---|---|---|---|---|---|---|
package object | |||||||||
Properties of |
| Name, Typ, BESCHREIBUNG |
|---|
ecosystem string The package ecosystem (e.g., npm, pip, maven) |
name string The package name |
ranges array of objects Properties of ranges
| Name, Typ, BESCHREIBUNG | |||||
|---|---|---|---|---|---|
type string | |||||
events array of objects | |||||
Properties of |
| Name, Typ, BESCHREIBUNG |
|---|
introduced string The version that introduced the vulnerability |
fixed string The version that fixed the vulnerability |
last_affected string The last affected version |
limit string The upper limit of the affected range |
references array of objects URLs for more information about the vulnerability
Properties of references
| Name, Typ, BESCHREIBUNG |
|---|
type string The type of reference. Supported values: PACKAGE, ADVISORY, WEB, FIX, ARTICLE, REPORT, EVIDENCE. References with other types are ignored. |
url string The reference URL |
published string When the vulnerability was first published
modified string When the vulnerability was last modified
withdrawn string When the vulnerability was withdrawn. If present, the vulnerability will be marked as withdrawn.
HTTP-Antwortstatuscodes für "Sync innersource vulnerabilities for an enterprise"
| Statuscode | BESCHREIBUNG |
|---|---|
202 | Sync operation accepted for asynchronous processing. Poll the returned URL for results. |
400 | Bad Request |
401 | Requires authentication |
403 | Forbidden |
404 | Resource not found |
422 | Validation failed, or the endpoint has been spammed. |
Codebeispiele für "Sync innersource vulnerabilities for an enterprise"
Wenn Sie bei GHE.com auf GitHub zugreifen, ersetzen Sie api.github.com durch die dedizierte Unterdomäne Ihres Unternehmens unter api.SUBDOMAIN.ghe.com.
Anforderungsbeispiel
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2026-03-10" \
https://api.github.com/enterprises/ENTERPRISE/innersource-vulnerabilities/sync \
-d '[{"id":"MVS-2026-001","schema_version":"1.4.0","summary":"Example vulnerability summary","aliases":["GHSA-xxxx-xxxx-xxxx"],"affected":[{"package":{"ecosystem":"npm","name":"example-package"},"ranges":[{"type":"SEMVER","events":[{"introduced":"1.0.0"},{"fixed":"1.0.1"}]}]}]}]'Sync operation accepted for asynchronous processing. Poll the returned URL for results.
Status: 202{
"id": "external-vulnerability-sync-a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"url": "https://api.github.com/enterprises/my-enterprise/innersource-vulnerabilities/sync/status/external-vulnerability-sync-a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"status": "queued"
}Get innersource vulnerability sync status for an enterprise
Get the status of an asynchronous innersource vulnerability sync operation for an enterprise.
Returns 202 with a Retry-After header while the sync is still processing, or 200 with
the full sync results once complete.
This endpoint does not support OAuth apps or personal access tokens.
Feinkörnige Zugriffstoken für "Get innersource vulnerability sync status for an enterprise"
Dieser Endpunkt funktioniert mit den folgenden differenzierten Tokentypen.:
Das differenzierte Token muss über den folgenden Berechtigungssatz verfügen.:
- "Enterprise innersource vulnerabilities" enterprise permissions (write)
Parameter für "Get innersource vulnerability sync status for an enterprise"
| Name, Typ, BESCHREIBUNG |
|---|
accept string Setting to |
| Name, Typ, BESCHREIBUNG |
|---|
enterprise string ErforderlichThe slug version of the enterprise name. |
job_id string ErforderlichThe unique identifier of the sync job. |
HTTP-Antwortstatuscodes für "Get innersource vulnerability sync status for an enterprise"
| Statuscode | BESCHREIBUNG |
|---|---|
200 | Sync operation completed |
202 | Sync operation is still processing |
401 | Requires authentication |
403 | Forbidden |
404 | Resource not found |
Codebeispiele für "Get innersource vulnerability sync status for an enterprise"
Wenn Sie bei GHE.com auf GitHub zugreifen, ersetzen Sie api.github.com durch die dedizierte Unterdomäne Ihres Unternehmens unter api.SUBDOMAIN.ghe.com.
Beispiele für Anfragen
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2026-03-10" \
https://api.github.com/enterprises/ENTERPRISE/innersource-vulnerabilities/sync/status/JOB_IDSync operation completed
Status: 200{
"processed": 1,
"created": 1,
"updated": 0,
"withdrawn": 0,
"errors": 0,
"results": [
{
"external_id": "MVS-2026-001",
"status": "created",
"ghsa_id": "GHIS-xxxx-xxxx-xxxx"
}
]
}