Vai al contenuto principale

GraphQL API

L'API espone l'intera piattaforma tramite un unico endpoint GraphQL. Invia un bearer token in Authorization e l'ID del workspace in X-Tenant.

Endpoint
https://vulnara-gw.rso.dev/graphql
sh
curl https://vulnara-gw.rso.dev/graphql \
  -H "Authorization: Bearer $VULNARA_TOKEN" \
  -H "X-Tenant: $VULNARA_TENANT" \
  -H "Content-Type: application/json" \
  -d '{"query":"{ myUser { id } }"}'

acceptInvitationMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation AcceptInvitation($id: ID!) {
  acceptInvitation(id: $id)
}

acceptRiskMutation

Accept the residual risk. Checked against riskSettings: the caller's role must meet the level's acceptRole. A refusal is RISK_ACCEPTANCE_REFUSED with extensions.reason one of TREATMENT_NOT_ACCEPT, NO_OWNER, NOT_ASSESSED, ROLE_TOO_LOW, EXPIRY_TOO_LATE, EXPIRY_IN_PAST, SAME_PERSON.

Argomenti

NomeTipoDescrizione
idID!
inputAcceptRiskInput!

Restituisce Risk!

Esempio
mutation AcceptRisk($id: ID!, $input: AcceptRiskInput!) {
  acceptRisk(id: $id, input: $input) {
    id
    reference
    title
    scenario
    category
    status
    owner
    treatment
  }
}

acceptTermsMutation

Accept a version of the Platform Terms for yourself. Every member of the tenant accepts individually. The caller's uid and email are recorded; a caller missing either gets CONSENT_ACTOR_UNKNOWN. A version that is no longer current gets TERMS_VERSION_STALE.

Argomenti

NomeTipoDescrizione
versionString!

Restituisce TermsAcceptanceStatus!

Esempio
mutation AcceptTerms($version: String!) {
  acceptTerms(version: $version) {
    currentVersion
    currentUrl
    acceptedVersion
    acceptedBy
    acceptedAt
    isCurrent
  }
}

Disponibile anche come: Comando CLI vulnara accept_terms

addRiskActionMutation

Argomenti

NomeTipoDescrizione
idID!
inputRiskActionInput!

Restituisce RiskAction!

Esempio
mutation AddRiskAction($id: ID!, $input: RiskActionInput!) {
  addRiskAction(id: $id, input: $input) {
    id
    description
    owner
    dueAt
    status
    issueUrl
    completedAt
    createdAt
  }
}

Disponibile anche come: Tool MCP add_risk_action

addWebTargetSignInMethodMutation

Add one sign-in method to a web target, keeping the others; a method in the same slot (same kind, and same name for HEADER and COOKIE) is replaced. At most 10, and Basic, Bearer and an Authorization header all set Authorization, so only one of them: otherwise WEB_TARGET_CREDENTIALS_CONFLICT with extensions.reason BASIC_AND_BEARER, AUTHORIZATION_HEADER_TAKEN or TOO_MANY.

Argomenti

NomeTipoDescrizione
inputAddWebTargetSignInMethodInput!

Restituisce WebTarget!

Esempio
mutation AddWebTargetSignInMethod($input: AddWebTargetSignInMethodInput!) {
  addWebTargetSignInMethod(input: $input) {
    id
    name
    baseUrl
    scheme
    host
    port
    scopePaths
    excludedPaths
  }
}

assessRiskMutation

Argomenti

NomeTipoDescrizione
idID!
inputAssessRiskInput!

Restituisce RiskAssessment!

Esempio
mutation AssessRisk($id: ID!, $input: AssessRiskInput!) {
  assessRisk(id: $id, input: $input) {
    id
    kind
    likelihood
    impact
    score
    level
    rationale
    assessedBy
  }
}

Disponibile anche come: Tool MCP assess_risk

assetContextQuery

Argomenti

NomeTipoDescrizione
targetTypeRiskLinkTarget
targetIds[ID!]

Restituisce [AssetContext!]!

Esempio
query AssetContext($targetType: RiskLinkTarget, $targetIds: [ID!]) {
  assetContext(targetType: $targetType, targetIds: $targetIds) {
    targetType
    targetId
    businessCriticality
    environment
    dataClassification
    owner
    updatedBy
    updatedAt
  }
}

Disponibile anche come: Tool MCP asset_context

associateGitTokenWithGitEntityMutation

Argomenti

NomeTipoDescrizione
inputGitTokenAssociationInput!

Restituisce GitToken!

Esempio
mutation AssociateGitTokenWithGitEntity($input: GitTokenAssociationInput!) {
  associateGitTokenWithGitEntity(input: $input) {
    id
    name
    value
    expiresAt
    flags
    status
    scopes
    createdAt
  }
}

Disponibile anche come: Comando CLI vulnara associate_git_token_with_git_entity

cancelTaskMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation CancelTask($id: ID!) {
  cancelTask(id: $id)
}

Disponibile anche come: Comando CLI vulnara cancel_task · Tool MCP cancel_task

checkGitTokenQuery

Probe the token against its provider, returning validity, the provider's error (when rejected) and the reported expiry. Used by the add-token form to surface why a token was rejected. When a workspace name is supplied and the token is valid, also returns how many repositories the token can see for it (public + private).

Argomenti

NomeTipoDescrizione
valueString!
gitTypeGitType!
nameString

Restituisce GitTokenCheck!

Esempio
query CheckGitToken($value: String!, $gitType: GitType!, $name: String) {
  checkGitToken(value: $value, gitType: $gitType, name: $name) {
    valid
    statusCode
    error
    expiresAt
    publicRepositoryCount
    privateRepositoryCount
    scopes
  }
}

clearDastFindingTriageMutation

Argomenti

NomeTipoDescrizione
webTargetIdID!
matchKeyString!

Restituisce Boolean!

Esempio
mutation ClearDastFindingTriage($webTargetId: ID!, $matchKey: String!) {
  clearDastFindingTriage(webTargetId: $webTargetId, matchKey: $matchKey)
}

clearFindingTriageMutation

Argomenti

NomeTipoDescrizione
repositoryIdID!
matchKeyString!

Restituisce Boolean!

Esempio
mutation ClearFindingTriage($repositoryId: ID!, $matchKey: String!) {
  clearFindingTriage(repositoryId: $repositoryId, matchKey: $matchKey)
}

Disponibile anche come: Tool MCP clear_finding_triage

clearWebTargetCredentialsMutation

Remove a web target's sign-in credentials; later scans run signed out.

Argomenti

NomeTipoDescrizione
inputClearWebTargetCredentialsInput!

Restituisce WebTarget!

Esempio
mutation ClearWebTargetCredentials($input: ClearWebTargetCredentialsInput!) {
  clearWebTargetCredentials(input: $input) {
    id
    name
    baseUrl
    scheme
    host
    port
    scopePaths
    excludedPaths
  }
}

commitScansQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce CommitScanListResult!

Esempio
query CommitScans($list: List) {
  commitScans(list: $list) {
    total
    items {
      id
      scanResultId
      commitHash
      createdAt
      updatedAt
    }
  }
}

Disponibile anche come: Tool MCP commit_scans

confirmEmptyOrderMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation ConfirmEmptyOrder($id: ID!) {
  confirmEmptyOrder(id: $id)
}

createEmptyOrderMutation

Restituisce RevolutOrder!

Esempio
mutation CreateEmptyOrder {
  createEmptyOrder {
    id
  }
}

createGitEntityMutation

Argomenti

NomeTipoDescrizione
inputCreateGitEntityInput!

Restituisce GitEntity!

Esempio
mutation CreateGitEntity($input: CreateGitEntityInput!) {
  createGitEntity(input: $input) {
    __typename
    ... on Organization {
      id
      name
      gitType
      externalId
      webUrl
      htmlUrl
      avatarUrl
      color
    }
    ... on GitUser {
      id
      name
      gitType
      externalId
      webUrl
      htmlUrl
      avatarUrl
      color
    }
  }
}

Disponibile anche come: Comando CLI vulnara create_git_entity

createGitTokenMutation

Argomenti

NomeTipoDescrizione
inputCreateGitTokenInput!

Restituisce GitToken!

Esempio
mutation CreateGitToken($input: CreateGitTokenInput!) {
  createGitToken(input: $input) {
    id
    name
    value
    expiresAt
    flags
    status
    scopes
    createdAt
  }
}

Disponibile anche come: Comando CLI vulnara create_git_token

createInvoiceDownloadUrlMutation

Argomenti

NomeTipoDescrizione
invoiceIdID!

Restituisce InvoiceDownload!

Esempio
mutation CreateInvoiceDownloadUrl($invoiceId: ID!) {
  createInvoiceDownloadUrl(invoiceId: $invoiceId) {
    url
    filename
    tenant
    contentType
  }
}

createNetworkMutation

Argomenti

NomeTipoDescrizione
inputCreateNetworkInput!

Restituisce Network!

Esempio
mutation CreateNetwork($input: CreateNetworkInput!) {
  createNetwork(input: $input) {
    id
    name
    network
    networkType
    tenant
    securityScore
    createdAt
    updatedAt
  }
}

Disponibile anche come: Comando CLI vulnara create_network

createNotificationScopeMutation

Argomenti

NomeTipoDescrizione
inputCreateNotificationScopeInput!

Restituisce NotificationScope!

Esempio
mutation CreateNotificationScope($input: CreateNotificationScopeInput!) {
  createNotificationScope(input: $input) {
    id
    channelIds
    channelType
    scopes
    isActive
    status
    headers {
      name
      value
    }
    template
  }
}

Disponibile anche come: Comando CLI vulnara create_notification_scope

createRepositoryMutation

Argomenti

NomeTipoDescrizione
inputCreateRepositoryInput!

Restituisce Repository!

Esempio
mutation CreateRepository($input: CreateRepositoryInput!) {
  createRepository(input: $input) {
    id
    gitEntityId
    repositoryName
    private
    securityScore
    programmingLanguage
    repositorySize
    numberOfBranches
  }
}

Disponibile anche come: Comando CLI vulnara create_repository

createRiskMutation

Argomenti

NomeTipoDescrizione
inputCreateRiskInput!

Restituisce Risk!

Esempio
mutation CreateRisk($input: CreateRiskInput!) {
  createRisk(input: $input) {
    id
    reference
    title
    scenario
    category
    status
    owner
    treatment
  }
}

Disponibile anche come: Tool MCP create_risk

createScanScheduleMutation

Argomenti

NomeTipoDescrizione
inputCreateScanScheduleInput!

Restituisce ScanSchedule!

Esempio
mutation CreateScanSchedule($input: CreateScanScheduleInput!) {
  createScanSchedule(input: $input) {
    id
    action
    repositoryId
    gitEntityId
    webTargetId
    networkId
    branch
    category
  }
}

Disponibile anche come: Comando CLI vulnara create_scan_schedule

createServiceAccountMutation

Argomenti

NomeTipoDescrizione
inputCreateServiceAccountInput!

Restituisce CreateServiceAccountPayload!

Esempio
mutation CreateServiceAccount($input: CreateServiceAccountInput!) {
  createServiceAccount(input: $input) {
    serviceAccount {
      id
      name
      isActive
      expiresAt
    }
  }
}

Disponibile anche come: Comando CLI vulnara create_service_account

createTenantMutation

Argomenti

NomeTipoDescrizione
inputCreateTenantInput!

Restituisce Tenant!

Esempio
mutation CreateTenant($input: CreateTenantInput!) {
  createTenant(input: $input) {
    id
    isPaying
    members {
      id
      roles
      aiAccess
    }
  }
}

Disponibile anche come: Comando CLI vulnara create_tenant

createWebTargetMutation

Argomenti

NomeTipoDescrizione
inputCreateWebTargetInput!

Restituisce WebTarget!

Esempio
mutation CreateWebTarget($input: CreateWebTargetInput!) {
  createWebTarget(input: $input) {
    id
    name
    baseUrl
    scheme
    host
    port
    scopePaths
    excludedPaths
  }
}

Disponibile anche come: Comando CLI vulnara create_web_target

dashboardAnalyticsQuery

Argomenti

NomeTipoDescrizione
daysInt

Restituisce DashboardAnalytics!

Esempio
query DashboardAnalytics($days: Int) {
  dashboardAnalytics(days: $days) {
    days
    generatedAt
    lastScanAt
    averageSecurityScore
    previousAverageSecurityScore
    severityCounts {
      severity
      count
    }
    previousSeverityCounts {
      severity
      count
    }
    exposure {
      total
      previousTotal
      newFindings
      resolvedFindings
      codeFindings
      dependencyFindings
      corroboratedFindings
      falsePositives
    }
  }
}

Disponibile anche come: Tool MCP dashboard_analytics

dastFindingQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce DastFinding!

Esempio
query DastFinding($id: ID!) {
  dastFinding(id: $id) {
    id
    scanResultId
    templateId
    name
    severity
    category
    matchedAt
    host
  }
}

Disponibile anche come: Comando CLI vulnara dast_finding · Tool MCP dast_finding

dastFindingsQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce DastFindingListResult!

Esempio
query DastFindings($list: List) {
  dastFindings(list: $list) {
    total
    items {
      id
      scanResultId
      templateId
      name
      severity
      category
      matchedAt
      host
    }
  }
}

Disponibile anche come: Comando CLI vulnara dast_findings · Tool MCP dast_findings

dastFindingTriageQuery

Argomenti

NomeTipoDescrizione
webTargetIdID!

Restituisce [DastFindingTriage!]!

Esempio
query DastFindingTriage($webTargetId: ID!) {
  dastFindingTriage(webTargetId: $webTargetId) {
    id
    webTargetId
    matchKey
    state
    justification
    response
    priority
    reason
  }
}

Disponibile anche come: Comando CLI vulnara dast_finding_triage · Tool MCP dast_finding_triage

dastFindingTriageHistoryQuery

Every decision ever taken on this web target's findings, newest first.

Argomenti

NomeTipoDescrizione
webTargetIdID!
matchKeyString

Restituisce [DastFindingTriageEvent!]!

Esempio
query DastFindingTriageHistory($webTargetId: ID!, $matchKey: String) {
  dastFindingTriageHistory(webTargetId: $webTargetId, matchKey: $matchKey) {
    id
    webTargetId
    matchKey
    action
    state
    justification
    response
    priority
  }
}

Disponibile anche come: Comando CLI vulnara dast_finding_triage_history · Tool MCP dast_finding_triage_history

declineInvitationMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DeclineInvitation($id: ID!) {
  declineInvitation(id: $id)
}

deleteGitEntityMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DeleteGitEntity($id: ID!) {
  deleteGitEntity(id: $id)
}

Disponibile anche come: Comando CLI vulnara delete_git_entity

deleteGitTokenMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DeleteGitToken($id: ID!) {
  deleteGitToken(id: $id)
}

Disponibile anche come: Comando CLI vulnara delete_git_token

deleteInvitationMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DeleteInvitation($id: ID!) {
  deleteInvitation(id: $id)
}

deleteNetworkMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DeleteNetwork($id: ID!) {
  deleteNetwork(id: $id)
}

Disponibile anche come: Comando CLI vulnara delete_network

deleteNetworkScanResultMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DeleteNetworkScanResult($id: ID!) {
  deleteNetworkScanResult(id: $id)
}

Disponibile anche come: Comando CLI vulnara delete_network_scan_result

deleteNotificationScopeMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DeleteNotificationScope($id: ID!) {
  deleteNotificationScope(id: $id)
}

Disponibile anche come: Comando CLI vulnara delete_notification_scope

deletePaymentMethodMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DeletePaymentMethod($id: ID!) {
  deletePaymentMethod(id: $id)
}

deleteRepositoryMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DeleteRepository($id: ID!) {
  deleteRepository(id: $id)
}

Disponibile anche come: Comando CLI vulnara delete_repository

deleteRiskMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DeleteRisk($id: ID!) {
  deleteRisk(id: $id)
}

deleteRiskActionMutation

Argomenti

NomeTipoDescrizione
idID!
actionIdID!

Restituisce Boolean!

Esempio
mutation DeleteRiskAction($id: ID!, $actionId: ID!) {
  deleteRiskAction(id: $id, actionId: $actionId)
}

deleteScanResultMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DeleteScanResult($id: ID!) {
  deleteScanResult(id: $id)
}

Disponibile anche come: Comando CLI vulnara delete_scan_result

deleteScanScheduleMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DeleteScanSchedule($id: ID!) {
  deleteScanSchedule(id: $id)
}

Disponibile anche come: Comando CLI vulnara delete_scan_schedule

deleteServiceAccountMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DeleteServiceAccount($id: ID!) {
  deleteServiceAccount(id: $id)
}

Disponibile anche come: Comando CLI vulnara delete_service_account

deleteTenantMemberMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DeleteTenantMember($id: ID!) {
  deleteTenantMember(id: $id)
}

deleteWebTargetMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DeleteWebTarget($id: ID!) {
  deleteWebTarget(id: $id)
}

Disponibile anche come: Comando CLI vulnara delete_web_target

deprovisionNetworkAgentMutation

Argomenti

NomeTipoDescrizione
inputDeprovisionNetworkAgentInput!

Restituisce Boolean!

Esempio
mutation DeprovisionNetworkAgent($input: DeprovisionNetworkAgentInput!) {
  deprovisionNetworkAgent(input: $input)
}

dismissTaskMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation DismissTask($id: ID!) {
  dismissTask(id: $id)
}

Disponibile anche come: Comando CLI vulnara dismiss_task · Tool MCP dismiss_task

dissociateGitTokenWithGitEntityMutation

Argomenti

NomeTipoDescrizione
inputGitTokenAssociationInput!

Restituisce Boolean!

Esempio
mutation DissociateGitTokenWithGitEntity($input: GitTokenAssociationInput!) {
  dissociateGitTokenWithGitEntity(input: $input)
}

Disponibile anche come: Comando CLI vulnara dissociate_git_token_with_git_entity

dockerScanToolQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce DockerScanTool!

Esempio
query DockerScanTool($id: ID!) {
  dockerScanTool(id: $id) {
    id
    categories
    enabled
  }
}

Disponibile anche come: Tool MCP docker_scan_tool

dockerScanToolsQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce DockerScanToolListResult!

Esempio
query DockerScanTools($list: List) {
  dockerScanTools(list: $list) {
    total
    items {
      id
      categories
      enabled
    }
  }
}

Disponibile anche come: Comando CLI vulnara docker_scan_tools · Tool MCP docker_scan_tools

downgradeToFreeMutation

Restituisce Boolean!

Esempio
mutation DowngradeToFree {
  downgradeToFree
}

exploitedFindingsQuery

KEV first, then by EPSS. epssMin defaults to 0.1.

Argomenti

NomeTipoDescrizione
epssMinFloat
limitInt

Restituisce ExploitedFindingList!

Esempio
query ExploitedFindings($epssMin: Float, $limit: Int) {
  exploitedFindings(epssMin: $epssMin, limit: $limit) {
    items {
      targetType
      targetId
      targetName
      findingType
      matchKey
      title
      installedVersion
      fixedVersion
    }
    total
    kevCount
    epssMin
    kevSyncedAt
    epssSyncedAt
    epssDate
  }
}

Disponibile anche come: Tool MCP exploited_findings

fetchRepositoriesMutation

Argomenti

NomeTipoDescrizione
inputFetchRepositoriesInput!

Restituisce Boolean!

Esempio
mutation FetchRepositories($input: FetchRepositoriesInput!) {
  fetchRepositories(input: $input)
}

Disponibile anche come: Comando CLI vulnara fetch_repositories

findingCorroborationQuery

Cross-tool agreement for every secret found in a repository.

Argomenti

NomeTipoDescrizione
repositoryIdID!

Restituisce FindingCorroborationListResult!

Esempio
query FindingCorroboration($repositoryId: ID!) {
  findingCorroboration(repositoryId: $repositoryId) {
    total
    items {
      id
      matchHash
      toolCount
      severity
    }
  }
}

Disponibile anche come: Comando CLI vulnara finding_corroboration · Tool MCP finding_corroboration

findingTriageQuery

Decisions in force on a repository's findings. With matchKey, only that finding's - what a finding's drawer needs.

Argomenti

NomeTipoDescrizione
repositoryIdID!
matchKeyString

Restituisce [FindingTriage!]!

Esempio
query FindingTriage($repositoryId: ID!, $matchKey: String) {
  findingTriage(repositoryId: $repositoryId, matchKey: $matchKey) {
    id
    repositoryId
    matchKey
    findingType
    state
    justification
    response
    priority
  }
}

Disponibile anche come: Comando CLI vulnara finding_triage · Tool MCP finding_triage

findingTriageHistoryQuery

Every decision ever taken on this repository's findings, newest first.

Argomenti

NomeTipoDescrizione
repositoryIdID!
matchKeyString

Restituisce [FindingTriageEvent!]!

Esempio
query FindingTriageHistory($repositoryId: ID!, $matchKey: String) {
  findingTriageHistory(repositoryId: $repositoryId, matchKey: $matchKey) {
    id
    repositoryId
    matchKey
    action
    state
    justification
    response
    priority
  }
}

Disponibile anche come: Tool MCP finding_triage_history

gitEntitiesQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce GitEntityListResult!

Esempio
query GitEntities($list: List) {
  gitEntities(list: $list) {
    total
  }
}

Disponibile anche come: Comando CLI vulnara git_entities · Tool MCP git_entities

gitEntityQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce GitEntity!

Esempio
query GitEntity($id: ID!) {
  gitEntity(id: $id) {
    __typename
    ... on Organization {
      id
      name
      gitType
      externalId
      webUrl
      htmlUrl
      avatarUrl
      color
    }
    ... on GitUser {
      id
      name
      gitType
      externalId
      webUrl
      htmlUrl
      avatarUrl
      color
    }
  }
}

Disponibile anche come: Comando CLI vulnara git_entity · Tool MCP git_entity

gitEntityProvidersQuery

Providers on which a bare handle resolves to an org/user/group. Lets the add-workspace form infer the provider automatically and only ask the user to choose when the same handle exists on more than one provider.

Argomenti

NomeTipoDescrizione
nameString!

Restituisce [GitType!]!

Esempio
query GitEntityProviders($name: String!) {
  gitEntityProviders(name: $name)
}

Disponibile anche come: Comando CLI vulnara git_entity_providers

gitEntityRepositoryCountQuery

Argomenti

NomeTipoDescrizione
nameString!
gitTypeGitType!

Restituisce Int

Esempio
query GitEntityRepositoryCount($name: String!, $gitType: GitType!) {
  gitEntityRepositoryCount(name: $name, gitType: $gitType)
}

gitTokenQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce GitToken!

Esempio
query GitToken($id: ID!) {
  gitToken(id: $id) {
    id
    name
    value
    expiresAt
    flags
    status
    scopes
    createdAt
  }
}

Disponibile anche come: Comando CLI vulnara git_token

gitTokenExpirationQuery

The token's own expiry as reported by its git provider, or null if the provider doesn't expose one or the token couldn't be checked. Lets the UI hide the manual "expires at" field when the token reports it itself.

Argomenti

NomeTipoDescrizione
valueString!
gitTypeGitType!

Restituisce DateTime

Esempio
query GitTokenExpiration($value: String!, $gitType: GitType!) {
  gitTokenExpiration(value: $value, gitType: $gitType)
}

gitTokensQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce GitTokenListResult!

Esempio
query GitTokens($list: List) {
  gitTokens(list: $list) {
    total
    items {
      id
      name
      value
      expiresAt
      flags
      status
      scopes
      createdAt
    }
  }
}

Disponibile anche come: Comando CLI vulnara git_tokens

gitUserQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce GitEntity!

Esempio
query GitUser($id: ID!) {
  gitUser(id: $id) {
    __typename
    ... on Organization {
      id
      name
      gitType
      externalId
      webUrl
      htmlUrl
      avatarUrl
      color
    }
    ... on GitUser {
      id
      name
      gitType
      externalId
      webUrl
      htmlUrl
      avatarUrl
      color
    }
  }
}

Disponibile anche come: Tool MCP git_user

gitUsersQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce GitEntityListResult!

Esempio
query GitUsers($list: List) {
  gitUsers(list: $list) {
    total
  }
}

Disponibile anche come: Tool MCP git_users

invitationQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce Invitation

Esempio
query Invitation($id: ID!) {
  invitation(id: $id) {
    id
    email
    tenantName
  }
}

invitationsQuery

Restituisce [Invitation!]!

Esempio
query Invitations {
  invitations {
    id
    email
    tenantName
  }
}

inviteTenantMemberMutation

Argomenti

NomeTipoDescrizione
inputInviteTeamMemberInput!

Restituisce Boolean!

Esempio
mutation InviteTenantMember($input: InviteTeamMemberInput!) {
  inviteTenantMember(input: $input)
}

invoiceQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce Invoice!

Esempio
query Invoice($id: ID!) {
  invoice(id: $id) {
    id
    invoiceNumber
    date
    dueDate
    status
    total
    currency
  }
}

invoicesQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce InvoiceListResult!

Esempio
query Invoices($list: List) {
  invoices(list: $list) {
    total
    items {
      id
      invoiceNumber
      date
      dueDate
      status
      total
      currency
    }
  }
}

linkRiskMutation

Argomenti

NomeTipoDescrizione
idID!
inputLinkRiskInput!

Restituisce RiskLink!

Esempio
mutation LinkRisk($id: ID!, $input: LinkRiskInput!) {
  linkRisk(id: $id, input: $input) {
    id
    targetType
    targetId
    matchKey
    findingType
    title
    severity
    createdBy
  }
}

Disponibile anche come: Tool MCP link_risk

markAllNotificationsReadMutation

Restituisce Boolean!

Esempio
mutation MarkAllNotificationsRead {
  markAllNotificationsRead
}

Disponibile anche come: Comando CLI vulnara mark_all_notifications_read

markNotificationDeliveredMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation MarkNotificationDelivered($id: ID!) {
  markNotificationDelivered(id: $id)
}

Disponibile anche come: Comando CLI vulnara mark_notification_delivered

markNotificationsReadMutation

Argomenti

NomeTipoDescrizione
ids[ID!]!

Restituisce Boolean!

Esempio
mutation MarkNotificationsRead($ids: [ID!]!) {
  markNotificationsRead(ids: $ids)
}

Disponibile anche come: Comando CLI vulnara mark_notifications_read

myAiAccessQuery

The caller's own AI write access in the current tenant.

Restituisce AiAccessLevel!

Esempio
query MyAiAccess {
  myAiAccess
}

Disponibile anche come: Tool MCP my_ai_access

myUserQuery

Restituisce MyUser

Esempio
query MyUser {
  myUser {
    id
    email
    name
    username
    tenants {
      id
      isPaying
    }
    preferences {
      theme
      dateTimeFormat
      repositoriesView
    }
  }
}

Disponibile anche come: Tool MCP my_user

networkQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce Network!

Esempio
query Network($id: ID!) {
  network(id: $id) {
    id
    name
    network
    networkType
    tenant
    securityScore
    createdAt
    updatedAt
  }
}

Disponibile anche come: Comando CLI vulnara network · Tool MCP network

networksQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce NetworkListResult!

Esempio
query Networks($list: List) {
  networks(list: $list) {
    total
    items {
      id
      name
      network
      networkType
      tenant
      securityScore
      createdAt
      updatedAt
    }
  }
}

Disponibile anche come: Comando CLI vulnara networks · Tool MCP networks

networkScanFindingQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce NetworkScanFinding!

Esempio
query NetworkScanFinding($id: ID!) {
  networkScanFinding(id: $id) {
    id
    scanResultId
    host
    hostname
    hostnameType
    protocol
    port
    serviceName
  }
}

Disponibile anche come: Tool MCP network_scan_finding

networkScanFindingsQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce NetworkScanFindingListResult!

Esempio
query NetworkScanFindings($list: List) {
  networkScanFindings(list: $list) {
    total
    items {
      id
      scanResultId
      host
      hostname
      hostnameType
      protocol
      port
      serviceName
    }
  }
}

Disponibile anche come: Comando CLI vulnara network_scan_findings · Tool MCP network_scan_findings

networkScanResultQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce NetworkScanResult!

Esempio
query NetworkScanResult($id: ID!) {
  networkScanResult(id: $id) {
    id
    networkId
    status
    createdAt
    updatedAt
    scanTime
    network {
      id
      name
      network
      networkType
      tenant
      securityScore
      createdAt
      updatedAt
    }
  }
}

Disponibile anche come: Comando CLI vulnara network_scan_result · Tool MCP network_scan_result

networkScanResultsQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce NetworkScanResultListResult!

Esempio
query NetworkScanResults($list: List) {
  networkScanResults(list: $list) {
    total
    items {
      id
      networkId
      status
      createdAt
      updatedAt
      scanTime
    }
  }
}

Disponibile anche come: Comando CLI vulnara network_scan_results · Tool MCP network_scan_results

notificationsQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce NotificationList!

Esempio
query Notifications($list: List) {
  notifications(list: $list) {
    items {
      id
      type
      eventType
      data
      read
      createdAt
    }
    total
  }
}

Disponibile anche come: Comando CLI vulnara notifications · Tool MCP notifications

notificationsSubscription

Restituisce Notification!

Esempio
subscription Notifications {
  notifications {
    id
    type
    eventType
    data
    read
    createdAt
  }
}

Disponibile anche come: Tool MCP notifications

notificationScopeQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce NotificationScope!

