Security — entry 013 of 30

GitGuardian

Verified Sep 2026

GitGuardian continuously scans source code, commit history, and CI/CD pipelines for hardcoded secrets — API keys, database credentials, private certificates — before they leak into production or a public repository. The public API lets teams pull incidents, drive remediation workflows, and wire secret detection into their own tooling, authenticated with a bearer token issued from a workspace API key. A free tier covers small teams, with paid Business and Enterprise plans unlocking higher scan volume and governance controls.

secrets-detectioncode-securitydevsecopscompliance
AuthenticationAPI KeySign up with the provider to obtain credentials.
HTTPSSupportedTraffic is encrypted in transit.
CORSDisabledBrowser calls need a server-side proxy.
PricingFreemiumA usable free tier exists, with paid plans for more volume.
FormatsJSONResponses can be requested as JSON.

GreatAPIs Score

Score81out of 100
Authentication15/25API key required
Pricing17/20Freemium tier available
Docs20/20Machine-readable spec file bundled
Formats9/15Single response format
Freshness20/20Verified within 6 months

Embed this badge

Scored 81 on greatapis.com
<a href="https://greatapis.com/api/gitguardian/"><img src="https://greatapis.com/badge/gitguardian.svg" alt="Scored 81 on greatapis.com"></a>

Auth quickstart

  1. Get a key at the provider
  2. Send it on every request as a headerAuthorization: Token <key>
Stored keyNo key stored

Your key is stored only in this browser (localStorage) and sent directly to the API — never to greatapis.

Endpoints

Servers
https://api.gitguardian.comhttps://api.eu1.gitguardian.com
Auth
api-key
API Tokens7

Manage API tokens.

GET/v1/api_tokensList API tokens.
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
statusqueryno
member_idquerynointeger
creator_idquerynointeger
scopesquerynostring
searchquerynostring
orderingquerynostring
Responses
StatusDescriptionSchema
200API tokens list
400Invalid data
401Invalid API key
POST/v1/api_tokensCreate an API token.
Request body

application/json (required)

Responses
StatusDescriptionSchema
201API token created
400Invalid data
401Invalid API key
403Permission denied
409Another token is already being created for this member or workspace. The call can be retried after a few seconds.
GET/v1/api_tokens/selfRetrieve details of the current API token.
Responses
StatusDescriptionSchema
200Current token details
401Invalid API key
DELETE/v1/api_tokens/selfRevoke the current API token.
Responses
StatusDescriptionSchema
204Token revocation confirmation
401Invalid API key
GET/v1/api_tokens/{token_id}Retrieve details of an API token.
Parameters
NameInRequiredType
token_idpathyesstring
Responses
StatusDescriptionSchema
200Current token details
401Invalid API key
404API token not found
DELETE/v1/api_tokens/{token_id}Revoke an API token.
Parameters
NameInRequiredType
token_idpathyesstring
Responses
StatusDescriptionSchema
204Token revocation confirmation
401Invalid API key
404API token not found
POST/v1/auth/jwtCreate a JSON Web Token.
Request body

application/json

Responses
StatusDescriptionSchema
200Created JWT
400Invalid data
401Invalid API key
Internal Secret Locations2

Retrieve the files that still hold a secret on the default branch of your sources, to know where the code has to change.

GET/v1/incidents/secrets/{incident_id}/locationsList locations of a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
cursorquerynostring
per_pagequerynointeger
sourcequerynostring
activequerynoboolean
number_of_mentions_minquerynointeger
number_of_mentions_maxquerynointeger
code_fix_request_statusquerynostring
searchquerynostring
orderingquerynostring
Responses
StatusDescriptionSchema
200Secret Incident Location List
400Invalid data
401Invalid API key
403Permission denied
503API under maintenance
GET/v1/sources/{source_id}/locationsList locations of a source
Parameters
NameInRequiredType
source_idpathyesinteger
cursorquerynostring
per_pagequerynointeger
activequerynoboolean
number_of_mentions_minquerynointeger
number_of_mentions_maxquerynointeger
code_fix_request_statusquerynostring
searchquerynostring
orderingquerynostring
Responses
StatusDescriptionSchema
200Source Location List
400Invalid data
401Invalid API key
403Permission denied
404Resource not found
503API under maintenance
Secret Detectors2

Retrieve details on detectors used for secret detection.

GET/v1/secret_detectorsList secret detectors
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
is_activequerynoboolean
typequeryno
searchquerynostring
orderingquerynostring
Responses
StatusDescriptionSchema
200List of Secret Detectors
400Invalid data
401Invalid API key
403Permission denied
503API under maintenance
GET/v1/secret_detectors/{detector_name}Get a secret detector
Parameters
NameInRequiredType
detector_namepathyesstring
Responses
StatusDescriptionSchema
200Secret Detector
401Invalid API key
403Permission denied
404Secret Detector not found
503API under maintenance
Severity Rules1

List the severity rules that determine how incident severity is automatically assigned.

GET/v1/severity-rulesList severity rules
Responses
StatusDescriptionSchema
200List of Severity Rules
401Invalid API key
403Permission denied
503API under maintenance
Secrets3

Access information about individual secrets detected by GitGuardian.

GET/v1/secrets/{secret_id}/validityGet the validity of a secret
Parameters
NameInRequiredType
secret_idpathyesinteger
Responses
StatusDescriptionSchema
200The secret validity and validity override.
401Invalid API key
403Forbidden
404Resource not found
503API under maintenance
POST/v1/secrets/{secret_id}/validityOverride the validity of a secret
Parameters
NameInRequiredType
secret_idpathyesinteger
Request body

application/json (required)

Responses
StatusDescriptionSchema
200The validity override was set.
400Invalid data
401Invalid API key
403Forbidden
404Resource not found
503API under maintenance
DELETE/v1/secrets/{secret_id}/validityRemove the validity override of a secret
Parameters
NameInRequiredType
secret_idpathyesinteger
Responses
StatusDescriptionSchema
204The validity override was removed.
401Invalid API key
403Forbidden
404Resource not found
503API under maintenance
Code Fixing1

Create automated code fix requests to remediate detected secrets via pull requests.

POST/v1/code-fix-requestsCreate code fix requests
Request body

application/json (required)

Responses
StatusDescriptionSchema
201Code fix request(s) created successfully
400Bad Request - Invalid input or business rule violation
401Invalid API key
403Forbidden - Insufficient permissions
404Not Found - API key not configured (on-prem only)
503API under maintenance
Invitations9

Manage workspace invitations.

GET/v1/invitationsList invitations
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
searchquerynostring
orderingquerynostring
Responses
StatusDescriptionSchema
200List invitations
400Invalid data
401Invalid API key
403Forbidden Call
503API under maintenance
POST/v1/invitationsCreate an invitation
Parameters
NameInRequiredType
send_emailquerynoboolean
Request body

application/json

Responses
StatusDescriptionSchema
201Invitation sent
400Invalid data
401Invalid API key
403Forbidden Call
409Data conflict
503API under maintenance
GET/v1/invitations/{invitation_id}Retrieve an invitation
Parameters
NameInRequiredType
invitation_idpathyesinteger
Responses
StatusDescriptionSchema
200Invitation details.
400Invalid data
401Invalid API key
403Forbidden Call
404Invitation not found
503API under maintenance
DELETE/v1/invitations/{invitation_id}Delete an invitation
Parameters
NameInRequiredType
invitation_idpathyesinteger
Responses
StatusDescriptionSchema
204The invitation was deleted successfully.
400Invalid data
401Invalid API key
403Forbidden Call
404Invitation not found
503API under maintenance
POST/v1/invitations/{invitation_id}/resendResend an invitation
Parameters
NameInRequiredType
invitation_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200Invitation sent
400Invalid data
401Invalid API key
403Forbidden Call
404Invitation not found
429Too many requests
503API under maintenance
GET/v1/invitations/{invitation_id}/secret-incidentsList secret incidents an invitation has access to
Parameters
NameInRequiredType
invitation_idpathyesinteger
cursorquerynostring
pagequerynointeger
per_pagequerynointeger
date_beforequerynostring
date_afterquerynostring
assignee_emailquerynostring
assignee_idquerynointeger
statusqueryno
severityqueryno
validityqueryno
tagsquerynostring
orderingquerynostring
detector_group_namequerynostring
ignorer_idquerynointeger
ignorer_api_token_idquerynostring
resolver_idquerynointeger
resolver_api_token_idquerynostring
feedbackquerynoboolean
only_on_provider_archived_sourcesquerynoboolean
Responses
StatusDescriptionSchema
200Secret Incident List
400Invalid data
401Invalid API key
403Permission denied
404Invitation not found
503API under maintenance
GET/v1/invitations/{invitation_id}/{resource_type}/{resource_id}Check invitation permission for a resource
Parameters
NameInRequiredType
invitation_idpathyesinteger
resource_typepathyesstring
resource_idpathyesinteger
Responses
StatusDescriptionSchema
200Invitation Resource access details
401Invalid API key
403Permission denied
404Resource or Invitation not found
503API under maintenance
PUT/v1/invitations/{invitation_id}/{resource_type}/{resource_id}Give an invitation access to a resource
Parameters
NameInRequiredType
invitation_idpathyesinteger
resource_typepathyesstring
resource_idpathyesinteger
Request body

