To enable real-time updates from Checkmarx One to your Ocean integration, configure a webhook in your Checkmarx One instance. This allows Port to receive notifications when projects are created or scans complete, keeping your software catalog synchronized. Live events are supported for projects, scans, and all scan result types (SAST, SCA, KICS, Container Security, and API Security).
You can configure webhooks at two levels: tenant-level for organization-wide monitoring, or project-level for specific projects.
Log in to your Checkmarx One account with admin permissions.
Click the gear icon and select Global Settings.
Select Webhooks from the menu, then click Add Webhook.
Fill in the webhook details:
Name: Enter a descriptive name (e.g., Port Integration Webhook).
Payload URL: Enter the URL where your integration is accessible, following the pattern https://<YOUR_INTEGRATION_HOST>/integration/webhook (replace <YOUR_INTEGRATION_HOST> with your integration's host address).
Secret (optional): Enter a secret to secure webhook deliveries. If configured, set the same value in the webhookSecret parameter of your integration.
Project-level webhooks receive events only from a specific project. Use this for targeted monitoring of critical applications. For more details, see the Checkmarx project webhooks documentation.
Navigate to the project you want to monitor.
Click the three dots menu on the project and select Project Settings.
Select Webhooks from the menu, then click Add Webhook.
Fill in the webhook details:
Name: Enter a descriptive name (e.g., Port Integration Webhook).
Payload URL: Enter the URL where your integration is accessible, following the pattern https://<YOUR_INTEGRATION_HOST>/integration/webhook (replace <YOUR_INTEGRATION_HOST> with your integration's host address).
Secret (optional): Enter a secret to secure webhook deliveries. If configured, set the same value in the webhookSecret parameter of your integration.
Events: Select Completed Scan, Failed Scan, and Partial Scan.
Click Add Webhook to save.
Webhook security
For added security, configure a webhook secret in Checkmarx One and set the same secret in your integration configuration using the webhookSecret parameter. This ensures that the integration only accepts legitimate events from Checkmarx One.
Port integrations use a YAML mapping block to ingest data from the third-party api into Port.
The mapping makes use of the JQ JSON processor to select, modify, concatenate, transform and perform other operations on existing fields and values from the integration API.
This is the default mapping configuration for this integration:
Default mapping configuration (click to expand)
createMissingRelatedEntities:true
deleteDependentEntities:true
resources:
-kind: project
selector:
query:'true'
port:
entity:
mappings:
blueprint:'"checkmarxProject"'
identifier: .id
title: .name
properties:
name: .name
createdAt: .createdAt
updatedAt: .updatedAt
tags: (.tags // {})
repoUrl: .repoUrl
mainBranch: .mainBranch
origin: .origin
criticality: .criticality
-kind: scan
selector:
query:'true'
port:
entity:
mappings:
blueprint:'"checkmarxScan"'
identifier: .id
title:'(.projectId + "-" + .id)'
properties:
status: .status
branch: .branch
createdAt: .createdAt
updatedAt: .updatedAt
projectId: .projectId
userAgent: .userAgent
configs: (.configs // {})
statusDetails: (.statusDetails // [])
relations:
project: .projectId
-kind: sast
selector:
query:'true'
port:
entity:
mappings:
identifier: .resultHash
title: .queryName
blueprint:'"checkmarxSast"'
properties:
firstScanId: .firstScanID
status: .status
state: .state
severity: (.severity // empty)
confidenceLevel: .confidenceLevel
created: .firstFoundAt
nodes: (.nodes // empty)
cweId: (.cweID // empty)
relations:
scan: .scanID
-kind: sca
selector:
query:'true'
port:
entity:
mappings:
identifier: .id
title: .data.packageIdentifier
blueprint:'"checkmarxSCA"'
properties:
firstScanId: .firstScanId
status: .status
state: .state
severity: .severity
created: .created
description: .description
packageIdentifier: .data.packageIdentifier
recommendations: .data.recommendations
recommendedVersion: .data.recommendedVersion
packageData: .data.packageData
cweId: .vulnerabilityDetails.cweId
relations:
scan: .__scan_id
-kind: kics
selector:
query:'true'
port:
entity:
mappings:
identifier: .id
title: .description
blueprint:'"checkmarxKics"'
properties:
type: .type
firstScanId: .firstScanId
id: .id
status: .status
state: .state
severity: (.severity // empty)
confidenceLevel: .confidenceLevel
created: .created
description: .description
fileName: (.data.fileName // empty)
line: (.data.line // empty)
platform: (.data.platform // empty)
issueType: (.data.issueType // empty)
expectedValue: (.data.expectedValue // empty)
value: (.data.value // empty)
relations:
scan: .__scan_id
-kind: containers
selector:
query:'true'
port:
entity:
mappings:
identifier: .id
title: .id
blueprint:'"checkmarxContainerSecurity"'
properties:
firstScanId: .firstScanId
status: .status
state: .state
severity: .severity
confidenceLevel: .confidenceLevel
created: .created
description: .description
packageName: .data.packageName
packageVersion: .data.packageVersion
imageName: .data.imageName
imageTag: .data.imageTag
imageFilePath: .data.imageFilePath
cweId: .vulnerabilityDetails.cweId
relations:
scan: .__scan_id
-kind: apisec
selector:
query:'true'
port:
entity:
mappings:
identifier: .risk_id
title: .name
blueprint:'"checkmarxApiSec"'
properties:
riskId: .risk_id
apiId: .api_id
severity: (.severity // empty)
name: .name
status: .status
httpMethod: .http_method
url: .url
origin: .origin
documented: .documented
authenticated: .authenticated
discoveryDate: .discovery_date
scanId: .scan_id
sastRiskId: (.sast_risk_id // empty)
projectId: .project_id
state: .state
relations:
scan: .scan_id
Deep links to Checkmarx One dashboard
If you need to ingest deep links back to the Checkmarx One dashboard, you can construct them using jq expressions in your mapping configuration. Combine your Checkmarx One UI base URL with relevant path parameters from the data returned by the API.
For example, to create a dashboard link for a project:
Replace your-region with your actual Checkmarx One region (e.g., eu, us, deu, etc.) and adjust the path structure based on your Checkmarx One dashboard URL format.
Use the explorer below to view the mapping and blueprint definition for each resource type. For additional resources and advanced configurations, see the examples page.
{
"identifier":"checkmarxProject",
"title":"Checkmarx Project",
"icon":"Checkmarx",
"schema":{
"properties":{
"name":{
"type":"string",
"title":"Project Name"
},
"createdAt":{
"type":"string",
"format":"date-time",
"title":"Created At"
},
"updatedAt":{
"type":"string",
"format":"date-time",
"title":"Updated At"
},
"tags":{
"type":"object",
"title":"Tags"
},
"repoUrl":{
"type":"string",
"title":"Repository URL"
},
"mainBranch":{
"type":"string",
"title":"Main Branch"
},
"origin":{
"type":"string",
"title":"Origin"
},
"criticality":{
"type":"number",
"title":"Criticality"
}
},
"required":["name"]
},
"relations":{}
}
-kind: project
selector:
query:'true'
port:
entity:
mappings:
blueprint:'"checkmarxProject"'
identifier: .id
title: .name
properties:
name: .name
createdAt: .createdAt
updatedAt: .updatedAt
tags: (.tags // {})
repoUrl: .repoUrl
mainBranch: .mainBranch
origin: .origin
criticality: .criticality
{
"identifier":"checkmarxScan",
"title":"Checkmarx Scan",
"icon":"Checkmarx",
"schema":{
"properties":{
"status":{
"type":"string",
"title":"Status",
"enum":[
"Queued",
"Running",
"Completed",
"Failed",
"Partial",
"Canceled"
],
"description":"The status of the scan. Possible values: Queued, Running, Completed, Failed, Partial, Canceled."
},
"branch":{
"type":"string",
"title":"Branch",
"description":"The branch of the repository that was scanned."
},
"createdAt":{
"type":"string",
"format":"date-time",
"title":"Created At",
"description":"The date and time when the scan was created."
},
"updatedAt":{
"type":"string",
"format":"date-time",
"title":"Updated At",
"description":"The date and time when the scan was last updated."
},
"projectId":{
"type":"string",
"title":"Project ID",
"description":"The identifier of the project to which this scan belongs."
},
"userAgent":{
"type":"string",
"title":"User Agent",
"description":"The user agent used to initiate the scan."
},
"configs":{
"type":"object",
"title":"Configurations",
"description":"Configuration details for the scan."
},
"statusDetails":{
"type":"array",
"items":{
"type":"object"
},
"title":"Status Details",
"description":"Detailed status information for the scan."
}
},
"required":["status","projectId"]
},
"relations":{
"project":{
"title":"Project",
"target":"checkmarxProject",
"many":false,
"required":true
}
}
}
-kind: scan
selector:
query:'true'
port:
entity:
mappings:
blueprint:'"checkmarxScan"'
identifier: .id
title:'(.projectId + "-" + .id)'
properties:
status: .status
branch: .branch
createdAt: .createdAt
updatedAt: .updatedAt
projectId: .projectId
userAgent: .userAgent
configs: (.configs // {})
statusDetails: (.statusDetails // [])
relations:
project: .projectId
{
"identifier":"checkmarxSast",
"description":"Represents a Checkmarx Static Application Security Testing (SAST) finding in the catalogue",
"title":"Checkmarx SASTs",
"icon":"Checkmarx",
"schema":{
"properties":{
"firstScanId":{
"type":"string",
"title":"First Scan ID",
"description":"The identifier of the first scan in which this SAST finding appeared."
},
"status":{
"type":"string",
"title":"Status",
"description":"The status of the SAST finding",
"enum":[
"NEW",
"RECURRENT",
"FIXED"
],
"enumColors":{
"NEW":"lightGray",
"RECURRENT":"lightGray",
"FIXED":"lightGray"
}
},
"state":{
"icon":"DefaultProperty",
"type":"string",
"title":"State",
"description":"The state of the SAST finding"
},
"severity":{
"type":"string",
"description":"The severity level of the SAST finding",
"title":"Severity",
"enum":[
"LOW",
"MEDIUM",
"HIGH",
"CRITICAL"
],
"enumColors":{
"LOW":"lightGray",
"MEDIUM":"lightGray",
"HIGH":"lightGray",
"CRITICAL":"lightGray"
}
},
"confidenceLevel":{
"type":"number",
"title":"Confidence Level",
"description":"The confidence level (0-100) assigned to the SAST finding",
"minimum":0,
"maximum":100
},
"created":{
"type":"string",
"title":"Created At",
"description":"The date and time when the SAST finding was created",
"format":"date-time"
},
"description":{
"type":"string",
"title":"Description",
"description":"The description of the SAST result"
},
"nodes":{
"items":{
"type":"object"
},
"icon":"DefaultProperty",
"type":"array",
"title":"Nodes",
"description":"The list of nodes or code locations related to the SAST finding"
},
"cweId":{
"type":"string",
"title":"CWE ID",
"description":"The CWE (Common Weakness Enumeration) identifier associated with this SAST finding"
}
},
"required":[]
},
"mirrorProperties":{},
"calculationProperties":{},
"aggregationProperties":{},
"relations":{
"scan":{
"title":"Scan",
"target":"checkmarxScan",
"required":false,
"many":false
}
}
}
-kind: sast
selector:
query:'true'
port:
entity:
mappings:
identifier: .resultHash
title: .queryName
blueprint:'"checkmarxSast"'
properties:
firstScanId: .firstScanID
status: .status
state: .state
severity: (.severity // empty)
confidenceLevel: .confidenceLevel
created: .firstFoundAt
nodes: (.nodes // empty)
cweId: (.cweID // empty)
relations:
scan: .scanID
{
"identifier":"checkmarxSCA",
"title":"Checkmarx SCA",
"icon":"Checkmarx",
"schema":{
"properties":{
"severity":{
"type":"string",
"title":"Severity",
"description":"The severity level of the SCA finding."
},
"state":{
"type":"string",
"title":"State",
"description":"The state of the SCA finding."
},
"description":{
"type":"string",
"title":"Description",
"description":"A description of the SCA finding."
},
"cweId":{
"type":"string",
"title":"CWE ID",
"description":"The Common Weakness Enumeration (CWE) identifier related to the vulnerability."
},
"status":{
"type":"string",
"title":"Status",
"description":"The current status of the SCA finding."
},
"created":{
"type":"string",
"format":"date-time",
"title":"Created",
"description":"The date and time when the SCA finding was created."
},
"firstScanId":{
"type":"string",
"title":"First Scan ID",
"description":"The identifier of the first scan in which this SCA issue was detected."
},
"packageIdentifier":{
"type":"string",
"title":"Package Identifier",
"description":"The identifier of the affected package."
},
"recommendations":{
"type":"array",
"items":{
"type":"string"
},
"title":"Recommendations",
"description":"Recommended actions to remediate the SCA finding."
},
"recommendedVersion":{
"type":"string",
"title":"Recommended Version",
"description":"The recommended version of the package to resolve the vulnerability."
},
"packageData":{
"items":{
"type":"object"
},
"type":"array",
"title":"Package Data"
},
"confidenceLevel":{
"type":"string",
"title":"Confidence Level",
"description":"The confidence level of the SCA finding."
}
},
"required":[]
},
"mirrorProperties":{},
"calculationProperties":{},
"aggregationProperties":{},
"relations":{
"scan":{
"title":"Scan",
"target":"checkmarxScan",
"required":false,
"many":false
}
}
}
-kind: sca
selector:
query:'true'
port:
entity:
mappings:
identifier: .id
title: .data.packageIdentifier
blueprint:'"checkmarxSCA"'
properties:
firstScanId: .firstScanId
status: .status
state: .state
severity: .severity
created: .created
description: .description
packageIdentifier: .data.packageIdentifier
recommendations: .data.recommendations
recommendedVersion: .data.recommendedVersion
packageData: .data.packageData
cweId: .vulnerabilityDetails.cweId
relations:
scan: .__scan_id
{
"identifier":"checkmarxKics",
"description":"Represents a KICS issue detected by Checkmarx One",
"title":"Checkmarx KICS",
"icon":"Checkmarx",
"schema":{
"properties":{
"firstScanId":{
"type":"string",
"title":"First Scan ID",
"description":"The identifier of the first scan in which this KICS issue was detected"
},
"status":{
"type":"string",
"title":"Status",
"description":"The current status of the KICS issue, indicating if it is new, recurring, or has been fixed.",
"enum":[
"NEW",
"RECURRENT",
"FIXED"
],
"enumColors":{
"NEW":"lightGray",
"RECURRENT":"lightGray",
"FIXED":"lightGray"
}
},
"state":{
"type":"string",
"description":"The state of the KICS issue, reflecting its verification and remediation status",
"title":"State"
},
"severity":{
"type":"string",
"title":"Severity",
"enum":[
"LOW",
"MEDIUM",
"HIGH",
"CRITICAL",
"INFO"
],
"enumColors":{
"LOW":"lightGray",
"MEDIUM":"lightGray",
"HIGH":"lightGray",
"CRITICAL":"lightGray",
"INFO":"lightGray"
}
},
"created":{
"type":"string",
"title":"Created At",
"description":"The date and time when the KICS issue was first identified",
"format":"date-time"
},
"description":{
"icon":"DefaultProperty",
"type":"string",
"title":"Description",
"description":"A description of the KICS issue."
},
"fileName":{
"type":"string",
"title":"File Name",
"description":"The name of the file where the KICS issue was found."
},
"line":{
"type":"string",
"title":"Line Number",
"description":"The line number in the file where the KICS issue occurs"
},
"platform":{
"type":"string",
"title":"Platform"
},
"issueType":{
"type":"string",
"title":"Issue Type",
"description":"The type or category of the KICS issue"
},
"expectedValue":{
"type":"string",
"title":"Expected Value",
"description":"The value that was expected in the configuration"
},
"value":{
"type":"string",
"title":"Value",
"description":"The actual value found in the configuration that triggered the KICS issue"
}
},
"required":[]
},
"mirrorProperties":{},
"calculationProperties":{},
"aggregationProperties":{},
"relations":{
"scan":{
"title":"Scan",
"target":"checkmarxScan",
"required":false,
"many":false
}
}
}
-kind: kics
selector:
query:'true'
port:
entity:
mappings:
identifier: .id
title: .description
blueprint:'"checkmarxKics"'
properties:
type: .type
firstScanId: .firstScanId
id: .id
status: .status
state: .state
severity: (.severity // empty)
confidenceLevel: .confidenceLevel
created: .created
description: .description
fileName: (.data.fileName // empty)
line: (.data.line // empty)
platform: (.data.platform // empty)
issueType: (.data.issueType // empty)
expectedValue: (.data.expectedValue // empty)
value: (.data.value // empty)
relations:
scan: .__scan_id
{
"identifier":"checkmarxContainerSecurity",
"title":"Checkmarx Container Security",
"icon":"Checkmarx",
"schema":{
"properties":{
"firstScanId":{
"type":"string",
"title":"First Scan ID",
"description":"The identifier of the first scan in which this container security issue was detected."
},
"status":{
"type":"string",
"title":"Status",
"description":"The current status of the container security finding."
},
"state":{
"type":"string",
"title":"State",
"description":"The state of the container security finding."
},
"severity":{
"type":"string",
"title":"Severity",
"description":"The severity level of the container security finding."
},
"confidenceLevel":{
"type":"string",
"title":"Confidence Level",
"description":"The confidence level of the container security finding."
},
"created":{
"type":"string",
"format":"date-time",
"title":"Created",
"description":"The date and time when the container security finding was created."
},
"description":{
"type":"string",
"title":"Description",
"description":"A description of the container security finding."
},
"packageName":{
"type":"string",
"title":"Package Name",
"description":"The name of the affected package in the container."
},
"packageVersion":{
"type":"string",
"title":"Package Version",
"description":"The version of the affected package in the container."
},
"imageName":{
"type":"string",
"title":"Image Name",
"description":"The name of the container image."
},
"imageTag":{
"type":"string",
"title":"Image Tag",
"description":"The tag of the container image."
},
"imageFilePath":{
"type":"string",
"title":"Image File Path",
"description":"The file path within the container image where the issue was found."
},
"cweId":{
"type":"string",
"title":"CWE ID",
"description":"The Common Weakness Enumeration (CWE) identifier related to the vulnerability."
}
},
"required":[]
},
"mirrorProperties":{},
"calculationProperties":{},
"aggregationProperties":{},
"relations":{
"scan":{
"title":"Scan",
"target":"checkmarxScan",
"required":false,
"many":false
}
}
}
-kind: containers
selector:
query:'true'
port:
entity:
mappings:
identifier: .id
title: .id
blueprint:'"checkmarxContainerSecurity"'
properties:
firstScanId: .firstScanId
status: .status
state: .state
severity: .severity
confidenceLevel: .confidenceLevel
created: .created
description: .description
packageName: .data.packageName
packageVersion: .data.packageVersion
imageName: .data.imageName
imageTag: .data.imageTag
imageFilePath: .data.imageFilePath
cweId: .vulnerabilityDetails.cweId
relations:
scan: .__scan_id
{
"identifier":"checkmarxApiSec",
"title":"Checkmarx API Security",
"icon":"Checkmarx",
"schema":{
"properties":{
"riskId":{
"type":"string",
"title":"Risk ID",
"description":"The unique identifier for the API security risk."
},
"apiId":{
"type":"string",
"title":"API ID",
"description":"The identifier of the API associated with the risk."
},
"severity":{
"type":"string",
"title":"Severity",
"enum":[
"low",
"medium",
"high",
"critical"
],
"description":"The severity level of the API security risk."
},
"name":{
"type":"string",
"title":"Name",
"description":"The name of the API security risk."
},
"status":{
"type":"string",
"title":"Status",
"enum":[
"new",
"recurrent",
"fixed"
],
"description":"The status of the API security risk."
},
"httpMethod":{
"type":"string",
"title":"HTTP Method",
"description":"The HTTP method associated with the API risk (e.g., GET, POST)."
},
"url":{
"type":"string",
"title":"URL",
"description":"The URL endpoint associated with the API risk."
},
"origin":{
"type":"string",
"title":"Origin",
"description":"The origin or source of the API risk."
},
"documented":{
"type":"boolean",
"title":"Documented",
"description":"Indicates whether the API is documented."
},
"authenticated":{
"type":"boolean",
"title":"Authenticated",
"description":"Indicates whether the API requires authentication."
},
"discoveryDate":{
"type":"string",
"format":"date-time",
"title":"Discovery Date",
"description":"The date and time when the API risk was discovered."
},
"scanId":{
"type":"string",
"title":"Scan ID",
"description":"The identifier of the scan in which the risk was found."
},
"sastRiskId":{
"type":"string",
"title":"SAST Risk ID",
"description":"The identifier of the related SAST risk, if available."
},
"projectId":{
"type":"string",
"title":"Project ID",
"description":"The identifier of the project associated with the API risk."
},
"state":{
"type":"string",
"title":"State",
"enum":[
"to_verify",
"confirmed",
"urgent",
"not_exploitable",
"proposed_not_exploitable",
"false_positive"
],
"description":"The state of the API security risk."
}
},
"required":[
"riskId",
"apiId",
"name",
"status",
"state"
]
},
"relations":{
"scan":{
"title":"Scan",
"target":"checkmarxScan",
"many":false,
"required":false
}
}
}
-kind: apisec
selector:
query:'true'
port:
entity:
mappings:
identifier: .risk_id
title: .name
blueprint:'"checkmarxApiSec"'
properties:
riskId: .risk_id
apiId: .api_id
severity: (.severity // empty)
name: .name
status: .status
httpMethod: .http_method
url: .url
origin: .origin
documented: .documented
authenticated: .authenticated
discoveryDate: .discovery_date
scanId: .scan_id
sastRiskId: (.sast_risk_id // empty)
projectId: .project_id
state: .state
relations:
scan: .scan_id
{
"identifier":"checkmarxApplication",
"title":"Checkmarx Application",
"icon":"Checkmarx",
"schema":{
"properties":{
"createdAt":{
"type":"string",
"format":"date-time",
"title":"Created At",
"description":"The date and time when the application was created."
},
"updatedAt":{
"type":"string",
"format":"date-time",
"title":"Updated At",
"description":"The date and time when the application was last updated."
},
"tags":{
"type":"object",
"title":"Tags",
"description":"A set of tags associated with the application."
},
"rules":{
"type":"object",
"title":"Rules",
"description":"A set of rules associated with the application."
},
"description":{
"type":"string",
"title":"Description",
"description":"The description of the application."
},
"criticality":{
"type":"number",
"title":"Criticality",
"description":"The criticality level of the project."
}
},
"required":[]
},
"relations":{
"projects":{
"target":"checkmarxProject",
"title":"Projects",
"required":false,
"many":true
}
}
}
-kind: application
selector:
query:'true'
port:
entity:
mappings:
blueprint:'"checkmarxApplication"'
identifier: .id
title: .name
properties:
description: .description
createdAt: .createdAt
updatedAt: .updatedAt
tags: (.tags // {})
rules: .rules[]
criticality: .criticality
relations:
projects: .projectIds
{
"identifier":"checkmarxDastScanEnvironment",
"title":"Checkmarx DAST Scan Environment",
"icon":"Checkmarx",
"schema":{
"properties":{
"domain":{
"type":"string",
"title":"Domain",
"description":"The domain under scan."
},
"url":{
"type":"string",
"title":"URL",
"description":"The target URL of the environment."
},
"created":{
"type":"string",
"format":"date-time",
"title":"Created",
"description":"The date when the environment was created."
},
"scanType":{
"type":"string",
"title":"Scan Type",
"description":"The type of scan (DAST)."
},
"riskRating":{
"type":"string",
"title":"Risk Rating",
"description":"Overall risk rating for the environment."
},
"riskLevel":{
"type":"object",
"title":"Risk Level",
"description":"Breakdown of risk counts by severity."
},
"authMethod":{
"type":"string",
"title":"Auth Method",
"description":"Authentication method used for scanning."
},
"lastScanId":{
"type":"string",
"title":"Last Scan ID",
"description":"The ID of the last DAST scan."
},
"lastScanTime":{
"type":"string",
"format":"date-time",
"title":"Last Scan Time",
"description":"Timestamp of the last DAST scan."
},
"lastStatus":{
"type":"string",
"title":"Last Status",
"description":"The latest scan status."
}
},
"required":[
"url",
"scanType"
]
},
"mirrorProperties":{},
"calculationProperties":{},
"aggregationProperties":{},
"relations":{}
}
-kind: dast-scan-environment
selector:
query:'true'
port:
entity:
mappings:
identifier: .environmentId
title: .url
blueprint:'"checkmarxDastScanEnvironment"'
properties:
domain: .domain
url: .url
created: .created
scanType: .scanType
riskRating: .riskRating
riskLevel: .riskLevel
authMethod: .authMethod
lastScanId: .lastScanID
lastScanTime: .lastScanTime
lastStatus: .lastStatus
{
"identifier":"checkmarxDastScan",
"title":"Checkmarx DAST Scan",
"icon":"Checkmarx",
"schema":{
"properties":{
"environmentId":{
"type":"string",
"title":"Environment ID",
"description":"Identifier of the related DAST environment."
},
"initiator":{
"type":"string",
"title":"Initiator",
"description":"User who initiated the scan."
},
"scanType":{
"type":"string",
"title":"Scan Type",
"description":"Type of scan (DAST)."
},
"created":{
"type":"string",
"format":"date-time",
"title":"Created",
"description":"Timestamp when the scan was created."
},
"startTime":{
"type":"string",
"format":"date-time",
"title":"Start Time",
"description":"When the scan started running."
},
"updateTime":{
"type":"string",
"format":"date-time",
"title":"Update Time",
"description":"Last update timestamp for the scan."
},
"lastStatus":{
"type":"string",
"title":"Last Status",
"description":"Final or current status of the scan."
},
"riskRating":{
"type":"string",
"title":"Risk Rating",
"description":"Overall risk rating for the scan."
},
"riskLevel":{
"type":"object",
"title":"Risk Level",
"description":"Detailed risk breakdown."
},
"scanDuration":{
"type":"number",
"title":"Scan Duration",
"description":"Duration of the scan in seconds."
}
},
"required":[
"scanType"
]
},
"mirrorProperties":{},
"calculationProperties":{},
"aggregationProperties":{},
"relations":{
"dastScanEnvironment":{
"title":"DAST Scan Environment",
"target":"checkmarxDastScanEnvironment",
"required":false,
"many":false
}
}
}
-kind: dast-scan
selector:
query:'true'
since:20
port:
entity:
mappings:
identifier: .scanId
title: .scanId
blueprint:'"checkmarxDastScan"'
properties:
environmentId: .environmentId
initiator: .initiator
scanType: .scanType
created: .created
startTime: .startTime
updateTime: .updateTime
lastStatus: .lastStatus
riskRating: .riskRating
riskLevel: .riskLevel
scanDuration: .scanDuration
relations:
dastScanEnvironment: .__environment_id
{
"identifier":"checkmarxDastScanResult",
"title":"Checkmarx DAST Scan Result",
"icon":"Checkmarx",
"schema":{
"properties":{
"name":{
"type":"string",
"title":"Vulnerability Name",
"description":"The name or title of the detected vulnerability."
},
"status":{
"type":"string",
"title":"Status",
"description":"The current status of the finding."
},
"severity":{
"type":"string",
"title":"Severity",
"description":"Severity level of the finding."
},
"url":{
"type":"string",
"title":"URL",
"description":"The URL where the issue was found."
},
"method":{
"type":"string",
"title":"HTTP Method",
"description":"HTTP method used in the request."
},
"solution":{
"type":"string",
"title":"Solution",
"description":"Recommended remediation or mitigation steps."
To view and test the integration's mapping against examples of the third-party API responses, use the jq playground in your data sources page. Find the integration in the list of data sources and click on it to open the playground.
Examples of blueprints and the relevant integration configurations can be found on the Checkmarx examples page.
DAST scan results are fetched by enumerating DAST scan environments, then scans within each environment, and finally the results for each scan. This kind is not included in the default mapping, but you can add it to your resources block.
You can configure DAST scan results with:
DAST scan filter (dast_scan_filter):
Scan Type (scanType): DAST or DASTAPI
Since (since): Number of days to look back for updated scans (1-90 days, default: 90)
Max Results (maxResults): Maximum number of scans to fetch per environment (1-3000, default: 3000)