Esempio
query NotificationScope($id: ID!) {
  notificationScope(id: $id) {
    id
    channelIds
    channelType
    scopes
    isActive
    status
    headers {
      name
      value
    }
    template
  }
}

Disponibile anche come: Comando CLI vulnara notification_scope · Tool MCP notification_scope

notificationScopesQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce NotificationScopeListResult!

Esempio
query NotificationScopes($list: List) {
  notificationScopes(list: $list) {
    total
    items {
      id
      channelIds
      channelType
      scopes
      isActive
      status
      template
    }
  }
}

Disponibile anche come: Comando CLI vulnara notification_scopes · Tool MCP notification_scopes

organizationQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce GitEntity!

Esempio
query Organization($id: ID!) {
  organization(id: $id) {
    __typename
    ... on Organization {
      id
      name
      gitType
      externalId
      webUrl
      htmlUrl
      avatarUrl
      color
    }
    ... on GitUser {
      id
      name
      gitType
      externalId
      webUrl
      htmlUrl
      avatarUrl
      color
    }
  }
}

Disponibile anche come: Tool MCP organization

organizationsQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce GitEntityListResult!

Esempio
query Organizations($list: List) {
  organizations(list: $list) {
    total
  }
}

Disponibile anche come: Tool MCP organizations

paymentMethodQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce PaymentMethod!

Esempio
query PaymentMethod($id: ID!) {
  paymentMethod(id: $id) {
    id
    default
    lastFour
    brand
    expiryMonth
    expiryYear
    cardholderName
    expired
  }
}

paymentMethodsQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce PaymentMethodListResult!

Esempio
query PaymentMethods($list: List) {
  paymentMethods(list: $list) {
    total
    items {
      id
      default
      lastFour
      brand
      expiryMonth
      expiryYear
      cardholderName
      expired
    }
  }
}

plansQuery

Restituisce [Plan!]!

Esempio
query Plans {
  plans {
    id
    availableGitScanMinutes
    availableNetworkScanMinutes
    maxRepositories
    maxNetworks
    maxEmails
    pricePerGitScanMinute
    pricePerNetworkScanMinute
  }
}

programmingLanguagesQuery

Restituisce [String!]

Esempio
query ProgrammingLanguages {
  programmingLanguages
}

Disponibile anche come: Comando CLI vulnara programming_languages · Tool MCP programming_languages

promoGrantsQuery

Every grant this tenant holds, including ones that have run out.

Restituisce [PromoGrant!]!

Esempio
query PromoGrants {
  promoGrants {
    id
    code
    startsAt
    endsAt
    gitScanMinutes
    networkScanMinutes
    maxRepositories
    maxNetworks
  }
}

provisionNetworkAgentMutation

Argomenti

NomeTipoDescrizione
inputProvisionNetworkAgentInput!

Restituisce ProvisionNetworkAgentPayload!

Esempio
mutation ProvisionNetworkAgent($input: ProvisionNetworkAgentInput!) {
  provisionNetworkAgent(input: $input) {
    agent {
      id
      status
      lastSeenAt
      createdAt
      routeApproved
    }
    preauthKey
    installCommand
  }
}

redeemPromoCodeMutation

Redeem a code for this tenant. ADMIN because redeeming changes what the tenant may spend, which is the same authority as changing the plan. A refusal arrives as PROMO_CODE_UNKNOWN, PROMO_CODE_INACTIVE, PROMO_CODE_EXPIRED, PROMO_CODE_FULLY_CLAIMED or PROMO_CODE_ALREADY_REDEEMED. They are distinct because each tells the person typing the code something different about what to do next.

Argomenti

NomeTipoDescrizione
codeString!

Restituisce PromoGrant!

Esempio
mutation RedeemPromoCode($code: String!) {
  redeemPromoCode(code: $code) {
    id
    code
    startsAt
    endsAt
    gitScanMinutes
    networkScanMinutes
    maxRepositories
    maxNetworks
  }
}

registerPushSubscriptionMutation

Argomenti

NomeTipoDescrizione
inputPushSubscriptionInput!

Restituisce Boolean!

Esempio
mutation RegisterPushSubscription($input: PushSubscriptionInput!) {
  registerPushSubscription(input: $input)
}

Disponibile anche come: Comando CLI vulnara register_push_subscription

remediateDependencyFindingMutation

Ask an AI agent to upgrade the library behind one dependency finding, covering every advisory for it in that scan. Same issue, pull request and errors as remediateScanFinding.

Argomenti

NomeTipoDescrizione
inputRemediateFindingInput!

Restituisce Boolean!

Esempio
mutation RemediateDependencyFinding($input: RemediateFindingInput!) {
  remediateDependencyFinding(input: $input)
}

remediateScanFindingMutation

Ask an AI agent to fix one code finding: its issue is opened or reused, and the fix arrives as a pull request on the finding once ready. Fails with PULL_REQUEST_OPEN while one is open and NO_GIT_TOKEN when no token can open one on the repository.

Argomenti

NomeTipoDescrizione
inputRemediateFindingInput!

Restituisce Boolean!

Esempio
mutation RemediateScanFinding($input: RemediateFindingInput!) {
  remediateScanFinding(input: $input)
}

remediationTemplateQuery

Restituisce RemediationTemplate!

Esempio
query RemediationTemplate {
  remediationTemplate {
    codeIssueBody
    dependencyIssueBody
    pullRequestBody
  }
}

Disponibile anche come: Comando CLI vulnara remediation_template · Tool MCP remediation_template

removeWebTargetSignInMethodMutation

Remove one sign-in method from a web target, keeping the others.

Argomenti

NomeTipoDescrizione
webTargetIdID!
methodIdID!

Restituisce WebTarget!

Esempio
mutation RemoveWebTargetSignInMethod($webTargetId: ID!, $methodId: ID!) {
  removeWebTargetSignInMethod(webTargetId: $webTargetId, methodId: $methodId) {
    id
    name
    baseUrl
    scheme
    host
    port
    scopePaths
    excludedPaths
  }
}

repositoriesQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce RepositoryListResult!

Esempio
query Repositories($list: List) {
  repositories(list: $list) {
    total
    items {
      id
      gitEntityId
      repositoryName
      private
      securityScore
      programmingLanguage
      repositorySize
      numberOfBranches
    }
  }
}

Disponibile anche come: Comando CLI vulnara repositories · Tool MCP repositories

repositoryQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce Repository!

Esempio
query Repository($id: ID!) {
  repository(id: $id) {
    id
    gitEntityId
    repositoryName
    private
    securityScore
    programmingLanguage
    repositorySize
    numberOfBranches
  }
}

Disponibile anche come: Comando CLI vulnara repository · Tool MCP repository

repositoryBranchesQuery

Branch names for a repository, read from its git provider, so the scan form can offer real branches instead of free-text input.

Argomenti

NomeTipoDescrizione
repositoryIdID!

Restituisce [String!]!

Esempio
query RepositoryBranches($repositoryId: ID!) {
  repositoryBranches(repositoryId: $repositoryId)
}

Disponibile anche come: Comando CLI vulnara repository_branches · Tool MCP repository_branches

repositoryDependencyScanFindingGroupFacetCountsQuery

Severity and issue-state counts of the tenant-wide repositoryDependencyScanFindingGroups.

Argomenti

NomeTipoDescrizione
listList

Restituisce FindingFacetCounts!

Esempio
query RepositoryDependencyScanFindingGroupFacetCounts($list: List) {
  repositoryDependencyScanFindingGroupFacetCounts(list: $list) {
    severity {
      severity
      count
    }
    issueState {
      issueState
      count
    }
  }
}

Disponibile anche come: Tool MCP repository_dependency_scan_finding_group_facet_counts

repositoryDependencyScanFindingGroupsQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce RepositoryDependencyScanFindingGroupListResult!

Esempio
query RepositoryDependencyScanFindingGroups($list: List) {
  repositoryDependencyScanFindingGroups(list: $list) {
    total
    items {
      id
      dependency
      repositoryId
      severity
      installedVersion
      occurrences
      issueUrl
      issueStatus
    }
  }
}

Disponibile anche come: Comando CLI vulnara repository_dependency_scan_finding_groups · Tool MCP repository_dependency_scan_finding_groups

repositoryDependencyScanFindingsQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce RepositoryDependencyScanFindingListResult!

Esempio
query RepositoryDependencyScanFindings($list: List) {
  repositoryDependencyScanFindings(list: $list) {
    total
    items {
      id
      commitScanId
      createdAt
      updatedAt
      severity
      category
      vulnerability
      dependency
    }
  }
}

Disponibile anche come: Comando CLI vulnara repository_dependency_scan_findings · Tool MCP repository_dependency_scan_findings

requestNSFConsultationMutation

Argomenti

NomeTipoDescrizione
inputNSFConsultation!

Restituisce Boolean!

Esempio
mutation RequestNSFConsultation($input: NSFConsultation!) {
  requestNSFConsultation(input: $input)
}

Disponibile anche come: Comando CLI vulnara request_nsf_consultation

requestRSFConsultationMutation

Argomenti

NomeTipoDescrizione
inputRSFConsultation!

Restituisce Boolean!

Esempio
mutation RequestRSFConsultation($input: RSFConsultation!) {
  requestRSFConsultation(input: $input)
}

Disponibile anche come: Comando CLI vulnara request_rsf_consultation

retryPaymentMutation

Argomenti

NomeTipoDescrizione
invoiceIdID!
paymentMethodIdID!

Restituisce Invoice!

Esempio
mutation RetryPayment($invoiceId: ID!, $paymentMethodId: ID!) {
  retryPayment(invoiceId: $invoiceId, paymentMethodId: $paymentMethodId) {
    id
    invoiceNumber
    date
    dueDate
    status
    total
    currency
  }
}

revealScanFindingMatchMutation

The audited path to the raw secret behind a masked ScanFinding/ScanFindingGroup/ ScanFindingMatchGroup.match. Every call is logged with the caller, repository and match hash.

Argomenti

NomeTipoDescrizione
repositoryIdID!
matchHashString!

Restituisce String!

Esempio
mutation RevealScanFindingMatch($repositoryId: ID!, $matchHash: String!) {
  revealScanFindingMatch(repositoryId: $repositoryId, matchHash: $matchHash)
}

reviewRiskMutation

Argomenti

NomeTipoDescrizione
idID!
inputReviewRiskInput!

Restituisce Risk!

Esempio
mutation ReviewRisk($id: ID!, $input: ReviewRiskInput!) {
  reviewRisk(id: $id, input: $input) {
    id
    reference
    title
    scenario
    category
    status
    owner
    treatment
  }
}

Disponibile anche come: Tool MCP review_risk

revokeRiskAcceptanceMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Risk!

Esempio
mutation RevokeRiskAcceptance($id: ID!) {
  revokeRiskAcceptance(id: $id) {
    id
    reference
    title
    scenario
    category
    status
    owner
    treatment
  }
}

riskQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce Risk!

Esempio
query Risk($id: ID!) {
  risk(id: $id) {
    id
    reference
    title
    scenario
    category
    status
    owner
    treatment
  }
}

Disponibile anche come: Tool MCP risk

riskRegisterExportQuery

Restituisce RiskExport!

Esempio
query RiskRegisterExport {
  riskRegisterExport {
    contentType
    content
  }
}

Disponibile anche come: Tool MCP risk_register_export

risksQuery

Argomenti

NomeTipoDescrizione
filterRiskFilter
skipInt
limitInt

Restituisce RiskList!

Esempio
query Risks($filter: RiskFilter, $skip: Int, $limit: Int) {
  risks(filter: $filter, skip: $skip, limit: $limit) {
    items {
      id
      reference
      title
      scenario
      category
      status
      owner
      treatment
    }
    total
  }
}

Disponibile anche come: Tool MCP risks

riskSettingsQuery

Restituisce RiskSettings!

Esempio
query RiskSettings {
  riskSettings {
    levelCriteria {
      level
      acceptRole
      maxDays
      reviewDays
    }
    requireDistinctAcceptor
    requireAcceptedRiskForWillNotFix
    autoDraftExploitedRisks
    updatedBy
    updatedAt
  }
}

Disponibile anche come: Tool MCP risk_settings

riskSummaryQuery

Restituisce RiskSummary!

Esempio
query RiskSummary {
  riskSummary {
    total
    open
    byStatus {
      status
      count
    }
    byLevel {
      level
      count
    }
    inherentMatrix {
      likelihood
      impact
      count
    }
    residualMatrix {
      likelihood
      impact
      count
    }
    reviewOverdue
    acceptancesExpiring
  }
}

Disponibile anche come: Tool MCP risk_summary

saveAssetContextMutation

Argomenti

NomeTipoDescrizione
inputAssetContextInput!

Restituisce AssetContext!

Esempio
mutation SaveAssetContext($input: AssetContextInput!) {
  saveAssetContext(input: $input) {
    targetType
    targetId
    businessCriticality
    environment
    dataClassification
    owner
    updatedBy
    updatedAt
  }
}

Disponibile anche come: Tool MCP save_asset_context

saveRiskSettingsMutation

Argomenti

NomeTipoDescrizione
inputRiskSettingsInput!

Restituisce RiskSettings!

Esempio
mutation SaveRiskSettings($input: RiskSettingsInput!) {
  saveRiskSettings(input: $input) {
    levelCriteria {
      level
      acceptRole
      maxDays
      reviewDays
    }
    requireDistinctAcceptor
    requireAcceptedRiskForWillNotFix
    autoDraftExploitedRisks
    updatedBy
    updatedAt
  }
}

scanCategoriesQuery

Restituisce [ScanCategory!]!

Esempio
query ScanCategories {
  scanCategories
}

Disponibile anche come: Comando CLI vulnara scan_categories · Tool MCP scan_categories

scanFindingGroupsQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce ScanFindingGroupListResult!

Esempio
query ScanFindingGroups($list: List) {
  scanFindingGroups(list: $list) {
    total
    items {
      id
      fingerprint
      matchHash
      matchedByToolCount
      file
      severity
      confidence
      match
    }
  }
}

Disponibile anche come: Comando CLI vulnara scan_finding_groups · Tool MCP scan_finding_groups

scanFindingMatchGroupFacetCountsQuery

Severity and issue-state counts of scanFindingMatchGroups under the same filters.

Argomenti

NomeTipoDescrizione
listList

Restituisce FindingFacetCounts!

Esempio
query ScanFindingMatchGroupFacetCounts($list: List) {
  scanFindingMatchGroupFacetCounts(list: $list) {
    severity {
      severity
      count
    }
    issueState {
      issueState
      count
    }
  }
}

Disponibile anche come: Tool MCP scan_finding_match_group_facet_counts

scanFindingMatchGroupsQuery

Findings grouped by cross-tool identity, one row per real secret.

Argomenti

NomeTipoDescrizione
listList

Restituisce ScanFindingMatchGroupListResult!