application/json (required)

Responses
StatusDescriptionSchema
200The access was updated successfully.
201The access was granted successfully.
400Invalid data
401Invalid API key
403Permission denied
404Resource or Invitation not found
503API under maintenance
DELETE/v1/invitations/{invitation_id}/{resource_type}/{resource_id}Revoke an invitation's access to a resource
Parameters
NameInRequiredType
invitation_idpathyesinteger
resource_typepathyesstring
resource_idpathyesinteger
Request body

application/json (required)

Responses
StatusDescriptionSchema
204The access was revoked successfully.
400Invalid data
401Invalid API key
403Permission denied
404Resource or Invitation not found
503API under maintenance
Sources10

Retrieve details on sources known by GitGuardian.

GET/v1/scans/{scan_id}/live-progressRetrieve a scan's live progress
Parameters
NameInRequiredType
scan_idpathyesstring
Responses
StatusDescriptionSchema
200Scan live progress
400Invalid data
401Invalid API key
403Forbidden Call
404Scan not found
503API under maintenance
GET/v1/sourcesList sources
Parameters
NameInRequiredType
cursorquerynostring
pagequerynointeger
per_pagequerynointeger
searchquerynostring
last_scan_statusqueryno
healthqueryno
typequerynostring
orderingquerynostring
visibilityquerynostring
external_idquerynostring
source_criticalityquerynostring
monitoredquerynoboolean
provider_metadata_archivedquerynoboolean
team_idquerynointeger
monitoring_status__inquerynostring
monitoring_status__ninquerynostring
Responses
StatusDescriptionSchema
200Source List
400Invalid data
401Invalid API key
503API under maintenance
GET/v1/sources/custom-sourcesList custom sources
Parameters
NameInRequiredType
cursorquerynostring
pagequerynointeger
per_pagequerynointeger
searchquerynostring
orderingquerynostring
Responses
StatusDescriptionSchema
200Custom Source List
400Invalid data
401Invalid API key
503API under maintenance
POST/v1/sources/custom-sourcesCreate custom source
Request body

application/json

Responses
StatusDescriptionSchema
201Custom source created successfully
400Invalid data
401Invalid API key
403Forbidden
503API under maintenance
GET/v1/sources/custom-sources/{custom_source_id}Get a custom source
Parameters
NameInRequiredType
custom_source_idpathyesstring
Responses
StatusDescriptionSchema
200Custom source detail
400Invalid data
401Invalid API key
404Resource not found
503API under maintenance
PATCH/v1/sources/custom-sources/{custom_source_id}Update a custom source
Parameters
NameInRequiredType
custom_source_idpathyesstring
Request body

application/json

Responses
StatusDescriptionSchema
200The custom source was updated successfully
400Invalid data
401Invalid API key
403Forbidden
404Resource not found
503API under maintenance
DELETE/v1/sources/custom-sources/{custom_source_id}Delete a custom source
Parameters
NameInRequiredType
custom_source_idpathyesstring
Responses
StatusDescriptionSchema
204The custom source was deleted successfully
400Invalid data
401Invalid API key
403Forbidden
404Resource not found
503API under maintenance
POST/v1/sources/scansTrigger scans on sources
Request body

application/json (required)

Responses
StatusDescriptionSchema
202Accepted – scans have been queued.
400Invalid data
401Invalid API key
403Forbidden
503API under maintenance
GET/v1/sources/{source_id}Retrieve a source
Parameters
NameInRequiredType
source_idpathyesinteger
Responses
StatusDescriptionSchema
200Source detail
400Invalid data
401Invalid API key
503API under maintenance
PATCH/v1/sources/{source_id}Update a source
Parameters
NameInRequiredType
source_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200The source was updated successfully
400Invalid data
401Invalid API key
503API under maintenance
Members12

Retrieve details about workspace members.

GET/v1/membersList members
Parameters
NameInRequiredType
cursorquerynostring
pagequerynointeger
per_pagequerynointeger
rolequeryno
access_levelqueryno
activequerynoboolean
searchquerynostring
orderingquerynostring
Responses
StatusDescriptionSchema
200List members
400Invalid data
401Invalid API key
503API under maintenance
GET/v1/members/{member_id}Retrieve a member
Parameters
NameInRequiredType
member_idpathyesinteger
Responses
StatusDescriptionSchema
200Workspace member details
400Invalid data
401Invalid API key
403Forbidden Call
404Member not found
503API under maintenance
PATCH/v1/members/{member_id}Update a member
Parameters
NameInRequiredType
member_idpathyesinteger
send_emailquerynoboolean
Request body

application/json

Responses
StatusDescriptionSchema
200Workspace member details
400Invalid data
401Invalid API key
403Forbidden Call
404Member not found
503API under maintenance
DELETE/v1/members/{member_id}Delete a member
Parameters
NameInRequiredType
member_idpathyesinteger
send_emailquerynoboolean
Responses
StatusDescriptionSchema
204The member was deleted successfully
400Invalid data
401Invalid API key
403Forbidden Call
404Member not found
503API under maintenance
GET/v1/members/{member_id}/email_notificationsRetrieve a member's email settings
Parameters
NameInRequiredType
member_idpathyesinteger
Responses
StatusDescriptionSchema
200Member notification settings
400Invalid data
401Invalid API key
403Forbidden Call
404Member not found
503API under maintenance
PATCH/v1/members/{member_id}/email_notificationsUpdate a member's email settings
Parameters
NameInRequiredType
member_idpathyesinteger
send_emailquerynoboolean
Request body

application/json

Responses
StatusDescriptionSchema
200Member notification settings
400Invalid data
401Invalid API key
403Forbidden Call
404Member not found
503API under maintenance
GET/v1/members/{member_id}/secret-incidentsList secret incidents a member has access to
Parameters
NameInRequiredType
member_idpathyesinteger
cursorquerynostring
pagequerynointeger
per_pagequerynointeger
date_beforequerynostring
date_afterquerynostring
assignee_emailquerynostring
assignee_idquerynointeger
statusqueryno
severityqueryno
validityqueryno
tagsquerynostring
orderingquerynostring
detector_group_namequerynostring
ignorer_idquerynointeger
ignorer_api_token_idquerynostring
resolver_idquerynointeger
resolver_api_token_idquerynostring
feedbackquerynoboolean
only_on_provider_archived_sourcesquerynoboolean
Responses
StatusDescriptionSchema
200Secret Incident List
400Invalid data
401Invalid API key
403Permission denied
404Member not found
503API under maintenance
GET/v1/members/{member_id}/team_membershipsList team memberships of a member
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
member_idpathyesinteger
team_idquerynointeger
Responses
StatusDescriptionSchema
200Team membership list
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
GET/v1/members/{member_id}/teamsList teams of a member
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
searchquerynostring
is_globalquerynoboolean
member_idpathyesinteger
Responses
StatusDescriptionSchema
200List teams
400Invalid data
401Invalid API key
403Forbidden Call
404Not found
503API under maintenance
GET/v1/members/{member_id}/{resource_type}/{resource_id}Check member permission for a resource
Parameters
NameInRequiredType
member_idpathyesinteger
resource_typepathyesstring
resource_idpathyesinteger
Responses
StatusDescriptionSchema
200Member resource access details
401Invalid API key
403Permission denied
404Resource or Member not found
503API under maintenance
PUT/v1/members/{member_id}/{resource_type}/{resource_id}Give a member access to a resource
Parameters
NameInRequiredType
member_idpathyesinteger
resource_typepathyesstring
resource_idpathyesinteger
send_emailquerynoboolean
Request body

