Skip to main content
POST
CreateFinding

Authorizations

Authorization
string
header
required

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

Authorization
string
header
required

This API uses OAuth2 with the Client Credential flow. Client Credentials must be sent in the BODY, not the headers. For an example of how to implement this, refer to the c1TokenSource.Token() function.

Body

application/json

The CreateFindingRequest message.

This message contains a oneof named target. Only a single field of the following list may be set at a time:

  • identityUserTarget
  • appUserTarget
  • decoyTarget
  • appResourceTarget
  • connectorTarget
  • tenantTarget
annotations
object

Arbitrary metadata attached to the finding; filterable by routing rules.

appResourceTarget
App Resource Target · object | null

AppResourceTarget points at the app resource the finding is about.

appUserTarget
App User Target · object | null

The AppUserTarget message.

connectorTarget
Connector Target · object | null

ConnectorTarget points at the connector that produced this finding.

customSubType
string

User-supplied sub-classification (e.g. "shadow_it"). Part of the dedup identity and filterable via FindingSearch.

decoyTarget
Decoy Target · object | null

DecoyTarget points at the planted decoy that produced this finding. Populated for findings whose subject is the decoy artifact itself (e.g. decoy_credential_used), giving the UI and routing rules a uniform handle to the decoy alongside the finding_type payload.

dedupKeyParts
string[] | null

Caller-supplied dedup identity. The fingerprint is a domain-separated SHA-256 over ("custom", custom_sub_type, dedup_key_parts...) — see pkg/uhash; parts cannot collide regardless of their byte content. Two creates with the same parts collapse onto one finding. Must be non-empty and every part must be non-empty.

description
string

Optional finding body (markdown by convention).

identityUserTarget
Identity User Target · object | null

The IdentityUserTarget message.

remediationDescription
string

Optional remediation guidance, used as the body of any task created from this finding.

severity
enum<string>

Severity of the finding. Must be a defined, non-unspecified value.

Available options:
FINDING_SEVERITY_UNSPECIFIED,
FINDING_SEVERITY_INFO,
FINDING_SEVERITY_LOW,
FINDING_SEVERITY_MEDIUM,
FINDING_SEVERITY_HIGH,
FINDING_SEVERITY_CRITICAL
tenantTarget
Tenant Target · object | null

TenantTarget scopes a finding to the whole tenant. It carries no subject id; the finding's tenant is the scope.

Response

200 - application/json

Successful response

The CreateFindingResponse message.

finding
Finding · object | null

The Finding message.

This message contains a oneof named finding_type. Only a single field of the following list may be set at a time:

  • similarUsernameMatch
  • serviceAccountMisclassification
  • nhiUnowned
  • serviceAccountUnowned
  • decoyCredentialUsed
  • custom
  • connectorAnomalyDetectionDisabled

This message contains a oneof named target. Only a single field of the following list may be set at a time:

  • identityUserTarget
  • appUserTarget
  • decoyTarget
  • appResourceTarget
  • tenantTarget
  • connectorTarget

This message contains a oneof named evidence. Only a single field of the following list may be set at a time:

  • similarUsernameMatchEvidence
  • serviceAccountMisclassificationEvidence