Esempio
query ScanFindingMatchGroups($list: List) {
  scanFindingMatchGroups(list: $list) {
    total
    items {
      id
      matchHash
      file
      line
      severity
      confidence
      match
      occurrences
    }
  }
}

Disponibile anche come: Comando CLI vulnara scan_finding_match_groups · Tool MCP scan_finding_match_groups

scanFindingsQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce ScanFindingListResult!

Esempio
query ScanFindings($list: List) {
  scanFindings(list: $list) {
    total
    items {
      id
      commitScanId
      createdAt
      updatedAt
      line
      file
      severity
      confidence
    }
  }
}

Disponibile anche come: Comando CLI vulnara scan_findings · Tool MCP scan_findings

scanResultQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce ScanResult!

Esempio
query ScanResult($id: ID!) {
  scanResult(id: $id) {
    id
    repositoryId
    scanType
    dockerScanToolId
    status
    createdAt
    updatedAt
    scanTime
  }
}

Disponibile anche come: Comando CLI vulnara scan_result · Tool MCP scan_result

scanResultsQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce ScanResultListResult!

Esempio
query ScanResults($list: List) {
  scanResults(list: $list) {
    total
    items {
      id
      repositoryId
      scanType
      dockerScanToolId
      status
      createdAt
      updatedAt
      scanTime
    }
  }
}

Disponibile anche come: Comando CLI vulnara scan_results · Tool MCP scan_results

scanScheduleQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce ScanSchedule!

Esempio
query ScanSchedule($id: ID!) {
  scanSchedule(id: $id) {
    id
    action
    repositoryId
    gitEntityId
    webTargetId
    networkId
    branch
    category
  }
}

Disponibile anche come: Tool MCP scan_schedule

scanSchedulesQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce ScanScheduleListResult!

Esempio
query ScanSchedules($list: List) {
  scanSchedules(list: $list) {
    total
    items {
      id
      action
      repositoryId
      gitEntityId
      webTargetId
      networkId
      branch
      category
    }
  }
}

Disponibile anche come: Comando CLI vulnara scan_schedules · Tool MCP scan_schedules

serviceAccountsQuery

Restituisce [ServiceAccount!]!

Esempio
query ServiceAccounts {
  serviceAccounts {
    id
    name
    isActive
    expiresAt
    createdBy {
      id
      email
      username
      name
    }
  }
}

Disponibile anche come: Comando CLI vulnara service_accounts

setDastFindingTriageMutation

Argomenti

NomeTipoDescrizione
inputSetDastFindingTriageInput!

Restituisce DastFindingTriage!

Esempio
mutation SetDastFindingTriage($input: SetDastFindingTriageInput!) {
  setDastFindingTriage(input: $input) {
    id
    webTargetId
    matchKey
    state
    justification
    response
    priority
    reason
  }
}

Disponibile anche come: Comando CLI vulnara set_dast_finding_triage

setDefaultPaymentMethodMutation

Argomenti

NomeTipoDescrizione
idID!

Restituisce Boolean!

Esempio
mutation SetDefaultPaymentMethod($id: ID!) {
  setDefaultPaymentMethod(id: $id)
}

setFindingTriageMutation

Argomenti

NomeTipoDescrizione
inputSetFindingTriageInput!

Restituisce FindingTriage!

Esempio
mutation SetFindingTriage($input: SetFindingTriageInput!) {
  setFindingTriage(input: $input) {
    id
    repositoryId
    matchKey
    findingType
    state
    justification
    response
    priority
  }
}

Disponibile anche come: Comando CLI vulnara set_finding_triage · Tool MCP set_finding_triage

setGitEntityIgnorePathsMutation

Argomenti

NomeTipoDescrizione
inputSetGitEntityIgnorePathsInput!

Restituisce GitEntity!

Esempio
mutation SetGitEntityIgnorePaths($input: SetGitEntityIgnorePathsInput!) {
  setGitEntityIgnorePaths(input: $input) {
    __typename
    ... on Organization {
      id
      name
      gitType
      externalId
      webUrl
      htmlUrl
      avatarUrl
      color
    }
    ... on GitUser {
      id
      name
      gitType
      externalId
      webUrl
      htmlUrl
      avatarUrl
      color
    }
  }
}

Disponibile anche come: Comando CLI vulnara set_git_entity_ignore_paths · Tool MCP set_git_entity_ignore_paths

setRemediationTemplateMutation

Argomenti

NomeTipoDescrizione
inputRemediationTemplateInput!

Restituisce RemediationTemplate!

Esempio
mutation SetRemediationTemplate($input: RemediationTemplateInput!) {
  setRemediationTemplate(input: $input) {
    codeIssueBody
    dependencyIssueBody
    pullRequestBody
  }
}

Disponibile anche come: Comando CLI vulnara set_remediation_template

setRepositoryEnabledMutation

Argomenti

NomeTipoDescrizione
inputSetRepositoryEnabledInput!

Restituisce Boolean!

Esempio
mutation SetRepositoryEnabled($input: SetRepositoryEnabledInput!) {
  setRepositoryEnabled(input: $input)
}

Disponibile anche come: Comando CLI vulnara set_repository_enabled · Tool MCP set_repository_enabled

setRepositoryIgnorePathsMutation

Argomenti

NomeTipoDescrizione
inputSetRepositoryIgnorePathsInput!

Restituisce Repository!

Esempio
mutation SetRepositoryIgnorePaths($input: SetRepositoryIgnorePathsInput!) {
  setRepositoryIgnorePaths(input: $input) {
    id
    gitEntityId
    repositoryName
    private
    securityScore
    programmingLanguage
    repositorySize
    numberOfBranches
  }
}

Disponibile anche come: Comando CLI vulnara set_repository_ignore_paths · Tool MCP set_repository_ignore_paths

setServiceAccountActiveMutation

Argomenti

NomeTipoDescrizione
inputSetServiceAccountActiveInput!

Restituisce ServiceAccount!

Esempio
mutation SetServiceAccountActive($input: SetServiceAccountActiveInput!) {
  setServiceAccountActive(input: $input) {
    id
    name
    isActive
    expiresAt
    createdBy {
      id
      email
      username
      name
    }
  }
}

Disponibile anche come: Comando CLI vulnara set_service_account_active

setWebTargetCredentialsMutation

Give scans of a web target sign-in credentials, replacing any already set. Scans then act as that user: use a dedicated low-privilege test account. The secret is stored encrypted and never returned.

Argomenti

NomeTipoDescrizione
inputSetWebTargetCredentialsInput!

Restituisce WebTarget!

Esempio
mutation SetWebTargetCredentials($input: SetWebTargetCredentialsInput!) {
  setWebTargetCredentials(input: $input) {
    id
    name
    baseUrl
    scheme
    host
    port
    scopePaths
    excludedPaths
  }
}

startNetworkScanMutation

Argomenti

NomeTipoDescrizione
inputStartNetworkScanInput!

Restituisce Boolean!

Esempio
mutation StartNetworkScan($input: StartNetworkScanInput!) {
  startNetworkScan(input: $input)
}

Disponibile anche come: Comando CLI vulnara start_network_scan · Tool MCP start_network_scan

startRepositoryCategoryScanMutation

Scan by category: every scanner serving it that this tenant may run.

Argomenti

NomeTipoDescrizione
inputStartRepositoryCategoryScanInput!

Restituisce RepositoryCategoryScanDispatch!

Esempio
mutation StartRepositoryCategoryScan($input: StartRepositoryCategoryScanInput!) {
  startRepositoryCategoryScan(input: $input) {
    category
    taskId
    scanResultIds
    requested
    queued
    skipped {
      reason
    }
  }
}

Disponibile anche come: Comando CLI vulnara start_repository_category_scan

startRepositoryScanMutation

Names one scanner by id. Superseded by startRepositoryCategoryScan, and kept working: it is what the GitHub Action's scan-tools input and the CLI flag send from customers' own repositories.

Argomenti

NomeTipoDescrizione
inputStartRepositoryScanInput!

Restituisce RepositoryScanTask!

Esempio
mutation StartRepositoryScan($input: StartRepositoryScanInput!) {
  startRepositoryScan(input: $input) {
    id
    objectId
    status
    state {
      totalCommits
      scheduled
      scanned
      failed
      parsed
    }
    createdAt
    scanResult {
      id
      repositoryId
      scanType
      dockerScanToolId
      status
      createdAt
      updatedAt
      scanTime
    }
  }
}

Disponibile anche come: Comando CLI vulnara start_repository_scan · Tool MCP start_repository_scan

startWebScanMutation

Start a dynamic scan of one web target. Follow it with task/taskEvents; cancel it with cancelTask.

Argomenti

NomeTipoDescrizione
inputStartWebScanInput!

Restituisce WebScanTask!

Esempio
mutation StartWebScan($input: StartWebScanInput!) {
  startWebScan(input: $input) {
    id
    objectId
    status
    state {
      totalHosts
      processedHosts
      currentHost
    }
    createdAt
    webScanResult {
      id
      webTargetId
      status
      securityScore
      scanTime
      pinnedAddresses
      createdAt
      updatedAt
    }
  }
}

Disponibile anche come: Comando CLI vulnara start_web_scan

statisticsQuery

Restituisce TenantStatistics!

Esempio
query Statistics {
  statistics {
    tenant
    totalUsers
    totalGitEntities
    totalRepositories
    totalNetworks
  }
}

Disponibile anche come: Tool MCP statistics

taskQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce Task!

Esempio
query Task($id: ID!) {
  task(id: $id) {
    __typename
    ... on RepositoryScanTask {
      id
      objectId
      status
      createdAt
    }
    ... on NetworkScanTask {
      id
      objectId
      status
      createdAt
    }
  }
}

Disponibile anche come: Tool MCP task

taskEventsSubscription

Restituisce TaskEvent!

Esempio
subscription TaskEvents {
  taskEvents {
    type
    taskId
  }
}

tasksQuery

Restituisce [Task!]!

Esempio
query Tasks {
  tasks {
    __typename
    ... on RepositoryScanTask {
      id
      objectId
      status
      createdAt
    }
    ... on NetworkScanTask {
      id
      objectId
      status
      createdAt
    }
  }
}

Disponibile anche come: Comando CLI vulnara tasks · Tool MCP tasks

tenantPostureQuery

Restituisce TenantPosture!

Esempio
query TenantPosture {
  tenantPosture {
    averageSecurityScore
    severityCounts {
      severity
      count
    }
  }
}

Disponibile anche come: Tool MCP tenant_posture

termsAcceptanceQuery

The caller's own acceptance of the Platform Terms in the current tenant.

Restituisce TermsAcceptanceStatus!

Esempio
query TermsAcceptance {
  termsAcceptance {
    currentVersion
    currentUrl
    acceptedVersion
    acceptedBy
    acceptedAt
    isCurrent
  }
}

Disponibile anche come: Comando CLI vulnara terms_acceptance · Tool MCP terms_acceptance

testNotificationScopeMutation

Send a test notification to the rule's channel and record its reachability as the channel status.

Argomenti

NomeTipoDescrizione
idID!

Restituisce NotificationScope!

Esempio
mutation TestNotificationScope($id: ID!) {
  testNotificationScope(id: $id) {
    id
    channelIds
    channelType
    scopes
    isActive
    status
    headers {
      name
      value
    }
    template
  }
}

Disponibile anche come: Comando CLI vulnara test_notification_scope · Tool MCP test_notification_scope

transferGitEntityMutation

Argomenti

NomeTipoDescrizione
inputTransferGitEntityInput!

Restituisce Boolean!

Esempio
mutation TransferGitEntity($input: TransferGitEntityInput!) {
  transferGitEntity(input: $input)
}

Disponibile anche come: Comando CLI vulnara transfer_git_entity

transferNetworkMutation

Argomenti

NomeTipoDescrizione
inputTransferNetworkInput!

Restituisce Boolean!

Esempio
mutation TransferNetwork($input: TransferNetworkInput!) {
  transferNetwork(input: $input)
}

Disponibile anche come: Comando CLI vulnara transfer_network

triageExceptionsQuery

Every exception in force across the tenant, code and DAST. With expiringWithinDays, only those lapsing within it.

Argomenti

NomeTipoDescrizione
expiringWithinDaysInt

Restituisce [TriageException!]!

Esempio
query TriageExceptions($expiringWithinDays: Int) {
  triageExceptions(expiringWithinDays: $expiringWithinDays) {
    targetType
    targetId
    targetName
    matchKey
    findingType
    state
    justification
    response
  }
}

Disponibile anche come: Tool MCP triage_exceptions

unlinkRiskMutation

Argomenti

NomeTipoDescrizione
idID!
linkIdID!

Restituisce Boolean!

Esempio
mutation UnlinkRisk($id: ID!, $linkId: ID!) {
  unlinkRisk(id: $id, linkId: $linkId)
}

unreadNotificationCountQuery

Restituisce Int!

Esempio
query UnreadNotificationCount {
  unreadNotificationCount
}

Disponibile anche come: Comando CLI vulnara unread_notification_count · Tool MCP unread_notification_count

unregisterPushSubscriptionMutation

Argomenti

NomeTipoDescrizione
endpointString!

Restituisce Boolean!

Esempio
mutation UnregisterPushSubscription($endpoint: String!) {
  unregisterPushSubscription(endpoint: $endpoint)
}

Disponibile anche come: Comando CLI vulnara unregister_push_subscription

updateGitEntityMutation

Argomenti

NomeTipoDescrizione
inputUpdateGitEntityInput!

Restituisce GitEntity!

Esempio
mutation UpdateGitEntity($input: UpdateGitEntityInput!) {
  updateGitEntity(input: $input) {
    __typename
    ... on Organization {
      id
      name
      gitType
      externalId
      webUrl
      htmlUrl
      avatarUrl
      color
    }
    ... on GitUser {
      id
      name
      gitType
      externalId
      webUrl
      htmlUrl
      avatarUrl
      color
    }
  }
}

updateGitTokenMutation

Argomenti

NomeTipoDescrizione
inputUpdateGitTokenInput!

Restituisce GitToken!

Esempio
mutation UpdateGitToken($input: UpdateGitTokenInput!) {
  updateGitToken(input: $input) {
    id
    name
    value
    expiresAt
    flags
    status
    scopes
    createdAt
  }
}

Disponibile anche come: Comando CLI vulnara update_git_token

updateMyUserPreferencesMutation

Argomenti

NomeTipoDescrizione
inputUpdateUserPreferencesInput!

Restituisce UserPreferences!

Esempio
mutation UpdateMyUserPreferences($input: UpdateUserPreferencesInput!) {
  updateMyUserPreferences(input: $input) {
    theme
    dateTimeFormat
    repositoriesView
  }
}

updateNotificationScopeMutation

Argomenti

NomeTipoDescrizione
inputUpdateNotificationScopeInput!

Restituisce NotificationScope!