application/json (required)

Responses
StatusDescriptionSchema
200The access was updated successfully.
201The access was granted successfully.
400Invalid data
401Invalid API key
403Permission denied
404Resource or Member not found
503API under maintenance
DELETE/v1/members/{member_id}/{resource_type}/{resource_id}Revoke a member's access to a resource
Parameters
NameInRequiredType
member_idpathyesinteger
resource_typepathyesstring
resource_idpathyesinteger
Request body

application/json (required)

Responses
StatusDescriptionSchema
204The access was revoked successfully.
400Invalid data
401Invalid API key
403Permission denied
404Resource or Member not found
503API under maintenance
Scan Methods3

Use GitGuardian's brain at your leisure. Scanning API allows you to scan any content you want using GitGuardian's secrets detection algorithms.

POST/v1/multiscanMultiple content scan
Request body

application/json

Responses
StatusDescriptionSchema
200Successful Scan
400Invalid data
401Invalid API key
403Quota limit reached
503API under maintenance
POST/v1/scanContent scan
Request body

application/json

Responses
StatusDescriptionSchema
200Successful Scan
400Invalid data
401Invalid API key
403Quota limit reached
503API under maintenance
POST/v1/scan/create-incidentsScan content and create incidents
Request body

application/json

Responses
StatusDescriptionSchema
200Successful Scan and Incident Creation
400Bad Request
401Invalid API key
403Forbidden
503API under maintenance
Quota1

Retrieve details about quota usage.

GET/v1/quotasQuota overview
Responses
StatusDescriptionSchema
200Quota Overview
401Invalid API key
503API under maintenance
Status1

Check the status of the API and the overall system health.

GET/v1/healthAPI Health
Responses
StatusDescriptionSchema
200API on and key valid response
401Invalid API key
503API under maintenance
Teams9

Manage teams.

GET/v1/teamsList teams
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
is_globalquerynoboolean
searchquerynostring
linked_to_an_external_providerquerynoboolean
Responses
StatusDescriptionSchema
200List teams
400Invalid data
401Invalid API key
403Forbidden Call
503API under maintenance
POST/v1/teamsCreate a team
Request body

application/json

Responses
StatusDescriptionSchema
201Team created
400Invalid data
401Invalid API key
403Forbidden Call
409Data conflict
503API under maintenance
GET/v1/teams/{team_id}Retrieve a team
Parameters
NameInRequiredType
team_idpathyesinteger
Responses
StatusDescriptionSchema
200Team details
400Invalid data
401Invalid API key
403Forbidden Call
404Team not found
503API under maintenance
PATCH/v1/teams/{team_id}Update a team
Parameters
NameInRequiredType
team_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200The team was updated successfully.
400Invalid data
401Invalid API key
503API under maintenance
DELETE/v1/teams/{team_id}Delete a team
Parameters
NameInRequiredType
team_idpathyesinteger
Responses
StatusDescriptionSchema
204The team was deleted successfully.
400Invalid data
401Invalid API key
403Forbidden Call
404Team not found
503API under maintenance
GET/v1/teams/{team_id}/secret-incidentsList secret incidents a team has access to
Parameters
NameInRequiredType
team_idpathyesinteger
cursorquerynostring
pagequerynointeger
per_pagequerynointeger
date_beforequerynostring
date_afterquerynostring
assignee_emailquerynostring
assignee_idquerynointeger
statusqueryno
severityqueryno
validityqueryno
tagsquerynostring
custom_tagsquerynostring
custom_tag_keyquerynostring
custom_tag_valuequerynostring
orderingquerynostring
detector_group_namequerynostring
ignorer_idquerynointeger
ignorer_api_token_idquerynostring
resolver_idquerynointeger
resolver_api_token_idquerynostring
feedbackquerynoboolean
only_on_provider_archived_sourcesquerynoboolean
Responses
StatusDescriptionSchema
200Secret Incident List
400Invalid data
401Invalid API key
403Permission denied
404Team not found
503API under maintenance
GET/v1/teams/{team_id}/{resource_type}/{resource_id}Check team permission for a resource
Parameters
NameInRequiredType
team_idpathyesinteger
resource_typepathyesstring
resource_idpathyesinteger
Responses
StatusDescriptionSchema
200Team Secret resource access details
401Invalid API key
403Permission denied
404Resource or Team not found
503API under maintenance
PUT/v1/teams/{team_id}/{resource_type}/{resource_id}Give a team access to a resource
Parameters
NameInRequiredType
team_idpathyesinteger
resource_typepathyesstring
resource_idpathyesinteger
send_emailquerynoboolean
Request body

application/json (required)

Responses
StatusDescriptionSchema
200The access was updated successfully.
201The access was granted successfully.
400Invalid data
401Invalid API key
403Permission denied
404Resource or Team not found
503API under maintenance
DELETE/v1/teams/{team_id}/{resource_type}/{resource_id}Revoke a team's access to a resource
Parameters
NameInRequiredType
team_idpathyesinteger
resource_typepathyesstring
resource_idpathyesinteger
Request body

application/json (required)

Responses
StatusDescriptionSchema
204The access was revoked successfully.
400Invalid data
401Invalid API key
403Permission denied
404Resource or Team not found.
503API under maintenance
Team Invitations4

Manage team invitations.

GET/v1/teams/{team_id}/team_invitationsList team invitations
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
team_idpathyesinteger
invitation_idquerynointeger
is_team_leaderquerynoboolean
team_permissionquerynostring
incident_permissionquerynostring
Responses
StatusDescriptionSchema
200Team invitation list
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
POST/v1/teams/{team_id}/team_invitationsCreate a team invitation
Parameters
NameInRequiredType
team_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
201Team invitation created
400Invalid data
401Invalid API key
403Permission denied
404Not found
409Data conflict
503API under maintenance
PATCH/v1/teams/{team_id}/team_invitations/{team_invitation_id}Update a team invitation
Parameters
NameInRequiredType
team_idpathyesinteger
team_invitation_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200Team invitation was updated successfully.
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
DELETE/v1/teams/{team_id}/team_invitations/{team_invitation_id}Delete a team invitation
Parameters
NameInRequiredType
team_idpathyesinteger
team_invitation_idpathyesinteger
Responses
StatusDescriptionSchema
204Team invitation was deleted successfully.
401Invalid API key
403Permission denied
404Not found
503API under maintenance
Team Memberships4

Add or remove members from teams, or update their permissions.

GET/v1/teams/{team_id}/team_membershipsList team memberships
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
team_idpathyesinteger
is_team_leaderquerynoboolean
team_permissionquerynostring
incident_permissionquerynostring
member_idquerynonumber
Responses
StatusDescriptionSchema
200Team membership list
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
POST/v1/teams/{team_id}/team_membershipsAdd a member to a team
Parameters
NameInRequiredType
team_idpathyesinteger
send_emailquerynoboolean
Request body

application/json

Responses
StatusDescriptionSchema
201Team membership created
400Invalid data
401Invalid API key
403Permission denied
404Not found
409Data conflict
503API under maintenance
PATCH/v1/teams/{team_id}/team_memberships/{team_membership_id}Update a team membership
Parameters
NameInRequiredType
team_idpathyesinteger
team_membership_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200Team membership was updated successfully.
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
DELETE/v1/teams/{team_id}/team_memberships/{team_membership_id}Remove a member from a team
Parameters
NameInRequiredType
team_idpathyesinteger
team_membership_idpathyesinteger
send_emailquerynoboolean
Responses
StatusDescriptionSchema
204Team membership was deleted successfully.
401Invalid API key
403Permission denied
404Not found
503API under maintenance
Health Checks3

