Synack Suspected Vulnerabilities API
Operations related to suspected vulnerabilities
Operations related to suspected vulnerabilities
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/synack-suspected-vulnerabilities-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.1.0
info:
title: Assessment Service Assessment Groups Suspected Vulnerabilities API
version: 1.0.0
description: 'APIs for managing Assessment and related operations on the Synack.
'
contact:
name: Synack Engineering
email: engineering@synack.com
servers:
- url: https://client.synack.com/api/assessment
description: Commercial
- url: https://client.synack.us/api/assessment
description: FedRAMP (Medium)
security:
- bearerAuth: []
tags:
- name: Suspected Vulnerabilities
description: Operations related to suspected vulnerabilities
paths:
/v1/suspected_vulnerabilities/{id}:
patch:
operationId: updateSuspectedVulnerability
summary: Update a suspected vulnerability
description: Update a specific suspected vulnerability's status
tags:
- Suspected Vulnerabilities
parameters:
- name: id
in: path
required: true
schema:
type: integer
description: Suspected vulnerability ID
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- vulnerability_status_id
properties:
vulnerability_status_id:
type: integer
description: New vulnerability status ID
responses:
'200':
description: Suspected vulnerability updated successfully
content:
application/json:
schema:
$ref: '#/components/schemas/SuspectedVulnerability'
'400':
description: Bad request
'404':
description: Suspected vulnerability not found
/v1/{org_uid}/assets/{asset_uid}/suspected_vulns:
get:
x-mint:
metadata:
title: Get Suspected Vulnerabilities for an Asset
summary: Returns list of suspected vulnerabilities on a given organization and asset uid
description: Get asset suspected vulnerabilities by organization and assets uid
operationId: getAssetSuspectedVulnerabilities
tags:
- Suspected Vulnerabilities
parameters:
- name: org_uid
in: path
description: Organization UID
required: true
schema:
type: string
- name: asset_uid
in: path
description: Asset UID
required: true
schema:
type: string
- name: statuses[]
in: query
description: Suspected vulnerability status
style: form
explode: true
schema:
type: array
items:
type: string
enum:
- in_triage
- vulnerable
- not_vulnerable
- qualified
- info_low
- name: vuln_cvss[]
in: query
description: Suspected vulnerability CVSS range [0.0-0.0, 0.1-3.9, 4.0-6.9, 7.0-8.9, 9.0-10.0]
style: form
explode: true
schema:
type: array
items:
type: string
- name: include_expired
in: query
description: Include expired suspected vulnerabilities
schema:
type: boolean
- name: listing_uids[]
in: query
description: Listing uids
style: form
explode: true
schema:
type: array
items:
type: string
- name: order_by
in: query
description: Order by [title, severity, location, created_at, status, listing_codename]
schema:
type: string
default: severity
enum:
- title
- severity
- location
- created_at
- status
- listing_codename
- name: order_direction
in: query
description: Order direction [asc desc]
schema:
type: string
default: asc
enum:
- asc
- desc
- name: per_page
in: query
description: Maximum number of results to be returned
schema:
type: integer
- name: page
in: query
description: If provided, show the provided page
schema:
type: integer
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Document'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Bearer token is missing or invalid
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/v1/organizations/{organizationUid}/suspected-vulnerabilities:
get:
summary: Retrieve suspected vulnerabilities for an organization
description: 'Fetches a paginated list of suspected vulnerabilities associated with a specific organization.
Supports comprehensive filtering by status, source, listings, categories, and search queries.
'
operationId: getSuspectedVulnerabilities
tags:
- Suspected Vulnerabilities
parameters:
- name: organizationUid
in: path
description: Unique identifier for the organization whose vulnerabilities are being retrieved
required: true
schema:
type: string
- name: status[]
in: query
description: 'Filter vulnerabilities by their current status (e.g, qualified, in_triage, vulnerable, not_vulnerable, qualified)
'
explode: true
schema:
type: array
items:
type: string
- name: automatedTriageStatus[]
in: query
description: 'Filter by automated triage status. Indicates whether the vulnerability has been processed
through automated triage workflows and its current automated assessment state. (e.g., eligible, ineligible, agent_review, ops_review, vulnerable, not_vulnerable, target_unreachable, out_of_scope, not_applicable)
'
style: form
explode: true
schema:
type: array
items:
type: string
- name: source[]
in: query
description: 'Filter by vulnerability detection source (e.g., ''synack'', ''tenable'', ''qualys'', ''tenablewas'').
Identifies the tool or method that originally discovered the vulnerability.
'
style: form
explode: true
schema:
type: array
items:
type: string
- name: sourceId[]
in: query
description: 'Filter by vulnerability detection source ID/job ID. This represents the specific
batch or job identifier from external scanning tools that discovered the vulnerability.
'
style: form
explode: true
schema:
type: array
items:
type: string
- name: listingUid[]
in: query
description: 'Filter vulnerabilities by specific listing UIDs. Listings represent individual penetration
testing engagements.
'
style: form
explode: true
schema:
type: array
items:
type: string
- name: categoryId[]
in: query
description: 'Filter by vulnerability category ID. Categories classify vulnerabilities by type
(e.g., authorization_permissions/cross_origin_resource_sharing_cors, cross_site_scripting_xss/) to organize findings.
'
style: form
explode: true
schema:
type: array
items:
type: string
- name: listingCategoryId[]
in: query
description: 'Filter by the specific category of listings (penetration testing scopes).
Helps narrow results to particular types of security assessments. (e.g., web application, mobile)
'
style: form
explode: true
schema:
type: array
items:
type: integer
format: int32
- name: severity[]
in: query
description: 'Filter by the specific severity of vulnerabilities.
Helps narrow results to particular types of security. (e.g., low, medium, high, critical, none)
'
style: form
explode: true
schema:
type: array
items:
type: string
- name: exportFormat
in: query
description: 'Specify the format for data export: ''csv'' for spreadsheet analysis. When provided, returns downloadable file instead of JSON.
'
schema:
type: string
- name: exportData[]
in: query
description: 'Specify which fields to include in exported files. Allows customization of export
content to include only relevant fields for specific reporting or analysis needs.
Will return all fields by default.
'
style: form
explode: true
schema:
type: array
items:
type: string
- name: exportColumnNames[]
in: query
description: 'Specify the column headers for the exported file. Returns all custom names for headers in the file, it will be the same as SuspectedVulnerabilityResponse by default.
'
style: form
explode: true
schema:
type: array
items:
type: string
- name: query
in: query
description: 'Free-text search query to filter vulnerabilities. Searches across vulnerability titles,
descriptions, asset information, and other relevant text fields for matching content.
'
style: form
schema:
type: string
- name: perPage
in: query
description: 'Maximum number of vulnerability records to return per page. Controls pagination size
for better performance and manageable result sets. Typical values range from 10-100.
'
schema:
type: integer
- name: page
in: query
description: 'Page number for paginated results. Used in conjunction with perPage to navigate
through large result sets. Page numbering starts from 1.
'
schema:
type: integer
- name: sort
in: query
schema:
type: string
default: lastDetectedAt
description: 'Field to sort results by: ''createdAt'' for chronological discovery, ''lastDetectedAt''
for most recent activity, or ''cvssBase'' for severity-based ordering.
'
- name: sortDir
in: query
schema:
type: string
enum:
- asc
- desc
default: asc
description: 'Sort direction: ''asc'' for ascending or ''desc'' for descending order.
'
responses:
'200':
$ref: '#/components/responses/SuspectedVulnerabilitiesResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'422':
$ref: '#/components/responses/UnprocessableEntity'
'500':
$ref: '#/components/responses/InternalServerError'
security:
- OAuth2:
- asset_gr
- asset_or
- asset_lr
post:
summary: Add suspected vulnerabilities for an organization
description: Add suspected vulnerabilities for an organization, creating corresponding assets if needed. On success returns list of numeric IDs of the newly created suspected vulnerabilities
operationId: postSuspectedVulnerabilities
tags:
- Suspected Vulnerabilities
parameters:
- name: organizationUid
in: path
description: Unique identifier for the organization
required: true
schema:
type: string
x-go-name: orgUID
requestBody:
description: Request body containing the list of objects, describing the properties of suspected vulnerabilities to create
content:
application/json:
schema:
$ref: '#/components/schemas/SuspectedVulnerabilitiesCreateRequest'
required: true
responses:
'201':
$ref: '#/components/responses/SuspectedVulnerabilitiesCreateResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'422':
$ref: '#/components/responses/UnprocessableEntity'
'500':
$ref: '#/components/responses/InternalServerError'
security:
- OAuth2:
- asset_gr
- asset_gw
/v1/organizations/{organizationUid}/suspected-vulnerabilities/{id}:
get:
tags:
- Suspected Vulnerabilities
summary: Retrieve a specific suspected vulnerability
description: 'Fetches detailed information for a single suspected vulnerability by its unique identifier.
Returns comprehensive vulnerability data including metadata, triage information, and related assets.
'
operationId: getSuspectedVulnerability
parameters:
- name: organizationUid
in: path
required: true
description: 'Unique identifier for the organization that owns the vulnerability being retrieved
'
schema:
type: string
- name: id
in: path
description: 'Unique identifier for the specific suspected vulnerability to retrieve
'
required: true
schema:
type: integer
format: int32
responses:
'200':
$ref: '#/components/responses/SuspectedVulnerabilityResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'422':
$ref: '#/components/responses/UnprocessableEntity'
'500':
$ref: '#/components/responses/InternalServerError'
default:
$ref: '#/components/responses/UnexpectedError'
security:
- OAuth2:
- asset_gr
- asset_or
- asset_lr
components:
responses:
Forbidden:
description: 'Forbidden - Access denied. The authenticated user lacks permission to access
the requested resource or perform the specified operation.
'
content:
application/json:
schema:
$ref: '#/components/schemas/Error_2'
SuspectedVulnerabilitiesResponse:
description: 'Successfully retrieved a paginated list of suspected vulnerabilities matching the
specified filter criteria, including metadata for pagination and summary statistics.
'
content:
application/json:
schema:
type: object
properties:
suspectedVulnerabilities:
type: array
description: List of suspected vulnerabilities matching the filter criteria
items:
$ref: '#/components/schemas/SuspectedVulnerability_2'
metadata:
type: object
description: Response metadata including pagination and summary information
properties:
pagination:
$ref: '#/components/schemas/Pagination'
summaries:
$ref: '#/components/schemas/SuspectedVulnerabilitiesSummaries'
actions:
type: object
description: Available actions for the suspected vulnerabilities collection
text/csv:
schema:
type: string
description: CSV data of the suspected vulnerabilities
example: 'Asset UID,Reason Title,Reason Description,Severity,CVSS Base,Automated Triage Status,Confidence,False Positive,Source
ah28034gsjdf98eqwgbjufj,Test Reason Title,Test Reason Description,Low,5.4,srt_review,firm,true,synack
ah28034gsjdf98eqwgbjufj,Test Reason Title,Test Reason Description,Medium,6.4,srt_review,tentative,false,synack
'
UnprocessableEntity:
description: 'Unprocessable Entity - The request is well-formed but contains semantic errors
or business logic violations that prevent processing (e.g., invalid status transitions).
'
content:
application/json:
schema:
$ref: '#/components/schemas/Error_2'
SuspectedVulnerabilityResponse:
description: 'Successfully retrieved detailed information for a single suspected vulnerability,
including associated triage data and related metadata.
'
content:
application/json:
schema:
type: object
properties:
suspectedVulnerability:
$ref: '#/components/schemas/SuspectedVulnerabilityWithTriages'
metadata:
$ref: '#/components/schemas/Metadata'
NotFound:
description: 'Not Found - The requested resource does not exist. This may occur when
referencing invalid organization UIDs or non-existent vulnerability IDs.
'
content:
application/json:
schema:
$ref: '#/components/schemas/Error_2'
Unauthorized:
description: 'Unauthorized - Authentication failed. The bearer token is missing, expired,
invalid, or lacks sufficient permissions to access this resource.
'
content:
application/json:
schema:
$ref: '#/components/schemas/Error_2'
BadRequest:
description: 'Bad Request - The request is malformed, contains invalid parameters, or missing
required fields. Check request syntax and parameter values.
'
content:
application/json:
schema:
$ref: '#/components/schemas/Error_2'
SuspectedVulnerabilitiesCreateResponse:
description: Response to a POST request, inserting new suspected vulnerabilities for the organization
content:
application/json:
schema:
type: array
description: List of numeric identifiers of newly created suspected vulnerabilities
items:
type: integer
InternalServerError:
description: 'Internal Server Error - An unexpected server-side error occurred. This indicates
a system issue that should be reported to the engineering team for investigation.
'
content:
application/json:
schema:
$ref: '#/components/schemas/Error_2'
UnexpectedError:
description: 'Unexpected Error - An unhandled error condition occurred. This represents
an edge case scenario that requires technical support intervention.
'
content:
application/json:
schema:
$ref: '#/components/schemas/Error_2'
schemas:
StringMap:
type: object
additionalProperties:
type: string
ExternalJobTriageAgentToolExecution:
type: object
description: Tool execution data for a vulnerability triage, including analysis and reporting
properties:
name:
type: string
description: Name of the tool
input:
type: string
description: Input to the tool
output:
type: string
description: Output of the tool
error:
type: string
description: Error of the tool
ExternalJobTriageAgentBlock:
type: object
description: Block data for a vulnerability triage, including analysis and reporting
properties:
parentThoughtId:
type: string
description: Unique identifier for the parent thought
predecessorThoughtId:
type: string
description: Unique identifier for the predecessor thought
SuspectedVulnerabilitiesCreateRequest:
description: List of objects, describing the properties of suspected vulnerabilities to create
type: array
items:
$ref: '#/components/schemas/NewSuspectedVulnerability'
SuspectedVulnerabilitiesSummaries_SummarySeverity:
type: object
description: Summary severity of the vulnerabilities
properties:
critical:
type: integer
description: Number of critical severity vulnerabilities
high:
type: integer
description: Number of high severity vulnerabilities
medium:
type: integer
description: Number of medium severity vulnerabilities
low:
type: integer
description: Number of low severity vulnerabilities
none:
type: integer
description: Number of vulnerabilities with no assigned severity
example: 0
total:
type: integer
description: Total number of vulnerabilities across all severity levels
example: 100
Relationship:
type: object
properties:
data: {}
links:
$ref: '#/components/schemas/Links'
Data:
type: object
properties:
attributes: {}
id:
type: string
links:
$ref: '#/components/schemas/Links'
meta: {}
relationships:
type: object
additionalProperties:
$ref: '#/components/schemas/Relationship'
type:
$ref: '#/components/schemas/ResourceType'
ExternalJobTriageAgentThought:
type: object
description: Thought data for a vulnerability triage, including analysis and reporting
properties:
triageId:
type: string
description: Unique identifier for this triage assessment
targetId:
type: string
description: Unique identifier for the target of this triage assessment
thoughtId:
type: string
description: Unique identifier for this thought
thoughtType:
type: string
description: Type of thought
thoughtContent:
type: string
description: Content of the thought
toolExecution:
$ref: '#/components/schemas/ExternalJobTriageAgentToolExecution'
block:
$ref: '#/components/schemas/ExternalJobTriageAgentBlock'
addedAt:
type: string
format: date-time
description: ISO 8601 timestamp when the thought was added
SuspectedVulnerabilitiesSummaries_Counts:
type: object
description: Numerical counts of vulnerabilities grouped by various attributes
properties:
severity:
$ref: '#/components/schemas/SuspectedVulnerabilitiesSummaries_SummarySeverity'
status:
$ref: '#/components/schemas/SuspectedVulnerabilitiesSummaries_SummaryStatus'
Pagination:
type: object
description: Pagination metadata for navigating through large result sets
required:
- total
- page
- perPage
- totalPages
properties:
total:
type: integer
description: Total number of items across all pages
page:
type: integer
description: Current page number (1-based)
perPage:
type: integer
description: Number of items per page
totalPages:
type: integer
description: Total number of pages available
prev:
type: string
description: URL for the previous page (null if on first page)
next:
type: string
description: URL for the next page (null if on last page)
first:
type: string
description: URL for the first page
last:
type: string
description: URL for the last page
self:
type: string
description: URL for the current page
Error:
type: object
properties:
detail:
type: string
id:
type: string
source:
type: string
status:
type: integer
title:
type: string
SuspectedVulnerability:
type: object
properties:
id:
type: integer
asset_uid:
type: string
category_in_scope:
type: boolean
confidence:
type: number
format: float
cvss_base:
type: number
format: float
exploitable_locations:
type: array
items:
type: string
false_positive:
type: boolean
created_at:
type: string
format: date-time
last_detected_at:
type: string
format: date-time
payload:
type: object
reference_urls:
type: array
items:
type: string
severity:
type: string
source:
type: string
status:
type: string
vulnerability_status_id:
type: integer
reason_title:
type: string
reason_description:
type: string
organization_profile_id:
type: integer
automated_triage_status:
type: string
automated_triage_status_updated_at:
type: string
format: date-time
Metadata:
type: object
description: Additional metadata accompanying API responses
properties:
pagination:
$ref: '#/components/schemas/Pagination'
actions:
type: object
description: Available actions that can be performed on the returned data
ResourceType:
type: string
enum:
- asset_list
- assets_counts
- asset_details
- asset_whois
- asset_ports
- asset_providers
- asset_seed_groups
- health_check
- org_asset_ports
- org_asset_suspected_vulns
- org_asset_vulns
- org_asset_listings_tests_latest
- top_vulnerable_ports
- top_unique_ports
- most_recently_added_assets
- top_cisa_cves
- top_vulnerable_ips
- asset_gateways
- tags
- last_tested_counts
- last_assets_scan
SuspectedVulnerabilityWithTriages:
description: 'Extended suspected vulnerability schema that includes embedded triage assessments.
Used specifically for single vulnerability responses where triage data is included.
'
allOf:
- $ref: '#/components/schemas/SuspectedVulnerability_2'
- type: object
properties:
triages:
type: array
description: Associated triage assessments for this vulnerability
items:
$ref: '#/components/schemas/SuspectedVulnerabilityTriage'
SuspectedVulnerabilitiesSummaries:
type: object
description: Statistical summary information about the vulnerabilities in the result set
properties:
counts:
$ref: '#/components/schemas/SuspectedVulnerabilitiesSummaries_Counts'
SuspectedVulnerabilitiesSummaries_SummaryStatus:
type: object
description: Summary status of the vulnerabilities
properties:
eligible:
type: integer
description: Number of eligible vulnerabilities
example: 10
ineligible:
type: integer
description: Number of ineligible vulnerabilities
example: 10
agent_review:
type: integer
description: Number of vulnerabilities awaiting agent review
example: 10
ops_review:
type: integer
description: Number of vulnerabilities awaiting operations team review
example: 10
srt_review:
type: integer
description: Number of vulnerabilities awaiting security research team review
example: 10
vulnerable:
type: integer
description: Number of confirmed vulnerable findings
example: 10
not_vulnerable:
type: integer
description: Number of findings determined to be not vulnerable
example: 10
out_of_scope:
type: integer
description: Number of findings determined to be out of scope
example: 10
target_unreachable:
type: integer
description: Number of findings determined to be target unreachable
example: 10
not_applicable:
type: integer
description: Number of findings determined to be not applicable
example: 10
total:
type: integer
description: Total number of vulnerabilities across all status categories
example: 100
Error_2:
type: object
description: Standard error response format following RFC 7807 Problem Details specification
required:
- status
- title
properties:
type:
type: string
description: URI reference that identifies the problem type
status:
type: integer
description: HTTP status code for this occurrence of the problem
title:
type: string
description: Human-readable summary of the problem type
detail:
type: string
description: Human-readable explanation specific to this occurrence
instance:
type: string
description: URI reference identifying the specific occurrence of the problem
Links:
type: object
properties:
next:
type: string
prev:
type: string
SuspectedVulnerability_2:
type: object
properties:
id:
type: integer
format: int64
description: Unique numeric identifier for the suspected vulnerability
example: 2000
assetUid:
type: string
description: Unique identifier for the asset where the vulnerability was discovered
example: ah28034gsjdf98eqwgbjufj
listingUid:
type: string
description: Unique identifier for the penetration testing listing/engagement scope
example: ah28034gsjdf
listingCodename:
type: string
description: Human-readable codename for the penetration testing engagement
example: ACME-H001
organizationUid:
type: string
description: Unique identifier for the organization that owns this vulnerability
example: ah28034gsjdf
categoryInScope:
type: boolean
description: Indicates whether this vulnerability category is within the current testing scope
confidence:
type: string
description: Confidence level of the vulnerability assessment (e.g., 'firm', 'tentative', 'certain')
example: firm
cvssBase:
type: number
format: double
description: CVSS (Common Vulnerability Scoring System) base score indicating severity (0-10 scale)
example: 5.4
exploitableLocations:
type: array
description: List of key-value maps describing exploitable locations
items:
$ref: '#/components/schemas/StringMap'
falsePositive:
type: boolean
description: Flag indicating whether this vulnerability has been determined to be a false positive
payload:
type: object
description: Additional vulnerability data and metadata from the detection source
$ref: '#/components/schemas/StringMap'
referenceUrls:
type: array
items:
type: string
description: External reference URLs providing additional context about the vulnerability
example:
- https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring_ec2.html
- https://docs.aws.amazon.com/AWSEC2/latest/APIRef
# --- truncated at 32 KB (44 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/synack/refs/heads/main/openapi/synack-suspected-vulnerabilities-api-openapi.yml