Esempio
mutation UpdateNotificationScope($input: UpdateNotificationScopeInput!) {
  updateNotificationScope(input: $input) {
    id
    channelIds
    channelType
    scopes
    isActive
    status
    headers {
      name
      value
    }
    template
  }
}

Disponibile anche come: Comando CLI vulnara update_notification_scope

updateRiskMutation

Argomenti

NomeTipoDescrizione
idID!
inputUpdateRiskInput!

Restituisce Risk!

Esempio
mutation UpdateRisk($id: ID!, $input: UpdateRiskInput!) {
  updateRisk(id: $id, input: $input) {
    id
    reference
    title
    scenario
    category
    status
    owner
    treatment
  }
}

Disponibile anche come: Tool MCP update_risk

updateRiskActionMutation

Argomenti

NomeTipoDescrizione
idID!
actionIdID!
inputUpdateRiskActionInput!

Restituisce RiskAction!

Esempio
mutation UpdateRiskAction($id: ID!, $actionId: ID!, $input: UpdateRiskActionInput!) {
  updateRiskAction(id: $id, actionId: $actionId, input: $input) {
    id
    description
    owner
    dueAt
    status
    issueUrl
    completedAt
    createdAt
  }
}

Disponibile anche come: Tool MCP update_risk_action

updateScanScheduleMutation

Argomenti

NomeTipoDescrizione
inputUpdateScanScheduleInput!

Restituisce ScanSchedule!

Esempio
mutation UpdateScanSchedule($input: UpdateScanScheduleInput!) {
  updateScanSchedule(input: $input) {
    id
    action
    repositoryId
    gitEntityId
    webTargetId
    networkId
    branch
    category
  }
}

Disponibile anche come: Comando CLI vulnara update_scan_schedule

updateUserAiAccessMutation

Argomenti

NomeTipoDescrizione
inputUpdateUserAiAccessInput!

Restituisce TenantUser!

Esempio
mutation UpdateUserAiAccess($input: UpdateUserAiAccessInput!) {
  updateUserAiAccess(input: $input) {
    id
    roles
    aiAccess
    user {
      id
      email
      username
      name
    }
  }
}

updateUserRolesMutation

Argomenti

NomeTipoDescrizione
inputUpdateUserRolesInput!

Restituisce TenantUser!

Esempio
mutation UpdateUserRoles($input: UpdateUserRolesInput!) {
  updateUserRoles(input: $input) {
    id
    roles
    aiAccess
    user {
      id
      email
      username
      name
    }
  }
}

upgradeToPayingMutation

Restituisce Boolean!

Esempio
mutation UpgradeToPaying {
  upgradeToPaying
}

usageQuery

Argomenti

NomeTipoDescrizione
startDateDateTime!
endDateDateTime!

Restituisce Usage!

Esempio
query Usage($startDate: DateTime!, $endDate: DateTime!) {
  usage(startDate: $startDate, endDate: $endDate) {
    accountTier
    usedGitScanTimeMinutes
    repositoryScanLimited
    usedNetworkScanTimeMinutes
    networkScanLimited
    usedDastScanTimeMinutes
    dastScanLimited
    parallelScans
  }
}

webScanResultQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce WebScanResult!

Esempio
query WebScanResult($id: ID!) {
  webScanResult(id: $id) {
    id
    webTargetId
    status
    securityScore
    scanTime
    pinnedAddresses
    createdAt
    updatedAt
  }
}

Disponibile anche come: Comando CLI vulnara web_scan_result · Tool MCP web_scan_result

webScanResultsQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce WebScanResultListResult!

Esempio
query WebScanResults($list: List) {
  webScanResults(list: $list) {
    total
    items {
      id
      webTargetId
      status
      securityScore
      scanTime
      pinnedAddresses
      createdAt
      updatedAt
    }
  }
}

Disponibile anche come: Comando CLI vulnara web_scan_results · Tool MCP web_scan_results

webTargetQuery

Argomenti

NomeTipoDescrizione
idID!

Restituisce WebTarget!

Esempio
query WebTarget($id: ID!) {
  webTarget(id: $id) {
    id
    name
    baseUrl
    scheme
    host
    port
    scopePaths
    excludedPaths
  }
}

Disponibile anche come: Comando CLI vulnara web_target · Tool MCP web_target

webTargetsQuery

Argomenti

NomeTipoDescrizione
listList

Restituisce WebTargetListResult!

Esempio
query WebTargets($list: List) {
  webTargets(list: $list) {
    total
    items {
      id
      name
      baseUrl
      scheme
      host
      port
      scopePaths
      excludedPaths
    }
  }
}

Disponibile anche come: Comando CLI vulnara web_targets · Tool MCP web_targets

workspaceOverviewQuery

Argomenti

NomeTipoDescrizione
gitEntityIdID!

Restituisce WorkspaceOverview!

Esempio
query WorkspaceOverview($gitEntityId: ID!) {
  workspaceOverview(gitEntityId: $gitEntityId) {
    severityCounts {
      severity
      count
    }
    totalFindings
    totalRepositories
    scanned
    unscanned
  }
}

Disponibile anche come: Comando CLI vulnara workspace_overview · Tool MCP workspace_overview

Tipi

AcceptRiskInput input
NomeTipoDescrizione
expiresAtDateTimeDefaults to the level's review interval; cannot exceed its maximum.
conditionsString
AddWebTargetSignInMethodInput input
NomeTipoDescrizione
webTargetIdID!
kindWebTargetSignInKind!
labelString
secretString!
AgingBucket object
NomeTipoDescrizione
bucketString!Age range in days, such as 8-30 or 91+.
countInt!
AiAccessLevel enum

Whether an AI acting on this member's behalf (the embedded chat, or their own connected MCP client) may call a write tool, as opposed to only reading. Independent of TenantUserRole: WRITE here does nothing for a VIEWER, since the underlying mutations are already gated @tenantRole(requires: EDITOR) regardless.

NomeDescrizione
READ
WRITE
AssessRiskInput input
NomeTipoDescrizione
kindRiskAssessmentKind!
likelihoodInt!
impactInt!
rationaleString
AssetContext object

Business context of an asset (NIST IR 8286D). Never feeds the security score.

NomeTipoDescrizione
targetTypeRiskLinkTarget!
targetIdID!
businessCriticalityInt1 (negligible) to 5 (critical to the business).
environmentAssetEnvironment
dataClassificationDataClassification
ownerString
updatedByString
updatedAtDateTime
AssetContextInput input
NomeTipoDescrizione
targetTypeRiskLinkTarget!
targetIdID!
businessCriticalityInt
environmentAssetEnvironment
dataClassificationDataClassification
ownerString
AssetEnvironment enum
NomeDescrizione
production
staging
development
other
ChannelStatus enum
NomeDescrizione
operational
degraded
unknown
error
ChannelType enum
NomeDescrizione
email
slack
webhook
telegram
discord
ClearWebTargetCredentialsInput input
NomeTipoDescrizione
webTargetIdID!
CommitScan object
NomeTipoDescrizione
idID!
scanResultIdID!
commitHashString!
createdAtDateTime
updatedAtDateTime
scanResultScanResult!
CommitScanListResult object
NomeTipoDescrizione
totalInt!
items[CommitScan!]!
CorroboratedFinding object

One finding that more than one scanner reported. Carries no matched value on purpose: a corroborated finding is very often a leaked secret, and the dashboard is the most widely viewed screen in the product. The repository and file identify it, and the view behind the link masks what it shows.

NomeTipoDescrizione
kindString!Either code or dependency.
repositoryIdID!
repositoryNameString!
labelStringThe file for a code finding, the library for a dependency finding.
severityString!
toolCountInt!How many scanners agreed. Which ones is not carried: the count is the signal.
findingKeyString!The identity the vulnerabilities explorer addresses this finding by, usable directly as its matchHash filter.
CreateGitEntityInput input
NomeTipoDescrizione
nameString!
gitTypeGitType!
externalIdString
webUrlString
ignorePaths[String!]Gitignore-style glob patterns applied to every repo under this entity.
ownershipConsentBoolean!Attests that the caller's tenant owns this organisation/user, or is authorized to scan it. No default: the client must decide explicitly. Rejected unless true; the actor and statement version are added server-side, not taken from client input.
CreateGitTokenInput input
NomeTipoDescrizione
nameString!
valueString!
flags[GitTokenFlag!]!
gitTokenTypeGitType!
expiresAtDateTime
CreateNetworkInput input
NomeTipoDescrizione
nameString!
networkString!
networkTypeNetworkType!
ownershipConsentBoolean!
CreateNotificationScopeInput input
NomeTipoDescrizione
channelIds[String!]!
channelTypeChannelType!
scopes[String!]!
isActiveBoolean!
headers[HttpHeaderInput!]
templates[NotificationTemplateInput!]
CreateRepositoryInput input
NomeTipoDescrizione
gitEntityIdID!
repositoryNameString!
cloneUrlString
ignorePaths[String!]Gitignore-style glob patterns to exclude from scans.
CreateRiskInput input
NomeTipoDescrizione
titleString!
scenarioString
categoryRiskCategory!
ownerString
treatmentRiskTreatment
treatmentDescriptionString
tags[String!]
CreateScanScheduleInput input
NomeTipoDescrizione
actionScanScheduleActionDefaults to SCAN. SYNC requires gitEntityId; a web target or a network only takes SCAN.
repositoryIdIDSupply exactly one of repositoryId, gitEntityId, webTargetId or networkId.
gitEntityIdID
webTargetIdIDA web target in the caller's tenant. Its schedule scans for DAST, which is implied when category is omitted.
networkIdIDA network in the caller's tenant. Its schedule runs a network scan and takes no category.
branchString
categoryScanCategoryWhat to scan for. Required for a SCAN of a repository or a workspace, which never take DAST; implied as DAST for a web target, which takes nothing else. Refused for a network, whose scan has no category, and for a SYNC or a REPORT, which drop it the way they drop branch.
frequencyScanScheduleFrequency!
hourUtcInt!
minuteUtcInt
dayOfWeekInt
isActiveBoolean
recipients[String!]Required for a REPORT, refused for anything else.
CreateServiceAccountInput input
NomeTipoDescrizione
nameString!
expiresAtDateTime!
CreateServiceAccountPayload object
NomeTipoDescrizione
serviceAccountServiceAccount!
tokenString!
CreateTenantInput input
NomeTipoDescrizione
nameString!
CreateWebTargetInput input
NomeTipoDescrizione
nameString!
baseUrlString!
scopePaths[String!]
excludedPaths[String!]
ownershipConsentBoolean!
Currency enum
NomeDescrizione
USD
EUR
BGN
DashboardAnalytics object
NomeTipoDescrizione
daysInt!The window the deltas and activity are measured over.
generatedAtDateTime!
lastScanAtDateTime
averageSecurityScoreFloat!
previousAverageSecurityScoreFloat!The same score as it stood at the start of the period.
severityCounts[SeverityCount!]!
previousSeverityCounts[SeverityCount!]!
exposureExposure!
scanActivity[ScanActivityPoint!]!
scoreTrend[ScoreTrendPoint!]!
topRiskRepositories[RepositoryRisk!]!
remediationRemediationFunnel!
dependencyFixesDependencyFixes!
aging[AgingBucket!]!
oldestFindingDaysInt
oldestCriticalDaysInt
coverageScanCoverage!
scanHealthScanHealth!
staleWorkspaces[StaleWorkspace!]!
networksDashboardNetworks
webTargetsDashboardWebTargets
DashboardNetworks object

Networks, from each one's latest successful scan. Not part of the repository severity counts or the security score.

NomeTipoDescrizione
totalInt!
scannedInt!Networks with at least one successful scan.
scheduledInt!Networks an active schedule scans.
openPortsInt!
exposedHostsInt!Hosts with at least one open port.
portStates[PortStateCount!]!
scansDashboardTargetScans!
lastScanAtDateTime
DashboardTargetScans object

Scans of one kind of target started in the period, and those running now.

NomeTipoDescrizione
totalInt!
succeededInt!
failedInt!Failed and cancelled.
runningInt!
DashboardWebTargets object

Web targets, from each one's latest successful scan. Not part of the repository severity counts or the security score.

NomeTipoDescrizione
totalInt!
scannedInt!Web targets with at least one successful scan.
scheduledInt!Web targets an active schedule scans.
severityCounts[SeverityCount!]!Open findings per severity, worst first.
openFindingsInt!
deferredInt!Kept out of the list by a decision, but still a live risk.
dismissedInt!Decided to carry no risk: resolved, false positive or not affected.
scansDashboardTargetScans!
lastScanAtDateTime
DastFinding object

One issue a web scan found. Filter the list with fields severity, templateId, host, category (categoryEquals), webTargetId, scanResultId, matchHash, cveId and triageState (a TriageState, or none, any, dismissed or deferred). No field names the scanner that reported it.

NomeTipoDescrizione
idID!
scanResultIdID!
templateIdString!The check that matched, e.g. a CVE id or a misconfiguration name.
nameString
severitySeverity
categoryScanCategory
matchedAtString!The URL the check matched at.
hostString
portInt
schemeString
matcherNameString
extractedResults[String!]!
descriptionString
reference[String!]!
cveIds[String!]!
cweIds[String!]!
cvssScoreFloat
templateTags[String!]!
matchHashStringThe identity a triage decision is filed under; stable across rescans.
issueUrlString
issueStatusIssueStatus
prUrlString
prStatusPrStatus
createdAtDateTime!
updatedAtDateTime
webScanResultWebScanResult
DastFindingListResult object
NomeTipoDescrizione
totalInt!
items[DastFinding!]!
DastFindingTriage object

A decision about a DAST finding: the same VEX axes as FindingTriage, filed per web target.

NomeTipoDescrizione
idID!
webTargetIdID!
matchKeyString!
stateTriageState!
justificationTriageJustification
responseTriageResponse
priorityTriagePriority
reasonString!
createdByString
createdAtDateTime!
expiresAtDateTime
DastFindingTriageEvent object

One entry in a DAST finding's decision history. Append-only.

NomeTipoDescrizione
idID!
webTargetIdID!
matchKeyString!
actionString!set or reopen.
stateTriageState
justificationTriageJustification
responseTriageResponse
priorityTriagePriority
reasonString
expiresAtDateTime
actorString
createdAtDateTime!
DataClassification enum
NomeDescrizione
public
internal
confidential
restricted
DependencyFixes object
NomeTipoDescrizione
totalInt!
fixableInt!Dependency findings whose advisory names a fixed version.
DeprovisionNetworkAgentInput input
NomeTipoDescrizione
networkIdID!
DockerScanTool object

A scanner, described by what it looks for.