Monitor the health of integration instances.

GET/v1/health-checksList health checks
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
typequerynostring
statusquerynostring
started_at_afterquerynostring
started_at_beforequerynostring
Responses
StatusDescriptionSchema
200Health check list
400Invalid data
401Invalid API key
403Permission denied
503API under maintenance
GET/v1/health-checks/{type}/{instance_id}List health check history for an instance
Parameters
NameInRequiredType
typepathyesstring
instance_idpathyesinteger
cursorquerynostring
per_pagequerynointeger
statusquerynostring
started_at_afterquerynostring
started_at_beforequerynostring
orderingquerynostring
Responses
StatusDescriptionSchema
200Health check instance history
400Invalid data
401Invalid API key
403Permission denied
404Resource not found
503API under maintenance
POST/v1/health-checks/{type}/{instance_id}/triggerTrigger a health check
Parameters
NameInRequiredType
typepathyesstring
instance_idpathyesinteger
Responses
StatusDescriptionSchema
200Health check enqueued successfully
401Invalid API key
403Permission denied
404Resource not found
429Health check triggered too recently
503API under maintenance
Honeytokens11

Manage honeytokens.

GET/v1/honeytokensList honeytokens
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
statusquerynostring
typequerynostring
searchquerynostring
creator_idquerynonumber
revoker_idquerynonumber
creator_api_token_idquerynostring
revoker_api_token_idquerynostring
tagsquerynostring
orderingquerynostring
show_tokenquerynoboolean
X-Privacy-Modeheadernostring
Responses
StatusDescriptionSchema
200List honeytokens
400Invalid data
401Invalid API key
403Forbidden Call
503API under maintenance
POST/v1/honeytokensCreate a honeytoken
Request body

application/json

Responses
StatusDescriptionSchema
201Honeytoken created
400Invalid data
401Invalid API key
403Forbidden Call
409Data conflict
503API under maintenance
GET/v1/honeytokens/endpoint-deploymentsList a machine/user's honeytoken deployments (read-only)
Parameters
NameInRequiredType
machine_idqueryyesstring
usernamequeryyesstring
Responses
StatusDescriptionSchema
200The live honeytoken placements for this machine/user (possibly empty).
400Invalid data
401Invalid API key
403Forbidden Call
503API under maintenance
POST/v1/honeytokens/endpoint-deploymentsReconcile (plant) honeytokens for a machine/user
Request body

application/json

Responses
StatusDescriptionSchema
200The desired honeytoken placements for this machine/user.
400Invalid data
401Invalid API key
403Forbidden Call
409The request carried an explicit `config` that conflicts with an already-active deployment for the same `(machine, user, method)`. Revoke it before changing the config.
503API under maintenance
PATCH/v1/honeytokens/endpoint-deployments/{id}Confirm a honeytoken endpoint deployment
Parameters
NameInRequiredType
idpathyesstring
Request body

application/json

Responses
StatusDescriptionSchema
200Deployment updated
400Invalid data
401Invalid API key
403Forbidden Call
404Resource not found
503API under maintenance
POST/v1/honeytokens/prefixesBulk prefix lookup for honeytoken HMSL hashes
Request body

application/json (required)

Responses
StatusDescriptionSchema
200Matching honeytoken hints
400Invalid request (bad prefix format or too many prefixes)
401Invalid API key
403Forbidden
POST/v1/honeytokens/with-contextCreate a honeytoken within a context
Request body

application/json

Responses
StatusDescriptionSchema
200Honeytoken within a context created
400Invalid data
401Invalid API key
403Forbidden Call
409Data conflict
503API under maintenance
GET/v1/honeytokens/{honeytoken_id}Retrieve a honeytoken
Parameters
NameInRequiredType
honeytoken_idpathyesstring
X-Privacy-Modeheadernostring
show_tokenquerynoboolean
Responses
StatusDescriptionSchema
200Honeytoken details
400Invalid data
401Invalid API key
403Forbidden Call
404Honeytoken not found
503API under maintenance
PATCH/v1/honeytokens/{honeytoken_id}Update a honeytoken
Parameters
NameInRequiredType
honeytoken_idpathyesstring
X-Privacy-Modeheadernostring
Request body

application/json

Responses
StatusDescriptionSchema
200The honeytoken was updated successfully.
400Invalid data
401Invalid API key
503API under maintenance
POST/v1/honeytokens/{honeytoken_id}/resetReset the honeytoken
Parameters
NameInRequiredType
honeytoken_idpathyesstring
X-Privacy-Modeheadernostring
Responses
StatusDescriptionSchema
200Honeytoken was successfully revoked.
400Invalid data
401Invalid API key
503API under maintenance
POST/v1/honeytokens/{honeytoken_id}/revokeRevoke the honeytoken
Parameters
NameInRequiredType
honeytoken_idpathyesstring
X-Privacy-Modeheadernostring
Responses
StatusDescriptionSchema
200Honeytoken was successfully revoked.
400Invalid data
401Invalid API key
503API under maintenance
Honeytoken Notes4

Manage notes on honeytokens.

GET/v1/honeytokens/{honeytoken_id}/notesList notes on an honeytoken
Parameters
NameInRequiredType
honeytoken_idpathyesstring
cursorquerynostring
per_pagequerynointeger
orderingquerynostring
member_idquerynointeger
api_token_idquerynostring
searchquerynostring
Responses
StatusDescriptionSchema
200Honeytoken Note List
400Invalid data
401Invalid API key
404Honeytoken not found
503API under maintenance
POST/v1/honeytokens/{honeytoken_id}/notesCreate an honeytoken note
Parameters
NameInRequiredType
honeytoken_idpathyesstring
Request body

application/json

Responses
StatusDescriptionSchema
201The note was created successfully.
400Invalid data
401Invalid API key
404Honeytoken not found.
503API under maintenance
PATCH/v1/honeytokens/{honeytoken_id}/notes/{note_id}Update a honeytoken note
Parameters
NameInRequiredType
honeytoken_idpathyesstring
note_idpathyesstring
Request body

application/json

Responses
StatusDescriptionSchema
200The note was updated successfully.
400Invalid data
401Invalid API key
403You cannot update an Honeytoken Note you that was not created by the current API key.
404Honeytoken or Honeytoken Note not found.
503API under maintenance
DELETE/v1/honeytokens/{honeytoken_id}/notes/{note_id}Delete a honeytoken note
Parameters
NameInRequiredType
honeytoken_idpathyesstring
note_idpathyesstring
Responses
StatusDescriptionSchema
204The note was deleted successfully.
400Invalid data
401Invalid API key
403You cannot delete an Honeytoken Note you that was not created by the current API key.
404Honeytoken or Honeytoken Note not found.
503API under maintenance
Honeytokens Events1

Manage events on honeytokens.

GET/v1/honeytokens_eventsList all honeytokens events
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
orderingquerynostring
honeytoken_idquerynostring
statusquerynostring
ip_addressquerynostring
tagsquerynostring
searchquerynostring
X-Privacy-Modeheadernostring
Responses
StatusDescriptionSchema
200Honeytokens Events List
400Invalid data
401Invalid API key
503API under maintenance
Honeytoken Sources1

Manage sources on honeytokens.

GET/v1/honeytokens/{honeytoken_id}/sourcesList sources on an honeytoken
Parameters
NameInRequiredType
honeytoken_idpathyesstring
cursorquerynostring
per_pagequerynointeger
orderingquerynostring
provider_metadata_archivedquerynoboolean
Responses
StatusDescriptionSchema
200Honeytoken Sources List
400Invalid data
401Invalid API key
404Honeytoken not found
503API under maintenance
IP Allowlist5

Manage the IP allowlist for workspace access. Only available on SaaS.