NomeTipoDescrizione
idID!
categories[ScanCategory!]!The categories this scanner reports. A scanner serves one or more; a finding has exactly one.
enabledBoolean!The global catalogue flag, not the answer for a tenant: a tenant override can grant a globally disabled scanner or deny a globally enabled one. Ask `scanCategories` what this tenant may actually run.
DockerScanToolListResult object
NomeTipoDescrizione
totalInt!
items[DockerScanTool!]!
ExploitedFinding object

A finding in the latest scans whose CVE is in CISA KEV or likely to be exploited (FIRST EPSS).

NomeTipoDescrizione
targetTypeRiskLinkTarget!
targetIdID!
targetNameString
findingTypeString!dependency or dast.
matchKeyString!The key its triage decision and a risk link are filed under.
titleStringThe package for a dependency, the template name for DAST.
installedVersionString
fixedVersionString
severityString
cveString!
epssFloatProbability of exploitation in the next 30 days, 0 to 1.
epssPercentileFloat
kevBoolean!Listed in the CISA Known Exploited Vulnerabilities catalogue.
kevDateAddedString
kevDueDateString
kevRansomwareBoolean!
triageStateTriageState
triageResponseTriageResponse
ExploitedFindingList object
NomeTipoDescrizione
items[ExploitedFinding!]!
totalInt!
kevCountInt!
epssMinFloat!
kevSyncedAtDateTimeWhen each feed was last pulled; null until the first sync.
epssSyncedAtDateTime
epssDateString
Exposure object

Findings currently exposed, and how that moved over the period. Deduplicated by match hash within a repository and read from the latest scan per tool, so this is what is open now - not every row ever written.

NomeTipoDescrizione
totalInt!
previousTotalInt!
newFindingsInt!
resolvedFindingsInt!
codeFindingsInt!
dependencyFindingsInt!
corroboratedFindingsInt!Findings more than one scanner reported - the least likely to be noise.
corroborated[CorroboratedFinding!]!The findings behind corroboratedFindings, worst first. They come from the same query as the count, so the two cannot disagree - which is why this is here rather than the client deep-linking into the explorer, whose finding list is a different population (every scan, code only, triaged included). Capped, while the count stays exact: a tenant over the cap reads as "some of many" rather than seeing a list that looks complete.
falsePositivesInt!Held back by a decision rather than by a fix. Reported beside the open total, never folded into it - a number that shrinks when somebody dismisses something is what this endpoint exists to avoid.
notAffectedInt!
hiddenButScoredInt!Real findings a decision keeps out of the working list - deferred, or will-not-fix. They still count against the score, so they are named here rather than being quietly absent from both numbers.
resolvedFindingsTriagedInt!Everything a decision took out of the score entirely.
FetchGitEntityTask object
NomeTipoDescrizione
idID!
objectIdID!
statusTaskStatus!
stateFetchGitEntityTaskState!
createdAtInt!
gitEntityGitEntity!
FetchGitEntityTaskState object
NomeTipoDescrizione
processedInt!
totalInt!
errorStringWhy the import failed, when status is FAILED; null otherwise.
FetchRepositoriesInput input
NomeTipoDescrizione
gitEntityIdID!
gitTokenIdID
Filter input
NomeTipoDescrizione
fieldString!
minFloat
maxFloat
stringEqualsString
idEqualsID
categoryEqualsScanCategoryEquality against a scan category. Typed rather than left to stringEquals so the value is validated and a scanner name cannot be typed into it.
FindingCorroboration object

One real-world issue and how many independent scanners found it. toolCount > 1 is the "confirmed by N tools" signal.

NomeTipoDescrizione
idID!
matchHashString!
toolCountInt!
severitySeverityReconciled across the tools that reported it (highest severity wins).
FindingCorroborationListResult object
NomeTipoDescrizione
totalInt!
items[FindingCorroboration!]!
FindingFacetCounts object

The findings explorer rail's counts: how many rows the table would list for each severity and each issue state. Each facet ignores its own filter and honours the others. A value with no rows is absent.

NomeTipoDescrizione
severity[SeverityCount!]!
issueState[IssueStateCount!]!
FindingTriage object

A decision taken about a finding. Keyed on the finding's identity rather than its row, so it survives rescans and applies to every scanner that reported the same thing. The three axes are separate on purpose. state decides whether the finding still counts against the security score - only states asserting no live risk take it out. response and a defer priority clear it from the working list while leaving the score alone, because deciding not to act on something does not make it safe.

NomeTipoDescrizione
idID!
repositoryIdID!
matchKeyString!
findingTypeString!
stateTriageState!
justificationTriageJustification
responseTriageResponse
priorityTriagePriority
reasonString!
createdByString
createdAtDateTime!
expiresAtDateTimeRequired whenever the decision hides a finding that is still exposed.
FindingTriageEvent object

One entry in a finding's decision history. Append-only.

NomeTipoDescrizione
idID!
repositoryIdID!
matchKeyString!
actionString!set or reopen.
stateTriageState
justificationTriageJustification
responseTriageResponse
priorityTriagePriority
reasonString
expiresAtDateTime
actorString
createdAtDateTime!
GitEntity union

Uno tra: Organization, GitUser

GitEntityListResult object
NomeTipoDescrizione
totalInt!
items[GitEntity!]!
GitEntityType enum
NomeDescrizione
organization
user
GitToken object
NomeTipoDescrizione
idID!
nameString
valueString!
expiresAtDateTime
flags[GitTokenFlag!]!
statusGitTokenStatus!
scopes[String!]!
createdAtDateTime
updatedAtDateTime
gitTokenTypeGitType!
tenantString!
gitEntitiesGitEntityListResult!
GitTokenAssociationInput input
NomeTipoDescrizione
gitEntityIdID!
gitTokenIdID!
GitTokenCheck object

Result of probing a git token against its provider so the UI can pre-fill the expiry and explain what's wrong when the token is rejected.

NomeTipoDescrizione
validBoolean!Whether the provider accepted the token.
statusCodeIntHTTP status the provider returned (e.g. 401 for bad credentials), if any.
errorStringProvider error message/code (e.g. "Bad credentials"), if the check failed.
expiresAtDateTimeThe token's own expiry as reported by the provider, if it exposes one.
publicRepositoryCountIntPublic repositories the token can see for the given workspace name, or null when no name was supplied, the token is invalid, or the provider couldn't be reached.
privateRepositoryCountIntPrivate repositories the token can see for the given workspace name, or null when no name was supplied, the token is invalid, or the provider couldn't be reached.
scopes[String!]Scopes or permissions the provider reports for the token, or null when it does not expose them.
GitTokenFlag enum
NomeDescrizione
default
GitTokenListResult object
NomeTipoDescrizione
totalInt!
items[GitToken!]!
GitTokenStatus enum
NomeDescrizione
valid
invalid
unknown
error
GitType enum
NomeDescrizione
github
gitlab
bitbucket
azure_devops
forgejo
GitUser object
NomeTipoDescrizione
idID!
nameString!
gitTypeGitType!
externalIdString
webUrlString
htmlUrlString
avatarUrlStringPresigned URL of the entity's avatar (re-hosted from the provider), null if none.
colorStringRepresentative, always-vivid colour (hex) derived from the avatar or seeded from the name.
averageSecurityScoreFloat!
lastImportDateDateTime
repositoryCountInt
typeGitEntityType!
createdAtDateTime!
updatedAtDateTime
ignorePaths[String!]
tags[Tag!]!
HostPorts object
NomeTipoDescrizione
hostString!
openPortsInt!
HttpHeader object
NomeTipoDescrizione
nameString!
valueString!
HttpHeaderInput input
NomeTipoDescrizione
nameString!
valueString!
Invitation object
NomeTipoDescrizione
idID!
emailString!
tenantNameString!
InviteTeamMemberInput input
NomeTipoDescrizione
emailString!
languageString
Invoice object
NomeTipoDescrizione
idID!
invoiceNumberString
dateDateTime!
dueDateDateTime!
statusString!
totalFloat!
currencyCurrency!
InvoiceDownload object
NomeTipoDescrizione
urlString!
filenameString!
tenantString!
contentTypeString!
InvoiceListResult object
NomeTipoDescrizione
totalInt!
items[Invoice!]!
IssueStateCount object
NomeTipoDescrizione
issueStateString!open, closed, or none (no issue filed).
countInt!
IssueStatus enum

Normalized issue state across git providers.

NomeDescrizione
open
closed
LinkRiskInput input
NomeTipoDescrizione
targetTypeRiskLinkTarget!
targetIdID!
matchKeyStringThe finding's matchHash or triage key. Omit to link the whole asset.
findingTypeString
titleString
severityString
List input
NomeTipoDescrizione
limitInt
skipInt
filters[Filter!]
sortString
orderOrder
searchString
MyUser object
NomeTipoDescrizione
idID!
emailString!
nameString!
usernameString!
tenants[Tenant!]!
preferencesUserPreferences!
Network object
NomeTipoDescrizione
idID!
nameString!
networkString!
networkTypeNetworkType!
tenantString!
securityScoreFloat!
createdAtDateTime!
updatedAtDateTime
requiresConnectorAgentBoolean!
tags[Tag!]!
agentNetworkAgent
postureNetworkPosture!What the latest scans found, for the network list. Batched per page.
NetworkAgent object
NomeTipoDescrizione
idID!
statusNetworkAgentStatus!
lastSeenAtDateTime
createdAtDateTime!
routeApprovedBoolean!
NetworkAgentStatus enum
NomeDescrizione
PROVISIONED
NetworkListResult object
NomeTipoDescrizione
totalInt!
items[Network!]!
NetworkPosture object

A network's latest scan and what its latest successful scan found. A failed or running rescan shows as latestStatus without emptying the counts.

NomeTipoDescrizione
latestStatusScanStatus
latestScanAtDateTime
lastSuccessAtDateTime
scheduleTargetSchedule
openPortsInt!
portStates[PortStateCount!]!
hostCountInt!Hosts that answered in the latest successful scan.
exposedHostsInt!Hosts with at least one open port.
hosts[HostPorts!]!Hosts in address order with their open ports, at most 256; hostCount stays exact.
NetworkScanFinding object
NomeTipoDescrizione
idID!
scanResultIdID!
hostString!
hostnameString!
hostnameTypeString
protocolString!
portInt!
serviceNameString!
stateString!
productString!
versionString!
extraInfoString!
reasonString!
confidenceInt!
cpeString!
tags[Tag!]!
createdAtDateTime!
updatedAtDateTime
networkScanResultNetworkScanResult!
NetworkScanFindingListResult object
NomeTipoDescrizione
totalInt!
items[NetworkScanFinding!]!
NetworkScanResult object
NomeTipoDescrizione
idID!
networkIdID!
statusScanStatus!
createdAtDateTime!
updatedAtDateTime
scanTimeInt
networkNetwork!
NetworkScanResultListResult object
NomeTipoDescrizione
totalInt!
items[NetworkScanResult!]!
NetworkScanTask object
NomeTipoDescrizione
idID!
objectIdID!
statusTaskStatus!
stateNetworkScanTaskState!
createdAtInt!
scanResultNetworkScanResult!
NetworkScanTaskState object
NomeTipoDescrizione
totalHostsInt!
processedHostsInt!
currentHostString
NetworkType enum
NomeDescrizione
public
private
vpn
internal
external
dmz
unknown
Notification object
NomeTipoDescrizione
idID!
typeNotificationType!
eventTypeString!
dataJSON
readBoolean!
createdAtDateTime!
NotificationList object
NomeTipoDescrizione
items[Notification!]!
totalInt!
NotificationScope object
NomeTipoDescrizione
idID!
channelIds[String!]!
channelTypeChannelType!
scopes[String!]!
isActiveBoolean!
statusChannelStatus!
headers[HttpHeader!]Custom HTTP headers sent with webhook deliveries (webhook channel only).
templateStringDeprecated: superseded by templates.
templates[NotificationTemplate!]Per-event message templates (eventType '*' is the default for all events).
NotificationScopeListResult object
NomeTipoDescrizione
totalInt!
items[NotificationScope!]!
NotificationTemplate object

A message template for one event type ('*' = every event).

NomeTipoDescrizione
eventTypeString!
templateString!
NotificationTemplateInput input
NomeTipoDescrizione
eventTypeString!
templateString!
NotificationType enum
NomeDescrizione
SCAN_FINISHED
REPOSITORY_FETCH_FINISHED
NSFConsultation input
NomeTipoDescrizione
findingIdID!
Order enum
NomeDescrizione
ASC
DESC
Organization object
NomeTipoDescrizione
idID!
nameString!
gitTypeGitType!
externalIdString
webUrlString
htmlUrlString
avatarUrlStringPresigned URL of the entity's avatar (re-hosted from the provider), null if none.
colorStringRepresentative, always-vivid colour (hex) derived from the avatar or seeded from the name.
averageSecurityScoreFloat!
lastImportDateDateTime
repositoryCountInt
typeGitEntityType!
createdAtDateTime!
updatedAtDateTime
ignorePaths[String!]
tags[Tag!]!
PaymentMethod object
NomeTipoDescrizione
idID!
defaultBoolean!
lastFourString!
brandString!
expiryMonthInt!
expiryYearInt!
cardholderNameString!
expiredBoolean!
PaymentMethodListResult object
NomeTipoDescrizione
totalInt!
items[PaymentMethod!]!
Plan object
NomeTipoDescrizione
idID!
availableGitScanMinutesInt
availableNetworkScanMinutesInt
maxRepositoriesInt
maxNetworksInt
maxEmailsInt
pricePerGitScanMinuteFloat
pricePerNetworkScanMinuteFloat
currencyCurrency
PortStateCount object
NomeTipoDescrizione
stateString!open, filtered, closed or other.
countInt!
PreferredDateTimeFormat enum
NomeDescrizione
localized
iso
us
eu
PreferredRepositoriesView enum
NomeDescrizione
board
table
PreferredTheme enum
NomeDescrizione
Light
Dark
System
PromoGrant object

A promotion a tenant holds.

NomeTipoDescrizione
idID!
codeString!
startsAtDateTime!
endsAtDateTime!
gitScanMinutesInt
networkScanMinutesInt
maxRepositoriesInt
maxNetworksInt
maxEmailsInt
ProvisionNetworkAgentInput input
NomeTipoDescrizione
networkIdID!
ProvisionNetworkAgentPayload object
NomeTipoDescrizione
agentNetworkAgent!
preauthKeyString!
heartbeatTokenString!
installCommandString!
PrStatus enum

Normalized remediation pull/merge request state.

NomeDescrizione
open
merged
closed
PushSubscriptionInput input
NomeTipoDescrizione
endpointString!
p256dhString!
authString!
RemediateFindingInput input
NomeTipoDescrizione
findingIdID!
RemediationFunnel object

Findings to opened issues to merged remediation PRs.

NomeTipoDescrizione
findingsInt!
issuesOpenedInt!
issuesClosedInt!
prsOpenedInt!
prsMergedInt!
RemediationTemplate object
NomeTipoDescrizione
codeIssueBodyString
dependencyIssueBodyString
pullRequestBodyString
RemediationTemplateInput input
NomeTipoDescrizione
codeIssueBodyString
dependencyIssueBodyString
pullRequestBodyString
Repository object
NomeTipoDescrizione
idID!
gitEntityIdID!
repositoryNameString!
privateBoolean
securityScoreFloat
programmingLanguage[String!]
repositorySizeFloatRepository size in bytes. Float, not Int, so large repos (>2GB) don't overflow GraphQL's 32-bit Int.
numberOfBranchesInt
cloneUrlString
createdAtDateTime!
updatedAtDateTime
isBlacklistedBoolean
enabledBoolean
isStandaloneBoolean
avatarUrlStringPresigned URL of the repo's own avatar (the project image or custom social preview the git provider exposes, if any); null otherwise - fall back to gitEntity.avatarUrl.
colorStringVivid colour derived from the repo's avatar; null when it has no colourful image - fall back to a hash of the id.
ignorePaths[String!]
tags[Tag!]!
gitEntityGitEntity!
severityCounts[SeverityCount!]
latestScanRepositoryScanMost recent scan's status and time (null if never scanned).
scoreHistory[Float!]Recent security scores oldest→newest, for the list trend sparkline.
RepositoryCategoryScanDispatch object

What a category scan actually queued. `requested` and `queued` are both here because two of three scanners starting is neither a success nor a failure, and a client told only "accepted" cannot tell the difference. Each scanner keeps its own scan result - they are not collapsed into one, because per-tool reuse, scoring and the corroboration count all depend on them being distinct.

NomeTipoDescrizione
categoryScanCategory!
taskIdIDThe first scan queued, so a client that follows a single task still has one. Nullable so that "nothing was queued" is expressible without being an error.
scanResultIds[ID!]!
requestedInt!How many scanners the category resolved to for this tenant.
queuedInt!
skipped[ScanDispatchSkip!]!
RepositoryDependencyScanFinding object
NomeTipoDescrizione
idID!
commitScanIdID!
createdAtDateTime!
updatedAtDateTime
severitySeverity
categoryScanCategoryWhat kind of problem this is - `SCA` for a vulnerable dependency. Null for findings predating the category column.
vulnerabilityString
dependencyString
installedVersionString
fixedVersionString
purlStringPackage URL, e.g. pkg:npm/[email protected].
vulnerabilityAliases[String!]Other identifiers for the same advisory (GHSA, vendor ids).
matchHashStringCross-tool identity: two scanners reporting the same vulnerable package share this value, even when one leads with a CVE and the other a GHSA.
issueUrlStringURL of the issue opened for this dependency on the repository's git provider, if any.
issueStatusIssueStatus
prUrlStringURL of the remediation PR opened for this dependency, if any.
prStatusPrStatus
commitScanCommitScan!
tags[Tag!]!
RepositoryDependencyScanFindingGroup object

One vulnerable library, aggregating all its advisories (CVEs). Queried with a scanResultId filter it covers that scan; without one it covers the tenant, one row per repository the library is vulnerable in.

NomeTipoDescrizione
idID!
dependencyString!
repositoryIdIDWhich repository the library is vulnerable in. Null within a single scan result, where the caller already named the repository.
repositoryRepositoryThe repository behind repositoryId, so the explorer needs no lookup per row.
severitySeverity
installedVersionString
occurrencesInt!
issueUrlString
issueStatusIssueStatus
prUrlString
prStatusPrStatus
RepositoryDependencyScanFindingGroupListResult object
NomeTipoDescrizione
totalInt!
items[RepositoryDependencyScanFindingGroup!]!
RepositoryDependencyScanFindingListResult object
NomeTipoDescrizione
totalInt!
items[RepositoryDependencyScanFinding!]!
RepositoryListResult object
NomeTipoDescrizione
totalInt!
items[Repository!]!
RepositoryRisk object
NomeTipoDescrizione
idID!
nameString!
securityScoreFloat!
criticalCountInt!
highCountInt!
findingCountInt!
RepositoryScan object
NomeTipoDescrizione
statusScanStatus
scannedAtDateTime
RepositoryScanTask object
NomeTipoDescrizione
idID!
objectIdID!
statusTaskStatus!
stateRepositoryScanTaskState!
createdAtInt!
scanResultScanResult!
RepositoryScanTaskState object
NomeTipoDescrizione
totalCommitsInt!
scheduledInt!
scannedInt!
failedInt!
parsedInt!
ReviewRiskInput input
NomeTipoDescrizione
noteString
RevolutOrder object
NomeTipoDescrizione
idID!
tokenString!
Risk object

A risk scenario in the tenant's register. Findings are its evidence, not the risk itself.

NomeTipoDescrizione
idID!
referenceString!RISK-0001, unique within the tenant.
titleString!
scenarioString
categoryRiskCategory!
statusRiskStatus!
ownerString
treatmentRiskTreatment
treatmentDescriptionString
createdByString
inherentLikelihoodInt
inherentImpactInt
inherentScoreInt
inherentLevelRiskLevel
residualLikelihoodInt
residualImpactInt
residualScoreInt
residualLevelRiskLevel
targetLevelRiskLevel
acceptedByString
acceptedAtDateTime
acceptanceExpiresAtDateTime
acceptanceConditionsString
acceptedLevelRiskLevel
lastReviewedAtDateTime
nextReviewAtDateTime
closedAtDateTime
tags[String!]!
createdAtDateTime!
updatedAtDateTime
linkCountInt!
openActionCountInt!
links[RiskLink!]!
actions[RiskAction!]!
assessments[RiskAssessment!]!
history[RiskEvent!]!Every change, newest first. Append-only.
suggestionRiskSuggestion!
RiskAcceptRole enum
NomeDescrizione
EDITOR
ADMIN
RiskAction object
NomeTipoDescrizione
idID!
descriptionString!
ownerString
dueAtDateTime
statusRiskActionStatus!
issueUrlString
completedAtDateTime
createdAtDateTime!
updatedAtDateTime
RiskActionInput input
NomeTipoDescrizione
descriptionString!
ownerString
dueAtDateTime
statusRiskActionStatus
issueUrlString
RiskActionStatus enum
NomeDescrizione
open
in_progress
done
cancelled
RiskAssessment object

Append-only. A reassessment adds an entry.

NomeTipoDescrizione
idID!
kindRiskAssessmentKind!
likelihoodInt!
impactInt!
scoreInt!
levelRiskLevel!
rationaleString
assessedByString
createdAtDateTime!
RiskAssessmentKind enum
NomeDescrizione
inherent
residual
target
RiskCategory enum

What kind of risk. A register-level grouping, not a scanner category: one risk can rest on findings of several kinds.

NomeDescrizione
secret_exposure
vulnerable_dependency
code_weakness
web_application
exposed_service
data_protection
misconfiguration
access_control
third_party
other
RiskEvent object
NomeTipoDescrizione
idID!
actionString!
actorString
detailJSON
createdAtDateTime!
RiskExport object

The register in the NIST IR 8286A risk register layout.

NomeTipoDescrizione
contentTypeString!
contentString!
RiskFilter input
NomeTipoDescrizione
status[RiskStatus!]
level[RiskLevel!]
treatment[RiskTreatment!]
category[RiskCategory!]
ownerString
searchString
reviewOverdueBoolean
RiskLevel enum

NIST SP 800-30 five-level band of likelihood x impact.

NomeDescrizione
very_low
low
moderate
high
very_high
RiskLevelCount object
NomeTipoDescrizione
levelRiskLevel!
countInt!
RiskLevelCriteria object

Acceptance criteria for one level (ISO/IEC 27005 clause 7.2).

NomeTipoDescrizione
levelRiskLevel!
acceptRoleRiskAcceptRole!
maxDaysInt!
reviewDaysInt!
RiskLevelCriteriaInput input
NomeTipoDescrizione
levelRiskLevel!
acceptRoleRiskAcceptRole!
maxDaysInt!
reviewDaysInt!
RiskLinkTarget enum
NomeDescrizione
repository
git_entity
web_target
network
RiskList object
NomeTipoDescrizione
items[Risk!]!
totalInt!
RiskMatrixCell object
NomeTipoDescrizione
likelihoodInt!
impactInt!
countInt!
RiskSettings object
NomeTipoDescrizione
levelCriteria[RiskLevelCriteria!]!
requireDistinctAcceptorBoolean!
requireAcceptedRiskForWillNotFixBoolean!When true, a will_not_fix triage decision needs an accepted risk linking the finding.
autoDraftExploitedRisksBoolean!When true (the default), a finding that becomes CISA KEV-listed gets a draft risk.
updatedByString
updatedAtDateTime
RiskSettingsInput input
NomeTipoDescrizione
levelCriteria[RiskLevelCriteriaInput!]!One entry for every level.
requireDistinctAcceptorBoolean!
requireAcceptedRiskForWillNotFixBoolean
autoDraftExploitedRisksBoolean
RiskStatus enum

Lifecycle of a risk (ISO/IEC 27005). accepted is reached through acceptRisk only.

NomeDescrizione
identified
analysed
treatment_planned
in_treatment
accepted
monitored
closed
RiskStatusCount object
NomeTipoDescrizione
statusRiskStatus!
countInt!
RiskSuggestion object

A starting point for an assessment, derived from the risk's evidence. Nothing is recorded.

NomeTipoDescrizione
likelihoodInt!
impactInt!
scoreInt!
levelRiskLevel!
reasons[String!]!
RiskSummary object
NomeTipoDescrizione
totalInt!
openInt!
byStatus[RiskStatusCount!]!
byLevel[RiskLevelCount!]!Open risks by residual level, or inherent where not yet treated.
inherentMatrix[RiskMatrixCell!]!
residualMatrix[RiskMatrixCell!]!
reviewOverdueInt!
acceptancesExpiringInt!Acceptances lapsing within 30 days.
actionsOverdueInt!
RiskTreatment enum

NIST IR 8286 response type. ISO/IEC 27005 calls them modify, retain, share and avoid.

NomeDescrizione
mitigate
accept
transfer
avoid
RSFConsultation input
NomeTipoDescrizione
findingIdID!
ScanActivityPoint object
NomeTipoDescrizione
dateString!
countInt!Every repository scan started that day, failed ones included.
succeededInt!
failedInt!Failed and cancelled scans - activity that produced no coverage.
networkSucceededIntNetwork and web target scans that day. The fields above count repository scans only.
networkFailedInt
webSucceededInt
webFailedInt
ScanCategory enum

What kind of problem a finding is, and what kinds a scanner reports. This is the product vocabulary; a scanner's name is not. Display names are localised per client - the wire value is never shown raw.

NomeDescrizione
SASTStatic analysis of first-party code.
SCADependencies with known vulnerabilities.
SECRETSCredentials and tokens committed to the repository.
PIIPersonal data in the repository.
DASTA running web application, tested from the outside.
ScanCoverage object
NomeTipoDescrizione
totalRepositoriesInt!
scannedInt!
unscannedInt!Repositories never scanned - unknown risk, and excluded from the score.
ScanDispatchSkip object

One scanner in the category that was not queued. The number skipped is this list's length, so nothing about a partial dispatch is hidden by leaving the identity out.

NomeTipoDescrizione
reasonString!
ScanFinding object
NomeTipoDescrizione
idID!
commitScanIdID!
createdAtDateTime!
updatedAtDateTime
lineInt
fileString
severitySeverity
confidenceString
categoryScanCategoryWhat kind of problem this is. It comes from the finding, never from the scanner that reported it: a scanner serves more than one category, so it cannot name this row's. Null for findings predating the category column.
matchStringMasked (first/last few characters only) - see revealScanFindingMatch for the raw value.
fingerprintString
matchHashStringCross-tool identity: two different scanners that found the same secret share this value. Null when the secret could not be resolved (older scans). Distinct from fingerprint, which is per-tool.
matchedByToolCountIntHow many distinct scanners reported this finding. Greater than 1 means two tools independently agreed, which is the strongest cheap signal that it is not a false positive. Null when the finding has no cross-tool identity.
issueUrlStringURL of the issue opened for this finding on the repository's git provider, if any.
issueStatusIssueStatus
prUrlStringURL of the remediation PR opened for this finding, if any.
prStatusPrStatus
commitScanCommitScan!
tags[Tag!]!
ScanFindingGroup object
NomeTipoDescrizione
idID!
fingerprintString!
matchHashStringCross-tool identity of this group.
matchedByToolCountIntHow many distinct scanners reported this finding. A fingerprint group is one tool's view; this says whether anyone else found the same thing.
fileString
severitySeverity
confidenceString
matchStringMasked (first/last few characters only) - see revealScanFindingMatch for the raw value.
occurrencesInt!
issueUrlStringURL of the issue opened for this finding on the repository's git provider, if any.
issueStatusIssueStatus
prUrlStringURL of the remediation PR opened for this finding, if any.
prStatusPrStatus
ScanFindingGroupListResult object
NomeTipoDescrizione
totalInt!
items[ScanFindingGroup!]!
ScanFindingListResult object
NomeTipoDescrizione
totalInt!
items[ScanFinding!]!
ScanFindingMatchGroup object

One real secret, collapsed across every commit and tool that saw it. The explorer listed raw findings, so a token committed once appeared per commit per tool - 26 commits scanned by 2 tools meant 52 rows for one secret.

NomeTipoDescrizione
idID!
matchHashString!
fileString
lineInt
severitySeverity
confidenceStringHighest confidence any contributing tool assigned.
matchStringMasked (first/last few characters only) - see revealScanFindingMatch for the raw value.
occurrencesInt!How many raw findings collapsed into this group.
toolCountInt!How many distinct scanners agreed. Greater than 1 is the corroboration signal.
categories[ScanCategory!]!Every distinct category the group's rows carry. A list rather than one reconciled value so that disagreement stays visible.
repositoryIdID
repositoryRepositoryThe repository behind repositoryId, so the explorer needs no lookup per row.
triageKeyStringThe identity a triage decision is filed under - the match hash, or the fingerprint when there is none. Distinct from matchHash above, which falls back to the finding id: filing a decision under that key stored it somewhere nothing ever looks up.
triageStateTriageStateThe decision in force, carried on the row so the explorer can show and filter it without a call per finding. Null when nothing has been decided.
triageResponseTriageResponse
triagePriorityTriagePriority
ScanFindingMatchGroupListResult object
NomeTipoDescrizione
totalInt!
items[ScanFindingMatchGroup!]!
ScanHealth object
NomeTipoDescrizione
totalScansInt!
succeededScansInt!
failedScansInt!
runningScansInt!
invalidTokensInt!Tokens the provider rejected; every scan under their workspaces is blocked.
expiringTokensInt!
ScanResult object
NomeTipoDescrizione
idID!
repositoryIdID!
scanTypeString!
dockerScanToolIdID!Which scanner ran, by id. The name is deliberately absent: read the finding's own category, or dockerScanTool.categories.
statusScanStatus!
createdAtDateTime!
updatedAtDateTime
scanTimeInt
securityScoreFloat
createIssueBoolean!
autoRemediateBoolean!
branches[String!]
repositoryRepository!
dockerScanToolDockerScanTool!
severityCounts[SeverityCount!]!
ScanResultListResult object
NomeTipoDescrizione
totalInt!
items[ScanResult!]!
ScanSchedule object