GET/v1/ip-allowlistList IP allowlist rules
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
searchquerynostring
orderingquerynostring
Responses
StatusDescriptionSchema
200List IP allowlist rules
400Invalid data
401Invalid API key
403Forbidden Call
503API under maintenance
POST/v1/ip-allowlistCreate an IP allowlist rule
Request body

application/json

Responses
StatusDescriptionSchema
201IP allowlist rule created
400Invalid data
401Invalid API key
403Forbidden Call
409Data conflict
503API under maintenance
GET/v1/ip-allowlist/{ip_allowlist_rule_id}Retrieve an IP allowlist rule
Parameters
NameInRequiredType
ip_allowlist_rule_idpathyesstring
Responses
StatusDescriptionSchema
200IP allowlist rule details
400Invalid data
401Invalid API key
403Forbidden Call
404IP allowlist rule not found
503API under maintenance
PATCH/v1/ip-allowlist/{ip_allowlist_rule_id}Update an IP allowlist rule
Parameters
NameInRequiredType
ip_allowlist_rule_idpathyesstring
Request body

application/json

Responses
StatusDescriptionSchema
200The IP allowlist rule was updated successfully.
400Invalid data
401Invalid API key
503API under maintenance
DELETE/v1/ip-allowlist/{ip_allowlist_rule_id}Delete an IP allowlist rule
Parameters
NameInRequiredType
ip_allowlist_rule_idpathyesstring
Responses
StatusDescriptionSchema
204The IP allowlist rule was deleted successfully.
401Invalid API key
403Forbidden Call
404Label not found
503API under maintenance
IPs1

Get GitGuardian's IP addresses for IP allowlisting. Use this endpoint to retrieve GitGuardian's egress IP addresses in CIDR notation. Allowlist these IPs in your firewalls, network security groups, or other access control systems to enable GitGuardian services to access your resources.

GET/v1/ipsList GitGuardian IP addresses
Responses
StatusDescriptionSchema
200Successfully returned IP addresses (or empty list if not configured)
SCIM Users6

System for Cross-domain Identity Management (SCIM) is a standard for automating the exchange of user identity information between identity domains, or IT systems.

GET/v1/scim/v2/UsersList members (SCIM)
Parameters
NameInRequiredType
filterquerynostring
startIndexquerynointeger
countquerynointeger
Responses
StatusDescriptionSchema
200Member List
400Bad Request
403Forbidden
POST/v1/scim/v2/UsersCreate a member (SCIM)
Request body

application/scim+json

Responses
StatusDescriptionSchema
201Member Created
400Bad Request
403Forbidden
409Conflict
GET/v1/scim/v2/Users/{id}Detail of a member (SCIM)
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200Member Detail
403Forbidden
404Not Found
PUT/v1/scim/v2/Users/{id}Update of a member (SCIM)
Parameters
NameInRequiredType
idpathyesstring
Request body

application/scim+json

Responses
StatusDescriptionSchema
200Member Detail
400Bad Request
403Forbidden
404Bad Request
PATCH/v1/scim/v2/Users/{id}Update (partial) of a member (SCIM)
Parameters
NameInRequiredType
idpathyesstring
Request body

application/scim+json

Responses
StatusDescriptionSchema
200Member Detail
400Bad Request
403Forbidden
404Bad Request
DELETE/v1/scim/v2/Users/{id}Delete a member (SCIM)
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
204No Content
400Bad Request
404Not Found
SCIM Groups6

System for Cross-domain Identity Management (SCIM) is a standard for automating the exchange of group identity information between identity domains, or IT systems.

GET/v1/scim/v2/GroupsList groups (SCIM)
Parameters
NameInRequiredType
filterquerynostring
startIndexquerynointeger
countquerynointeger
Responses
StatusDescriptionSchema
200A list of groups
400Bad Request
403Forbidden
POST/v1/scim/v2/GroupsCreate a group (SCIM)
Request body

application/scim+json

Responses
StatusDescriptionSchema
201Group Created
400Bad Request
403Forbidden
409Conflict
GET/v1/scim/v2/Groups/{id}Detail of a group (SCIM)
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200Group Detail
403Forbidden
404Not Found
PUT/v1/scim/v2/Groups/{id}Update a group (SCIM)
Parameters
NameInRequiredType
idpathyesstring
Request body

application/scim+json

Responses
StatusDescriptionSchema
200Group Detail
400Bad Request
403Forbidden
404Bad Request
PATCH/v1/scim/v2/Groups/{id}Partially update a group (SCIM)
Parameters
NameInRequiredType
idpathyesstring
Request body

application/scim+json

Responses
StatusDescriptionSchema
200Group Detail
400Bad Request
403Forbidden
404Bad Request
DELETE/v1/scim/v2/Groups/{id}Delete a group (SCIM)
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
204No Content
400Bad Request
404Not Found
SCIM Metadata5

System for Cross-domain Identity Management (SCIM) is a standard for automating the exchange of user identity information between identity domains, or IT systems.

GET/v1/scim/v2/ResourceTypesList Resource Types (SCIM)
Responses
StatusDescriptionSchema
200List of Resource Types
403Forbidden
GET/v1/scim/v2/ResourceTypes/{name}Resource Types (SCIM)
Parameters
NameInRequiredType
namepathyesstring
Responses
StatusDescriptionSchema
200Resource Type (SCIM)
403Forbidden
404Not Found
GET/v1/scim/v2/SchemasList Schemas (SCIM)
Responses
StatusDescriptionSchema
200List of SCIM Schemas
403Forbidden
GET/v1/scim/v2/Schemas/{name}Schema (SCIM)
Parameters
NameInRequiredType
namepathyesstring
Responses
StatusDescriptionSchema
200SCIM Schema
403Forbidden
404Not Found
GET/v1/scim/v2/ServiceProviderConfigService Provider Configuration (SCIM)
Responses
StatusDescriptionSchema
200Service Provider Configuration (SCIM)
403Forbidden
Custom Tags8