A standing instruction to run on a fixed cadence. Deliberately a frequency plus an hour rather than a cron expression: the whole space of valid values is enumerable, so it validates here and renders as two selects. Exactly one of repositoryId, gitEntityId, webTargetId or networkId is set, except on a REPORT for the whole tenant, which names none. A workspace SCAN fans out over the repositories the workspace holds when it fires, so one imported after the schedule was made is included and one disabled since is not.

NomeTipoDescrizione
idID!
actionScanScheduleAction!
repositoryIdIDSet when this schedule targets one repository. Null for a workspace schedule.
gitEntityIdIDSet when this schedule targets a whole workspace. Null for a repository schedule.
webTargetIdIDSet when this schedule scans a web target. Always a SCAN for DAST.
networkIdIDSet when this schedule scans a network. Always a SCAN, with no category.
branchStringBranch to scan. Null means the default branch. Never set on a workspace schedule - a branch is a repository-level idea and a workspace's repositories do not share one - nor on a SYNC.
categoryScanCategoryWhat a SCAN looks for. The schedule runs every scanner serving this category that the tenant may run at the moment it fires, so one disabled since the schedule was made is not queued and one added since is. Always null on a SYNC and on a REPORT, which scan nothing, and on a network schedule, whose scan is its own kind.
frequencyScanScheduleFrequency!
hourUtcInt!Hour of day in UTC, 0-23. Clients render it in the viewer's own zone.
minuteUtcInt!Minute of the hour in UTC, 0-59. Zero for a schedule created before minutes existed.
dayOfWeekIntDay of week, 0-6, Monday is 0. Only read when frequency is WEEKLY.
isActiveBoolean!
nextRunAtDateTimeWhen the next run is due, in UTC.
lastRunAtDateTimeWhen the schedule last fired, in UTC. Read only.
lastRunOutcomeScanScheduleRunOutcomeHow the last run ended. Null until the schedule first fires. Read only.
lastRunReasonStringWhy the last run did not dispatch: the error code a manual request gets for the same refusal, such as WEB_TARGET_ADDRESS_REFUSED, NETWORK_AGENT_OFFLINE, NO_SCANNER_FOR_CATEGORY or DAST_SCAN_MINUTES_LIMIT_EXCEEDED. Null when it dispatched. Read only.
recipients[String!]!Where a REPORT is mailed. Empty for a SCAN or a SYNC. Not restricted to tenant members, matching the destinations alert rules already accept.
createdByString
createdAtDateTime
updatedAtDateTime
repositoryRepositoryNull for a workspace schedule.
gitEntityGitEntityNull for a repository schedule.
webTargetWebTargetNull unless this schedule scans a web target.
networkNetworkNull unless this schedule scans a network.
ScanScheduleAction enum

What a due schedule does. SCAN queues a scan; SYNC re-imports a workspace's repositories, the same job the workspace sync button runs. A SYNC only ever targets a workspace: there is nothing to re-import for a single repository.

NomeDescrizione
SCAN
SYNC
REPORT
ScanScheduleFrequency enum
NomeDescrizione
DAILY
WEEKLY
ScanScheduleListResult object
NomeTipoDescrizione
totalInt!
items[ScanSchedule!]!
ScanScheduleRunOutcome enum

How a schedule's last run ended. SKIPPED is a refusal by policy (the plan, the address check, nothing to scan) that usually clears on its own; FAILED needs someone to look.

NomeDescrizione
DISPATCHED
SKIPPED
FAILED
ScanStatus enum
NomeDescrizione
PENDING
SUCCESS
FAILED
CANCELLED
ScoreTrendPoint object
NomeTipoDescrizione
dateString!
scoreFloat!
ServiceAccount object
NomeTipoDescrizione
idID!
nameString!
isActiveBoolean!
expiresAtDateTime
createdByUser!
SetDastFindingTriageInput input
NomeTipoDescrizione
webTargetIdID!
matchKeyString!The finding's matchHash.
stateTriageState!
justificationTriageJustification
responseTriageResponse
priorityTriagePriority
reasonString!
expiresAtDateTime
SetFindingTriageInput input
NomeTipoDescrizione
repositoryIdID!
matchKeyString!The finding's matchHash, or its per-tool fallback when it has none.
findingTypeString!
stateTriageState!
justificationTriageJustification
responseTriageResponse
priorityTriagePriority
reasonString!
expiresAtDateTime
SetGitEntityIgnorePathsInput input
NomeTipoDescrizione
gitEntityIdID!
ignorePaths[String!]!
SetRepositoryEnabledInput input
NomeTipoDescrizione
repositoryIds[ID!]!
enabledBoolean!
SetRepositoryIgnorePathsInput input
NomeTipoDescrizione
repositoryIdID!
ignorePaths[String!]!
SetServiceAccountActiveInput input
NomeTipoDescrizione
idID!
isActiveBoolean!
SetWebTargetCredentialsInput input
NomeTipoDescrizione
webTargetIdID!
kindWebTargetSignInKind!
labelString
secretString!
Severity enum
NomeDescrizione
info
low
medium
high
critical
SeverityCount object
NomeTipoDescrizione
severityString!
countInt!
StaleWorkspace object
NomeTipoDescrizione
idID!
nameString!
lastImportDateDateTime
StartNetworkScanInput input
NomeTipoDescrizione
networkIdID!
StartRepositoryCategoryScanInput input
NomeTipoDescrizione
repositoryIdID!
categoryScanCategory!What to look for. Every scanner in it that this tenant may run is queued.
branchString
gitTokenIdID
createIssueBoolean
autoRemediateBoolean
StartRepositoryScanInput input
NomeTipoDescrizione
repositoryIdID!
dockerScanToolIdID!
branchString
gitTokenIdID
createIssueBoolean
autoRemediateBoolean
StartWebScanInput input
NomeTipoDescrizione
webTargetIdID!
Tag object
NomeTipoDescrizione
keyString!
valueString!
TargetSchedule object

An active schedule, in UTC.

NomeTipoDescrizione
frequencyScanScheduleFrequency!
hourUtcInt!
minuteUtcInt!
dayOfWeekInt0 is Monday; set for a weekly schedule.
Task union

Uno tra: RepositoryScanTask, NetworkScanTask, WebScanTask, FetchGitEntityTask

TaskEvent object
NomeTipoDescrizione
typeTaskEventType!
taskIdID!
taskTask
TaskEventType enum
NomeDescrizione
STATE_UPDATED
TASK_CANCELLED
TaskStatus enum
NomeDescrizione
QUEUED
STARTED
CANCELLED
PROCESSING
COMPLETED
FAILED
Tenant object
NomeTipoDescrizione
idID!
isPayingBoolean!
members[TenantUser!]!
TenantPosture object

The two analytics figures the repository and network list screens show, without the rest of the dashboard payload.

NomeTipoDescrizione
averageSecurityScoreFloat!
severityCounts[SeverityCount!]!Open findings per severity, worst first.
TenantStatistics object
NomeTipoDescrizione
tenantString!
totalUsersInt!
totalGitEntitiesInt!
totalRepositoriesInt!
totalNetworksInt!
TenantUser object
NomeTipoDescrizione
idID!
roles[TenantUserRole!]!
aiAccessAiAccessLevel!
userUser!
TenantUserRole enum
NomeDescrizione
VIEWER
EDITOR
ADMIN
TermsAcceptanceStatus object

Where the caller stands against the current Platform Terms.

NomeTipoDescrizione
currentVersionString!YYYY-MM-DD, the effective date of the current version.
currentUrlString!
acceptedVersionStringThe version the caller last accepted.
acceptedByStringThe caller's email, as recorded when they accepted.
acceptedAtString
isCurrentBoolean!
TransferGitEntityInput input
NomeTipoDescrizione
gitEntityIdID!
newTenantString!
TransferNetworkInput input
NomeTipoDescrizione
networkIdID!
newTenantString!
TriageException object

A triage decision in force that keeps a still-exposed finding out of the working list: will_not_fix or another response, or a defer.

NomeTipoDescrizione
targetTypeRiskLinkTarget!
targetIdID!
targetNameString
matchKeyString!
findingTypeString
stateTriageState!
justificationTriageJustification
responseTriageResponse
priorityTriagePriority
reasonString!
createdByString
createdAtDateTime!
expiresAtDateTime
TriageJustification enum

CycloneDX VEX justification. Required when the state is not_affected.

NomeDescrizione
code_not_present
code_not_reachable
requires_configuration
requires_dependency
requires_environment
protected_by_compiler
protected_at_runtime
protected_at_perimeter
protected_by_mitigating_control
TriagePriority enum

SSVC decision outcome. Only defer hides the finding from the working list.

NomeDescrizione
defer
scheduled
out_of_cycle
immediate
TriageResponse enum

CycloneDX VEX analysis.response - what will be done about it.

NomeDescrizione
can_not_fix
rollback
update
will_not_fix
workaround_available
TriageState enum

CycloneDX VEX analysis.state - what is true about the finding.

NomeDescrizione
resolved
resolved_with_pedigree
exploitable
in_triage
false_positive
not_affected
UpdateGitEntityInput input
NomeTipoDescrizione
gitEntityIdID!
nameString
gitTypeGitType
ignorePaths[String!]
UpdateGitTokenInput input
NomeTipoDescrizione
idID!
nameString
valueString
UpdateNotificationScopeInput input
NomeTipoDescrizione
idID!
channelIds[String!]
channelTypeChannelType
scopes[String!]
isActiveBoolean
headers[HttpHeaderInput!]
templates[NotificationTemplateInput!]
UpdateRiskActionInput input
NomeTipoDescrizione
descriptionString
ownerString
dueAtDateTime
statusRiskActionStatus
issueUrlString
UpdateRiskInput input
NomeTipoDescrizione
titleString
scenarioString
categoryRiskCategory
ownerString
treatmentRiskTreatment
treatmentDescriptionString
statusRiskStatusaccepted is refused; use acceptRisk.
tags[String!]
UpdateScanScheduleInput input
NomeTipoDescrizione
idID!
branchString
categoryScanCategoryOmit to leave the category alone.
frequencyScanScheduleFrequency
hourUtcInt
minuteUtcInt
dayOfWeekInt
isActiveBoolean
recipients[String!]
UpdateUserAiAccessInput input
NomeTipoDescrizione
userIdID!
aiAccessAiAccessLevel!
UpdateUserPreferencesInput input
NomeTipoDescrizione
themePreferredTheme
dateTimeFormatPreferredDateTimeFormat
repositoriesViewPreferredRepositoriesView
UpdateUserRolesInput input
NomeTipoDescrizione
userIdID!
roles[TenantUserRole!]!
Usage object
NomeTipoDescrizione
accountTierString!
usedGitScanTimeMinutesInt!
repositoryScanLimitedBoolean!
usedNetworkScanTimeMinutesInt!
networkScanLimitedBoolean!
usedDastScanTimeMinutesInt!
dastScanLimitedBoolean!
parallelScansInt!
availableGitScanMinutesInt!
availableNetworkScanMinutesInt!
availableDastScanMinutesInt!
maxParallelScansInt!
usedRepositoriesInt!
maxRepositoriesInt!
repositoryLimitReachedBoolean!
usedNetworksInt!
maxNetworksInt!
networkLimitReachedBoolean!
usedWebTargetsInt!
maxWebTargetsInt!
webTargetLimitReachedBoolean!
usedEmailsInt!
maxEmailsInt!
emailLimitReachedBoolean!
User object
NomeTipoDescrizione
idID!
emailStringNull unless the caller may read it: their own address, or any address in a tenant they hold EDITOR or ADMIN in. Nullable rather than guarded by @tenantRole because the directive throws, and a thrown error on a non-null field takes the whole myUser query down for every VIEWER instead of hiding one field.
usernameString!
nameString!
UserPreferences object
NomeTipoDescrizione
themePreferredTheme
dateTimeFormatPreferredDateTimeFormat
repositoriesViewPreferredRepositoriesView
WebScanResult object

One dynamic scan of one web target. Filter the list on webTargetId or status. Deliberately carries no scanner name or image: which scanner ran is not part of the product surface.

NomeTipoDescrizione
idID!
webTargetIdID!
statusScanStatus!
securityScoreFloat
scanTimeIntSeconds the scan ran; what the plan's DAST minutes are charged from.
pinnedAddresses[String!]The addresses the scan was pinned to when it was started. The host may resolve elsewhere later; these are the addresses requests were sent to.
createdAtDateTime!
updatedAtDateTime
webTargetWebTarget
WebScanResultListResult object
NomeTipoDescrizione
totalInt!
items[WebScanResult!]!
WebScanTask object
NomeTipoDescrizione
idID!
objectIdID!
statusTaskStatus!
stateWebScanTaskState!
createdAtInt!
webScanResultWebScanResult!
WebScanTaskState object

A web scan's progress, in the network scan's host counters.

NomeTipoDescrizione
totalHostsInt!
processedHostsInt!
currentHostString
WebTarget object
NomeTipoDescrizione
idID!
nameString!
baseUrlString!
schemeString!
hostString!
portInt!
scopePaths[String!]!
excludedPaths[String!]!
tenantString!
createdAtDateTime!
updatedAtDateTime
signInWebTargetSignIn!
postureWebTargetPosture!What the latest scans found, for the web target list. Batched per page.
WebTargetListResult object
NomeTipoDescrizione
totalInt!
items[WebTarget!]!
WebTargetPosture object

A web target's latest scan and what its latest successful scan found. A failed or running rescan shows as latestStatus without emptying the counts.

NomeTipoDescrizione
latestStatusScanStatus
latestScanAtDateTime
lastSuccessAtDateTime
scheduleTargetSchedule
severityCounts[SeverityCount!]!Open findings per severity, worst first.
openFindingsInt!
deferredInt!
dismissedInt!
WebTargetSignIn object
NomeTipoDescrizione
configuredBoolean!
kindWebTargetSignInKind
labelString
updatedAtDateTime
methods[WebTargetSignInMethod!]!Never carries a secret.
WebTargetSignInKind enum
NomeDescrizione
HEADER
BEARER
COOKIE
BASIC
WebTargetSignInMethod object
NomeTipoDescrizione
idID!
kindWebTargetSignInKind!
labelString
updatedAtDateTime
WorkspaceOverview object

Security aggregate for one workspace, counted on the server with the same latest-scan + deduplicated policy as the dashboard.

NomeTipoDescrizione
severityCounts[SeverityCount!]!
totalFindingsInt!
totalRepositoriesInt!
scannedInt!
unscannedInt!