Manage custom tags. Linking a custom tag to resources occurs at the resource endpoints themselves. For example, you can apply a custom tag to an incident [here](#tag/Secret-Incidents/operation/update-secret-incident) or to a honeytoken [here](#tag/Honeytokens/operation/update-honeytoken).

GET/v1/custom_tagsList custom tags
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
keyquerynostring
Responses
StatusDescriptionSchema
200Custom tags list
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
POST/v1/custom_tagsCreate a custom tag
Request body

application/json (required)

Responses
StatusDescriptionSchema
201The custom tag was created successfully
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
PATCH/v1/custom_tagsUpdate custom tags key
Parameters
NameInRequiredType
old_keyqueryyesstring
new_keyqueryyesstring
Responses
StatusDescriptionSchema
204Custom tags updated with the new key
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
DELETE/v1/custom_tagsDelete a custom tags key
Parameters
NameInRequiredType
keyqueryyesstring
Responses
StatusDescriptionSchema
204Custom tags using the given key were successfully deleted
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
GET/v1/custom_tags/{custom_tag_id}Retrieve a custom tag
Parameters
NameInRequiredType
custom_tag_idpathyesstring
Responses
StatusDescriptionSchema
200Custom tag was found successfully.
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
PUT/v1/custom_tags/{custom_tag_id}Full Update of a Custom Tag
Parameters
NameInRequiredType
custom_tag_idpathyesstring
Request body

application/json

Responses
StatusDescriptionSchema
200Custom tag was updated successfully.
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
PATCH/v1/custom_tags/{custom_tag_id}Partial update of a Custom Tag
Parameters
NameInRequiredType
custom_tag_idpathyesstring
Request body

application/json

Responses
StatusDescriptionSchema
200Custom tag was updated successfully.
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
DELETE/v1/custom_tags/{custom_tag_id}Deletion of a custom tag
Parameters
NameInRequiredType
custom_tag_idpathyesstring
Responses
StatusDescriptionSchema
204Custom tag was deleted successfully.
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
Developer1

Retrieve developers from the public perimeter.

GET/v1/public-perimeter/developersList developers
Parameters
NameInRequiredType
searchquerynostring
orderingquerynostring
Responses
StatusDescriptionSchema
200Developers List
400Invalid data
401Invalid API key
503API under maintenance
OAuth25

OAuth 2.0 / OpenID Connect endpoints used to integrate third-party clients (such as MCP clients) with GitGuardian. The supported flow is **Authorization Code + PKCE** ([RFC 7636](https://www.rfc-editor.org/rfc/rfc7636)). The authorization endpoint itself is served by the GitGuardian dashboard; this group documents the API-side endpoints: - **[Token endpoint](#operation/public-oauth-token)** — exchanges an authorization code for a personal access token ([RFC 6749](https://www.rfc-editor.org/rfc/rfc6749)). - **[Dynamic Client Registration](#operation/public-oauth-register)** — lets clients register themselves ([RFC 7591](https://www.rfc-editor.org/rfc/rfc7591)). - **[Authorization Server Metadata](#operation/public-oauth-authorization-server-metadata)** — discovery document ([RFC 8414](https://www.rfc-editor.org/rfc/rfc8414)). - **[OpenID Connect Discovery](#operation/public-oidc-well-known-configuration)** — OIDC discovery document. - **[JWKS](#operation/public-jwks)** — public keys used to validate issued JWTs ([RFC 7517](https://www.rfc-editor.org/rfc/rfc7517)).

GET/.well-known/oauth-authorization-serverOAuth 2.0 Authorization Server Metadata.
Responses
StatusDescriptionSchema
200Authorization server metadata document.
GET/.well-known/openid-configurationOpenID Connect discovery document.
Responses
StatusDescriptionSchema
200OIDC discovery document.
GET/v1/auth/jwksList public keys used to sign JWTs.
Responses
StatusDescriptionSchema
200JSON Web Key Set.
500No signing keys are configured on this instance.
POST/v1/oauth/registerDynamically register an OAuth 2.0 client.
Request body

application/json (required)

Responses
StatusDescriptionSchema
201Client successfully registered. ([RFC 7591 §3.2.1](https://www.rfc-editor.org/rfc/rfc7591#section-3.2.1))
400Invalid client metadata. ([RFC 7591 §3.2.2](https://www.rfc-editor.org/rfc/rfc7591#section-3.2.2))
404Dynamic Client Registration is disabled for this workspace.
429Rate limit exceeded. The registration endpoint is throttled to prevent abuse.
POST/v1/oauth/tokenExchange an authorization code for an access token.
Request body

application/x-www-form-urlencoded (required)

Responses
StatusDescriptionSchema
200Token successfully issued.
400OAuth 2.0 error response ([RFC 6749 §5.2](https://www.rfc-editor.org/rfc/rfc6749#section-5.2)). Returned for example when the authorization code is invalid, expired, the PKCE verifier does not match, or the request is otherwise malformed.
401OAuth 2.0 error response when client authentication fails (unknown `client_id` or invalid `client_secret`).
Audit Logs2
GET/v1/audit_logsList audit Logs
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
date_beforequerynostring
date_afterquerynostring
event_namequerynostring
member_idquerynointeger
member_namequerynostring
member_emailquerynostring
api_token_idquerynostring
ip_addressquerynostring
Responses
StatusDescriptionSchema
200Audit logs List
400Invalid data
401Invalid API key
503API under maintenance
GET/v1/audit_logs/event_namesList audit log event names
Responses
StatusDescriptionSchema
200List of audit log event names
401Invalid API key
403Forbidden
Honeytoken Activity Logs1
GET/v1/honeytokens/{honeytoken_id}/activity-logsList activity logs of a honeytoken
Parameters
NameInRequiredType
honeytoken_idpathyesstring
cursorquerynostring
per_pagequerynointeger
orderingquerynostring
member_idquerynointeger
api_token_idquerynostring
content_keyquerynostring
searchquerynostring
Responses
StatusDescriptionSchema
200Honeytoken Activity Log List
400Invalid data
401Invalid API key
404Honeytoken not found
503API under maintenance
Internal Secret Incident Activity Logs1
GET/v1/incidents/secrets/{incident_id}/activity-logsList activity logs of a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
cursorquerynostring
per_pagequerynointeger
orderingquerynostring
member_idquerynointeger
api_token_idquerynostring
content_keyquerynostring
searchquerynostring
Responses
StatusDescriptionSchema
200Incident Activity Log List
400Invalid data
401Invalid API key
404Secret Incident not found
503API under maintenance
Internal Secret Incident Notes4
GET/v1/incidents/secrets/{incident_id}/notesList notes on a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
cursorquerynostring
pagequerynointeger
per_pagequerynointeger
orderingquerynostring
member_idquerynointeger
searchquerynostring
Responses
StatusDescriptionSchema
200Incident Note List
400Invalid data
401Invalid API key
404Secret Incident not found
503API under maintenance
POST/v1/incidents/secrets/{incident_id}/notesCreate a secret incident note
Parameters
NameInRequiredType
incident_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
201The note was created successfully.
400Invalid data
401Invalid API key
404Secret Incident not found.
503API under maintenance
PATCH/v1/incidents/secrets/{incident_id}/notes/{note_id}Update a secret incident note
Parameters
NameInRequiredType
incident_idpathyesinteger
note_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200The note was updated successfully.
400Invalid data
401Invalid API key
403You cannot update an Incident Note you that was not created by the current API key.
404Secret Incident or Incident Note not found.
503API under maintenance
DELETE/v1/incidents/secrets/{incident_id}/notes/{note_id}Delete a secret incident note
Parameters
NameInRequiredType
incident_idpathyesinteger
note_idpathyesinteger
Responses
StatusDescriptionSchema
204The note was deleted successfully.
400Invalid data
401Invalid API key
403You cannot delete an Incident Note you that was not created by the current API key.
404Secret Incident or Incident Note not found.
503API under maintenance
Internal Secret Incidents25
GET/v1/incidents/secretsList secret incidents
Parameters
NameInRequiredType
cursorquerynostring
pagequerynointeger
per_pagequerynointeger
date_beforequerynostring
date_afterquerynostring
triggered_at_beforequerynostring
triggered_at_afterquerynostring
assignee_emailquerynostring
assignee_idquerynointeger
statusqueryno
severityqueryno
validityqueryno
tagsquerynostring
exclude_tagsquerynostring
custom_tagsquerynostring
custom_tag_keyquerynostring
custom_tag_valuequerynostring
orderingquerynostring
detector_group_namequerynostring
ignorer_idquerynointeger
ignorer_api_token_idquerynostring
resolver_idquerynointeger
resolver_api_token_idquerynostring
feedbackquerynoboolean
only_on_provider_archived_sourcesquerynoboolean
risk_score_minquerynointeger
risk_score_maxquerynointeger
Responses
StatusDescriptionSchema
200Secret Incident List
400Invalid data
401Invalid API key
503API under maintenance
GET/v1/incidents/secrets/{incident_id}Retrieve a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
with_occurrencesquerynointeger
Responses
StatusDescriptionSchema
200Secret Incident Details
400Invalid data
401Invalid API key
503API under maintenance
PATCH/v1/incidents/secrets/{incident_id}Update a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200Secret Incident Details without occurrences.
400Invalid data
401Invalid API key
503API under maintenance
POST/v1/incidents/secrets/{incident_id}/assignAssign a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
send_emailquerynoboolean
Request body

application/json

Responses
StatusDescriptionSchema
200Secret Incident Details without occurrences.
400Invalid data
401Invalid API key
409Data conflict
503API under maintenance
POST/v1/incidents/secrets/{incident_id}/grant_accessGrant access to a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
204The access was granted successfully.
400Invalid data
401Invalid API key
403Permission denied
409Data conflict
503API under maintenance
POST/v1/incidents/secrets/{incident_id}/ignoreIgnore a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200Secret Incident Details without occurrences.
400Invalid data
401Invalid API key
409Data conflict
503API under maintenance
GET/v1/incidents/secrets/{incident_id}/impacted_perimeterRetrieve the impacted perimeter of a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Responses
StatusDescriptionSchema
200Secret Incident Impacted Perimeter
400Invalid data
401Invalid API key
503API under maintenance
GET/v1/incidents/secrets/{incident_id}/invitationsList invitations having access to a Secret Incident
Parameters
NameInRequiredType
incident_idpathyesinteger
cursorquerynostring
invitation_idquerynonumber
incident_permissionquerynostring
Responses
StatusDescriptionSchema
200List of invitation accesses
400Invalid data
401Invalid API key
403Permission denied
404Secret Incident not found
503API under maintenance
GET/v1/incidents/secrets/{incident_id}/leaksRetrieve where a secret has been publicly leaked
Parameters
NameInRequiredType
incident_idpathyesinteger
Responses
StatusDescriptionSchema
200List of the leaks of the incident
401Invalid API key
404Incident not found
503API under maintenance
GET/v1/incidents/secrets/{incident_id}/membersList members having access to a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
cursorquerynostring
pagequerynointeger
per_pagequerynointeger
member_idquerynonumber
incident_permissionquerynostring
rolequeryno
searchquerynostring
Responses
StatusDescriptionSchema
200List of members
400Invalid data
401Invalid API key
404Secret Incident not found
503API under maintenance
POST/v1/incidents/secrets/{incident_id}/reopenReopen a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Responses
StatusDescriptionSchema
200Secret Incident Details without occurrences.
400Invalid data
401Invalid API key
409Data conflict
503API under maintenance
POST/v1/incidents/secrets/{incident_id}/resolveResolve a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200Secret Incident Details without occurrences.
400Invalid data
401Invalid API key
409Data conflict
503API under maintenance
POST/v1/incidents/secrets/{incident_id}/revoke_accessRevoke access to a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
204The access was revoked successfully.
400Invalid data
401Invalid API key
403Permission denied
409Data conflict
503API under maintenance
POST/v1/incidents/secrets/{incident_id}/shareShare a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200Incident Sharing Details
400Invalid data
401Invalid API key
409Data conflict
503API under maintenance
GET/v1/incidents/secrets/{incident_id}/teamsList teams having access to a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
cursorquerynostring
team_idquerynonumber
incident_permissionquerynostring
Responses
StatusDescriptionSchema
200List of team accesses
400Invalid data
401Invalid API key
403Permission denied
404Secret Incident not found
503API under maintenance
POST/v1/incidents/secrets/{incident_id}/unassignUnassign a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Responses
StatusDescriptionSchema
200Secret Incident Details without occurrences.
400Invalid data
401Invalid API key
409Data conflict
503API under maintenance
POST/v1/incidents/secrets/{incident_id}/unshareUnshare a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Responses
StatusDescriptionSchema
204The public link was revoked successfully.
400Invalid data
401Invalid API key
409Data conflict
503API under maintenance
GET/v1/incidents/secrets/{incident_id}/vaultsGet vault information for a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Responses
StatusDescriptionSchema
200Vault information for the secret incident
401Invalid API key
403Forbidden
404Resource not found
503API under maintenance
GET/v1/remediation-workflowRetrieve the remediation workflow
Responses
StatusDescriptionSchema
200Remediation Workflow
401Invalid API key
503API under maintenance
GET/v1/secret-incidents/{incident_id}/invitationsList invitations with access to a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
cursorquerynostring
per_pagequerynointeger
searchquerynostring
orderingquerynostring
direct_accessquerynoboolean
Responses
StatusDescriptionSchema
200List invitations
400Invalid data
401Invalid API key
403Permission denied
404Secret Incident not found
503API under maintenance
GET/v1/secret-incidents/{incident_id}/membersList members with access to a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
cursorquerynostring
per_pagequerynointeger
rolequeryno
access_levelqueryno
searchquerynostring
orderingquerynostring
direct_accessquerynoboolean
Responses
StatusDescriptionSchema
200List members
400Invalid data
401Invalid API key
403Permission denied
404Secret Incident not found
503API under maintenance
GET/v1/secret-incidents/{incident_id}/teamsList teams with access to a secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
cursorquerynostring
per_pagequerynointeger
searchquerynostring
direct_accessquerynoboolean
Responses
StatusDescriptionSchema
200List teams
400Invalid data
401Invalid API key
403Permission denied
404Secret Incident not found
503API under maintenance
GET/v1/secrets/{secret_id}Retrieve a secret value
Parameters
NameInRequiredType
secret_idpathyesinteger
X-Privacy-Modeheadernostring
Responses
StatusDescriptionSchema
200Secret details
400Invalid data
401Invalid API key
404Secret not found
503API under maintenance
GET/v1/sources/{source_id}/incidents/secretsList secret incidents of a source
Parameters
NameInRequiredType
source_idpathyesinteger
cursorquerynostring
per_pagequerynointeger
date_beforequerynostring
date_afterquerynostring
assignee_emailquerynostring
assignee_idquerynointeger
statusqueryno
severityqueryno
validityqueryno
tagsquerynostring
custom_tagsquerynostring
custom_tag_keyquerynostring
custom_tag_valuequerynostring
orderingquerynostring
detector_group_namequerynostring
ignorer_idquerynointeger
ignorer_api_token_idquerynostring
resolver_idquerynointeger
resolver_api_token_idquerynostring
feedbackquerynoboolean
only_on_provider_archived_sourcesquerynoboolean
Responses
StatusDescriptionSchema
200Secret Incident List
400Invalid data
401Invalid API key
503API under maintenance
GET/v1/teams/{team_id}/incidents/secretsList secret incidents of a team
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
date_beforequerynostring
date_afterquerynostring
team_idpathyesinteger
assignee_emailquerynostring
assignee_idquerynointeger
statusqueryno
severityqueryno
validityqueryno
tagsquerynostring
custom_tagsquerynostring
custom_tag_keyquerynostring
custom_tag_valuequerynostring
orderingquerynostring
detector_group_namequerynostring
ignorer_idquerynointeger
ignorer_api_token_idquerynostring
resolver_idquerynointeger
resolver_api_token_idquerynostring
only_on_provider_archived_sourcesquerynoboolean
Responses
StatusDescriptionSchema
200Secret Incident List
400Invalid data
401Invalid API key
503API under maintenance
Internal Secret Occurrences1
GET/v1/occurrences/secretsList secret occurrences
Parameters
NameInRequiredType
cursorquerynostring
pagequerynointeger
per_pagequerynointeger
date_beforequerynostring
date_afterquerynostring
source_idquerynointeger
source_namequerynostring
source_typequerynostring
source_monitoring_statusquerynostring
incident_idquerynointeger
incident_assignee_idquerynointeger
presencequeryno
author_namequerynostring
author_infoquerynostring
shaquerynostring
filepathquerynostring
severityqueryno
statusqueryno
validityqueryno
tagsquerynostring
exclude_tagsquerynostring
orderingquerynostring
Responses
StatusDescriptionSchema
200List occurrences
400Invalid data
401Invalid API key
503API under maintenance
Public Secret Incident Activity Logs1
GET/v1/public-incidents/secrets/{incident_id}/activity-logsList activity logs of a public secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
cursorquerynostring
per_pagequerynointeger
orderingquerynostring
member_idquerynointeger
api_token_idquerynostring
content_keyquerynostring
searchquerynostring
Responses
StatusDescriptionSchema
200Public Incident Activity Log List
400Invalid data
401Invalid API key
404Public Secret Incident not found
503API under maintenance
Public Secret Incident Notes4
GET/v1/public-incidents/secrets/{incident_id}/notesList notes on a public secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
cursorquerynostring
per_pagequerynointeger
orderingquerynostring
member_idquerynointeger
searchquerynostring
Responses
StatusDescriptionSchema
200Public Incident Note List
400Invalid data
401Invalid API key
404Public Secret Incident not found
503API under maintenance
POST/v1/public-incidents/secrets/{incident_id}/notesCreate a public secret incident note
Parameters
NameInRequiredType
incident_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
201The note was created successfully.
400Invalid data
401Invalid API key
404Public Secret Incident not found.
503API under maintenance
PATCH/v1/public-incidents/secrets/{incident_id}/notes/{note_id}Update a public secret incident note
Parameters
NameInRequiredType
incident_idpathyesinteger
note_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200The note was updated successfully.
400Invalid data
401Invalid API key
403You cannot update an Incident Note you that was not created by the current API key.
404Public Secret Incident or Incident Note not found.
503API under maintenance
DELETE/v1/public-incidents/secrets/{incident_id}/notes/{note_id}Delete a public secret incident note
Parameters
NameInRequiredType
incident_idpathyesinteger
note_idpathyesinteger
Responses
StatusDescriptionSchema
204The note was deleted successfully.
400Invalid data
401Invalid API key
403You cannot delete an Incident Note you that was not created by the current API key.
404Public Secret Incident or Incident Note not found.
503API under maintenance
Public Secret Incidents12
GET/v1/public-incidents/secretsList public secret incidents
Parameters
NameInRequiredType
X-Privacy-Modeheadernostring
cursorquerynostring
per_pagequerynointeger
date_beforequerynostring
date_afterquerynostring
triggered_at_beforequerynostring
triggered_at_afterquerynostring
assignee_emailquerynostring
assignee_idquerynointeger
statusqueryno
severityqueryno
validityqueryno
tagsquerynostring
custom_tagsquerynostring
custom_tag_keyquerynostring
custom_tag_valuequerynostring
orderingquerynostring
detector_group_namequerynostring
ignorer_idquerynointeger
ignorer_api_token_idquerynostring
resolver_idquerynointeger
resolver_api_token_idquerynostring
feedbackquerynoboolean
declarative_secret_statusqueryno
risk_score_minquerynointeger
risk_score_maxquerynointeger
Responses
StatusDescriptionSchema
200Public Secret Incident List
400Invalid data
401Invalid API key
503API under maintenance
GET/v1/public-incidents/secrets/{incident_id}Retrieve a public secret incident
Parameters
NameInRequiredType
X-Privacy-Modeheadernostring
incident_idpathyesinteger
Responses
StatusDescriptionSchema
200Public Secret Incident Details
400Invalid data
401Invalid API key
503API under maintenance
POST/v1/public-incidents/secrets/{incident_id}/assignAssign a public secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
send_emailquerynoboolean
Request body

application/json

Responses
StatusDescriptionSchema
200Public Secret Incident Details
400Invalid data
401Invalid API key
409Data conflict
503API under maintenance
POST/v1/public-incidents/secrets/{incident_id}/ignoreIgnore a public secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200Public Secret Incident Details
400Invalid data
401Invalid API key
409Data conflict
503API under maintenance
POST/v1/public-incidents/secrets/{incident_id}/reopenReopen a public secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Responses
StatusDescriptionSchema
200Public Secret Incident Details
400Invalid data
401Invalid API key
409Data conflict
503API under maintenance
POST/v1/public-incidents/secrets/{incident_id}/resolveResolve a public secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200Public Secret Incident Details
400Invalid data
401Invalid API key
409Data conflict
503API under maintenance
POST/v1/public-incidents/secrets/{incident_id}/set_custom_tagsSet custom tags of a public secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200Public Secret Incident Details
400Invalid data
401Invalid API key
503API under maintenance
POST/v1/public-incidents/secrets/{incident_id}/set_severitySet severity of a public secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200Public Secret Incident Details
400Invalid data
401Invalid API key
503API under maintenance
POST/v1/public-incidents/secrets/{incident_id}/shareShare a public secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
200Issue Token Details
400Invalid data
401Invalid API key
409Data conflict
503API under maintenance
POST/v1/public-incidents/secrets/{incident_id}/unassignUnassign a public secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Responses
StatusDescriptionSchema
200Public Secret Incident Details
400Invalid data
401Invalid API key
409Data conflict
503API under maintenance
POST/v1/public-incidents/secrets/{incident_id}/unshareUnshare a public secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Responses
StatusDescriptionSchema
204Share link deleted successfully
400Invalid data
401Invalid API key
409Data conflict
503API under maintenance
GET/v1/public-incidents/secrets/{incident_id}/vaultsGet vault information for a public secret incident
Parameters
NameInRequiredType
incident_idpathyesinteger
Responses
StatusDescriptionSchema
200Vault information for the public secret incident
401Invalid API key
403Forbidden
404Resource not found
503API under maintenance
Public Secret Occurrences2
GET/v1/public-incidents/secrets/{incident_id}/occurrencesList public secret occurrences
Parameters
NameInRequiredType
incident_idpathyesinteger
cursorquerynostring
per_pagequerynointeger
date_beforequerynostring
date_afterquerynostring
source_idquerynointeger
presencequeryno
shaquerynostring
filepathquerynostring
attachment_reasonquerynostring
severityqueryno
statusqueryno
validityqueryno
tagsquerynostring
orderingquerynostring
Responses
StatusDescriptionSchema
200List public secret occurrences
400Invalid data
401Invalid API key
503API under maintenance
GET/v1/public-incidents/secrets/{incident_id}/occurrences/{occurrence_id}Retrieve a public secret occurrence
Parameters
NameInRequiredType
incident_idpathyesinteger
occurrence_idpathyesinteger
Responses
StatusDescriptionSchema
200Public Secret Occurrence Details
400Invalid data
401Invalid API key
503API under maintenance
Scans1
GET/v1/scans/{scan_id}/auditGet a scan's audit summary
Parameters
NameInRequiredType
scan_idpathyesstring
Responses
StatusDescriptionSchema
200Scan Audit Summary
400Invalid data
401Invalid API key
403Forbidden
404Resource not found
503API under maintenance
Team Requests5
GET/v1/members/{member_id}/team_requestsList team requests of a member
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
member_idpathyesinteger
team_idquerynonumber
Responses
StatusDescriptionSchema
200Team request list
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
GET/v1/teams/{team_id}/team_requestsList team requests of a team
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
team_idpathyesinteger
member_idquerynonumber
Responses
StatusDescriptionSchema
200Team request list
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
POST/v1/teams/{team_id}/team_requestsRequest access to a team
Parameters
NameInRequiredType
team_idpathyesinteger
Responses
StatusDescriptionSchema
201Team request created
400Invalid data
401Invalid API key
403Permission denied
404Not found
409Data conflict
503API under maintenance
DELETE/v1/teams/{team_id}/team_requests/{team_request_id}Cancel or decline a team request
Parameters
NameInRequiredType
team_idpathyesinteger
team_request_idpathyesinteger
send_emailquerynoboolean
Responses
StatusDescriptionSchema
204Team request deleted
401Invalid API key
403Permission denied
404Not found
503API under maintenance
POST/v1/teams/{team_id}/team_requests/{team_request_id}/acceptAccept a team request
Parameters
NameInRequiredType
team_idpathyesinteger
team_request_idpathyesinteger
send_emailquerynoboolean
Request body

application/json

Responses
StatusDescriptionSchema
200Team request accepted
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
Team Sources2
GET/v1/teams/{team_id}/sourcesList team sources
Parameters
NameInRequiredType
cursorquerynostring
per_pagequerynointeger
team_idpathyesinteger
searchquerynostring
last_scan_statusqueryno
healthqueryno
typequeryno
orderingquerynostring
visibilityquerynostring
external_idquerynostring
Responses
StatusDescriptionSchema
200Source list
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance
POST/v1/teams/{team_id}/sourcesUpdate a team perimeter
Parameters
NameInRequiredType
team_idpathyesinteger
Request body

application/json

Responses
StatusDescriptionSchema
204Team perimeter updated
400Invalid data
401Invalid API key
403Permission denied
404Not found
503API under maintenance

Try it

Developer reference

Base URLhttps://api.gitguardian.com
Rate limit

PAT: Free 50 req/min, Business 200 req/min, Enterprise 2000 req/min; Service Account: Business 1000 req/min, Enterprise 10000 req/min

Key endpoints
  • GET/v1/health
  • GET/v1/quotas
  • GET/v1/incidents/secrets
  • GET/v1/sources

Changelog

Spec version1.1.0
Tracked paths131
  • Sep 2026gained an OpenAPI spec and official SDKs

Tracking since Sep 2026. See every tracked change ↗ ·Subscribe with RSS ↗