Introduction Getting started
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
This is a developer guide for Outpost24's full stack security assessment platform REST API.
The REST API specification in OpenAPI Specification (OAS) 3.0 format is available on Outpost24's SaaS platform and the HIAB appliances .
To explore the API, scroll through the index on the left or paste the content of the OAS specification in the Swagger editor .
Base URL for all API requests
Response codes
Unsupported HTTP verbs will return 405 or 400.
Authentication
The REST API uses JWT tokens for granting access to the API's resources.
To authenticate, use this code:
# You can also use wget
curl -X POST \
https://outscan.outpost24.com/opi/rest/auth/login \
-d 'username=your_username' \
-d 'password=your_password'
Successful response:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJPdXRwb3N0MjQiLCJ...
There are 2 ways to generate a new token:
Login with username and password by sending a POST request to /auth/login
Call GET /auth/login with an existing, valid token
curl -X GET \
https://outscan.outpost24.com/opi/rest/auth/login \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc...'
The API accepts requests submitted only via HTTPS.
Token expiration time
To set custom expiration time of the JWT token:
curl -X POST \
https://outscan.outpost24.com/opi/rest/auth/login \
-d 'username=your_username' \
-d 'password=your_password' \
-d 'validUntil=2019-10-15T15%3A50%3A00Z'
The default validity period for the generated tokens is 10 minutes . It's possible to set a custom expiration time for the tokens by submitting the optional parameter validUntil.
Example request
curl -X GET \
'https://outscan.outpost24.com/opi/rest/exploits?limit=1' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc...
To authenticate to the API resources, submit the generated JWT token in the Authorization header.
Access
This table presents a user role access matrix with the defined in the system user roles, API collections and actions.
Method
Collection
Description
admin
user
support
licensemanager
legal
pcioperator
swatservice
superswatservice
customersuccess
msspmanager
GET
/about
Retrieve the list of software versions
x 1)
GET
/accounts/{accountId}
Get an account
x 1)
DELETE
/accounts/{accountId}
Delete an account
x 1)
PATCH
/accounts/{accountId}
Partially update an account
x 1)
PUT
/accounts/{accountId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/accounts/{accountId}/tags/{tagId}
Delete a link to a tag
x 1)
GET
/accounts
Get a list of accounts
x 1)
POST
/accounts
Create an account
x 1)
HEAD
/accounts
Get header with count
x 1)
PUT
/accounts/{accountId}/tags
Modify linked set of tags
x 1)
GET
/agents/installers/download
Download an agent installer (Deprecated: 2024-5-21)
x 1)
POST
/agents/installers/download
Request for creating an agent installer
x 1)
GET
/agents/{agentUuid}/logs
Get agent logs
x 1)
GET
/agents/version
Retrieve the agent version
x 1)
GET
/agents/installers/configuration
Download agent installer configuration file
x 1)
GET
/agents/installers
Get agent installers
x 1)
GET
/appliances/{applianceId}
Get a appliance
x 1)
GET
/appliances
Get a list of appliances
x 1)
HEAD
/appliances
Get header with count
x 1)
DELETE
/asset-groups/{assetGroupId}/activities/{activityId}
Delete an activity
GET
/asset-groups/{assetGroupId}
Get an asset group
x 1)
DELETE
/asset-groups/{assetGroupId}
Delete an asset group
x 1)
PATCH
/asset-groups/{assetGroupId}
Partially update an asset group
x 1)
PUT
/asset-groups/{assetGroupId}/assets/{assetId}
Create a link to an asset
x 1)
DELETE
/asset-groups/{assetGroupId}/assets/{assetId}
Delete a link to an asset
x 1)
PUT
/asset-groups/{assetGroupId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/asset-groups/{assetGroupId}/tags/{tagId}
Delete an existing link to a tag
x 1)
GET
/asset-groups/{assetGroupId}/comments/{commentId}
Get a comment for an asset group
x 1)
DELETE
/asset-groups/{assetGroupId}/comments/{commentId}
Delete a comment for an asset group
x 1)
PATCH
/asset-groups/{assetGroupId}/comments/{commentId}
Partially update a comment for an asset group
x 1)
GET
/asset-groups/comments
Get comments
x 1)
POST
/asset-groups/comments
Add a comment to one or several asset groups
x 1)
DELETE
/asset-groups/comments
Delete one or several comments for one or several asset groups
x 1)
HEAD
/asset-groups/comments
Get header with count
GET
/asset-groups/activities
Get activities
x 1)
GET
/asset-groups/{assetGroupId}/activities
Get activities
x 1)
POST
/asset-groups/{assetGroupId}/activities
Add an activity for an AssetGroup
HEAD
/asset-groups/{assetGroupId}/activities
Get header with count
x 1)
GET
/asset-groups
Get a list of asset groups
x 1)
POST
/asset-groups
Create an asset group
x 1)
HEAD
/asset-groups
Get header with count
x 1)
GET
/asset-groups/{assetGroupId}/comments
Get the comments for an asset group
x 1)
POST
/asset-groups/{assetGroupId}/comments
Add a comment for an asset group
x 1)
GET
/asset-groups/{assetGroupId}/dynamic-tags
Get a list of tags for a dynamic group
x 1)
GET
/asset-groups/{assetGroupId}/subscriptions
Get subscriptions associated with the given asset group
x 1)
PUT
/asset-groups/{assetGroupId}/tags
Modify linked set of tags
x 1)
GET
/asset-identifiers/{assetIdentifierId}
Get an asset identifier
x 1)
DELETE
/asset-identifiers/{assetIdentifierId}
Delete an asset identifier
x 1)
PATCH
/asset-identifiers/{assetIdentifierId}
Partially update an asset identifier
x 1)
DELETE
/asset-identifiers/{assetIdentifierId}/links/{assetIdentifierLinkId}
Delete an asset identifier link
x 1)
GET
/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename}
Get the screenshot file for an asset identifier
x 1)
PUT
/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename}
Add screenshot to asset identifier
x 1)
DELETE
/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename}
Delete the screenshot file for an asset identifier
x 1)
PUT
/asset-identifiers/{assetIdentifierId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/asset-identifiers/{assetIdentifierId}/tags/{tagId}
Delete a link to a tag
x 1)
GET
/asset-identifiers
Get a list of asset identifiers
x 1)
POST
/asset-identifiers
Create an asset identifier
x 1)
HEAD
/asset-identifiers
Get header with count
x 1)
GET
/asset-identifiers/{assetIdentifierId}/screenshots
Get the screenshot list for an asset identifier
x 1)
GET
/asset-identifiers/{assetIdentifierId}/links
Get the links for an asset identifier
x 1)
POST
/asset-identifiers/{assetIdentifierId}/links
Create an asset identifier link
x 1)
GET
/assets/{assetId}
Get an asset
x 1)
DELETE
/assets/{assetId}
Delete an asset
x 1)
PATCH
/assets/{assetId}
Partially update an asset
x 1)
DELETE
/assets/{assetId}/links/{assetLinkId}
Delete an asset link
x 1)
PUT
/assets/{assetId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/assets/{assetId}/tags/{tagId}
Delete a link to a tag
x 1)
PUT
/assets/tags/{tagId}
Create one or several links to one a tag
x 1)
DELETE
/assets/tags/{tagId}
Delete one or several links to a tag
x 1)
GET
/assets
Get a list of assets
x 1)
POST
/assets
Create an asset
x 1)
DELETE
/assets
Delete one or several assets
x 1)
HEAD
/assets
Get header with count
x 1)
PATCH
/assets
Partially update one or several assets
x 1)
GET
/assets/{assetId}/links
Get the links for an asset
x 1)
POST
/assets/{assetId}/links
Create an asset link
x 1)
GET
/assets/{assetId}/subscriptions
Get subscriptions associated with the given asset
x 1)
POST
/assets/{assetId}/merge
Merge two or more assets into a single asset
x 1)
PUT
/assets/{assetId}/tags
Modify linked set of tags
x 1)
PUT
/assets/tags
Modify linked set of tags to one or several assets
x 1)
POST
/assets/refresh-tags
Refresh tags
x 1)
POST
/assets/{assetId}/split
Split an asset based on identifier subset
x 1)
GET
/audits/{auditId}
Get a audit by ID
x 1)
GET
/audits
Get a list of audits
x 1)
HEAD
/audits
Get header with count
x 1)
GET
/auth/login
Get a token
x 1)
POST
/auth/login
Log in with username and password
x 1)
POST
/auth/logout
Log out
x 1)
POST
/auth/send-2fa-sms
Send an sms containing the two-factor authentication code to user
x 1)
GET
/blueprints/download/{key}
Download a blueprint
POST
/certificate/renew
Renews certificate
x 1)
GET
/checks/{checkId}/comments/{commentId}
Get a comment for a check
x 1)
DELETE
/checks/{checkId}/comments/{commentId}
Delete a comment for a check
x 1)
GET
/checks/{checkId}
Get a check
x 1)
GET
/checks
Get a list of checks
x 1)
HEAD
/checks
Get header with count
x 1)
GET
/checks/{checkId}/comments
Get the comments for a check
x 1)
POST
/checks/{checkId}/comments
Add a comment for a check
x 1)
GET
/checks/{checkId}/exploits
Get the exploits for a check
x 1)
GET
/classifications/{classificationId}
Get a classification
GET
/classifications
Get a list of classifications
HEAD
/classifications
Get header with count
PUT
/compliance/findings/{findingId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/compliance/findings/{findingId}/tags/{tagId}
Delete a link to a tag
x 1)
GET
/compliance/findings/{findingId}
Get a compliance finding by ID
x 1)
GET
/compliance/findings
Get a list of compliance findings
x 1)
HEAD
/compliance/findings
Get header with count
x 1)
GET
/compliance/policies/{policyId}
Get a compliance policy
x 1)
GET
/compliance/policies
Get a list of compliance policies
x 1)
HEAD
/compliance/policies
Get header with count
x 1)
GET
/compliance/requirements/{requirementId}
Get a compliance requirement
x 1)
GET
/compliance/requirements
Get a list of requirements
x 1)
HEAD
/compliance/requirements
Get header with count
x 1)
POST
/compliance/findings/{findingId}/mark-exception
Mark compliance finding as exception
x 1)
POST
/compliance/findings/{findingId}/mark-false-positive
Mark compliance finding as false positive
x 1)
PUT
/compliance/findings/{findingId}/tags
Modify linked set of tags
x 1)
POST
/compliance/reports
Generate a compliance report
x 1)
POST
/compliance/findings/{findingId}/unmark-exception
Unmark finding as exception
x 1)
POST
/compliance/findings/{findingId}/unmark-false-positive
Unmark finding as false positive
x 1)
GET
/consumption-stats/{consumptionStatsId}
Get consumption stats by ID
GET
/consumption-stats
Get a list of consumption stats
HEAD
/consumption-stats
Get header with count
GET
/consumption-stats/{consumptionStatsId}/subscriptions
Get a list of subscriptions for consumption stats
GET
/credential-classes/{credentialClassId}
Get a credential class
x 1)
GET
/credential-classes
Get a list of credential classes
x 1)
HEAD
/credential-classes
Get header with count
x 1)
GET
/credentials/{credentialId}
Get a credential
x 1)
DELETE
/credentials/{credentialId}
Delete a credential
x 1)
PATCH
/credentials/{credentialId}
Partially update a credential
x 1)
POST
/credentials
Create a credential
x 1)
PUT
/customers/{customerId}/tags/{tagId}
Create a link to a tag
DELETE
/customers/{customerId}/tags/{tagId}
Delete a link to a tag
GET
/customers/{customerId}/consultancy
Get consultancy token
GET
/customers/me/consumption-stats/{consumptionStatsId}
Get consumption stats by ID for current customer
x 1)
GET
/customers/me/consumption-stats
Get consumption stats for current customer
x 1)
GET
/customers/{customerId}/consumption-stats
Get consumption stats for a customer
GET
/customers/me/consumption-stats/{consumptionStatsId}/subscriptions
Get a list of subscriptions for consumption stats for current customer
x 1)
GET
/customers/me
Get current customer
x 1)
GET
/customers/{customerId}
Get a customer
PATCH
/customers/{customerId}
Partially update a customer
GET
/customers
Get a list of customers
HEAD
/customers
Get header with count
GET
/customers/{customerId}/usage-stats
Get usage stats for a customer
POST
/customers/me/migrate
Migrate current customer
x 1)
POST
/customers/{customerId}/migrate
Migrate a customer
PUT
/customers/{customerId}/tags
Modify linked set of tags
POST
/customers/me/reset-migration
Reset migration for current customer
x 1)
POST
/customers/{customerId}/reset-migration
Reset migration for a customer
GET
/dashboards/{dashboardId}
Get a dashboard
x 1)
DELETE
/dashboards/{dashboardId}
Delete a dashboard
x 1)
PATCH
/dashboards/{dashboardId}
Partially update a dashboard
x 1)
PUT
/dashboards/{dashboardId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/dashboards/{dashboardId}/tags/{tagId}
Delete a link to a tag
x 1)
GET
/dashboards
Get a list of dashboards
x 1)
POST
/dashboards
Create a dashboard
x 1)
HEAD
/dashboards
Get header with count
x 1)
PUT
/dashboards/{dashboardId}/tags
Modify linked set of tags
x 1)
POST
/decrypt/file
Request the decryption of an uploaded file
POST
/decrypt/object
Request the decryption of a file from object storage
GET
/downloads/{key}
Get a download cache entry and generate a token for downloading the file, expires after 5 minutes
x 1)
DELETE
/downloads/{key}
Delete a download cache entry, and potentially associated data
x 1)
GET
/downloads/download/{token}
Download a file
x 1)
GET
/downloads
Get a list of download cache entries
x 1)
HEAD
/downloads
Get header with count
x 1)
GET
/downloads/{token}
Compatibility endpoint for file download (Deprecated: 2021-03-04)
x 1)
POST
/enroll/db-settings
Configure database settings
x 1)
DELETE
/enroll/db-settings
Delete database settings
x 1)
POST
/enroll/services
Enroll services
x 1)
GET
/events/subscriptions/{subscriptionId}
Get an event subscription
x 1)
DELETE
/events/subscriptions/{subscriptionId}
Delete an event subscription
x 1)
PATCH
/events/subscriptions/{subscriptionId}
Partially update an event subscription
x 1)
PUT
/events/subscriptions/{subscriptionId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/events/subscriptions/{subscriptionId}/tags/{tagId}
Delete a link to a tag
x 1)
GET
/events/subscriptions
Get a list of event subscriptions
x 1)
POST
/events/subscriptions
Create event subscription
x 1)
HEAD
/events/subscriptions
Get header with count
x 1)
GET
/events/subscriptions/template-variables/{trigger}
Get jinja variables relevant to an event
x 1)
PUT
/events/subscriptions/{subscriptionId}/tags
Modify linked set of tags
x 1)
GET
/exploits/{exploitId}
Get an exploit
x 1)
GET
/exploits
Get a list of exploits
x 1)
HEAD
/exploits
Get header with count
x 1)
GET
/finding-template-groups/{findingTemplateGroupId}
Get a finding template group
DELETE
/finding-template-groups/{findingTemplateGroupId}
Delete a finding template group
GET
/finding-template-groups
Get a list of finding template groups
POST
/finding-template-groups
Create a finding template group
HEAD
/finding-template-groups
Get header with count
PATCH
/finding-template-groups/{findingTemplateId}
Update a finding template
GET
/finding-templates/{findingTemplateId}
Get a finding template
DELETE
/finding-templates/{findingTemplateId}
Delete a finding template
PATCH
/finding-templates/{findingTemplateId}
Update a finding template
PUT
/finding-templates/{findingTemplateId}/tags/{tagId}
Create a link to a tag
DELETE
/finding-templates/{findingTemplateId}/tags/{tagId}
Delete a link to a tag
GET
/finding-templates
Get a list of finding templates
POST
/finding-templates
Create a finding template
HEAD
/finding-templates
Get header with count
PUT
/finding-templates/{findingTemplateId}/tags
Modify linked set of tags
GET
/findings/{findingId}/attachments/{attachmentId}
Get an attachment for a finding
x 1)
DELETE
/findings/{findingId}/attachments/{attachmentId}
Delete an attachment for a finding
GET
/findings/{findingId}/comments/{commentId}
Get a comment for a finding
x 1)
DELETE
/findings/{findingId}/comments/{commentId}
Delete a comment for a finding
x 1)
PATCH
/findings/{findingId}/comments/{commentId}
Partially update a comment for a finding
x 1)
GET
/findings/comments
Get comments
POST
/findings/comments
Add a comment to one or several findings
x 1)
DELETE
/findings/comments
Delete one or several comments for one or several findings
x 1)
HEAD
/findings/comments
Get header with count
GET
/findings/{findingId}
Get a finding by ID
x 1)
DELETE
/findings/{findingId}
Delete a finding
PATCH
/findings/{findingId}
Partially update a finding
x 1)
PUT
/findings/{findingId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/findings/{findingId}/tags/{tagId}
Delete a link to a tag
x 1)
PUT
/findings/tags/{tagId}
Create links to a tag
x 1)
DELETE
/findings/tags/{tagId}
Delete links to a tag
x 1)
GET
/findings
Get a list of findings
x 1)
POST
/findings
Create a finding
DELETE
/findings
Delete one or several findings
HEAD
/findings
Get header with count
x 1)
PATCH
/findings
Partially update one or several findings
x 1)
PUT
/findings/{findingId}/matches/{matchId}
Create a link to a match
DELETE
/findings/{findingId}/matches/{matchId}
Delete a link to a match
GET
/findings/{findingId}/attachments/{attachmentId}/download
Get the token for downloading an attachment for a finding
x 1)
POST
/findings/{findingId}/send
Send finding as email
x 1)
GET
/findings/{findingId}/attachments
Get the attachments for a finding
x 1)
POST
/findings/{findingId}/attachments
Add an attachment for a finding
GET
/findings/{findingId}/comments
Get the comments for a finding
x 1)
POST
/findings/{findingId}/comments
Add a comment for a finding
x 1)
GET
/findings/{findingId}/exploits
Get the exploits for a finding
x 1)
GET
/findings/delta
Get a list of deltas
x 1)
GET
/findings/delta-summary
Get a delta summary
x 1)
GET
/findings/solutions
Get a list of solutions
x 1)
POST
/findings/{findingId}/secure-code-warrior
Log the request to Secure Code Warrior
x 1)
POST
/findings/{findingId}/mark-false-positive
Mark finding as false positive
x 1)
POST
/findings/mark-false-positive
Mark one or several finding(s) as false positives
x 1)
POST
/findings/{findingId}/mark-fixed
Mark finding as fixed
x 1)
POST
/findings/mark-fixed
Mark one or several findings as fixed
x 1)
POST
/findings/{findingId}/mark-irreproducible
Mark finding as irreproducible
x 1)
POST
/findings/mark-irreproducible
Mark one or several findings as irreproducible
x 1)
PUT
/findings/{findingId}/tags
Modify linked set of tags
x 1)
PUT
/findings/tags
Modify linked set of tags to one or several findings
x 1)
POST
/findings/{findingId}/publish
Publish finding (set as present)
POST
/findings/{findingId}/reject
Set finding as rejected
POST
/findings/{findingId}/request-clarification
Request clarification for a finding
x 1)
POST
/findings/{findingId}/request-verification
Mark finding as pending verification
x 1)
POST
/findings/request-verification
Mark one or several findings as pending for verification
x 1)
POST
/findings/{findingId}/reset-status
Reset status of finding to 'PRESENT'
x 1)
POST
/findings/reset-status
Reset status on one or several findings to 'PRESENT
x 1)
POST
/findings/{findingId}/accept
Accept finding
x 1)
POST
/findings/accept
Accept one or several findings
x 1)
POST
/findings/{findingId}/quality-assure
Set finding as quality assured
POST
/findings/{findingId}/review
Set finding as reviewed and transition to be verified
POST
/findings/{findingId}/verify
Set finding as verified and transitioned to be quality assured
POST
/findings/{findingId}/unwatch
Unwatch a finding
x 1)
POST
/findings/unwatch
Unwatch one or several findings
x 1)
POST
/findings/{findingId}/watch
Watch a finding
x 1)
POST
/findings/watch
Watch one or several findings
x 1)
GET
/globals
Get global settings
x 1)
GET
/globals/timezones
Get a list of timezones
x 1)
GET
/integrations/authorization
Authorization
x 1)
GET
/integrations/{integrationId}/authorize
Authorize an integration based on OAuth 2.0
x 1)
GET
/integrations/{integrationId}
Get an integration
x 1)
DELETE
/integrations/{integrationId}
Delete an integration
x 1)
PATCH
/integrations/{integrationId}
Partially update an integration
x 1)
PUT
/integrations/{integrationId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/integrations/{integrationId}/tags/{tagId}
Delete a link to a tag
x 1)
GET
/integrations
Get a list of integrations
x 1)
POST
/integrations
Create an integration
x 1)
HEAD
/integrations
Get header with count
x 1)
PUT
/integrations/{integrationId}/tags
Modify linked set of tags
x 1)
POST
/integrations/verify
Verify the integration connectivity
x 1)
POST
/integrations/{integrationId}/verify
Verify the integration connectivity
x 1)
GET
/managed-report-groups/{managedReportGroupId}
Get a managed report group (Deprecated: 2019-12-11)
x 1)
GET
/managed-report-groups
Get a list of managed report groups (Deprecated: 2019-12-11)
x 1)
HEAD
/managed-report-groups
Get header with count (Deprecated: 2019-12-11)
x 1)
GET
/managed-reports/{managedReportId}
Get a managed report
x 1)
DELETE
/managed-reports/{managedReportId}
Delete a managed report
x 1)
PATCH
/managed-reports/{managedReportId}
Partially update a managed report
x 1)
PUT
/managed-reports/{managedReportId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/managed-reports/{managedReportId}/tags/{tagId}
Delete a link to a tag
x 1)
GET
/managed-reports/{managedReportId}/download
Get the token for downloading a managed report
x 1)
GET
/managed-reports
Get a list of managed reports
x 1)
POST
/managed-reports
Create a managed report
x 1)
HEAD
/managed-reports
Get header with count
x 1)
GET
/managed-reports/tags
Get a list of tags for managed reports
x 1)
PUT
/managed-reports/{managedReportId}/tags
Modify linked set of tags
x 1)
POST
/managed-reports/upload
Upload a managed report from HIAB
x 1)
GET
/matches/{matchId}
Get a match
x 1)
DELETE
/matches/{matchId}
Delete a match
PATCH
/matches/{matchId}
Partially update a match
GET
/matches
Get a list of matches
x 1)
POST
/matches
Create a match
HEAD
/matches
Get header with count
x 1)
GET
/notifications/{notificationId}
Get a notification
x 1)
GET
/notifications
Get a list of notifications
x 1)
HEAD
/notifications
Get header with count
x 1)
POST
/notifications/{notificationId}/mark-as-read
Mark a notification as read
x 1)
POST
/notifications/{notificationId}/mark-as-unread
Mark a notification as unread
x 1)
GET
/organizations/{organizationId}
Get an organization
GET
/organizations
Get a list of organizations
HEAD
/organizations
Get header with count
GET
/outscan/findings/{findingId}/exploits
Get the exploits for a finding
x 1)
GET
/outscan/findings/{findingId}
Get a finding by ID
x 1)
GET
/outscan/findings
Get a list of findings
x 1)
HEAD
/outscan/findings
Get header with count
x 1)
GET
/outscan/scan-logs/{scanLogId}/findings
Get a list of findings for a scan
x 1)
GET
/outscan/scan-logs/{scanLogId}
Get a scan log
x 1)
GET
/outscan/scan-logs
Get a list of scan logs
x 1)
HEAD
/outscan/scan-logs
Get header with count
x 1)
GET
/outscan/scans/{scanId}
Get a scan
x 1)
GET
/outscan/scans
Get a list of scans
x 1)
HEAD
/outscan/scans
Get header with count
x 1)
POST
/outscan/scans/{scanId}/stop
Stop a scan
x 1)
GET
/outscan/schedules/{scheduleId}
Get a schedule
x 1)
DELETE
/outscan/schedules/{scheduleId}
Delete a schedule
x 1)
PATCH
/outscan/schedules/{scheduleId}
Partially update a schedule
x 1)
GET
/outscan/schedules
Get a list of schedules
x 1)
POST
/outscan/schedules
Create a schedule
x 1)
HEAD
/outscan/schedules
Get header with count
x 1)
POST
/outscan/schedules/{scheduleId}/scan
Start scanning now
x 1)
GET
/outscan/targets/{targetId}
Get a target
x 1)
DELETE
/outscan/targets/{targetId}
Delete a target
x 1)
GET
/outscan/targets
Get a list of targets
x 1)
POST
/outscan/targets
Create new targets
x 1)
HEAD
/outscan/targets
Get header with count
x 1)
POST
/password-recovery
Request password recovery email for username
x 1)
GET
/product-information
Get a list of products
x 1)
HEAD
/product-information
Get header with count
x 1)
GET
/release-notes/notification-trigger
Get last release notes notification trigger timestamp
POST
/release-notes/trigger-notification
Trigger release notes notification and set trigger timestamp
GET
/report-schedules/{reportScheduleId}
Get a report schedule (Deprecated: 2019-12-11)
x 1)
DELETE
/report-schedules/{reportScheduleId}
Delete a report schedule (Deprecated: 2019-12-11)
x 1)
PATCH
/report-schedules/{reportScheduleId}
Partially update a report schedule (Deprecated: 2019-12-11)
x 1)
GET
/report-schedules
Get a list of report schedules (Deprecated: 2019-12-11)
x 1)
POST
/report-schedules
Create a new report schedule (Deprecated: 2019-12-11)
x 1)
HEAD
/report-schedules
Get header with count (Deprecated: 2019-12-11)
x 1)
POST
/report-schedules/{reportScheduleId}/send
Start scanning now (Deprecated: 2019-12-11)
x 1)
GET
/reports/{key}
Get a report cache entry and generate a token for downloading the report, expires after 5 minutes (Deprecated: 2021-02-25)
x 1)
DELETE
/reports/{key}
Delete a report (Deprecated: 2021-02-25)
x 1)
GET
/reports
Get a list of report cache entries (Deprecated: 2021-02-25)
x 1)
POST
/reports
Generate a report
x 1)
HEAD
/reports
Get header with count (Deprecated: 2021-02-25)
x 1)
GET
/resource-groups/{resourceGroupId}
Get a resource group
x 1)
DELETE
/resource-groups/{resourceGroupId}
Delete a resource group
x 1)
PATCH
/resource-groups/{resourceGroupId}
Partially update a resource group
x 1)
GET
/resource-groups
Get a list of resource groups
x 1)
POST
/resource-groups
Create a resource group
x 1)
HEAD
/resource-groups
Get header with count
x 1)
POST
/rule-engine
Run rule engine
GET
/scan-configuration-groups/{scanConfigurationGroupId}
Get scan configuration group
x 1)
DELETE
/scan-configuration-groups/{scanConfigurationGroupId}
Delete scan configuration group
x 1)
PATCH
/scan-configuration-groups/{scanConfigurationGroupId}
Partially update a scan configuration group
x 1)
GET
/scan-configuration-groups
Get a list of scan configuration groups
x 1)
POST
/scan-configuration-groups
Create a scan configuration group
x 1)
HEAD
/scan-configuration-groups
Get header with count
x 1)
PUT
/scan-configurations/{scanConfigurationId}/asset-identifiers/{assetIdentifierId}
Create a link to an asset identifier
x 1)
DELETE
/scan-configurations/{scanConfigurationId}/asset-identifiers/{assetIdentifierId}
Delete a link to an asset identifier
x 1)
PUT
/scan-configurations/{scanConfigurationId}/assets/{assetId}
Create a link to an asset
x 1)
DELETE
/scan-configurations/{scanConfigurationId}/assets/{assetId}
Delete a link to an asset
x 1)
GET
/scan-configurations/{scanConfigurationId}
Get a scan configuration
x 1)
DELETE
/scan-configurations/{scanConfigurationId}
Delete a scan configuration
x 1)
PATCH
/scan-configurations/{scanConfigurationId}
Partially update a scan configuration
x 1)
PUT
/scan-configurations/{scanConfigurationId}/schedules/{scheduleId}
Create a link to a schedule
x 1)
DELETE
/scan-configurations/{scanConfigurationId}/schedules/{scheduleId}
Delete a link to a schedule
x 1)
PUT
/scan-configurations/{scanConfigurationId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/scan-configurations/{scanConfigurationId}/tags/{tagId}
Delete a link to a tag
x 1)
PUT
/scan-configurations/tags/{tagId}
Create a tag link to one or several scan configurations
x 1)
DELETE
/scan-configurations/tags/{tagId}
Delete a tag link to one or several scan configurations
x 1)
GET
/scan-configurations
Get a list of scan configurations
x 1)
POST
/scan-configurations
Create a scan configuration
x 1)
DELETE
/scan-configurations
Delete one or several scan configurations
x 1)
HEAD
/scan-configurations
Get header with count
x 1)
PATCH
/scan-configurations
Partially update one or several scan configurations
x 1)
PUT
/scan-configurations/{scanConfigurationId}/tags
Modify linked set of tags
x 1)
PUT
/scan-configurations/tags
Modify linked set of tags to several scan configurations
x 1)
POST
/scan-configurations/{scanConfigurationId}/scan
Start a scan based on this configuration
x 1)
POST
/scan-configurations/test-setup-script
Test a setup LUA script
x 1)
POST
/scan-configurations/{scanConfigurationId}/test-setup-script
Test an application setup LUA script
x 1)
GET
/scan-policies/{scanPolicyId}
Get a scan policy
x 1)
DELETE
/scan-policies/{scanPolicyId}
Delete a scan policy
x 1)
PATCH
/scan-policies/{scanPolicyId}
Partially update an scan policy
x 1)
PUT
/scan-policies/{scanPolicyId}/accounts/{accountId}
Create a link to an account
x 1)
DELETE
/scan-policies/{scanPolicyId}/accounts/{accountId}
Delete a link to an account
x 1)
PUT
/scan-policies/{scanPolicyId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/scan-policies/{scanPolicyId}/tags/{tagId}
Delete a link to a tag
x 1)
GET
/scan-policies/default-settings
Get default scan policy settings
x 1)
GET
/scan-policies
Get a list of scan policies
x 1)
POST
/scan-policies
Create a scan policy
x 1)
HEAD
/scan-policies
Get header with count
x 1)
PUT
/scan-policies/{scanPolicyId}/tags
Modify linked set of tags
x 1)
PUT
/scan-policies/{scanPolicyId}/accounts
Modify linked set of account IDs
x 1)
GET
/scanners/{scannerId}
Get a scanner
x 1)
GET
/scanners
Get a list of scanners
x 1)
HEAD
/scanners
Get header with count
x 1)
GET
/scans/{scanId}/crawled-urls
Get the crawled URLs for a scan
x 1)
GET
/scans/{scanId}/discovery
Get the discovery results for a scan
x 1)
GET
/scans/{scanId}/issues
Get the issues for a scan
x 1)
GET
/scans/{scanId}/log
Get the log for a scan
x 1)
GET
/scans/{scanId}
Get a scan
x 1)
GET
/scans
Get a list of scans
x 1)
POST
/scans
Create a scan
x
HEAD
/scans
Get header with count
x 1)
GET
/scans/{scanId}/metadata
Get metadata for a scan
POST
/scans/{scanId}/blueprints
Request a blueprint
x 1)
POST
/scans/{scanId}/stop
Stop a scan
x 1)
GET
/scheduled-reports/{scheduledReportId}
Get a scheduled report
x 1)
DELETE
/scheduled-reports/{scheduledReportId}
Delete a scheduled report
x 1)
PATCH
/scheduled-reports/{scheduledReportId}
Partially update a scheduled report
x 1)
PUT
/scheduled-reports/{scheduledReportId}/schedules/{scheduleId}
Create a link to a schedule
x 1)
DELETE
/scheduled-reports/{scheduledReportId}/schedules/{scheduleId}
Delete a link to a schedule
x 1)
PUT
/scheduled-reports/{scheduledReportId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/scheduled-reports/{scheduledReportId}/tags/{tagId}
Delete a link to a tag
x 1)
GET
/scheduled-reports
Get a list of scheduled reports
x 1)
POST
/scheduled-reports
Create a scheduled report
x 1)
HEAD
/scheduled-reports
Get header with count
x 1)
PUT
/scheduled-reports/{scheduledReportId}/tags
Modify linked set of tags
x 1)
POST
/scheduled-reports/{scheduledReportId}/send
Send report
x 1)
GET
/schedules/{scheduleId}
Get a schedule
x 1)
DELETE
/schedules/{scheduleId}
Delete a schedule
x 1)
PATCH
/schedules/{scheduleId}
Partially update a schedule
x 1)
GET
/schedules
Get a list of schedules
x 1)
POST
/schedules
Create a schedule
x 1)
HEAD
/schedules
Get header with count
x 1)
POST
/scoping
Submit scoping information.
x 1)
POST
/sub-users/me/change-password
Change current sub-users password; if current user isn't a sub-user, redirect to /users/me/change-password
x 1)
GET
/sub-users/{subUserId}
Get a sub-user
x 1)
DELETE
/sub-users/{subUserId}
Delete a sub-user
x 1)
PATCH
/sub-users/{subUserId}
Partially update a sub-user
x 1)
PUT
/sub-users/{subUserId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/sub-users/{subUserId}/tags/{tagId}
Delete a link to a tag
x 1)
GET
/sub-users/me
Get current sub-user; if current user isn't a sub-user, redirect to /users/me
x 1)
PATCH
/sub-users/me
Partially update current sub-user; if current user isn't a sub-user, redirect to /users/me
x 1)
GET
/sub-users
Get a list of sub-users
x 1)
POST
/sub-users
Create a new sub-user
x 1)
HEAD
/sub-users
Get header with count
x 1)
PUT
/sub-users/{subUserId}/tags
Modify linked set of tags
x 1)
GET
/subscription-audits/{auditId}
Get a subscription audit
x
GET
/subscription-audits
Get a list of subscription audits
x
HEAD
/subscription-audits
Get header with count
x
GET
/subscriptions/{subscriptionUuid}
Get a subscription
x 1)
DELETE
/subscriptions/{subscriptionUuid}
Delete a subscription
PATCH
/subscriptions/{subscriptionUuid}
Partially update a subscription
GET
/subscriptions/templates/{subscriptionTemplateUuid}
Get a subscription template
DELETE
/subscriptions/templates/{subscriptionTemplateUuid}
Delete a subscription template
PATCH
/subscriptions/templates/{subscriptionTemplateUuid}
Partially update a subscription template
GET
/subscriptions/{subscriptionId}/asset-groups
Get asset groups associated with the subscription
x 1)
GET
/subscriptions
Get a list of subscriptions
x 1)
POST
/subscriptions
Create a subscription
HEAD
/subscriptions
Get header with count
x 1)
GET
/subscriptions/templates
Get a list of subscription templates
POST
/subscriptions/templates
Create a subscription template
HEAD
/subscriptions/templates
Get header with count
GET
/subscriptions/templates/{subscriptionTemplateUuid}/template-variables
Get variables for subscription templates
GET
/subscriptions/template-variables
Get variables for subscription templates
POST
/subscriptions/templates/preview
Preview a subscription template
POST
/subscriptions/reports
Generate a report
GET
/summaries/{summaryId}
Get a summary
DELETE
/summaries/{summaryId}
Delete a summary
PATCH
/summaries/{summaryId}
Partially update a summary
GET
/summaries
Get a list of summaries
POST
/summaries
Create a summary
HEAD
/summaries
Get header with count
POST
/summaries/{summaryId}/transition
Transition a summary status
GET
/tags/{tagId}
Get a tag by ID
x 1)
DELETE
/tags/{tagId}
Delete a tag
x 1)
PATCH
/tags/{tagId}
Partially update a tag
x 1)
GET
/tags
Get a list of tags
x 1)
POST
/tags
Create a tag
x 1)
HEAD
/tags
Get header with count
x 1)
GET
/tags/statistics/{statisticId}
Get tag statistics by ID
x 1)
GET
/tags/statistics
Get a list of tag statistics
x 1)
HEAD
/tags/statistics
Get header with count
x 1)
POST
/tags/transform
Transform tags
x 1)
POST
/terms/{termsId}/accept
Accept terms
x 1)
GET
/terms/{termsId}
Get terms
x 1)
DELETE
/terms/{termsId}
Delete terms
GET
/terms/acceptances
Get a list of terms acceptances
x 1)
GET
/terms
Get a list of terms
x 1)
POST
/terms
Create terms
HEAD
/terms
Get header with count
x 1)
GET
/terms-templates/{termsTemplateId}
Get a terms template
DELETE
/terms-templates/{termsTemplateId}
Delete a terms template
GET
/terms-templates
Get a list of terms templates
POST
/terms-templates
Create a terms template
HEAD
/terms-templates
Get header with count
GET
/usage-stats/cyr3con
Get cyr3con stats
GET
/usage-stats/{usageStatsId}
Get usage stats by ID
GET
/usage-stats
Get a list of usage stats
HEAD
/usage-stats
Get header with count
GET
/user-role-permissions/{userRolePermissionId}
Get a user role permission
x 1)
GET
/user-role-permissions
Get a list of user role permissions
x 1)
HEAD
/user-role-permissions
Get header with count
x 1)
GET
/user-roles/{userRoleId}
Get a user role
x 1)
DELETE
/user-roles/{userRoleId}
Delete a user role
x 1)
PATCH
/user-roles/{userRoleId}
Partially update a user role
x 1)
GET
/user-roles
Get a list of user roles
x 1)
POST
/user-roles
Create a user role
x 1)
HEAD
/user-roles
Get header with count
x 1)
POST
/users/me/change-password
Change current users password; if current user is a sub-user, redirect to /sub-users/me/change-password
PUT
/users/{userId}/tags/{tagId}
Create a link to a tag
DELETE
/users/{userId}/tags/{tagId}
Delete a link to a tag
GET
/users/me
Get current user; if current user is a sub-user, redirect to /sub-users/me
x 1)
PATCH
/users/me
Partially update current user; if current user is a sub-user, redirect to /sub-users/me
x 1)
GET
/users/{userId}
Get a user
PATCH
/users/{userId}
Partially update a user
GET
/users
Get a list of users
HEAD
/users
Get header with count
PUT
/users/{userId}/tags
Modify linked set of tags
GET
/view-template-groups/{viewTemplateGroupId}
Get view template group
x 1)
DELETE
/view-template-groups/{viewTemplateGroupId}
Delete view template group
x 1)
PATCH
/view-template-groups/{viewTemplateGroupId}
Partially update a view template group
x 1)
GET
/view-template-groups
Get a list of view template groups
x 1)
POST
/view-template-groups
Create a view template group
x 1)
HEAD
/view-template-groups
Get header with count
x 1)
GET
/view-templates
Get a list of view templates
x 1)
POST
/view-templates
Create a view template
x 1)
HEAD
/view-templates
Get header with count
x 1)
GET
/view-templates/{viewTemplateId}
Get view template by ID
x 1)
DELETE
/view-templates/{viewTemplateId}
Delete a view template
x 1)
PATCH
/view-templates/{viewTemplateId}
Partially update a view template
x 1)
PUT
/view-templates/{viewTemplateId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/view-templates/{viewTemplateId}/tags/{tagId}
Delete a link to a tag
x 1)
PUT
/view-templates/{viewTemplateId}/tags
Modify linked set of tags
x 1)
GET
/workflows/{workflowId}
Get a workflow
x 1)
DELETE
/workflows/{workflowId}
Delete a workflow
x 1)
PATCH
/workflows/{workflowId}
Partially update a workflow
x 1)
PUT
/workflows/{workflowId}/schedules/{scheduleId}
Create a link to a schedule
x 1)
DELETE
/workflows/{workflowId}/schedules/{scheduleId}
Delete a link to a schedule
x 1)
PUT
/workflows/{workflowId}/tags/{tagId}
Create a link to a tag
x 1)
DELETE
/workflows/{workflowId}/tags/{tagId}
Delete a link to a tag
x 1)
GET
/workflows
Get a list of workflows
x 1)
POST
/workflows
Create a workflow
x 1)
HEAD
/workflows
Get header with count
x 1)
PUT
/workflows/{workflowId}/tags
Modify linked set of tags
x 1)
POST
/workflows/{workflowId}/scan
Start scans based on this workflow
x 1)
1) Can operate on own entries only.#Example flows
Run an Appsec scan 1. Authenticate
All API requests in the code examples to the right require a valid JWT token. To learn how to create a token, see Authentication .
# Create an Appsec scan configuration
curl -X POST \
https://outscan.outpost24.com/opi/rest/scan-configurations?return-result= true \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc...'
--data-binary '{"name":"my_config","template":"SCALE","configuration":{"fuzzing":true,"sequential":false,"nseconds":7200,"seeds":["https://example.outpost24.com/"],"template":"SCALE"}}'
{
"id" : 289,
"customerId" : 40,
"created" : "2019-06-02T13:32:16.760371Z" ,
"updated" : "2019-06-02T13:32:16.760371Z" ,
"createdBy" : "Anna Anderson" ,
"updatedBy" : "Anna Anderson" ,
"createdById" : 1015,
"updatedById" : 1015,
"name" : "my_config" ,
"template" : "SCALE" ,
"scheduleIds" : [ ] ,
"assetIdentifierIds" : [ 1635 ] ,
"configuration" : {
"template" : "SCALE" ,
"nseconds" : 7200,
"fuzzing" : true ,
"sequential" : false ,
"seeds" : [ "https://example.outpost24.com/" ]
}
}
2. Create an Appsec scan configuration # Submit a request to scan the asset with the created config (ID: 289)
curl -X POST \
https://outscan.outpost24.com/opi/rest/scan-configurations/289/scan \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc...'
3. Trigger a scan # Retrieve asset identifier associated with the config (ID: 1635)
curl -X GET \
https://outscan.outpost24.com/opi/rest/asset-identifiers/1635 \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc...'
{
"id" : 1635,
"customerId" : 40,
"created" : "2018-10-23T07:31:27.131194Z" ,
"updated" : "2019-06-02T13:53:02.250922Z" ,
"createdBy" : "Anna Anderson" ,
"updatedBy" : "System" ,
"createdById" : 1015,
"updatedById" : 0,
"name" : "example.outpost24.com" ,
"type" : "Hostname" ,
"firstSeen" : "2018-10-23T07:31:27.131Z" ,
"lastSeen" : "2019-06-02T13:53:02.260Z" ,
"scannerId" : 0,
"source" : [ "APPSEC" ] ,
"links" : [ 269 ]
}
# Retrieve IPs associated with this hostname
curl -X GET \
https://outscan.outpost24.com/opi/rest/asset-identifiers/269 \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc...'
{
"id" : 269,
"customerId" : 40,
"created" : "2018-10-23T07:31:27.131194Z" ,
"updated" : "2019-06-02T13:53:02.250922Z" ,
"createdBy" : "System" ,
"updatedBy" : "System" ,
"createdById" : 0,
"updatedById" : 0,
"name" : "12.34.56.78" ,
"type" : "IP" ,
"firstSeen" : "2018-10-23T07:31:27.131Z" ,
"lastSeen" : "2019-06-02T13:53:02.260Z" ,
"scannerId" : 0,
"source" : [ "APPSEC" ] ,
"links" : [ 269 ]
}
4. Retrieve scanned asset identifiers # Retrieve findings for the IP
curl -X GET \
https://outscan.outpost24.com/opi/rest/findings?filter= %5B%7B%22field%22%3A%22assetIdentifierId%22%2C%22value%22%3A269%2C%22comparison%22%3A%22eq%22%7D%5D \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc...'
{
"id" : 2181,
"customerId" : 40,
"created" : "2019-06-02T13:53:02.260Z" ,
"updated" : "2019-06-02T13:53:02.260Z" ,
"createdBy" : "System" ,
"updatedBy" : "System" ,
"createdById" : 0,
"updatedById" : 0,
"checkId" : 289960,
"cvssV2Score" : 5.0,
"cvssV2BaseScore" : 5.0,
"cvssV2Vector" : "(AV:N/AC:L/Au:N/C:P/I:N/A:N)" ,
"cvssV2Severity" : "MEDIUM" ,
"commentsCount" : 0,
"name" : "X-Frame-Options Header Missing or Malformed" ,
"description" : "The clickjacking attack vector consists of an attacker creating a malicious web page that includes a section of the application within an <iframe>-element. The attacker cannot directly interact with the application, but they can control the main page and are able to overlay elements on top of the <iframe>. This can be leveraged in order to fool the end user that they are interacting with one page, when they are in reality interacting with another page. \n\n The frameableness of a resource is determined by either the Content-Security-Policy header when used with the frame-ancestors directive, or using the X-Frame-Options header. \n Both of these were missing or malformed on the found resource." ,
"cwe" : "CWE-1021" ,
"solution" : "The Content-Security-Policy header with the frame-ancestors directive will resolve clickjacking in modern browsers that support it. Setting the frame-ancestors to 'self' (SAMEORIGIN) or 'none' (DENY) will limit which origins may frame this resource. Whitelisting external resources is possible using this method as well. \n\n To ensure legacy client compatibility, set the X-Frame-Options header to either DENY (which means the resource can not be framed) or SAMEORIGIN (which means that only the same origin may frame this resource). Note that the 'allow-from' value is not implemented correctly in all browsers. If frameability in an external resource has to be permitted, use CSP. \n\n These headers must be set on all server responses." ,
"exploitAvailable" : false ,
"matchIds" : [ 2203 ] ,
"firstSeen" : "2019-06-02T13:53:02.260Z" ,
"lastSeen" : "2019-06-02T13:53:02.260Z" ,
"owasp2013" : [ 5 ] ,
"owasp2017" : [ 6 ] ,
"assetIdentifierId" : 269,
"assetIdentifierType" : "IP" ,
"assetIdentifierName" : "12.34.56.78"
} ,
...
5. Retrieve findings for the IP Errors
The API uses the following error codes:
Error Code
Meaning
400
Bad Request -- Your request is invalid.
401
Unauthorized -- Your API key is wrong.
403
Forbidden -- You don't have permission to perform this operation.
404
Not Found -- The specified resource could not be found.
405
Method Not Allowed -- You tried to access an object with an invalid method.
406
Not Acceptable -- You requested a format that isn't json.
500
Internal Server Error -- We had a problem with our server. Try again later.
503
Service Unavailable -- We're temporarily offline for maintenance. Please try again later.
Security
HTTP Authentication, scheme: Bearer
About
Retrieve the list of software versions
# You can also use wget
curl -X GET \
/rest/about \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/about ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/about ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/about" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/about' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/about' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /about
The above code returns response like this:
default Response
[
{
"software" : "AGENT" ,
"version" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[VersionInfo ]
false
none
none
» software
string
false
none
none
» version
string
false
none
none
Enumerated Values
Property
Value
software
AGENT
software
RULES
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Accounts
Get an account
# You can also use wget
curl -X GET \
/rest/accounts/{ accountId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/accounts/{accountId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/accounts/{accountId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/accounts/{accountId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/accounts/{accountId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/accounts/{accountId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /accounts/{accountId}
Parameters
Name
In
Type
Required
Description
accountId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"type" : "SMB" ,
"name" : "string" ,
"url" : "string" ,
"role" : "string" ,
"integrationId" : 0 ,
"credentials" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"accountId" : 0 ,
"classId" : 0 ,
"className" : "string" ,
"value" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
],
"assetIdentifierIds" : [
0
],
"scanConfigurationIds" : [
0
],
"scanPolicyIds" : [
0
],
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Account
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete an account
# You can also use wget
curl -X DELETE \
/rest/accounts/{ accountId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/accounts/{accountId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/accounts/{accountId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/accounts/{accountId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/accounts/{accountId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/accounts/{accountId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /accounts/{accountId}
Parameters
Name
In
Type
Required
Description
accountId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update an account
# You can also use wget
curl -X PATCH \
/rest/accounts/{ accountId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/accounts/{accountId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"type": "SMB",
"name": "string",
"url": "string",
"role": "string",
"integrationId": 0,
"credentials": [
{
"customerId": 0,
"accountId": 0,
"classId": 0,
"className": "string",
"value": "string"
}
],
"assetIdentifierIds": [
0
],
"scanConfigurationIds": [
0
],
"scanPolicyIds": [
0
]
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/accounts/{accountId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/accounts/{accountId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/accounts/{accountId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/accounts/{accountId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /accounts/{accountId}
Body parameter
{
"customerId" : 0 ,
"type" : "SMB" ,
"name" : "string" ,
"url" : "string" ,
"role" : "string" ,
"integrationId" : 0 ,
"credentials" : [
{
"customerId" : 0 ,
"accountId" : 0 ,
"classId" : 0 ,
"className" : "string" ,
"value" : "string"
}
],
"assetIdentifierIds" : [
0
],
"scanConfigurationIds" : [
0
],
"scanPolicyIds" : [
0
]
}
Parameters
Name
In
Type
Required
Description
accountId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Account
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/accounts/{ accountId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/accounts/{accountId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/accounts/{accountId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/accounts/{accountId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/accounts/{accountId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/accounts/{accountId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /accounts/{accountId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
accountId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/accounts/{ accountId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/accounts/{accountId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/accounts/{accountId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/accounts/{accountId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/accounts/{accountId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/accounts/{accountId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /accounts/{accountId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
accountId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of accounts
# You can also use wget
curl -X GET \
/rest/accounts \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/accounts ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/accounts ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/accounts" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/accounts' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/accounts' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /accounts
Accounts lists all test accounts that are utilized in authenticated scans or used for the scoping and consist of zero or more credentials (see /credentials).
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"type" : "SMB" ,
"name" : "string" ,
"url" : "string" ,
"role" : "string" ,
"integrationId" : 0 ,
"credentials" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"accountId" : 0 ,
"classId" : 0 ,
"className" : "string" ,
"value" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
],
"assetIdentifierIds" : [
0
],
"scanConfigurationIds" : [
0
],
"scanPolicyIds" : [
0
],
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Account ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» type
string
true
none
none
» name
string
true
none
The name of the entry.
» url
string
false
none
none
» role
string
false
none
none
» integrationId
integer(int32)
false
none
none
» credentials
[Credential ]
false
none
none
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» accountId
integer(int32)
true
none
none
»» classId
integer(int32)
true
none
none
»» className
string
false
none
none
»» value
string
true
none
none
»» tags
[Tag ]
false
read-only
[The tags]
»»» id
integer(int32)
false
read-only
The ID of the entry.
»»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»»» createdBy
string
false
read-only
The name of the user who created the entry.
»»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»»» key
string
true
none
none
»»» value
string
false
none
none
»»» inherited
boolean
false
read-only
none
»»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
» assetIdentifierIds
[integer]
false
none
An array of asset identifier IDs associated with this entry
» scanConfigurationIds
[integer]
false
none
none
» scanPolicyIds
[integer]
false
none
none
» tags
[Tag ]
false
read-only
[The tags]
Enumerated Values
Property
Value
type
SMB
type
SSH
type
BASIC
type
WEB
type
AWS
type
AZURE
type
VSPHERE
type
GCP
type
DOCKER
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create an account
# You can also use wget
curl -X POST \
/rest/accounts \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/accounts ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"type": "SMB",
"name": "string",
"url": "string",
"role": "string",
"integrationId": 0,
"credentials": [
{
"customerId": 0,
"accountId": 0,
"classId": 0,
"className": "string",
"value": "string"
}
],
"assetIdentifierIds": [
0
],
"scanConfigurationIds": [
0
],
"scanPolicyIds": [
0
]
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/accounts ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/accounts" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/accounts' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/accounts' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /accounts
Body parameter
{
"customerId" : 0 ,
"type" : "SMB" ,
"name" : "string" ,
"url" : "string" ,
"role" : "string" ,
"integrationId" : 0 ,
"credentials" : [
{
"customerId" : 0 ,
"accountId" : 0 ,
"classId" : 0 ,
"className" : "string" ,
"value" : "string"
}
],
"assetIdentifierIds" : [
0
],
"scanConfigurationIds" : [
0
],
"scanPolicyIds" : [
0
]
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Account
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/accounts \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/accounts ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/accounts ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/accounts" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/accounts' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/accounts' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /accounts
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/accounts/{ accountId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/accounts/{accountId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/accounts/{accountId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/accounts/{accountId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/accounts/{accountId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/accounts/{accountId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /accounts/{accountId}/tags
Body parameter
Name
In
Type
Required
Description
accountId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Agents
Download an agent installer (Deprecated: 2024-5-21)
# You can also use wget
curl -X GET \
/rest/agents/installers/download?platform= string&arch= string&pkg= string \
-H 'Accept: */*' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' */* ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/agents/installers/download ' ,
method : ' get ' ,
data : ' ?platform=string&arch=string&pkg=string ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' */* ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/agents/installers/download?platform=string&arch=string&pkg=string ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "*/*" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/agents/installers/download" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : '*/*' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/agents/installers/download' , params = {
'platform' : 'string' , 'arch' : 'string' , 'pkg' : 'string'
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => '*/*' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/agents/installers/download' ,
params: {
'platform' => 'string' ,
'arch' => 'string' ,
'pkg' => 'string'
}, headers: headers
p JSON . parse ( result )
GET /agents/installers/download
Parameters
Name
In
Type
Required
Description
platform
query
string
true
none
arch
query
string
true
none
pkg
query
string
true
none
customAttributes
query
string
false
none
tags
query
string
false
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Request for creating an agent installer
# You can also use wget
curl -X POST \
/rest/agents/installers/download \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/agents/installers/download ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"platform": "string",
"arch": "string",
"pkg": "string",
"customAttributes": "string",
"tags": [
{
"customerId": 0,
"key": "string",
"value": "string"
}
],
"expires": "string",
"allowedUses": 0
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/agents/installers/download ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/agents/installers/download" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/agents/installers/download' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/agents/installers/download' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /agents/installers/download
Body parameter
{
"platform" : "string" ,
"arch" : "string" ,
"pkg" : "string" ,
"customAttributes" : "string" ,
"tags" : [
{
"customerId" : 0 ,
"key" : "string" ,
"value" : "string"
}
],
"expires" : "string" ,
"allowedUses" : 0
}
Parameters
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get agent logs
# You can also use wget
curl -X GET \
/rest/agents/{ agentUuid} /logs \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/agents/{agentUuid}/logs ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/agents/{agentUuid}/logs ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/agents/{agentUuid}/logs" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/agents/{agentUuid}/logs' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/agents/{agentUuid}/logs' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /agents/{agentUuid}/logs
Parameters
Name
In
Type
Required
Description
agentUuid
path
string(uuid)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
Status
Header
Type
Format
Description
default
Count
long
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Retrieve the agent version
# You can also use wget
curl -X GET \
/rest/agents/version \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/agents/version ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/agents/version ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "text/plain" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/agents/version" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'text/plain' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/agents/version' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/agents/version' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /agents/version
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Download agent installer configuration file
# You can also use wget
curl -X GET \
/rest/agents/installers/configuration \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/agents/installers/configuration ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/agents/installers/configuration ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/agents/installers/configuration" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/agents/installers/configuration' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/agents/installers/configuration' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /agents/installers/configuration
Parameters
Name
In
Type
Required
Description
customAttributes
query
string
false
none
tags
query
string
false
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get agent installers
# You can also use wget
curl -X GET \
/rest/agents/installers \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/agents/installers ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/agents/installers ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/agents/installers" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/agents/installers' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/agents/installers' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /agents/installers
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Appliances
Get a appliance
# You can also use wget
curl -X GET \
/rest/appliances/{ applianceId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/appliances/{applianceId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/appliances/{applianceId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/appliances/{applianceId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/appliances/{applianceId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/appliances/{applianceId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /appliances/{applianceId}
Parameters
Name
In
Type
Required
Description
applianceId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"customerName" : "string" ,
"primary" : true ,
"virtual" : true ,
"revoked" : "2019-08-24T14:15:22Z" ,
"mac" : "string" ,
"updatedOnline" : "2019-08-24T14:15:22Z" ,
"updatedOffline" : "2019-08-24T14:15:22Z" ,
"versions" : {
"xmlapi" : "string" ,
"ui" : "string" ,
"scanner" : "string" ,
"rules" : "string"
}
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Appliance
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of appliances
# You can also use wget
curl -X GET \
/rest/appliances \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/appliances ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/appliances ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/appliances" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/appliances' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/appliances' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /appliances
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"customerName" : "string" ,
"primary" : true ,
"virtual" : true ,
"revoked" : "2019-08-24T14:15:22Z" ,
"mac" : "string" ,
"updatedOnline" : "2019-08-24T14:15:22Z" ,
"updatedOffline" : "2019-08-24T14:15:22Z" ,
"versions" : {
"xmlapi" : "string" ,
"ui" : "string" ,
"scanner" : "string" ,
"rules" : "string"
}
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Appliance ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» customerName
string
false
read-only
none
» primary
boolean
false
read-only
none
» virtual
boolean
false
read-only
none
» revoked
string(date-time)
false
read-only
none
» mac
string
false
read-only
none
» updatedOnline
string(date-time)
false
read-only
none
» updatedOffline
string(date-time)
false
read-only
none
» versions
Appliance.ApplianceVersion
false
read-only
none
»» xmlapi
string
false
none
none
»» ui
string
false
none
none
»» scanner
string
false
none
none
»» rules
string
false
none
none
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/appliances \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/appliances ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/appliances ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/appliances" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/appliances' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/appliances' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /appliances
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Asset groups
Delete an activity
# You can also use wget
curl -X DELETE \
/rest/asset-groups/{ assetGroupId} /activities/{ activityId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId}/activities/{activityId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId}/activities/{activityId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/asset-groups/{assetGroupId}/activities/{activityId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/asset-groups/{assetGroupId}/activities/{activityId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/asset-groups/{assetGroupId}/activities/{activityId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /asset-groups/{assetGroupId}/activities/{activityId}
Parameters
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
activityId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get an asset group
# You can also use wget
curl -X GET \
/rest/asset-groups/{ assetGroupId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/asset-groups/{assetGroupId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/asset-groups/{assetGroupId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/asset-groups/{assetGroupId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /asset-groups/{assetGroupId}
Parameters
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"type" : "WEB_APP" ,
"parentId" : 0 ,
"assetIds" : [
0
],
"assetGroupIds" : [
0
],
"summaryId" : 0 ,
"summary" : "string" ,
"summaryPublishedAt" : "2019-08-24T14:15:22Z" ,
"path" : [
0
],
"activeSubscriptionTypes" : [
"DAST"
],
"managed" : true ,
"dynamic" : true ,
"labels" : "string" ,
"contactName" : "string" ,
"contactDetails" : "string" ,
"additionalDetails" : "string" ,
"commentPendingSince" : "2019-08-24T14:15:22Z" ,
"customerName" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"includedDynamicTags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"excludedDynamicTags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
AssetGroup
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete an asset group
# You can also use wget
curl -X DELETE \
/rest/asset-groups/{ assetGroupId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/asset-groups/{assetGroupId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/asset-groups/{assetGroupId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/asset-groups/{assetGroupId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /asset-groups/{assetGroupId}
Parameters
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update an asset group
# You can also use wget
curl -X PATCH \
/rest/asset-groups/{ assetGroupId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"type": "WEB_APP",
"parentId": 0,
"dynamic": true,
"labels": "string",
"contactName": "string",
"contactDetails": "string",
"additionalDetails": "string",
"customerName": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/asset-groups/{assetGroupId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/asset-groups/{assetGroupId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/asset-groups/{assetGroupId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /asset-groups/{assetGroupId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"type" : "WEB_APP" ,
"parentId" : 0 ,
"dynamic" : true ,
"labels" : "string" ,
"contactName" : "string" ,
"contactDetails" : "string" ,
"additionalDetails" : "string" ,
"customerName" : "string"
}
Parameters
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
AssetGroup
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to an asset
# You can also use wget
curl -X PUT \
/rest/asset-groups/{ assetGroupId} /assets/{ assetId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId}/assets/{assetId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId}/assets/{assetId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/asset-groups/{assetGroupId}/assets/{assetId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/asset-groups/{assetGroupId}/assets/{assetId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/asset-groups/{assetGroupId}/assets/{assetId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /asset-groups/{assetGroupId}/assets/{assetId}
Parameters
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
assetId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to an asset
# You can also use wget
curl -X DELETE \
/rest/asset-groups/{ assetGroupId} /assets/{ assetId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId}/assets/{assetId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId}/assets/{assetId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/asset-groups/{assetGroupId}/assets/{assetId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/asset-groups/{assetGroupId}/assets/{assetId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/asset-groups/{assetGroupId}/assets/{assetId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /asset-groups/{assetGroupId}/assets/{assetId}
Parameters
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
assetId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/asset-groups/{ assetGroupId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/asset-groups/{assetGroupId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/asset-groups/{assetGroupId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/asset-groups/{assetGroupId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /asset-groups/{assetGroupId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete an existing link to a tag
# You can also use wget
curl -X DELETE \
/rest/asset-groups/{ assetGroupId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/asset-groups/{assetGroupId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/asset-groups/{assetGroupId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/asset-groups/{assetGroupId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /asset-groups/{assetGroupId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X GET \
/rest/asset-groups/{ assetGroupId} /comments/{ commentId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId}/comments/{commentId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId}/comments/{commentId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/asset-groups/{assetGroupId}/comments/{commentId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/asset-groups/{assetGroupId}/comments/{commentId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/asset-groups/{assetGroupId}/comments/{commentId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /asset-groups/{assetGroupId}/comments/{commentId}
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
commentId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"authorIsStaff" : true ,
"deleted" : "2019-08-24T14:15:22Z"
}
Status
Meaning
Description
Schema
default
Default
default response
Comment
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X DELETE \
/rest/asset-groups/{ assetGroupId} /comments/{ commentId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId}/comments/{commentId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId}/comments/{commentId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/asset-groups/{assetGroupId}/comments/{commentId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/asset-groups/{assetGroupId}/comments/{commentId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/asset-groups/{assetGroupId}/comments/{commentId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /asset-groups/{assetGroupId}/comments/{commentId}
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
commentId
path
integer(int32)
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PATCH \
/rest/asset-groups/{ assetGroupId} /comments/{ commentId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId}/comments/{commentId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"parentId": 0,
"comment": "string",
"entityType": "FINDING",
"entityId": 0,
"supportStatus": "NOT_APPLICABLE",
"deleted": "2019-08-24T14:15:22Z"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId}/comments/{commentId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/asset-groups/{assetGroupId}/comments/{commentId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/asset-groups/{assetGroupId}/comments/{commentId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/asset-groups/{assetGroupId}/comments/{commentId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /asset-groups/{assetGroupId}/comments/{commentId}
Body parameter
{
"customerId" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"deleted" : "2019-08-24T14:15:22Z"
}
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
commentId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Comment
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X GET \
/rest/asset-groups/comments \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/comments ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/comments ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/asset-groups/comments" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/asset-groups/comments' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/asset-groups/comments' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /asset-groups/comments
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"authorIsStaff" : true ,
"deleted" : "2019-08-24T14:15:22Z"
}
]
Status
Meaning
Description
Schema
default
Default
default response
Inline
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Comment ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» parentId
integer(int32)
false
none
The ID of the parent entry.
» comment
string
false
none
The content of the comment
» entityType
string
false
none
The type of object this comment is made for
» entityId
integer(int32)
false
none
The ID of the object this comment is made for
» supportStatus
string
false
none
Current support status of the comment
» authorIsStaff
boolean
false
read-only
Whether the comment is from Outpost24 or the customer
» deleted
string(date-time)
false
none
When the comment was deleted
Enumerated Values
Property
Value
entityType
FINDING
entityType
ASSET_GROUP
entityType
ASSET
entityType
SCAN_CONFIGURATION
entityType
SCHEDULE
entityType
SCAN
entityType
USER
entityType
ROLE
entityType
RESOURCE_GROUP
entityType
COMPLIANCE
entityType
WORKFLOW
entityType
CHECK
supportStatus
NOT_APPLICABLE
supportStatus
WAITING
supportStatus
DONE
supportStatus
INTERNAL
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X POST \
/rest/asset-groups/comments \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/comments ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"parentId": 0,
"comment": "string",
"entityType": "FINDING",
"entityId": 0,
"supportStatus": "NOT_APPLICABLE",
"deleted": "2019-08-24T14:15:22Z"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/comments ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/asset-groups/comments" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/asset-groups/comments' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/asset-groups/comments' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /asset-groups/comments
Body parameter
{
"customerId" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"deleted" : "2019-08-24T14:15:22Z"
}
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Comment
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X DELETE \
/rest/asset-groups/comments \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/comments ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/comments ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/asset-groups/comments" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/asset-groups/comments' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/asset-groups/comments' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /asset-groups/comments
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/asset-groups \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/asset-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/asset-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/asset-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /asset-groups
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get activities
# You can also use wget
curl -X GET \
/rest/asset-groups/{ assetGroupId} /activities \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId}/activities ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId}/activities ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/asset-groups/{assetGroupId}/activities" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/asset-groups/{assetGroupId}/activities' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/asset-groups/{assetGroupId}/activities' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /asset-groups/{assetGroupId}/activities
Parameters
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"assetGroupId" : 0 ,
"activityType" : "PENTEST_COMPLETED" ,
"description" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Activity ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» assetGroupId
integer(int32)
false
read-only
The id of the AssetGroup this activity is related to
» activityType
string
true
none
The type of this activity
» description
string
false
none
Description of the entry.
Enumerated Values
Property
Value
activityType
PENTEST_COMPLETED
activityType
ONBOARDING_COMPLETED
activityType
FALSE_POSITIVE_DISCARDED
activityType
NEW_VULNERABILITY_CHECK
activityType
EXECUTIVE_SUMMARY_UPDATED
activityType
VERIFICATION_REQUEST_COMPLETED
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Add an activity for an AssetGroup
# You can also use wget
curl -X POST \
/rest/asset-groups/{ assetGroupId} /activities \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId}/activities ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"activityType": "PENTEST_COMPLETED",
"description": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId}/activities ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/asset-groups/{assetGroupId}/activities" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/asset-groups/{assetGroupId}/activities' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/asset-groups/{assetGroupId}/activities' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /asset-groups/{assetGroupId}/activities
Body parameter
{
"customerId" : 0 ,
"activityType" : "PENTEST_COMPLETED" ,
"description" : "string"
}
Parameters
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Activity
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of asset groups
# You can also use wget
curl -X GET \
/rest/asset-groups \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/asset-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/asset-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/asset-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /asset-groups
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"type" : "WEB_APP" ,
"parentId" : 0 ,
"assetIds" : [
0
],
"assetGroupIds" : [
0
],
"summaryId" : 0 ,
"summary" : "string" ,
"summaryPublishedAt" : "2019-08-24T14:15:22Z" ,
"path" : [
0
],
"activeSubscriptionTypes" : [
"DAST"
],
"managed" : true ,
"dynamic" : true ,
"labels" : "string" ,
"contactName" : "string" ,
"contactDetails" : "string" ,
"additionalDetails" : "string" ,
"commentPendingSince" : "2019-08-24T14:15:22Z" ,
"customerName" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"includedDynamicTags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"excludedDynamicTags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[AssetGroup ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» type
string
false
none
The assetgroup's type
» parentId
integer(int32)
false
none
The ID of the parent entry.
» assetIds
[integer]
false
read-only
The component assets
» assetGroupIds
[integer]
false
read-only
The children asset groups
» summaryId
integer(int32)
false
read-only
The ID of the executive summary
» summary
string
false
read-only
The content of the executive summary
» summaryPublishedAt
string(date-time)
false
read-only
When the executive summary was published
» path
[integer]
false
read-only
The path of the asset group tree
» activeSubscriptionTypes
[string]
false
read-only
The assetgroup's active subscription types
» managed
boolean
false
read-only
Managed internally by (e.g SWAT API or GhostLab)
» dynamic
boolean
false
none
Indicates whether the asset group is automatically populated with assets based on the assigned tags
» labels
string
false
none
The labels of the asset group
» contactName
string
false
none
The customer's contact name with regards to this asset group
» contactDetails
string
false
none
The customer's contact details
» additionalDetails
string
false
none
Additional information about the asset group that may require attention
» commentPendingSince
string(date-time)
false
read-only
The date since comment is pending
» customerName
string
false
none
The customer name
» tags
[Tag ]
false
read-only
The tags
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
» includedDynamicTags
[Tag ]
false
read-only
The included dynamic asset tags
» excludedDynamicTags
[Tag ]
false
read-only
The excluded dynamic asset tags
Enumerated Values
Property
Value
type
WEB_APP
type
INSTANCE
type
API
type
INTERNAL
type
EXTERNAL
type
MOBILE
type
PHYSICAL
type
WIRELESS
type
PHISHING
type
RED
type
ASSUMED
type
DIGITAL
type
HARDWARE
type
PROJECT
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create an asset group
# You can also use wget
curl -X POST \
/rest/asset-groups \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"type": "WEB_APP",
"parentId": 0,
"dynamic": true,
"labels": "string",
"contactName": "string",
"contactDetails": "string",
"additionalDetails": "string",
"customerName": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/asset-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/asset-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/asset-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /asset-groups
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"type" : "WEB_APP" ,
"parentId" : 0 ,
"dynamic" : true ,
"labels" : "string" ,
"contactName" : "string" ,
"contactDetails" : "string" ,
"additionalDetails" : "string" ,
"customerName" : "string"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
AssetGroup
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X GET \
/rest/asset-groups/{ assetGroupId} /comments \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId}/comments ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId}/comments ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/asset-groups/{assetGroupId}/comments" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/asset-groups/{assetGroupId}/comments' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/asset-groups/{assetGroupId}/comments' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /asset-groups/{assetGroupId}/comments
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"authorIsStaff" : true ,
"deleted" : "2019-08-24T14:15:22Z"
}
]
Status
Meaning
Description
Schema
default
Default
default response
Inline
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Comment ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» parentId
integer(int32)
false
none
The ID of the parent entry.
» comment
string
false
none
The content of the comment
» entityType
string
false
none
The type of object this comment is made for
» entityId
integer(int32)
false
none
The ID of the object this comment is made for
» supportStatus
string
false
none
Current support status of the comment
» authorIsStaff
boolean
false
read-only
Whether the comment is from Outpost24 or the customer
» deleted
string(date-time)
false
none
When the comment was deleted
Enumerated Values
Property
Value
entityType
FINDING
entityType
ASSET_GROUP
entityType
ASSET
entityType
SCAN_CONFIGURATION
entityType
SCHEDULE
entityType
SCAN
entityType
USER
entityType
ROLE
entityType
RESOURCE_GROUP
entityType
COMPLIANCE
entityType
WORKFLOW
entityType
CHECK
supportStatus
NOT_APPLICABLE
supportStatus
WAITING
supportStatus
DONE
supportStatus
INTERNAL
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X POST \
/rest/asset-groups/{ assetGroupId} /comments \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId}/comments ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"parentId": 0,
"comment": "string",
"entityType": "FINDING",
"entityId": 0,
"supportStatus": "NOT_APPLICABLE",
"deleted": "2019-08-24T14:15:22Z"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId}/comments ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/asset-groups/{assetGroupId}/comments" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/asset-groups/{assetGroupId}/comments' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/asset-groups/{assetGroupId}/comments' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /asset-groups/{assetGroupId}/comments
Body parameter
{
"customerId" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"deleted" : "2019-08-24T14:15:22Z"
}
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Comment
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X GET \
/rest/asset-groups/{ assetGroupId} /dynamic-tags \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId}/dynamic-tags ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId}/dynamic-tags ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/asset-groups/{assetGroupId}/dynamic-tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/asset-groups/{assetGroupId}/dynamic-tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/asset-groups/{assetGroupId}/dynamic-tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /asset-groups/{assetGroupId}/dynamic-tags
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
assetGroupId
path
integer(int32)
true
none
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
Status
Meaning
Description
Schema
default
Default
default response
Inline
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Tag ]
false
none
[The tags]
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» key
string
true
none
none
» value
string
false
none
none
» inherited
boolean
false
read-only
none
» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get subscriptions associated with the given asset group
# You can also use wget
curl -X GET \
/rest/asset-groups/{ assetGroupId} /subscriptions \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId}/subscriptions ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId}/subscriptions ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/asset-groups/{assetGroupId}/subscriptions" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/asset-groups/{assetGroupId}/subscriptions' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/asset-groups/{assetGroupId}/subscriptions' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /asset-groups/{assetGroupId}/subscriptions
Parameters
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
The above code returns response like this:
default Response
[
{
"uuid" : "string" ,
"type" : "DAST" ,
"associations" : {
"assetGroups" : [
"string"
]
},
"durationInDays" : 0 ,
"activeUntil" : "2019-08-24T14:15:22Z" ,
"activatedAt" : "2019-08-24T14:15:22Z" ,
"redeemableUntil" : "2019-08-24T14:15:22Z" ,
"created" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updated" : "2019-08-24T14:15:22Z" ,
"updatedBy" : "string" ,
"template" : {
"uuid" : "string" ,
"variables" : "string" ,
"template" : "string" ,
"name" : "string"
},
"customer" : {
"uuid" : "string"
},
"limits" : {
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
},
"isActive" : true
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Subscription ]
false
none
none
» uuid
string
false
none
The UUID of the entry.
» type
string
false
none
none
» associations
Subscription.Associations
false
none
none
»» assetGroups
[string]
false
none
none
» durationInDays
integer(int32)
false
none
none
» activeUntil
string(date-time)
false
none
none
» activatedAt
string(date-time)
false
none
none
» redeemableUntil
string(date-time)
false
none
none
» created
string(date-time)
false
none
The timestamp when the entry was created.
» createdBy
string
false
none
The name of the user who created the entry.
» updated
string(date-time)
false
none
The timestamp when the entry was updated.
» updatedBy
string
false
none
The name of the user who updated the entry.
» template
Subscription.Template
false
none
none
»» uuid
string
true
none
The UUID of the entry.
»» variables
string
false
none
none
»» template
string
false
none
none
»» name
string
false
none
The name of the entry.
» customer
Subscription.Customer
false
none
none
»» uuid
string
true
none
The UUID of the entry.
» limits
Subscription.Limits
false
none
none
»» netsecAssets
integer(int32)
false
none
The netsec assets
»» netsecScans
integer(int32)
false
none
The netsec scans
»» netsecInternalAssets
integer(int32)
false
none
The netsec internal assets
»» netsecInternalScans
integer(int32)
false
none
The netsec internal scans
»» netsecApplianceAssets
integer(int32)
false
none
The netsec appliance assets
»» netsecApplianceScans
integer(int32)
false
none
The netsec appliance scans
»» netsecApplianceExternalAssets
integer(int32)
false
none
The netsec appliance external assets
»» netsecApplianceExternalScans
integer(int32)
false
none
The netsec appliance external scans
»» complianceAssets
integer(int32)
false
none
The compliance assets
»» complianceScans
integer(int32)
false
none
The compliance scans
»» complianceInternalAssets
integer(int32)
false
none
The compliance internal assets
»» complianceInternalScans
integer(int32)
false
none
The compliance internal scans
»» complianceApplianceAssets
integer(int32)
false
none
The compliance appliance assets
»» complianceApplianceScans
integer(int32)
false
none
The compliance appliance scans
»» complianceApplianceExternalAssets
integer(int32)
false
none
The compliance appliance external assets
»» complianceApplianceExternalScans
integer(int32)
false
none
The compliance appliance external scans
»» pciAssets
integer(int32)
false
none
The pci assets
»» pciScans
integer(int32)
false
none
The pci scans
»» scaleAssets
integer(int32)
false
none
The scale assets
»» scaleScans
integer(int32)
false
none
The scale scans
»» scaleInternalAssets
integer(int32)
false
none
The scale internal assets
»» scaleApplianceAssets
integer(int32)
false
none
The scale appliance assets
»» scaleApplianceScans
integer(int32)
false
none
The scale appliance scans
»» scaleApplianceExternalScans
integer(int32)
false
none
The scale appliance external scans
»» scaleApplianceExternalAssets
integer(int32)
false
none
The scale appliance external assets
»» cloudsecAssets
integer(int32)
false
none
The cloudsec assets
»» cloudsecScans
integer(int32)
false
none
The cloudsec scans
»» networkDiscoveryScans
integer(int32)
false
none
The network discovery scans
»» networkDiscoveryApplianceScans
integer(int32)
false
none
The network discovery appliance scans
»» cloudDiscoveryScans
integer(int32)
false
none
The cloud discovery scans
»» cloudDiscoveryApplianceScans
integer(int32)
false
none
The cloud discovery appliance scans
»» networkAssets
integer(int32)
false
none
The network assets
»» networkScans
integer(int32)
false
none
The network scans
»» networkApplianceAssets
integer(int32)
false
none
The network appliance assets
»» networkApplianceScans
integer(int32)
false
none
The network appliance scans
»» dockerImageDiscoveryScans
integer(int32)
false
none
The docker image discovery scans
»» dockerImageAssets
integer(int32)
false
none
The docker image assets
»» dockerImageScans
integer(int32)
false
none
The docker image scans
»» dockerImageDiscoveryApplianceScans
integer(int32)
false
none
The docker image discovery appliance scans
»» dockerImageApplianceAssets
integer(int32)
false
none
The docker image appliance assets
»» dockerImageApplianceScans
integer(int32)
false
none
The docker image appliance scans
»» outscanNXAssets
integer(int32)
false
none
The outscan NX assets
»» outscanNXApplianceAssets
integer(int32)
false
none
The outscan NX appliance assets
» isActive
boolean
false
none
none
Enumerated Values
Property
Value
type
DAST
type
SCALE
type
SCOUT
type
SNAPSHOT
type
ASSURE
type
DAST_EXPERT
type
VERIFY
type
SWAT
type
CLOUDSEC
type
NETSEC
type
CONSUMPTION
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/asset-groups/{ assetGroupId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-groups/{assetGroupId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-groups/{assetGroupId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/asset-groups/{assetGroupId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/asset-groups/{assetGroupId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/asset-groups/{assetGroupId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /asset-groups/{assetGroupId}/tags
Body parameter
Name
In
Type
Required
Description
assetGroupId
path
integer(int32)
true
none
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Asset identifiers
Get an asset identifier
# You can also use wget
curl -X GET \
/rest/asset-identifiers/{ assetIdentifierId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-identifiers/{assetIdentifierId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-identifiers/{assetIdentifierId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/asset-identifiers/{assetIdentifierId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/asset-identifiers/{assetIdentifierId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/asset-identifiers/{assetIdentifierId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /asset-identifiers/{assetIdentifierId}
Parameters
Name
In
Type
Required
Description
assetIdentifierId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"presentableName" : "string" ,
"type" : "IP" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"scannerId" : 0 ,
"scannerName" : "string" ,
"ownership" : 0 ,
"customOwnership" : 100 ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"source" : [
"SCOUT"
],
"links" : [
0
],
"assetIds" : [
0
],
"assetNames" : [
"string"
],
"accountIds" : [
0
],
"platform" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"properties" : {
"type" : "IP"
}
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
AssetIdentifier
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete an asset identifier
# You can also use wget
curl -X DELETE \
/rest/asset-identifiers/{ assetIdentifierId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-identifiers/{assetIdentifierId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-identifiers/{assetIdentifierId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/asset-identifiers/{assetIdentifierId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/asset-identifiers/{assetIdentifierId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/asset-identifiers/{assetIdentifierId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /asset-identifiers/{assetIdentifierId}
Parameters
Name
In
Type
Required
Description
assetIdentifierId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update an asset identifier
# You can also use wget
curl -X PATCH \
/rest/asset-identifiers/{ assetIdentifierId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-identifiers/{assetIdentifierId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"presentableName": "string",
"type": "IP",
"firstSeen": "2019-08-24T14:15:22Z",
"lastSeen": "2019-08-24T14:15:22Z",
"scannerId": 0,
"customOwnership": 100,
"source": [
"SCOUT"
],
"assetIds": [
0
],
"accountIds": [
0
],
"platform": "string",
"properties": {
"type": "IP"
}
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-identifiers/{assetIdentifierId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/asset-identifiers/{assetIdentifierId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/asset-identifiers/{assetIdentifierId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/asset-identifiers/{assetIdentifierId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /asset-identifiers/{assetIdentifierId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"presentableName" : "string" ,
"type" : "IP" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"scannerId" : 0 ,
"customOwnership" : 100 ,
"source" : [
"SCOUT"
],
"assetIds" : [
0
],
"accountIds" : [
0
],
"platform" : "string" ,
"properties" : {
"type" : "IP"
}
}
Parameters
Name
In
Type
Required
Description
assetIdentifierId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
AssetIdentifier
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete an asset identifier link
# You can also use wget
curl -X DELETE \
/rest/asset-identifiers/{ assetIdentifierId} /links/{ assetIdentifierLinkId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-identifiers/{assetIdentifierId}/links/{assetIdentifierLinkId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-identifiers/{assetIdentifierId}/links/{assetIdentifierLinkId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/asset-identifiers/{assetIdentifierId}/links/{assetIdentifierLinkId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/asset-identifiers/{assetIdentifierId}/links/{assetIdentifierLinkId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/asset-identifiers/{assetIdentifierId}/links/{assetIdentifierLinkId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /asset-identifiers/{assetIdentifierId}/links/{assetIdentifierLinkId}
Parameters
Name
In
Type
Required
Description
assetIdentifierId
path
integer(int32)
true
none
assetIdentifierLinkId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get the screenshot file for an asset identifier
# You can also use wget
curl -X GET \
/rest/asset-identifiers/{ assetIdentifierId} /screenshots/{ screenshotFilename} \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "text/plain" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'text/plain' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename}
Parameters
Name
In
Type
Required
Description
assetIdentifierId
path
integer(int32)
true
none
screenshotFilename
path
string
true
none
The above code returns response like this:
default Response
Responses
Status
Meaning
Description
Schema
default
Default
default response
string
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Add screenshot to asset identifier
# You can also use wget
curl -X PUT \
/rest/asset-identifiers/{ assetIdentifierId} /screenshots/{ screenshotFilename} \
-H 'Content-Type: application/octet-stream' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/octet-stream ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' string ' ;
const headers = {
' Content-Type ' : ' application/octet-stream ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename} ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/octet-stream" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/octet-stream' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/octet-stream' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename}
Body parameter
Parameters
Name
In
Type
Required
Description
assetIdentifierId
path
integer(int32)
true
none
screenshotFilename
path
string
true
none
body
body
string(byte)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete the screenshot file for an asset identifier
# You can also use wget
curl -X DELETE \
/rest/asset-identifiers/{ assetIdentifierId} /screenshots/{ screenshotFilename} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /asset-identifiers/{assetIdentifierId}/screenshots/{screenshotFilename}
Parameters
Name
In
Type
Required
Description
assetIdentifierId
path
integer(int32)
true
none
screenshotFilename
path
string
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/asset-identifiers/{ assetIdentifierId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-identifiers/{assetIdentifierId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-identifiers/{assetIdentifierId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/asset-identifiers/{assetIdentifierId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/asset-identifiers/{assetIdentifierId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/asset-identifiers/{assetIdentifierId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /asset-identifiers/{assetIdentifierId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
assetIdentifierId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/asset-identifiers/{ assetIdentifierId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-identifiers/{assetIdentifierId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-identifiers/{assetIdentifierId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/asset-identifiers/{assetIdentifierId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/asset-identifiers/{assetIdentifierId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/asset-identifiers/{assetIdentifierId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /asset-identifiers/{assetIdentifierId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
assetIdentifierId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of asset identifiers
# You can also use wget
curl -X GET \
/rest/asset-identifiers \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-identifiers ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-identifiers ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/asset-identifiers" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/asset-identifiers' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/asset-identifiers' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /asset-identifiers
Asset identifiers are the most atomic elements defining the scanned assets like IP or hostname and can be associated with each other via the "links" attribute. An asset identifier is created automatically whenever a new Appsec configuration is created. It can also be added manually.
Example:
When you add an Appsec configuration with "http://demo.outpost24.com:8080", the system automatically creates an asset identifier "demo.outpost24.com" of type "hostname". If this asset identifier already exists it will be deduplicated and associated with the newly created configuration. The identity of an asset identifier is a "name", "type" and "scannerId" so "demo.outpost24.com" with "scannerId": 0 will be treated as a different asset identifier than "demo.outpost24.com" with "scannerId": 3. When a scan runs, the system will resolve the hostname to an IP address and when the scan has finished, it will add it as an asset identifier of type "IP" and link to the previously created "demo.outpost24.com".
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"presentableName" : "string" ,
"type" : "IP" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"scannerId" : 0 ,
"scannerName" : "string" ,
"ownership" : 0 ,
"customOwnership" : 100 ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"source" : [
"SCOUT"
],
"links" : [
0
],
"assetIds" : [
0
],
"assetNames" : [
"string"
],
"accountIds" : [
0
],
"platform" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"properties" : {
"type" : "IP"
}
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[AssetIdentifier ]
false
none
[The asset links]
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» presentableName
string
false
none
none
» type
string
true
none
none
» firstSeen
string(date-time)
false
none
Timestamp when the entry was seen for the first time.
» lastSeen
string(date-time)
false
none
Timestamp when the entry was seen last time.
» scannerId
integer(int32)
false
none
none
» scannerName
string
false
read-only
none
» ownership
integer(int32)
false
read-only
none
» customOwnership
integer(int32)
false
none
none
» firstScanId
integer(int32)
false
read-only
none
» lastScanId
integer(int32)
false
read-only
none
» source
[string]
true
none
none
» links
[integer]
false
read-only
none
» assetIds
[integer]
false
none
none
» assetNames
[string]
false
read-only
none
» accountIds
[integer]
false
none
none
» platform
string
false
none
none
» tags
[Tag ]
false
read-only
[The tags]
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
» properties
BaseProperties
false
none
The asset base properties
»» type
string
true
none
none
Enumerated Values
Property
Value
type
IP
type
HOSTNAME
type
AWS_ACCOUNT_ID
type
AWS_INSTANCE_ID
type
AWS_REGION
type
MAC
type
NETBIOS
type
GCP_PROJECT_ID
type
MAZ_TENANT_ID
type
MAZ_SUBSCRIPTION
type
MAZ_RESOURCE_GROUP
type
MAZ_RESOURCE
type
DOCKER_REGISTRY
type
DOCKER_IMAGE
type
SEED_PATH
type
AGENT
type
SERIAL_MACHINE_ID
type
SERIAL_PRODUCT_ID
type
SERIAL_DISK_ID
type
IP
type
HOSTNAME
type
AWS_ACCOUNT_ID
type
AWS_INSTANCE_ID
type
AWS_REGION
type
MAC
type
NETBIOS
type
GCP_PROJECT_ID
type
MAZ_TENANT_ID
type
MAZ_SUBSCRIPTION
type
MAZ_RESOURCE_GROUP
type
MAZ_RESOURCE
type
DOCKER_REGISTRY
type
DOCKER_IMAGE
type
SEED_PATH
type
AGENT
type
SERIAL_MACHINE_ID
type
SERIAL_PRODUCT_ID
type
SERIAL_DISK_ID
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create an asset identifier
# You can also use wget
curl -X POST \
/rest/asset-identifiers \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-identifiers ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"presentableName": "string",
"type": "IP",
"firstSeen": "2019-08-24T14:15:22Z",
"lastSeen": "2019-08-24T14:15:22Z",
"scannerId": 0,
"customOwnership": 100,
"source": [
"SCOUT"
],
"assetIds": [
0
],
"accountIds": [
0
],
"platform": "string",
"properties": {
"type": "IP"
}
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-identifiers ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/asset-identifiers" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/asset-identifiers' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/asset-identifiers' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /asset-identifiers
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"presentableName" : "string" ,
"type" : "IP" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"scannerId" : 0 ,
"customOwnership" : 100 ,
"source" : [
"SCOUT"
],
"assetIds" : [
0
],
"accountIds" : [
0
],
"platform" : "string" ,
"properties" : {
"type" : "IP"
}
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
AssetIdentifier
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/asset-identifiers \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-identifiers ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-identifiers ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/asset-identifiers" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/asset-identifiers' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/asset-identifiers' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /asset-identifiers
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get the screenshot list for an asset identifier
# You can also use wget
curl -X GET \
/rest/asset-identifiers/{ assetIdentifierId} /screenshots \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-identifiers/{assetIdentifierId}/screenshots ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-identifiers/{assetIdentifierId}/screenshots ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/asset-identifiers/{assetIdentifierId}/screenshots" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/asset-identifiers/{assetIdentifierId}/screenshots' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/asset-identifiers/{assetIdentifierId}/screenshots' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /asset-identifiers/{assetIdentifierId}/screenshots
Parameters
Name
In
Type
Required
Description
assetIdentifierId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get the links for an asset identifier
# You can also use wget
curl -X GET \
/rest/asset-identifiers/{ assetIdentifierId} /links \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-identifiers/{assetIdentifierId}/links ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-identifiers/{assetIdentifierId}/links ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/asset-identifiers/{assetIdentifierId}/links" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/asset-identifiers/{assetIdentifierId}/links' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/asset-identifiers/{assetIdentifierId}/links' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /asset-identifiers/{assetIdentifierId}/links
Parameters
Name
In
Type
Required
Description
assetIdentifierId
path
integer(int32)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"assetIdentifierId" : 0 ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"type" : "RESOLVES_TO"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[AssetIdentifierLink ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» assetIdentifierId
integer(int32)
true
none
The ID of the asset identifier associated with this entry
» firstSeen
string(date-time)
true
none
Timestamp when the entry was seen for the first time.
» lastSeen
string(date-time)
true
none
Timestamp when the entry was seen last time.
» type
string
true
none
none
Enumerated Values
Property
Value
type
RESOLVES_TO
type
LOADS_SCRIPTS_FROM
type
REFERS_IN_TLS_TO
type
DNS_CNAME
type
DNS_DNAME
type
DNS_MX
type
DNS_NS
type
DNS_PTR
type
DNS_SRV
type
DNS_A
type
DNS_AAAA
type
DNS_URI
type
CONTAINS
type
HTML_LINKS_TO
type
ARP
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create an asset identifier link
# You can also use wget
curl -X POST \
/rest/asset-identifiers/{ assetIdentifierId} /links \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/asset-identifiers/{assetIdentifierId}/links ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"assetIdentifierId": 0,
"firstSeen": "2019-08-24T14:15:22Z",
"lastSeen": "2019-08-24T14:15:22Z",
"type": "RESOLVES_TO"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/asset-identifiers/{assetIdentifierId}/links ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/asset-identifiers/{assetIdentifierId}/links" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/asset-identifiers/{assetIdentifierId}/links' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/asset-identifiers/{assetIdentifierId}/links' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /asset-identifiers/{assetIdentifierId}/links
Body parameter
{
"assetIdentifierId" : 0 ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"type" : "RESOLVES_TO"
}
Parameters
Name
In
Type
Required
Description
assetIdentifierId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
AssetIdentifierLink
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Assets
Get an asset
# You can also use wget
curl -X GET \
/rest/assets/{ assetId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/{assetId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/{assetId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/assets/{assetId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/assets/{assetId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/assets/{assetId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /assets/{assetId}
Parameters
Name
In
Type
Required
Description
assetId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"source" : [
"SCOUT"
],
"platform" : "string" ,
"assetIdentifierIds" : [
0
],
"assetIdentifierTypes" : [
"IP"
],
"activeSubscriptionTypes" : [
"DAST"
],
"uuid" : "string" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"compliant" : "COMPLIANT" ,
"cvssV2EnvironmentalVector" : "string" ,
"cvssV3EnvironmentalVector" : "string" ,
"customerName" : "string" ,
"enabled" : true ,
"active" : true ,
"dockerImageProperties" : {
"type" : "IP"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"assetIdentifiers" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"presentableName" : "string" ,
"type" : "IP" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"scannerId" : 0 ,
"scannerName" : "string" ,
"ownership" : 0 ,
"customOwnership" : 100 ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"source" : [
"SCOUT"
],
"links" : [
0
],
"assetIds" : [
0
],
"assetNames" : [
"string"
],
"accountIds" : [
0
],
"platform" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"properties" : {
"type" : "IP"
}
}
],
"assetGroups" : [
{
"id" : 0 ,
"name" : "string"
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Asset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete an asset
# You can also use wget
curl -X DELETE \
/rest/assets/{ assetId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/{assetId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/{assetId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/assets/{assetId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/assets/{assetId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/assets/{assetId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /assets/{assetId}
Parameters
Name
In
Type
Required
Description
assetId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update an asset
# You can also use wget
curl -X PATCH \
/rest/assets/{ assetId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/{assetId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"source": [
"SCOUT"
],
"assetIdentifierIds": [
0
],
"cvssV2EnvironmentalVector": "string",
"cvssV3EnvironmentalVector": "string",
"customerName": "string",
"enabled": true,
"dockerImageProperties": {
"type": "IP"
},
"assetIdentifiers": [
{
"customerId": 0,
"name": "string",
"presentableName": "string",
"type": "IP",
"firstSeen": "2019-08-24T14:15:22Z",
"lastSeen": "2019-08-24T14:15:22Z",
"scannerId": 0,
"customOwnership": 100,
"source": [
"SCOUT"
],
"assetIds": [
0
],
"accountIds": [
0
],
"platform": "string",
"properties": {
"type": "IP"
}
}
]
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/{assetId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/assets/{assetId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/assets/{assetId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/assets/{assetId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /assets/{assetId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"source" : [
"SCOUT"
],
"assetIdentifierIds" : [
0
],
"cvssV2EnvironmentalVector" : "string" ,
"cvssV3EnvironmentalVector" : "string" ,
"customerName" : "string" ,
"enabled" : true ,
"dockerImageProperties" : {
"type" : "IP"
},
"assetIdentifiers" : [
{
"customerId" : 0 ,
"name" : "string" ,
"presentableName" : "string" ,
"type" : "IP" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"scannerId" : 0 ,
"customOwnership" : 100 ,
"source" : [
"SCOUT"
],
"assetIds" : [
0
],
"accountIds" : [
0
],
"platform" : "string" ,
"properties" : {
"type" : "IP"
}
}
]
}
Parameters
Name
In
Type
Required
Description
assetId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Asset
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete an asset link
# You can also use wget
curl -X DELETE \
/rest/assets/{ assetId} /links/{ assetLinkId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/{assetId}/links/{assetLinkId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/{assetId}/links/{assetLinkId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/assets/{assetId}/links/{assetLinkId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/assets/{assetId}/links/{assetLinkId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/assets/{assetId}/links/{assetLinkId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /assets/{assetId}/links/{assetLinkId}
Parameters
Name
In
Type
Required
Description
assetId
path
integer(int32)
true
none
assetLinkId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/assets/{ assetId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/{assetId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/{assetId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/assets/{assetId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/assets/{assetId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/assets/{assetId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /assets/{assetId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
assetId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/assets/{ assetId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/{assetId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/{assetId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/assets/{assetId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/assets/{assetId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/assets/{assetId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /assets/{assetId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
assetId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create one or several links to one a tag
# You can also use wget
curl -X PUT \
/rest/assets/tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/assets/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/assets/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/assets/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /assets/tags/{tagId}
Parameters
Name
In
Type
Required
Description
tagId
path
integer(int32)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete one or several links to a tag
# You can also use wget
curl -X DELETE \
/rest/assets/tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/assets/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/assets/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/assets/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /assets/tags/{tagId}
Parameters
Name
In
Type
Required
Description
tagId
path
integer(int32)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of assets
# You can also use wget
curl -X GET \
/rest/assets \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/assets" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/assets' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/assets' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /assets
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"source" : [
"SCOUT"
],
"platform" : "string" ,
"assetIdentifierIds" : [
0
],
"assetIdentifierTypes" : [
"IP"
],
"activeSubscriptionTypes" : [
"DAST"
],
"uuid" : "string" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"compliant" : "COMPLIANT" ,
"cvssV2EnvironmentalVector" : "string" ,
"cvssV3EnvironmentalVector" : "string" ,
"customerName" : "string" ,
"enabled" : true ,
"active" : true ,
"dockerImageProperties" : {
"type" : "IP"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"assetIdentifiers" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"presentableName" : "string" ,
"type" : "IP" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"scannerId" : 0 ,
"scannerName" : "string" ,
"ownership" : 0 ,
"customOwnership" : 100 ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"source" : [
"SCOUT"
],
"links" : [
0
],
"assetIds" : [
0
],
"assetNames" : [
"string"
],
"accountIds" : [
0
],
"platform" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"properties" : {
"type" : "IP"
}
}
],
"assetGroups" : [
{
"id" : 0 ,
"name" : "string"
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Asset ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» source
[string]
true
none
The asset sources
» platform
string
false
read-only
The asset platform
» assetIdentifierIds
[integer]
false
none
An array of asset identifier IDs associated with this entry
» assetIdentifierTypes
[string]
false
read-only
The asset identifier types (deprecated)
» activeSubscriptionTypes
[string]
false
read-only
The asset's active subscription types
» uuid
string
false
read-only
The UUID of the entry.
» firstScanId
integer(int32)
false
read-only
The id of the first scan performed on the asset
» lastScanId
integer(int32)
false
read-only
The id of last scan performed on the asset
» compliant
string
false
read-only
The asset compliance status
» cvssV2EnvironmentalVector
string
false
none
The CVSS V2 environmental vector
» cvssV3EnvironmentalVector
string
false
none
The CVSS V3 environmental vector
» customerName
string
false
none
The customer name
» enabled
boolean
false
none
Determines if the entry is enabled or not.
» active
boolean
false
read-only
Determines if the entry is active or not.
» dockerImageProperties
BaseProperties
false
none
The asset base properties
»» type
string
true
none
none
» tags
[Tag ]
false
read-only
The tags
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
» assetIdentifiers
[AssetIdentifier ]
false
none
The asset links
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» name
string
true
none
The name of the entry.
»» presentableName
string
false
none
none
»» type
string
true
none
none
»» firstSeen
string(date-time)
false
none
Timestamp when the entry was seen for the first time.
»» lastSeen
string(date-time)
false
none
Timestamp when the entry was seen last time.
»» scannerId
integer(int32)
false
none
none
»» scannerName
string
false
read-only
none
»» ownership
integer(int32)
false
read-only
none
»» customOwnership
integer(int32)
false
none
none
»» firstScanId
integer(int32)
false
read-only
none
»» lastScanId
integer(int32)
false
read-only
none
»» source
[string]
true
none
none
»» links
[integer]
false
read-only
none
»» assetIds
[integer]
false
none
none
»» assetNames
[string]
false
read-only
none
»» accountIds
[integer]
false
none
none
»» platform
string
false
none
none
»» tags
[Tag ]
false
read-only
[The tags]
»» properties
BaseProperties
false
none
The asset base properties
» assetGroups
[Asset.AssetGroup ]
false
read-only
Information of all asset groups the asset is linked to
»» id
integer(int32)
false
none
The ID of the entry.
»» name
string
false
none
The name of the entry.
Enumerated Values
Property
Value
compliant
COMPLIANT
compliant
NOT_COMPLIANT
compliant
COMPLIANT_WITH_EXCEPTIONS
type
IP
type
HOSTNAME
type
AWS_ACCOUNT_ID
type
AWS_INSTANCE_ID
type
AWS_REGION
type
MAC
type
NETBIOS
type
GCP_PROJECT_ID
type
MAZ_TENANT_ID
type
MAZ_SUBSCRIPTION
type
MAZ_RESOURCE_GROUP
type
MAZ_RESOURCE
type
DOCKER_REGISTRY
type
DOCKER_IMAGE
type
SEED_PATH
type
AGENT
type
SERIAL_MACHINE_ID
type
SERIAL_PRODUCT_ID
type
SERIAL_DISK_ID
type
IP
type
HOSTNAME
type
AWS_ACCOUNT_ID
type
AWS_INSTANCE_ID
type
AWS_REGION
type
MAC
type
NETBIOS
type
GCP_PROJECT_ID
type
MAZ_TENANT_ID
type
MAZ_SUBSCRIPTION
type
MAZ_RESOURCE_GROUP
type
MAZ_RESOURCE
type
DOCKER_REGISTRY
type
DOCKER_IMAGE
type
SEED_PATH
type
AGENT
type
SERIAL_MACHINE_ID
type
SERIAL_PRODUCT_ID
type
SERIAL_DISK_ID
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create an asset
# You can also use wget
curl -X POST \
/rest/assets \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"source": [
"SCOUT"
],
"assetIdentifierIds": [
0
],
"cvssV2EnvironmentalVector": "string",
"cvssV3EnvironmentalVector": "string",
"customerName": "string",
"enabled": true,
"dockerImageProperties": {
"type": "IP"
},
"assetIdentifiers": [
{
"customerId": 0,
"name": "string",
"presentableName": "string",
"type": "IP",
"firstSeen": "2019-08-24T14:15:22Z",
"lastSeen": "2019-08-24T14:15:22Z",
"scannerId": 0,
"customOwnership": 100,
"source": [
"SCOUT"
],
"assetIds": [
0
],
"accountIds": [
0
],
"platform": "string",
"properties": {
"type": "IP"
}
}
]
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/assets" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/assets' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/assets' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /assets
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"source" : [
"SCOUT"
],
"assetIdentifierIds" : [
0
],
"cvssV2EnvironmentalVector" : "string" ,
"cvssV3EnvironmentalVector" : "string" ,
"customerName" : "string" ,
"enabled" : true ,
"dockerImageProperties" : {
"type" : "IP"
},
"assetIdentifiers" : [
{
"customerId" : 0 ,
"name" : "string" ,
"presentableName" : "string" ,
"type" : "IP" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"scannerId" : 0 ,
"customOwnership" : 100 ,
"source" : [
"SCOUT"
],
"assetIds" : [
0
],
"accountIds" : [
0
],
"platform" : "string" ,
"properties" : {
"type" : "IP"
}
}
]
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Asset
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete one or several assets
# You can also use wget
curl -X DELETE \
/rest/assets \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/assets" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/assets' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/assets' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /assets
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/assets \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/assets" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/assets' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/assets' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /assets
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update one or several assets
# You can also use wget
curl -X PATCH \
/rest/assets \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"source": [
"SCOUT"
],
"assetIdentifierIds": [
0
],
"cvssV2EnvironmentalVector": "string",
"cvssV3EnvironmentalVector": "string",
"customerName": "string",
"enabled": true,
"dockerImageProperties": {
"type": "IP"
},
"assetIdentifiers": [
{
"customerId": 0,
"name": "string",
"presentableName": "string",
"type": "IP",
"firstSeen": "2019-08-24T14:15:22Z",
"lastSeen": "2019-08-24T14:15:22Z",
"scannerId": 0,
"customOwnership": 100,
"source": [
"SCOUT"
],
"assetIds": [
0
],
"accountIds": [
0
],
"platform": "string",
"properties": {
"type": "IP"
}
}
]
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/assets" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/assets' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/assets' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /assets
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"source" : [
"SCOUT"
],
"assetIdentifierIds" : [
0
],
"cvssV2EnvironmentalVector" : "string" ,
"cvssV3EnvironmentalVector" : "string" ,
"customerName" : "string" ,
"enabled" : true ,
"dockerImageProperties" : {
"type" : "IP"
},
"assetIdentifiers" : [
{
"customerId" : 0 ,
"name" : "string" ,
"presentableName" : "string" ,
"type" : "IP" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"scannerId" : 0 ,
"customOwnership" : 100 ,
"source" : [
"SCOUT"
],
"assetIds" : [
0
],
"accountIds" : [
0
],
"platform" : "string" ,
"properties" : {
"type" : "IP"
}
}
]
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
body
body
Asset
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get the links for an asset
# You can also use wget
curl -X GET \
/rest/assets/{ assetId} /links \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/{assetId}/links ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/{assetId}/links ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/assets/{assetId}/links" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/assets/{assetId}/links' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/assets/{assetId}/links' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /assets/{assetId}/links
Parameters
Name
In
Type
Required
Description
assetId
path
integer(int32)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"assetId" : 0 ,
"assetIdentifierId" : 0 ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[AssetLink ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» assetId
integer(int32)
false
none
none
» assetIdentifierId
integer(int32)
true
none
The ID of the asset identifier associated with this entry
» firstSeen
string(date-time)
true
none
Timestamp when the entry was seen for the first time.
» lastSeen
string(date-time)
true
none
Timestamp when the entry was seen last time.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create an asset link
# You can also use wget
curl -X POST \
/rest/assets/{ assetId} /links \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/{assetId}/links ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"assetId": 0,
"assetIdentifierId": 0,
"firstSeen": "2019-08-24T14:15:22Z",
"lastSeen": "2019-08-24T14:15:22Z"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/{assetId}/links ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/assets/{assetId}/links" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/assets/{assetId}/links' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/assets/{assetId}/links' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /assets/{assetId}/links
Body parameter
{
"assetId" : 0 ,
"assetIdentifierId" : 0 ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z"
}
Parameters
Name
In
Type
Required
Description
assetId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
AssetLink
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get subscriptions associated with the given asset
# You can also use wget
curl -X GET \
/rest/assets/{ assetId} /subscriptions \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/{assetId}/subscriptions ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/{assetId}/subscriptions ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/assets/{assetId}/subscriptions" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/assets/{assetId}/subscriptions' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/assets/{assetId}/subscriptions' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /assets/{assetId}/subscriptions
Parameters
Name
In
Type
Required
Description
assetId
path
integer(int32)
true
none
The above code returns response like this:
default Response
[
{
"uuid" : "string" ,
"type" : "DAST" ,
"associations" : {
"assetGroups" : [
"string"
]
},
"durationInDays" : 0 ,
"activeUntil" : "2019-08-24T14:15:22Z" ,
"activatedAt" : "2019-08-24T14:15:22Z" ,
"redeemableUntil" : "2019-08-24T14:15:22Z" ,
"created" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updated" : "2019-08-24T14:15:22Z" ,
"updatedBy" : "string" ,
"template" : {
"uuid" : "string" ,
"variables" : "string" ,
"template" : "string" ,
"name" : "string"
},
"customer" : {
"uuid" : "string"
},
"limits" : {
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
},
"isActive" : true
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Subscription ]
false
none
none
» uuid
string
false
none
The UUID of the entry.
» type
string
false
none
none
» associations
Subscription.Associations
false
none
none
»» assetGroups
[string]
false
none
none
» durationInDays
integer(int32)
false
none
none
» activeUntil
string(date-time)
false
none
none
» activatedAt
string(date-time)
false
none
none
» redeemableUntil
string(date-time)
false
none
none
» created
string(date-time)
false
none
The timestamp when the entry was created.
» createdBy
string
false
none
The name of the user who created the entry.
» updated
string(date-time)
false
none
The timestamp when the entry was updated.
» updatedBy
string
false
none
The name of the user who updated the entry.
» template
Subscription.Template
false
none
none
»» uuid
string
true
none
The UUID of the entry.
»» variables
string
false
none
none
»» template
string
false
none
none
»» name
string
false
none
The name of the entry.
» customer
Subscription.Customer
false
none
none
»» uuid
string
true
none
The UUID of the entry.
» limits
Subscription.Limits
false
none
none
»» netsecAssets
integer(int32)
false
none
The netsec assets
»» netsecScans
integer(int32)
false
none
The netsec scans
»» netsecInternalAssets
integer(int32)
false
none
The netsec internal assets
»» netsecInternalScans
integer(int32)
false
none
The netsec internal scans
»» netsecApplianceAssets
integer(int32)
false
none
The netsec appliance assets
»» netsecApplianceScans
integer(int32)
false
none
The netsec appliance scans
»» netsecApplianceExternalAssets
integer(int32)
false
none
The netsec appliance external assets
»» netsecApplianceExternalScans
integer(int32)
false
none
The netsec appliance external scans
»» complianceAssets
integer(int32)
false
none
The compliance assets
»» complianceScans
integer(int32)
false
none
The compliance scans
»» complianceInternalAssets
integer(int32)
false
none
The compliance internal assets
»» complianceInternalScans
integer(int32)
false
none
The compliance internal scans
»» complianceApplianceAssets
integer(int32)
false
none
The compliance appliance assets
»» complianceApplianceScans
integer(int32)
false
none
The compliance appliance scans
»» complianceApplianceExternalAssets
integer(int32)
false
none
The compliance appliance external assets
»» complianceApplianceExternalScans
integer(int32)
false
none
The compliance appliance external scans
»» pciAssets
integer(int32)
false
none
The pci assets
»» pciScans
integer(int32)
false
none
The pci scans
»» scaleAssets
integer(int32)
false
none
The scale assets
»» scaleScans
integer(int32)
false
none
The scale scans
»» scaleInternalAssets
integer(int32)
false
none
The scale internal assets
»» scaleApplianceAssets
integer(int32)
false
none
The scale appliance assets
»» scaleApplianceScans
integer(int32)
false
none
The scale appliance scans
»» scaleApplianceExternalScans
integer(int32)
false
none
The scale appliance external scans
»» scaleApplianceExternalAssets
integer(int32)
false
none
The scale appliance external assets
»» cloudsecAssets
integer(int32)
false
none
The cloudsec assets
»» cloudsecScans
integer(int32)
false
none
The cloudsec scans
»» networkDiscoveryScans
integer(int32)
false
none
The network discovery scans
»» networkDiscoveryApplianceScans
integer(int32)
false
none
The network discovery appliance scans
»» cloudDiscoveryScans
integer(int32)
false
none
The cloud discovery scans
»» cloudDiscoveryApplianceScans
integer(int32)
false
none
The cloud discovery appliance scans
»» networkAssets
integer(int32)
false
none
The network assets
»» networkScans
integer(int32)
false
none
The network scans
»» networkApplianceAssets
integer(int32)
false
none
The network appliance assets
»» networkApplianceScans
integer(int32)
false
none
The network appliance scans
»» dockerImageDiscoveryScans
integer(int32)
false
none
The docker image discovery scans
»» dockerImageAssets
integer(int32)
false
none
The docker image assets
»» dockerImageScans
integer(int32)
false
none
The docker image scans
»» dockerImageDiscoveryApplianceScans
integer(int32)
false
none
The docker image discovery appliance scans
»» dockerImageApplianceAssets
integer(int32)
false
none
The docker image appliance assets
»» dockerImageApplianceScans
integer(int32)
false
none
The docker image appliance scans
»» outscanNXAssets
integer(int32)
false
none
The outscan NX assets
»» outscanNXApplianceAssets
integer(int32)
false
none
The outscan NX appliance assets
» isActive
boolean
false
none
none
Enumerated Values
Property
Value
type
DAST
type
SCALE
type
SCOUT
type
SNAPSHOT
type
ASSURE
type
DAST_EXPERT
type
VERIFY
type
SWAT
type
CLOUDSEC
type
NETSEC
type
CONSUMPTION
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Merge two or more assets into a single asset
# You can also use wget
curl -X POST \
/rest/assets/{ assetId} /merge \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/{assetId}/merge ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/{assetId}/merge ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/assets/{assetId}/merge" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/assets/{assetId}/merge' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/assets/{assetId}/merge' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /assets/{assetId}/merge
Merges the selected asset records. This will reassign all identifiers to the target asset. Findings and other historical data associated with the merged records will be invalidated and removed; the target's historical data will remain unaltered.
Body parameter
Parameters
Name
In
Type
Required
Description
assetId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
array
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/assets/{ assetId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/{assetId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/{assetId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/assets/{assetId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/assets/{assetId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/assets/{assetId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /assets/{assetId}/tags
Body parameter
Name
In
Type
Required
Description
assetId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/assets/tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/assets/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/assets/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/assets/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /assets/tags
Body parameter
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X POST \
/rest/assets/refresh-tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/refresh-tags ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/refresh-tags ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/assets/refresh-tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/assets/refresh-tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/assets/refresh-tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /assets/refresh-tags
Refresh tags should add all custom attributes as tags on the asset, except MAC attribute
Body parameter
Name
In
Type
Required
Description
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Split an asset based on identifier subset
# You can also use wget
curl -X POST \
/rest/assets/{ assetId} /split \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/assets/{assetId}/split ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/assets/{assetId}/split ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/assets/{assetId}/split" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/assets/{assetId}/split' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/assets/{assetId}/split' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /assets/{assetId}/split
Moves the selected identifiers into a new asset record. All findings will remain associated with the original asset.
Body parameter
Parameters
Name
In
Type
Required
Description
assetId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
array
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Audits
Get a audit by ID
# You can also use wget
curl -X GET \
/rest/audits/{ auditId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/audits/{auditId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/audits/{auditId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/audits/{auditId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/audits/{auditId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/audits/{auditId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /audits/{auditId}
Parameters
Name
In
Type
Required
Description
auditId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"objectName" : "string" ,
"objectId" : 0 ,
"action" : "string" ,
"updatedFields" : {
"property1" : "string" ,
"property2" : "string"
}
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Audit
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of audits
# You can also use wget
curl -X GET \
/rest/audits \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/audits ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/audits ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/audits" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/audits' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/audits' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /audits
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"objectName" : "string" ,
"objectId" : 0 ,
"action" : "string" ,
"updatedFields" : {
"property1" : "string" ,
"property2" : "string"
}
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Audit ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» objectName
string
false
read-only
none
» objectId
integer(int32)
false
read-only
none
» action
string
false
read-only
none
» updatedFields
object
false
read-only
none
»» additionalProperties
string
false
read-only
none
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/audits \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/audits ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/audits ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/audits" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/audits' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/audits' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /audits
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Auth
Get a token
# You can also use wget
curl -X GET \
/rest/auth/login \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/auth/login ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/auth/login ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "text/plain" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/auth/login" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'text/plain' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/auth/login' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/auth/login' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /auth/login
The above code returns response like this:
default Response
Responses
Status
Meaning
Description
Schema
default
Default
default response
string
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Log in with username and password
# You can also use wget
curl -X POST \
/rest/auth/login \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Accept: text/plain'
var headers = {
' Content-Type ' : ' application/x-www-form-urlencoded ' ,
' Accept ' : ' text/plain '
};
$ . ajax ({
url : ' /rest/auth/login ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"username": "string",
"password": "string",
"code": "string",
"validUntil": "2019-08-24T14:15:22Z"
} ' ;
const headers = {
' Content-Type ' : ' application/x-www-form-urlencoded ' ,
' Accept ' : ' text/plain '
};
fetch ( ' /rest/auth/login ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/x-www-form-urlencoded" },
"Accept" : [] string { "text/plain" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/auth/login" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/x-www-form-urlencoded' ,
'Accept' : 'text/plain'
}
r = requests . post ( '/rest/auth/login' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/x-www-form-urlencoded' ,
'Accept' => 'text/plain'
}
result = RestClient . post '/rest/auth/login' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /auth/login
Body parameter
username : string
password : string
code : string
validUntil : 2019-08-24T14:15:22Z
Parameters
Name
In
Type
Required
Description
body
body
object
false
none
» username
body
string
true
none
» password
body
string
true
none
» code
body
string
false
none
» validUntil
body
string(date-time)
false
When the token should expire, has to be in the future and in the ISO 8601 instant format
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
This operation does not require authentication
Log out
# You can also use wget
curl -X POST \
/rest/auth/logout \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/auth/logout ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/auth/logout ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/auth/logout" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/auth/logout' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/auth/logout' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /auth/logout
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Send an sms containing the two-factor authentication code to user
# You can also use wget
curl -X POST \
/rest/auth/send-2fa-sms \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/auth/send-2fa-sms ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"phoneNumber": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/auth/send-2fa-sms ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/auth/send-2fa-sms" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/auth/send-2fa-sms' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/auth/send-2fa-sms' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /auth/send-2fa-sms
Body parameter
{
"phoneNumber" : "string"
}
Parameters
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Blueprints
Download a blueprint
# You can also use wget
curl -X GET \
/rest/blueprints/download/{ key} \
-H 'Accept: */*' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' */* ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/blueprints/download/{key} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' */* ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/blueprints/download/{key} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "*/*" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/blueprints/download/{key}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : '*/*' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/blueprints/download/{key}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => '*/*' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/blueprints/download/{key}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /blueprints/download/{key}
Parameters
Name
In
Type
Required
Description
key
path
string
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Certificate
Renews certificate
# You can also use wget
curl -X POST \
/rest/certificate/renew \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/certificate/renew ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"certificateSigningRequest": "string",
"scannerId": 0,
"key": "string",
"service": "OUTPOST24_GLOBAL"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/certificate/renew ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/certificate/renew" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/certificate/renew' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/certificate/renew' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /certificate/renew
Body parameter
{
"certificateSigningRequest" : "string" ,
"scannerId" : 0 ,
"key" : "string" ,
"service" : "OUTPOST24_GLOBAL"
}
Parameters
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Checks
# You can also use wget
curl -X GET \
/rest/checks/{ checkId} /comments/{ commentId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/checks/{checkId}/comments/{commentId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/checks/{checkId}/comments/{commentId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/checks/{checkId}/comments/{commentId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/checks/{checkId}/comments/{commentId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/checks/{checkId}/comments/{commentId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /checks/{checkId}/comments/{commentId}
Name
In
Type
Required
Description
checkId
path
integer(int32)
true
none
commentId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"authorIsStaff" : true ,
"deleted" : "2019-08-24T14:15:22Z"
}
Status
Meaning
Description
Schema
default
Default
default response
Comment
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X DELETE \
/rest/checks/{ checkId} /comments/{ commentId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/checks/{checkId}/comments/{commentId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/checks/{checkId}/comments/{commentId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/checks/{checkId}/comments/{commentId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/checks/{checkId}/comments/{commentId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/checks/{checkId}/comments/{commentId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /checks/{checkId}/comments/{commentId}
Name
In
Type
Required
Description
checkId
path
integer(int32)
true
none
commentId
path
integer(int32)
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a check
# You can also use wget
curl -X GET \
/rest/checks/{ checkId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/checks/{checkId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/checks/{checkId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/checks/{checkId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/checks/{checkId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/checks/{checkId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /checks/{checkId}
Parameters
Name
In
Type
Required
Description
checkId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"cve" : "string" ,
"name" : "string" ,
"nvdCvssV2Score" : 0 ,
"nvdCvssV3Score" : 0 ,
"nvdCvssV2Vector" : "string" ,
"cvssV3Severity" : "RECOMMENDATION" ,
"hasExploits" : true ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"description" : "string" ,
"cyrating" : 0 ,
"previousCyrating" : 0 ,
"cyratingDelta" : 0 ,
"cyratingUpdated" : "2019-08-24T14:15:22Z" ,
"cyratingLastSeen" : "2019-08-24T14:15:22Z" ,
"exploitProbability" : 0 ,
"previousExploitProbability" : 0 ,
"exploitProbabilityDelta" : 0 ,
"softwareComponent" : "string" ,
"owasp2017" : [
0
],
"solutionType" : "NOT_CLASSIFIED" ,
"solution" : "string" ,
"solutionProduct" : "string" ,
"solutionTitle" : "string" ,
"solutionUuid" : "string" ,
"bugTraq" : [
0
],
"nvdCvssV3Vector" : "string" ,
"farsight" : {
"risk" : {
"score" : 0 ,
"delta" : 0
},
"updated" : "2019-08-24T14:15:22Z" ,
"lastThreatActivity" : "2019-08-24T14:15:22Z"
},
"classifications" : {
"sans25" : 0 ,
"capec" : [
0
],
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
]
}
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Check
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of checks
# You can also use wget
curl -X GET \
/rest/checks \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/checks ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/checks ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/checks" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/checks' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/checks' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /checks
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"cve" : "string" ,
"name" : "string" ,
"nvdCvssV2Score" : 0 ,
"nvdCvssV3Score" : 0 ,
"nvdCvssV2Vector" : "string" ,
"cvssV3Severity" : "RECOMMENDATION" ,
"hasExploits" : true ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"description" : "string" ,
"cyrating" : 0 ,
"previousCyrating" : 0 ,
"cyratingDelta" : 0 ,
"cyratingUpdated" : "2019-08-24T14:15:22Z" ,
"cyratingLastSeen" : "2019-08-24T14:15:22Z" ,
"exploitProbability" : 0 ,
"previousExploitProbability" : 0 ,
"exploitProbabilityDelta" : 0 ,
"softwareComponent" : "string" ,
"owasp2017" : [
0
],
"solutionType" : "NOT_CLASSIFIED" ,
"solution" : "string" ,
"solutionProduct" : "string" ,
"solutionTitle" : "string" ,
"solutionUuid" : "string" ,
"bugTraq" : [
0
],
"nvdCvssV3Vector" : "string" ,
"farsight" : {
"risk" : {
"score" : 0 ,
"delta" : 0
},
"updated" : "2019-08-24T14:15:22Z" ,
"lastThreatActivity" : "2019-08-24T14:15:22Z"
},
"classifications" : {
"sans25" : 0 ,
"capec" : [
0
],
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
]
}
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Check ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» cve
string
false
read-only
The check CVE
» name
string
false
read-only
The name of the entry.
» nvdCvssV2Score
number(double)
false
read-only
The CVSS V2 score
» nvdCvssV3Score
number(double)
false
read-only
The CVSS V3 score
» nvdCvssV2Vector
string
false
read-only
The CVSS V2 vector
» cvssV3Severity
string
false
read-only
The CVSS V3 Severity
» hasExploits
boolean
false
read-only
Set to true when exploits are available
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» description
string
false
read-only
Description of the entry.
» cyrating
number(double)
false
read-only
none
» previousCyrating
number(double)
false
read-only
none
» cyratingDelta
number(double)
false
read-only
none
» cyratingUpdated
string(date-time)
false
read-only
none
» cyratingLastSeen
string(date-time)
false
read-only
none
» exploitProbability
number(double)
false
read-only
The exploit probability
» previousExploitProbability
number(double)
false
read-only
The previous exploit probability
» exploitProbabilityDelta
number(double)
false
read-only
The exploit probability delta
» softwareComponent
string
false
read-only
The software component
» owasp2017
[integer]
false
read-only
An array of OWASP Top 10 2017 classifications of the entry.
» solutionType
string
false
read-only
The solution type
» solution
string
false
read-only
The solution
» solutionProduct
string
false
read-only
The solution product
» solutionTitle
string
false
read-only
The solution title
» solutionUuid
string
false
read-only
The solution uuid
» bugTraq
[integer]
false
read-only
An array of Bugtraq reference IDs.
» nvdCvssV3Vector
string
false
read-only
The CVSS V3 vector
» farsight
Farsight
false
read-only
The farsight concists in additional information on risk such as likelihood, threat activity
»» risk
Farsight.Risk
false
none
none
»»» score
number(float)
false
none
none
»»» delta
number(float)
false
none
none
»» updated
string(date-time)
false
none
The timestamp when the entry was updated.
»» lastThreatActivity
string(date-time)
false
none
none
» classifications
Classification.Classifications
false
read-only
The classifications such as CAPEC, OWASP20XX
»» sans25
integer(int32)
false
none
SANS 25 classification of the entry.
»» capec
[integer]
false
none
CAPEC classification of the entry.
»» owasp2004
[integer]
false
none
An array of OWASP Top 10 2004 classifications of the entry.
»» owasp2007
[integer]
false
none
An array of OWASP Top 10 2007 classifications of the entry.
»» owasp2010
[integer]
false
none
An array of OWASP Top 10 2010 classifications of the entry.
»» owasp2013
[integer]
false
none
An array of OWASP Top 10 2013 classifications of the entry.
»» owasp2017
[integer]
false
none
An array of OWASP Top 10 2017 classifications of the entry.
»» owasp2021
[integer]
false
none
none
Enumerated Values
Property
Value
cvssV3Severity
RECOMMENDATION
cvssV3Severity
LOW
cvssV3Severity
MEDIUM
cvssV3Severity
HIGH
cvssV3Severity
CRITICAL
solutionType
NOT_CLASSIFIED
solutionType
UNKNOWN
solutionType
RECONFIGURE
solutionType
WORKAROUND
solutionType
SOLUTION_IN_PROGRESS
solutionType
CONTACT_VENDOR
solutionType
UPDATE
solutionType
PATCH
solutionType
NOT_ACKNOWLEDGED
solutionType
NO_SOLUTION
solutionType
CONFIGURE_ACCOUNT
solutionType
DISABLE
solutionType
FILTER
solutionType
MALWARE
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/checks \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/checks ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/checks ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/checks" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/checks' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/checks' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /checks
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X GET \
/rest/checks/{ checkId} /comments \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/checks/{checkId}/comments ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/checks/{checkId}/comments ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/checks/{checkId}/comments" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/checks/{checkId}/comments' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/checks/{checkId}/comments' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /checks/{checkId}/comments
Name
In
Type
Required
Description
checkId
path
integer(int32)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"authorIsStaff" : true ,
"deleted" : "2019-08-24T14:15:22Z"
}
]
Status
Meaning
Description
Schema
default
Default
default response
Inline
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Comment ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» parentId
integer(int32)
false
none
The ID of the parent entry.
» comment
string
false
none
The content of the comment
» entityType
string
false
none
The type of object this comment is made for
» entityId
integer(int32)
false
none
The ID of the object this comment is made for
» supportStatus
string
false
none
Current support status of the comment
» authorIsStaff
boolean
false
read-only
Whether the comment is from Outpost24 or the customer
» deleted
string(date-time)
false
none
When the comment was deleted
Enumerated Values
Property
Value
entityType
FINDING
entityType
ASSET_GROUP
entityType
ASSET
entityType
SCAN_CONFIGURATION
entityType
SCHEDULE
entityType
SCAN
entityType
USER
entityType
ROLE
entityType
RESOURCE_GROUP
entityType
COMPLIANCE
entityType
WORKFLOW
entityType
CHECK
supportStatus
NOT_APPLICABLE
supportStatus
WAITING
supportStatus
DONE
supportStatus
INTERNAL
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X POST \
/rest/checks/{ checkId} /comments \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/checks/{checkId}/comments ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"parentId": 0,
"comment": "string",
"entityType": "FINDING",
"entityId": 0,
"supportStatus": "NOT_APPLICABLE",
"deleted": "2019-08-24T14:15:22Z"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/checks/{checkId}/comments ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/checks/{checkId}/comments" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/checks/{checkId}/comments' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/checks/{checkId}/comments' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /checks/{checkId}/comments
Body parameter
{
"customerId" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"deleted" : "2019-08-24T14:15:22Z"
}
Name
In
Type
Required
Description
checkId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Comment
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get the exploits for a check
# You can also use wget
curl -X GET \
/rest/checks/{ checkId} /exploits \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/checks/{checkId}/exploits ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/checks/{checkId}/exploits ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/checks/{checkId}/exploits" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/checks/{checkId}/exploits' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/checks/{checkId}/exploits' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /checks/{checkId}/exploits
Parameters
Name
In
Type
Required
Description
checkId
path
integer(int32)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"source" : "Unknown" ,
"cve" : "string" ,
"name" : "string" ,
"created" : "2019-08-24T14:15:22Z" ,
"pack" : "string" ,
"checkId" : 0 ,
"url" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Exploit ]
false
none
none
» id
integer(int64)
false
read-only
The ID of the entry.
» source
string
false
read-only
none
» cve
string
false
read-only
none
» name
string
false
read-only
The name of the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» pack
string
false
read-only
none
» checkId
integer(int64)
false
read-only
none
» url
string
false
read-only
none
Enumerated Values
Property
Value
source
Unknown
source
Core Security
source
Immunity
source
Exploit Database
source
DSquare Security
source
Contagio
source
Metasploit
source
SAINT
source
Security Focus
source
Snort
source
Farsight
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Classifications
Get a classification
# You can also use wget
curl -X GET \
/rest/classifications/{ classificationId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/classifications/{classificationId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/classifications/{classificationId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/classifications/{classificationId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/classifications/{classificationId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/classifications/{classificationId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /classifications/{classificationId}
Parameters
Name
In
Type
Required
Description
classificationId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"cwe" : 0 ,
"name" : "string" ,
"sans25" : 0 ,
"capec" : [
0
],
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
],
"secureCodeWarrior" : {
"name" : "string" ,
"description" : "string" ,
"url" : "string"
},
"classifications" : {
"sans25" : 0 ,
"capec" : [
0
],
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
]
}
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Classification
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of classifications
# You can also use wget
curl -X GET \
/rest/classifications \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/classifications ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/classifications ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/classifications" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/classifications' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/classifications' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /classifications
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"cwe" : 0 ,
"name" : "string" ,
"sans25" : 0 ,
"capec" : [
0
],
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
],
"secureCodeWarrior" : {
"name" : "string" ,
"description" : "string" ,
"url" : "string"
},
"classifications" : {
"sans25" : 0 ,
"capec" : [
0
],
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
]
}
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Classification ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» cwe
integer(int32)
false
read-only
CWE classification of the entry.
» name
string
false
read-only
The name of the entry.
» sans25
integer(int32)
false
read-only
SANS 25 classification of the entry.
» capec
[integer]
false
read-only
CAPEC classification of the entry.
» owasp2004
[integer]
false
read-only
An array of OWASP Top 10 2004 classifications of the entry.
» owasp2007
[integer]
false
read-only
An array of OWASP Top 10 2007 classifications of the entry.
» owasp2010
[integer]
false
read-only
An array of OWASP Top 10 2010 classifications of the entry.
» owasp2013
[integer]
false
read-only
An array of OWASP Top 10 2013 classifications of the entry.
» owasp2017
[integer]
false
read-only
An array of OWASP Top 10 2017 classifications of the entry.
» owasp2021
[integer]
false
read-only
none
» secureCodeWarrior
SecureCodeWarrior
false
read-only
The secure code warrior information on the vulnerability description and training
»» name
string
false
none
The name of the entry.
»» description
string
false
none
Description of the entry.
»» url
string
false
none
none
» classifications
Classification.Classifications
false
read-only
The classifications such as CAPEC, OWASP20XX
»» sans25
integer(int32)
false
none
SANS 25 classification of the entry.
»» capec
[integer]
false
none
CAPEC classification of the entry.
»» owasp2004
[integer]
false
none
An array of OWASP Top 10 2004 classifications of the entry.
»» owasp2007
[integer]
false
none
An array of OWASP Top 10 2007 classifications of the entry.
»» owasp2010
[integer]
false
none
An array of OWASP Top 10 2010 classifications of the entry.
»» owasp2013
[integer]
false
none
An array of OWASP Top 10 2013 classifications of the entry.
»» owasp2017
[integer]
false
none
An array of OWASP Top 10 2017 classifications of the entry.
»» owasp2021
[integer]
false
none
none
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/classifications \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/classifications ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/classifications ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/classifications" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/classifications' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/classifications' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /classifications
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Compliance
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/compliance/findings/{ findingId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/compliance/findings/{findingId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/compliance/findings/{findingId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/compliance/findings/{findingId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/compliance/findings/{findingId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/compliance/findings/{findingId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /compliance/findings/{findingId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/compliance/findings/{ findingId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/compliance/findings/{findingId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/compliance/findings/{findingId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/compliance/findings/{findingId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/compliance/findings/{findingId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/compliance/findings/{findingId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /compliance/findings/{findingId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a compliance finding by ID
# You can also use wget
curl -X GET \
/rest/compliance/findings/{ findingId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/compliance/findings/{findingId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/compliance/findings/{findingId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/compliance/findings/{findingId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/compliance/findings/{findingId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/compliance/findings/{findingId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /compliance/findings/{findingId}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"requirementId" : 0 ,
"matchId" : 0 ,
"assetId" : 0 ,
"policyId" : 0 ,
"policyName" : "string" ,
"audit" : "string" ,
"description" : "string" ,
"rationale" : "string" ,
"scored" : true ,
"nameLong" : "string" ,
"nameShort" : "string" ,
"requirement" : "string" ,
"solution" : "string" ,
"impacts" : "string" ,
"notes" : "string" ,
"references" : "string" ,
"controls" : "string" ,
"category" : "INFRASTRUCTURE" ,
"source" : [
"SCOUT"
],
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"compliant" : "COMPLIANT" ,
"falsePositive" : "2019-08-24T14:15:22Z" ,
"falsePositiveComment" : "string" ,
"falsePositiveBy" : "string" ,
"exception" : "2019-08-24T14:15:22Z" ,
"exceptionComment" : "string" ,
"exceptionUntil" : "2019-08-24T14:15:22Z" ,
"exceptionBy" : "string" ,
"humanCheck" : true ,
"firstFailed" : "2019-08-24T14:15:22Z" ,
"lastFailed" : "2019-08-24T14:15:22Z" ,
"assetName" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Responses
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of compliance findings
# You can also use wget
curl -X GET \
/rest/compliance/findings \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/compliance/findings ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/compliance/findings ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/compliance/findings" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/compliance/findings' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/compliance/findings' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /compliance/findings
Parameters
Name
In
Type
Required
Description
assetIdentifierId
query
string
false
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"requirementId" : 0 ,
"matchId" : 0 ,
"assetId" : 0 ,
"policyId" : 0 ,
"policyName" : "string" ,
"audit" : "string" ,
"description" : "string" ,
"rationale" : "string" ,
"scored" : true ,
"nameLong" : "string" ,
"nameShort" : "string" ,
"requirement" : "string" ,
"solution" : "string" ,
"impacts" : "string" ,
"notes" : "string" ,
"references" : "string" ,
"controls" : "string" ,
"category" : "INFRASTRUCTURE" ,
"source" : [
"SCOUT"
],
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"compliant" : "COMPLIANT" ,
"falsePositive" : "2019-08-24T14:15:22Z" ,
"falsePositiveComment" : "string" ,
"falsePositiveBy" : "string" ,
"exception" : "2019-08-24T14:15:22Z" ,
"exceptionComment" : "string" ,
"exceptionUntil" : "2019-08-24T14:15:22Z" ,
"exceptionBy" : "string" ,
"humanCheck" : true ,
"firstFailed" : "2019-08-24T14:15:22Z" ,
"lastFailed" : "2019-08-24T14:15:22Z" ,
"assetName" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ComplianceFinding ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» requirementId
integer(int32)
true
none
Id of the requirement associated with the finding
» matchId
integer(int32)
true
none
Id of the matching entity
» assetId
integer(int32)
true
none
Id of the associated asset
» policyId
integer(int32)
false
read-only
Id of the associated policy
» policyName
string
false
read-only
Name of the associated policy
» audit
string
false
read-only
Audit information related to the finding
» description
string
false
read-only
Description of the entry.
» rationale
string
false
read-only
Rationale behind the finding
» scored
boolean
false
read-only
Indicates whether the finding is scored
» nameLong
string
false
read-only
Long name associated with the finding
» nameShort
string
false
read-only
Short name associated with the finding
» requirement
string
false
read-only
Requirement details associated with the finding
» solution
string
false
read-only
Solution to address the finding
» impacts
string
false
read-only
Impacts of the finding
» notes
string
false
read-only
Additional notes related to the finding
» references
string
false
read-only
References related to the finding
» controls
string
false
read-only
Controls in place to address the finding
» category
string
false
read-only
Category of compliance requirement
» source
[string]
false
read-only
Array of sources related to the finding
» firstSeen
string(date-time)
false
read-only
Timestamp when the entry was seen for the first time.
» lastSeen
string(date-time)
false
read-only
Timestamp when the entry was seen last time.
» firstScanId
integer(int32)
false
read-only
Id of the first scan associated with the finding
» lastScanId
integer(int32)
false
read-only
Id of the last scan associated with the finding
» compliant
string
false
read-only
Compliance status of the finding
» falsePositive
string(date-time)
false
read-only
Instant when the finding was marked as false positive
» falsePositiveComment
string
false
read-only
Comment related to marking the finding as false positive
» falsePositiveBy
string
false
read-only
User who marked the finding as false positive
» exception
string(date-time)
false
read-only
Instant when an exception was recorded for the finding
» exceptionComment
string
false
read-only
Comment related to the exception recorded for the finding
» exceptionUntil
string(date-time)
false
read-only
Instant until when the exception is valid
» exceptionBy
string
false
read-only
User who recorded the exception for the finding
» humanCheck
boolean
false
read-only
Indicates whether there is a human check for the finding
» firstFailed
string(date-time)
false
read-only
Instant when the finding first failed
» lastFailed
string(date-time)
false
read-only
Instant when the finding last failed
» assetName
string
false
read-only
Name of the asset associated with the finding
» tags
[Tag ]
false
read-only
The tags
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
Enumerated Values
Property
Value
category
INFRASTRUCTURE
category
COMPUTE
category
NETWORK
category
STORAGE
category
DATABASE
category
BIG_DATA_AND_ANALYTICS
category
SECURITY_AND_IDENTITY
category
MONITORING_AND_LOGGING
category
NOT_DEFINED
compliant
COMPLIANT
compliant
NOT_COMPLIANT
compliant
COMPLIANT_WITH_EXCEPTIONS
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/compliance/requirements \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/compliance/requirements ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/compliance/requirements ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/compliance/requirements" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/compliance/requirements' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/compliance/requirements' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /compliance/requirements
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a compliance policy
# You can also use wget
curl -X GET \
/rest/compliance/policies/{ policyId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/compliance/policies/{policyId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/compliance/policies/{policyId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/compliance/policies/{policyId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/compliance/policies/{policyId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/compliance/policies/{policyId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /compliance/policies/{policyId}
Parameters
Name
In
Type
Required
Description
policyId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"description" : "string" ,
"type" : "AWS" ,
"checksum" : "string"
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Policy
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of compliance policies
# You can also use wget
curl -X GET \
/rest/compliance/policies \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/compliance/policies ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/compliance/policies ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/compliance/policies" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/compliance/policies' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/compliance/policies' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /compliance/policies
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"description" : "string" ,
"type" : "AWS" ,
"checksum" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Policy ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
false
read-only
The name of the entry.
» description
string
false
read-only
Description of the entry.
» type
string
false
read-only
none
» checksum
string(byte)
false
read-only
none
Enumerated Values
Property
Value
type
AWS
type
GCP
type
AZURE
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a compliance requirement
# You can also use wget
curl -X GET \
/rest/compliance/requirements/{ requirementId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/compliance/requirements/{requirementId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/compliance/requirements/{requirementId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/compliance/requirements/{requirementId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/compliance/requirements/{requirementId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/compliance/requirements/{requirementId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /compliance/requirements/{requirementId}
Parameters
Name
In
Type
Required
Description
requirementId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"policyId" : 0 ,
"audit" : "string" ,
"description" : "string" ,
"rationale" : "string" ,
"scored" : true ,
"nameLong" : "string" ,
"nameShort" : "string" ,
"requirementId" : "string" ,
"solution" : "string" ,
"category" : "INFRASTRUCTURE" ,
"notes" : "string" ,
"references" : "string" ,
"controls" : "string" ,
"impacts" : "string"
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Requirement
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of requirements
# You can also use wget
curl -X GET \
/rest/compliance/requirements \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/compliance/requirements ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/compliance/requirements ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/compliance/requirements" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/compliance/requirements' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/compliance/requirements' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /compliance/requirements
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"policyId" : 0 ,
"audit" : "string" ,
"description" : "string" ,
"rationale" : "string" ,
"scored" : true ,
"nameLong" : "string" ,
"nameShort" : "string" ,
"requirementId" : "string" ,
"solution" : "string" ,
"category" : "INFRASTRUCTURE" ,
"notes" : "string" ,
"references" : "string" ,
"controls" : "string" ,
"impacts" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Requirement ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» policyId
integer(int32)
false
read-only
none
» audit
string
false
read-only
none
» description
string
false
read-only
Description of the entry.
» rationale
string
false
read-only
none
» scored
boolean
false
read-only
none
» nameLong
string
false
read-only
none
» nameShort
string
false
read-only
none
» requirementId
string
false
read-only
none
» solution
string
false
read-only
none
» category
string
false
read-only
none
» notes
string
false
read-only
none
» references
string
false
read-only
none
» controls
string
false
read-only
none
» impacts
string
false
read-only
none
Enumerated Values
Property
Value
category
INFRASTRUCTURE
category
COMPUTE
category
NETWORK
category
STORAGE
category
DATABASE
category
BIG_DATA_AND_ANALYTICS
category
SECURITY_AND_IDENTITY
category
MONITORING_AND_LOGGING
category
NOT_DEFINED
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Mark compliance finding as exception
# You can also use wget
curl -X POST \
/rest/compliance/findings/{ findingId} /mark-exception \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/compliance/findings/{findingId}/mark-exception ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"exceptionUntil": "2019-08-24T14:15:22Z",
"exceptionComment": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/compliance/findings/{findingId}/mark-exception ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/compliance/findings/{findingId}/mark-exception" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/compliance/findings/{findingId}/mark-exception' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/compliance/findings/{findingId}/mark-exception' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /compliance/findings/{findingId}/mark-exception
Body parameter
{
"exceptionUntil" : "2019-08-24T14:15:22Z" ,
"exceptionComment" : "string"
}
Parameters
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Mark compliance finding as false positive
# You can also use wget
curl -X POST \
/rest/compliance/findings/{ findingId} /mark-false-positive \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/compliance/findings/{findingId}/mark-false-positive ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"falsePositiveComment": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/compliance/findings/{findingId}/mark-false-positive ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/compliance/findings/{findingId}/mark-false-positive" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/compliance/findings/{findingId}/mark-false-positive' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/compliance/findings/{findingId}/mark-false-positive' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /compliance/findings/{findingId}/mark-false-positive
Body parameter
{
"falsePositiveComment" : "string"
}
Parameters
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/compliance/findings/{ findingId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/compliance/findings/{findingId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/compliance/findings/{findingId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/compliance/findings/{findingId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/compliance/findings/{findingId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/compliance/findings/{findingId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /compliance/findings/{findingId}/tags
Body parameter
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Generate a compliance report
# You can also use wget
curl -X POST \
/rest/compliance/reports \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/compliance/reports ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"name": "string",
"format": "PDF",
"password": "string",
"zip": true,
"level": "Detailed",
"assetIds": [
0
],
"assetGroupIds": [
0
],
"tagIds": [
0
],
"filter": "string",
"viewTemplateId": 0,
"deliveryMethod": {
"email": {
"userIds": [
0
],
"recipients": {
"addresses": [
"string"
],
"pgpKey": "string"
}
},
"managedReport": {
"name": "string",
"tags": "string"
}
}
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/compliance/reports ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/compliance/reports" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/compliance/reports' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/compliance/reports' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /compliance/reports
Body parameter
{
"name" : "string" ,
"format" : "PDF" ,
"password" : "string" ,
"zip" : true ,
"level" : "Detailed" ,
"assetIds" : [
0
],
"assetGroupIds" : [
0
],
"tagIds" : [
0
],
"filter" : "string" ,
"viewTemplateId" : 0 ,
"deliveryMethod" : {
"email" : {
"userIds" : [
0
],
"recipients" : {
"addresses" : [
"string"
],
"pgpKey" : "string"
}
},
"managedReport" : {
"name" : "string" ,
"tags" : "string"
}
}
}
Parameters
Name
In
Type
Required
Description
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ComplianceReport
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Unmark finding as exception
# You can also use wget
curl -X POST \
/rest/compliance/findings/{ findingId} /unmark-exception \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/compliance/findings/{findingId}/unmark-exception ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/compliance/findings/{findingId}/unmark-exception ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/compliance/findings/{findingId}/unmark-exception" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/compliance/findings/{findingId}/unmark-exception' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/compliance/findings/{findingId}/unmark-exception' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /compliance/findings/{findingId}/unmark-exception
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Unmark finding as false positive
# You can also use wget
curl -X POST \
/rest/compliance/findings/{ findingId} /unmark-false-positive \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/compliance/findings/{findingId}/unmark-false-positive ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/compliance/findings/{findingId}/unmark-false-positive ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/compliance/findings/{findingId}/unmark-false-positive" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/compliance/findings/{findingId}/unmark-false-positive' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/compliance/findings/{findingId}/unmark-false-positive' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /compliance/findings/{findingId}/unmark-false-positive
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Consumption stats
Get consumption stats by ID
# You can also use wget
curl -X GET \
/rest/consumption-stats/{ consumptionStatsId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/consumption-stats/{consumptionStatsId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/consumption-stats/{consumptionStatsId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/consumption-stats/{consumptionStatsId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/consumption-stats/{consumptionStatsId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/consumption-stats/{consumptionStatsId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /consumption-stats/{consumptionStatsId}
Parameters
Name
In
Type
Required
Description
consumptionStatsId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"customerName" : "string" ,
"organization" : "string" ,
"salesAccountId" : "string" ,
"periodStart" : "2019-08-24T14:15:22Z" ,
"periodEnd" : "2019-08-24T14:15:22Z" ,
"appliancePeriodEnd" : "2019-08-24T14:15:22Z" ,
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
ConsumptionStats
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of consumption stats
# You can also use wget
curl -X GET \
/rest/consumption-stats \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/consumption-stats ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/consumption-stats ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/consumption-stats" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/consumption-stats' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/consumption-stats' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /consumption-stats
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"customerName" : "string" ,
"organization" : "string" ,
"salesAccountId" : "string" ,
"periodStart" : "2019-08-24T14:15:22Z" ,
"periodEnd" : "2019-08-24T14:15:22Z" ,
"appliancePeriodEnd" : "2019-08-24T14:15:22Z" ,
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ConsumptionStats ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
read-only
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» customerName
string
false
read-only
none
» organization
string
false
read-only
none
» salesAccountId
string
false
read-only
none
» periodStart
string(date-time)
false
none
The consumption period start date
» periodEnd
string(date-time)
false
none
The consumption period end date
» appliancePeriodEnd
string(date-time)
false
none
The appliance consumption period start date
» netsecAssets
integer(int32)
false
none
The netsec assets
» netsecScans
integer(int32)
false
none
The netsec scans
» netsecInternalAssets
integer(int32)
false
none
The netsec internal assets
» netsecInternalScans
integer(int32)
false
none
The netsec internal scans
» netsecApplianceAssets
integer(int32)
false
none
The netsec appliance assets
» netsecApplianceScans
integer(int32)
false
none
The netsec appliance scans
» netsecApplianceExternalAssets
integer(int32)
false
none
The netsec appliance external assets
» netsecApplianceExternalScans
integer(int32)
false
none
The netsec appliance external scans
» complianceAssets
integer(int32)
false
none
The compliance assets
» complianceScans
integer(int32)
false
none
The compliance scans
» complianceInternalAssets
integer(int32)
false
none
The compliance internal assets
» complianceInternalScans
integer(int32)
false
none
The compliance internal scans
» complianceApplianceAssets
integer(int32)
false
none
The compliance appliance assets
» complianceApplianceScans
integer(int32)
false
none
The compliance appliance scans
» complianceApplianceExternalAssets
integer(int32)
false
none
The compliance appliance external assets
» complianceApplianceExternalScans
integer(int32)
false
none
The compliance appliance external scans
» pciAssets
integer(int32)
false
none
The pci assets
» pciScans
integer(int32)
false
none
The pci scans
» scaleAssets
integer(int32)
false
none
The scale assets
» scaleScans
integer(int32)
false
none
The scale scans
» scaleInternalAssets
integer(int32)
false
none
The scale internal assets
» scaleApplianceAssets
integer(int32)
false
none
The scale appliance assets
» scaleApplianceScans
integer(int32)
false
none
The scale appliance scans
» scaleApplianceExternalScans
integer(int32)
false
none
The scale appliance external scans
» scaleApplianceExternalAssets
integer(int32)
false
none
The scale appliance external assets
» cloudsecAssets
integer(int32)
false
none
The cloudsec assets
» cloudsecScans
integer(int32)
false
none
The cloudsec scans
» networkDiscoveryScans
integer(int32)
false
none
The network discovery scans
» networkDiscoveryApplianceScans
integer(int32)
false
none
The network discovery appliance scans
» cloudDiscoveryScans
integer(int32)
false
none
The cloud discovery scans
» cloudDiscoveryApplianceScans
integer(int32)
false
none
The cloud discovery appliance scans
» networkAssets
integer(int32)
false
none
The network assets
» networkScans
integer(int32)
false
none
The network scans
» networkApplianceAssets
integer(int32)
false
none
The network appliance assets
» networkApplianceScans
integer(int32)
false
none
The network appliance scans
» dockerImageDiscoveryScans
integer(int32)
false
none
The docker image discovery scans
» dockerImageAssets
integer(int32)
false
none
The docker image assets
» dockerImageScans
integer(int32)
false
none
The docker image scans
» dockerImageDiscoveryApplianceScans
integer(int32)
false
none
The docker image discovery appliance scans
» dockerImageApplianceAssets
integer(int32)
false
none
The docker image appliance assets
» dockerImageApplianceScans
integer(int32)
false
none
The docker image appliance scans
» outscanNXAssets
integer(int32)
false
none
The outscan NX assets
» outscanNXApplianceAssets
integer(int32)
false
none
The outscan NX appliance assets
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/consumption-stats \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/consumption-stats ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/consumption-stats ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/consumption-stats" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/consumption-stats' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/consumption-stats' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /consumption-stats
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of subscriptions for consumption stats
# You can also use wget
curl -X GET \
/rest/consumption-stats/{ consumptionStatsId} /subscriptions \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/consumption-stats/{consumptionStatsId}/subscriptions ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/consumption-stats/{consumptionStatsId}/subscriptions ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/consumption-stats/{consumptionStatsId}/subscriptions" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/consumption-stats/{consumptionStatsId}/subscriptions' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/consumption-stats/{consumptionStatsId}/subscriptions' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /consumption-stats/{consumptionStatsId}/subscriptions
Parameters
Name
In
Type
Required
Description
consumptionStatsId
path
integer(int32)
true
none
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"uuid" : "string" ,
"type" : "DAST" ,
"associations" : {
"assetGroups" : [
"string"
]
},
"durationInDays" : 0 ,
"activeUntil" : "2019-08-24T14:15:22Z" ,
"activatedAt" : "2019-08-24T14:15:22Z" ,
"redeemableUntil" : "2019-08-24T14:15:22Z" ,
"created" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updated" : "2019-08-24T14:15:22Z" ,
"updatedBy" : "string" ,
"template" : {
"uuid" : "string" ,
"variables" : "string" ,
"template" : "string" ,
"name" : "string"
},
"customer" : {
"uuid" : "string"
},
"limits" : {
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
},
"isActive" : true
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Subscription ]
false
none
none
» uuid
string
false
none
The UUID of the entry.
» type
string
false
none
none
» associations
Subscription.Associations
false
none
none
»» assetGroups
[string]
false
none
none
» durationInDays
integer(int32)
false
none
none
» activeUntil
string(date-time)
false
none
none
» activatedAt
string(date-time)
false
none
none
» redeemableUntil
string(date-time)
false
none
none
» created
string(date-time)
false
none
The timestamp when the entry was created.
» createdBy
string
false
none
The name of the user who created the entry.
» updated
string(date-time)
false
none
The timestamp when the entry was updated.
» updatedBy
string
false
none
The name of the user who updated the entry.
» template
Subscription.Template
false
none
none
»» uuid
string
true
none
The UUID of the entry.
»» variables
string
false
none
none
»» template
string
false
none
none
»» name
string
false
none
The name of the entry.
» customer
Subscription.Customer
false
none
none
»» uuid
string
true
none
The UUID of the entry.
» limits
Subscription.Limits
false
none
none
»» netsecAssets
integer(int32)
false
none
The netsec assets
»» netsecScans
integer(int32)
false
none
The netsec scans
»» netsecInternalAssets
integer(int32)
false
none
The netsec internal assets
»» netsecInternalScans
integer(int32)
false
none
The netsec internal scans
»» netsecApplianceAssets
integer(int32)
false
none
The netsec appliance assets
»» netsecApplianceScans
integer(int32)
false
none
The netsec appliance scans
»» netsecApplianceExternalAssets
integer(int32)
false
none
The netsec appliance external assets
»» netsecApplianceExternalScans
integer(int32)
false
none
The netsec appliance external scans
»» complianceAssets
integer(int32)
false
none
The compliance assets
»» complianceScans
integer(int32)
false
none
The compliance scans
»» complianceInternalAssets
integer(int32)
false
none
The compliance internal assets
»» complianceInternalScans
integer(int32)
false
none
The compliance internal scans
»» complianceApplianceAssets
integer(int32)
false
none
The compliance appliance assets
»» complianceApplianceScans
integer(int32)
false
none
The compliance appliance scans
»» complianceApplianceExternalAssets
integer(int32)
false
none
The compliance appliance external assets
»» complianceApplianceExternalScans
integer(int32)
false
none
The compliance appliance external scans
»» pciAssets
integer(int32)
false
none
The pci assets
»» pciScans
integer(int32)
false
none
The pci scans
»» scaleAssets
integer(int32)
false
none
The scale assets
»» scaleScans
integer(int32)
false
none
The scale scans
»» scaleInternalAssets
integer(int32)
false
none
The scale internal assets
»» scaleApplianceAssets
integer(int32)
false
none
The scale appliance assets
»» scaleApplianceScans
integer(int32)
false
none
The scale appliance scans
»» scaleApplianceExternalScans
integer(int32)
false
none
The scale appliance external scans
»» scaleApplianceExternalAssets
integer(int32)
false
none
The scale appliance external assets
»» cloudsecAssets
integer(int32)
false
none
The cloudsec assets
»» cloudsecScans
integer(int32)
false
none
The cloudsec scans
»» networkDiscoveryScans
integer(int32)
false
none
The network discovery scans
»» networkDiscoveryApplianceScans
integer(int32)
false
none
The network discovery appliance scans
»» cloudDiscoveryScans
integer(int32)
false
none
The cloud discovery scans
»» cloudDiscoveryApplianceScans
integer(int32)
false
none
The cloud discovery appliance scans
»» networkAssets
integer(int32)
false
none
The network assets
»» networkScans
integer(int32)
false
none
The network scans
»» networkApplianceAssets
integer(int32)
false
none
The network appliance assets
»» networkApplianceScans
integer(int32)
false
none
The network appliance scans
»» dockerImageDiscoveryScans
integer(int32)
false
none
The docker image discovery scans
»» dockerImageAssets
integer(int32)
false
none
The docker image assets
»» dockerImageScans
integer(int32)
false
none
The docker image scans
»» dockerImageDiscoveryApplianceScans
integer(int32)
false
none
The docker image discovery appliance scans
»» dockerImageApplianceAssets
integer(int32)
false
none
The docker image appliance assets
»» dockerImageApplianceScans
integer(int32)
false
none
The docker image appliance scans
»» outscanNXAssets
integer(int32)
false
none
The outscan NX assets
»» outscanNXApplianceAssets
integer(int32)
false
none
The outscan NX appliance assets
» isActive
boolean
false
none
none
Enumerated Values
Property
Value
type
DAST
type
SCALE
type
SCOUT
type
SNAPSHOT
type
ASSURE
type
DAST_EXPERT
type
VERIFY
type
SWAT
type
CLOUDSEC
type
NETSEC
type
CONSUMPTION
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Credential classes
Get a credential class
# You can also use wget
curl -X GET \
/rest/credential-classes/{ credentialClassId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/credential-classes/{credentialClassId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/credential-classes/{credentialClassId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/credential-classes/{credentialClassId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/credential-classes/{credentialClassId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/credential-classes/{credentialClassId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /credential-classes/{credentialClassId}
Parameters
Name
In
Type
Required
Description
credentialClassId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"name" : "string" ,
"hidden" : true
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
CredentialClass
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of credential classes
# You can also use wget
curl -X GET \
/rest/credential-classes \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/credential-classes ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/credential-classes ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/credential-classes" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/credential-classes' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/credential-classes' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /credential-classes
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"name" : "string" ,
"hidden" : true
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[CredentialClass ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» name
string
false
read-only
The name of the entry.
» hidden
boolean
false
read-only
none
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/credential-classes \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/credential-classes ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/credential-classes ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/credential-classes" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/credential-classes' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/credential-classes' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /credential-classes
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Credentials
Get a credential
# You can also use wget
curl -X GET \
/rest/credentials/{ credentialId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/credentials/{credentialId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/credentials/{credentialId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/credentials/{credentialId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/credentials/{credentialId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/credentials/{credentialId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /credentials/{credentialId}
Credentials specify information like username, password, PIN, token, etc. that are required for the authentication. The class of each credential determines if it's retrieved in a clear-text format in the account output or not (see /credential-classes). For instance a credential classified as "password" will not be presented in clear-text in the default output of the account from the API and has to be explicitly requested from the API by sending a GET request to /credentials/{credentialId}?fields=value. Note, each attempt to retrieve a credential results in an entry being written to the audit log (see /audits).
Parameters
Name
In
Type
Required
Description
credentialId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"accountId" : 0 ,
"classId" : 0 ,
"className" : "string" ,
"value" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Credential
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a credential
# You can also use wget
curl -X DELETE \
/rest/credentials/{ credentialId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/credentials/{credentialId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/credentials/{credentialId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/credentials/{credentialId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/credentials/{credentialId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/credentials/{credentialId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /credentials/{credentialId}
Parameters
Name
In
Type
Required
Description
credentialId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a credential
# You can also use wget
curl -X PATCH \
/rest/credentials/{ credentialId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/credentials/{credentialId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"accountId": 0,
"classId": 0,
"className": "string",
"value": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/credentials/{credentialId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/credentials/{credentialId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/credentials/{credentialId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/credentials/{credentialId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /credentials/{credentialId}
Body parameter
{
"customerId" : 0 ,
"accountId" : 0 ,
"classId" : 0 ,
"className" : "string" ,
"value" : "string"
}
Parameters
Name
In
Type
Required
Description
credentialId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Credential
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a credential
# You can also use wget
curl -X POST \
/rest/credentials \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/credentials ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"accountId": 0,
"classId": 0,
"className": "string",
"value": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/credentials ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/credentials" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/credentials' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/credentials' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /credentials
Body parameter
{
"customerId" : 0 ,
"accountId" : 0 ,
"classId" : 0 ,
"className" : "string" ,
"value" : "string"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Credential
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Customers
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/customers/{ customerId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/{customerId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/{customerId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/customers/{customerId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/customers/{customerId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/customers/{customerId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /customers/{customerId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
customerId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/customers/{ customerId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/{customerId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/{customerId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/customers/{customerId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/customers/{customerId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/customers/{customerId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /customers/{customerId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
customerId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get consultancy token
# You can also use wget
curl -X GET \
/rest/customers/{ customerId} /consultancy \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/{customerId}/consultancy ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/{customerId}/consultancy ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "text/plain" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/customers/{customerId}/consultancy" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'text/plain' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/customers/{customerId}/consultancy' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/customers/{customerId}/consultancy' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /customers/{customerId}/consultancy
Parameters
Name
In
Type
Required
Description
customerId
path
integer(int32)
true
none
The above code returns response like this:
default Response
Responses
Status
Meaning
Description
Schema
default
Default
default response
string
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get consumption stats by ID for current customer
# You can also use wget
curl -X GET \
/rest/customers/me/consumption-stats/{ consumptionStatsId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/me/consumption-stats/{consumptionStatsId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/me/consumption-stats/{consumptionStatsId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/customers/me/consumption-stats/{consumptionStatsId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/customers/me/consumption-stats/{consumptionStatsId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/customers/me/consumption-stats/{consumptionStatsId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /customers/me/consumption-stats/{consumptionStatsId}
Parameters
Name
In
Type
Required
Description
consumptionStatsId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"customerName" : "string" ,
"organization" : "string" ,
"salesAccountId" : "string" ,
"periodStart" : "2019-08-24T14:15:22Z" ,
"periodEnd" : "2019-08-24T14:15:22Z" ,
"appliancePeriodEnd" : "2019-08-24T14:15:22Z" ,
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
ConsumptionStats
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get consumption stats for current customer
# You can also use wget
curl -X GET \
/rest/customers/me/consumption-stats \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/me/consumption-stats ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/me/consumption-stats ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/customers/me/consumption-stats" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/customers/me/consumption-stats' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/customers/me/consumption-stats' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /customers/me/consumption-stats
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"customerName" : "string" ,
"organization" : "string" ,
"salesAccountId" : "string" ,
"periodStart" : "2019-08-24T14:15:22Z" ,
"periodEnd" : "2019-08-24T14:15:22Z" ,
"appliancePeriodEnd" : "2019-08-24T14:15:22Z" ,
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ConsumptionStats ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
read-only
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» customerName
string
false
read-only
none
» organization
string
false
read-only
none
» salesAccountId
string
false
read-only
none
» periodStart
string(date-time)
false
none
The consumption period start date
» periodEnd
string(date-time)
false
none
The consumption period end date
» appliancePeriodEnd
string(date-time)
false
none
The appliance consumption period start date
» netsecAssets
integer(int32)
false
none
The netsec assets
» netsecScans
integer(int32)
false
none
The netsec scans
» netsecInternalAssets
integer(int32)
false
none
The netsec internal assets
» netsecInternalScans
integer(int32)
false
none
The netsec internal scans
» netsecApplianceAssets
integer(int32)
false
none
The netsec appliance assets
» netsecApplianceScans
integer(int32)
false
none
The netsec appliance scans
» netsecApplianceExternalAssets
integer(int32)
false
none
The netsec appliance external assets
» netsecApplianceExternalScans
integer(int32)
false
none
The netsec appliance external scans
» complianceAssets
integer(int32)
false
none
The compliance assets
» complianceScans
integer(int32)
false
none
The compliance scans
» complianceInternalAssets
integer(int32)
false
none
The compliance internal assets
» complianceInternalScans
integer(int32)
false
none
The compliance internal scans
» complianceApplianceAssets
integer(int32)
false
none
The compliance appliance assets
» complianceApplianceScans
integer(int32)
false
none
The compliance appliance scans
» complianceApplianceExternalAssets
integer(int32)
false
none
The compliance appliance external assets
» complianceApplianceExternalScans
integer(int32)
false
none
The compliance appliance external scans
» pciAssets
integer(int32)
false
none
The pci assets
» pciScans
integer(int32)
false
none
The pci scans
» scaleAssets
integer(int32)
false
none
The scale assets
» scaleScans
integer(int32)
false
none
The scale scans
» scaleInternalAssets
integer(int32)
false
none
The scale internal assets
» scaleApplianceAssets
integer(int32)
false
none
The scale appliance assets
» scaleApplianceScans
integer(int32)
false
none
The scale appliance scans
» scaleApplianceExternalScans
integer(int32)
false
none
The scale appliance external scans
» scaleApplianceExternalAssets
integer(int32)
false
none
The scale appliance external assets
» cloudsecAssets
integer(int32)
false
none
The cloudsec assets
» cloudsecScans
integer(int32)
false
none
The cloudsec scans
» networkDiscoveryScans
integer(int32)
false
none
The network discovery scans
» networkDiscoveryApplianceScans
integer(int32)
false
none
The network discovery appliance scans
» cloudDiscoveryScans
integer(int32)
false
none
The cloud discovery scans
» cloudDiscoveryApplianceScans
integer(int32)
false
none
The cloud discovery appliance scans
» networkAssets
integer(int32)
false
none
The network assets
» networkScans
integer(int32)
false
none
The network scans
» networkApplianceAssets
integer(int32)
false
none
The network appliance assets
» networkApplianceScans
integer(int32)
false
none
The network appliance scans
» dockerImageDiscoveryScans
integer(int32)
false
none
The docker image discovery scans
» dockerImageAssets
integer(int32)
false
none
The docker image assets
» dockerImageScans
integer(int32)
false
none
The docker image scans
» dockerImageDiscoveryApplianceScans
integer(int32)
false
none
The docker image discovery appliance scans
» dockerImageApplianceAssets
integer(int32)
false
none
The docker image appliance assets
» dockerImageApplianceScans
integer(int32)
false
none
The docker image appliance scans
» outscanNXAssets
integer(int32)
false
none
The outscan NX assets
» outscanNXApplianceAssets
integer(int32)
false
none
The outscan NX appliance assets
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get consumption stats for a customer
# You can also use wget
curl -X GET \
/rest/customers/{ customerId} /consumption-stats \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/{customerId}/consumption-stats ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/{customerId}/consumption-stats ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/customers/{customerId}/consumption-stats" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/customers/{customerId}/consumption-stats' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/customers/{customerId}/consumption-stats' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /customers/{customerId}/consumption-stats
Parameters
Name
In
Type
Required
Description
customerId
path
integer(int32)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"customerName" : "string" ,
"organization" : "string" ,
"salesAccountId" : "string" ,
"periodStart" : "2019-08-24T14:15:22Z" ,
"periodEnd" : "2019-08-24T14:15:22Z" ,
"appliancePeriodEnd" : "2019-08-24T14:15:22Z" ,
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ConsumptionStats ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
read-only
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» customerName
string
false
read-only
none
» organization
string
false
read-only
none
» salesAccountId
string
false
read-only
none
» periodStart
string(date-time)
false
none
The consumption period start date
» periodEnd
string(date-time)
false
none
The consumption period end date
» appliancePeriodEnd
string(date-time)
false
none
The appliance consumption period start date
» netsecAssets
integer(int32)
false
none
The netsec assets
» netsecScans
integer(int32)
false
none
The netsec scans
» netsecInternalAssets
integer(int32)
false
none
The netsec internal assets
» netsecInternalScans
integer(int32)
false
none
The netsec internal scans
» netsecApplianceAssets
integer(int32)
false
none
The netsec appliance assets
» netsecApplianceScans
integer(int32)
false
none
The netsec appliance scans
» netsecApplianceExternalAssets
integer(int32)
false
none
The netsec appliance external assets
» netsecApplianceExternalScans
integer(int32)
false
none
The netsec appliance external scans
» complianceAssets
integer(int32)
false
none
The compliance assets
» complianceScans
integer(int32)
false
none
The compliance scans
» complianceInternalAssets
integer(int32)
false
none
The compliance internal assets
» complianceInternalScans
integer(int32)
false
none
The compliance internal scans
» complianceApplianceAssets
integer(int32)
false
none
The compliance appliance assets
» complianceApplianceScans
integer(int32)
false
none
The compliance appliance scans
» complianceApplianceExternalAssets
integer(int32)
false
none
The compliance appliance external assets
» complianceApplianceExternalScans
integer(int32)
false
none
The compliance appliance external scans
» pciAssets
integer(int32)
false
none
The pci assets
» pciScans
integer(int32)
false
none
The pci scans
» scaleAssets
integer(int32)
false
none
The scale assets
» scaleScans
integer(int32)
false
none
The scale scans
» scaleInternalAssets
integer(int32)
false
none
The scale internal assets
» scaleApplianceAssets
integer(int32)
false
none
The scale appliance assets
» scaleApplianceScans
integer(int32)
false
none
The scale appliance scans
» scaleApplianceExternalScans
integer(int32)
false
none
The scale appliance external scans
» scaleApplianceExternalAssets
integer(int32)
false
none
The scale appliance external assets
» cloudsecAssets
integer(int32)
false
none
The cloudsec assets
» cloudsecScans
integer(int32)
false
none
The cloudsec scans
» networkDiscoveryScans
integer(int32)
false
none
The network discovery scans
» networkDiscoveryApplianceScans
integer(int32)
false
none
The network discovery appliance scans
» cloudDiscoveryScans
integer(int32)
false
none
The cloud discovery scans
» cloudDiscoveryApplianceScans
integer(int32)
false
none
The cloud discovery appliance scans
» networkAssets
integer(int32)
false
none
The network assets
» networkScans
integer(int32)
false
none
The network scans
» networkApplianceAssets
integer(int32)
false
none
The network appliance assets
» networkApplianceScans
integer(int32)
false
none
The network appliance scans
» dockerImageDiscoveryScans
integer(int32)
false
none
The docker image discovery scans
» dockerImageAssets
integer(int32)
false
none
The docker image assets
» dockerImageScans
integer(int32)
false
none
The docker image scans
» dockerImageDiscoveryApplianceScans
integer(int32)
false
none
The docker image discovery appliance scans
» dockerImageApplianceAssets
integer(int32)
false
none
The docker image appliance assets
» dockerImageApplianceScans
integer(int32)
false
none
The docker image appliance scans
» outscanNXAssets
integer(int32)
false
none
The outscan NX assets
» outscanNXApplianceAssets
integer(int32)
false
none
The outscan NX appliance assets
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of subscriptions for consumption stats for current customer
# You can also use wget
curl -X GET \
/rest/customers/me/consumption-stats/{ consumptionStatsId} /subscriptions \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/me/consumption-stats/{consumptionStatsId}/subscriptions ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/me/consumption-stats/{consumptionStatsId}/subscriptions ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/customers/me/consumption-stats/{consumptionStatsId}/subscriptions" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/customers/me/consumption-stats/{consumptionStatsId}/subscriptions' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/customers/me/consumption-stats/{consumptionStatsId}/subscriptions' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /customers/me/consumption-stats/{consumptionStatsId}/subscriptions
Parameters
Name
In
Type
Required
Description
consumptionStatsId
path
integer(int32)
true
none
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"uuid" : "string" ,
"type" : "DAST" ,
"associations" : {
"assetGroups" : [
"string"
]
},
"durationInDays" : 0 ,
"activeUntil" : "2019-08-24T14:15:22Z" ,
"activatedAt" : "2019-08-24T14:15:22Z" ,
"redeemableUntil" : "2019-08-24T14:15:22Z" ,
"created" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updated" : "2019-08-24T14:15:22Z" ,
"updatedBy" : "string" ,
"template" : {
"uuid" : "string" ,
"variables" : "string" ,
"template" : "string" ,
"name" : "string"
},
"customer" : {
"uuid" : "string"
},
"limits" : {
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
},
"isActive" : true
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Subscription ]
false
none
none
» uuid
string
false
none
The UUID of the entry.
» type
string
false
none
none
» associations
Subscription.Associations
false
none
none
»» assetGroups
[string]
false
none
none
» durationInDays
integer(int32)
false
none
none
» activeUntil
string(date-time)
false
none
none
» activatedAt
string(date-time)
false
none
none
» redeemableUntil
string(date-time)
false
none
none
» created
string(date-time)
false
none
The timestamp when the entry was created.
» createdBy
string
false
none
The name of the user who created the entry.
» updated
string(date-time)
false
none
The timestamp when the entry was updated.
» updatedBy
string
false
none
The name of the user who updated the entry.
» template
Subscription.Template
false
none
none
»» uuid
string
true
none
The UUID of the entry.
»» variables
string
false
none
none
»» template
string
false
none
none
»» name
string
false
none
The name of the entry.
» customer
Subscription.Customer
false
none
none
»» uuid
string
true
none
The UUID of the entry.
» limits
Subscription.Limits
false
none
none
»» netsecAssets
integer(int32)
false
none
The netsec assets
»» netsecScans
integer(int32)
false
none
The netsec scans
»» netsecInternalAssets
integer(int32)
false
none
The netsec internal assets
»» netsecInternalScans
integer(int32)
false
none
The netsec internal scans
»» netsecApplianceAssets
integer(int32)
false
none
The netsec appliance assets
»» netsecApplianceScans
integer(int32)
false
none
The netsec appliance scans
»» netsecApplianceExternalAssets
integer(int32)
false
none
The netsec appliance external assets
»» netsecApplianceExternalScans
integer(int32)
false
none
The netsec appliance external scans
»» complianceAssets
integer(int32)
false
none
The compliance assets
»» complianceScans
integer(int32)
false
none
The compliance scans
»» complianceInternalAssets
integer(int32)
false
none
The compliance internal assets
»» complianceInternalScans
integer(int32)
false
none
The compliance internal scans
»» complianceApplianceAssets
integer(int32)
false
none
The compliance appliance assets
»» complianceApplianceScans
integer(int32)
false
none
The compliance appliance scans
»» complianceApplianceExternalAssets
integer(int32)
false
none
The compliance appliance external assets
»» complianceApplianceExternalScans
integer(int32)
false
none
The compliance appliance external scans
»» pciAssets
integer(int32)
false
none
The pci assets
»» pciScans
integer(int32)
false
none
The pci scans
»» scaleAssets
integer(int32)
false
none
The scale assets
»» scaleScans
integer(int32)
false
none
The scale scans
»» scaleInternalAssets
integer(int32)
false
none
The scale internal assets
»» scaleApplianceAssets
integer(int32)
false
none
The scale appliance assets
»» scaleApplianceScans
integer(int32)
false
none
The scale appliance scans
»» scaleApplianceExternalScans
integer(int32)
false
none
The scale appliance external scans
»» scaleApplianceExternalAssets
integer(int32)
false
none
The scale appliance external assets
»» cloudsecAssets
integer(int32)
false
none
The cloudsec assets
»» cloudsecScans
integer(int32)
false
none
The cloudsec scans
»» networkDiscoveryScans
integer(int32)
false
none
The network discovery scans
»» networkDiscoveryApplianceScans
integer(int32)
false
none
The network discovery appliance scans
»» cloudDiscoveryScans
integer(int32)
false
none
The cloud discovery scans
»» cloudDiscoveryApplianceScans
integer(int32)
false
none
The cloud discovery appliance scans
»» networkAssets
integer(int32)
false
none
The network assets
»» networkScans
integer(int32)
false
none
The network scans
»» networkApplianceAssets
integer(int32)
false
none
The network appliance assets
»» networkApplianceScans
integer(int32)
false
none
The network appliance scans
»» dockerImageDiscoveryScans
integer(int32)
false
none
The docker image discovery scans
»» dockerImageAssets
integer(int32)
false
none
The docker image assets
»» dockerImageScans
integer(int32)
false
none
The docker image scans
»» dockerImageDiscoveryApplianceScans
integer(int32)
false
none
The docker image discovery appliance scans
»» dockerImageApplianceAssets
integer(int32)
false
none
The docker image appliance assets
»» dockerImageApplianceScans
integer(int32)
false
none
The docker image appliance scans
»» outscanNXAssets
integer(int32)
false
none
The outscan NX assets
»» outscanNXApplianceAssets
integer(int32)
false
none
The outscan NX appliance assets
» isActive
boolean
false
none
none
Enumerated Values
Property
Value
type
DAST
type
SCALE
type
SCOUT
type
SNAPSHOT
type
ASSURE
type
DAST_EXPERT
type
VERIFY
type
SWAT
type
CLOUDSEC
type
NETSEC
type
CONSUMPTION
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get current customer
# You can also use wget
curl -X GET \
/rest/customers/me \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/me ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/me ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/customers/me" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/customers/me' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/customers/me' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /customers/me
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"country" : "string" ,
"active" : true ,
"features" : [
"string"
],
"awsExternalId" : "string" ,
"uuid" : "string" ,
"organization" : "string" ,
"organizationUuid" : "string" ,
"farsightProducts" : [
"string"
],
"salesAccountId" : "string" ,
"assetMigration" : "2019-08-24T14:15:22Z" ,
"customerSuccessManagerEmail" : "string" ,
"accountManagerEmail" : "string" ,
"migrationStatus" : "RUNNING" ,
"state" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"migration" : {
"queued" : "2019-08-24T14:15:22Z" ,
"started" : "2019-08-24T14:15:22Z" ,
"ended" : "2019-08-24T14:15:22Z" ,
"failed" : true ,
"targets" : 0 ,
"migratedTargets" : 0 ,
"targetGroups" : 0 ,
"migratedTargetGroups" : 0 ,
"reports" : 0 ,
"migratedReports" : 0 ,
"managedReports" : 0 ,
"migratedManagedReports" : 0
}
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Customer
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a customer
# You can also use wget
curl -X GET \
/rest/customers/{ customerId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/{customerId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/{customerId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/customers/{customerId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/customers/{customerId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/customers/{customerId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /customers/{customerId}
Parameters
Name
In
Type
Required
Description
customerId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"country" : "string" ,
"active" : true ,
"features" : [
"string"
],
"awsExternalId" : "string" ,
"uuid" : "string" ,
"organization" : "string" ,
"organizationUuid" : "string" ,
"farsightProducts" : [
"string"
],
"salesAccountId" : "string" ,
"assetMigration" : "2019-08-24T14:15:22Z" ,
"customerSuccessManagerEmail" : "string" ,
"accountManagerEmail" : "string" ,
"migrationStatus" : "RUNNING" ,
"state" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"migration" : {
"queued" : "2019-08-24T14:15:22Z" ,
"started" : "2019-08-24T14:15:22Z" ,
"ended" : "2019-08-24T14:15:22Z" ,
"failed" : true ,
"targets" : 0 ,
"migratedTargets" : 0 ,
"targetGroups" : 0 ,
"migratedTargetGroups" : 0 ,
"reports" : 0 ,
"migratedReports" : 0 ,
"managedReports" : 0 ,
"migratedManagedReports" : 0
}
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Customer
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a customer
# You can also use wget
curl -X PATCH \
/rest/customers/{ customerId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/{customerId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"features": [
"string"
],
"assetMigration": "2019-08-24T14:15:22Z"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/{customerId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/customers/{customerId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/customers/{customerId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/customers/{customerId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /customers/{customerId}
Body parameter
{
"features" : [
"string"
],
"assetMigration" : "2019-08-24T14:15:22Z"
}
Parameters
Name
In
Type
Required
Description
customerId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Customer
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of customers
# You can also use wget
curl -X GET \
/rest/customers \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/customers" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/customers' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/customers' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /customers
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"country" : "string" ,
"active" : true ,
"features" : [
"string"
],
"awsExternalId" : "string" ,
"uuid" : "string" ,
"organization" : "string" ,
"organizationUuid" : "string" ,
"farsightProducts" : [
"string"
],
"salesAccountId" : "string" ,
"assetMigration" : "2019-08-24T14:15:22Z" ,
"customerSuccessManagerEmail" : "string" ,
"accountManagerEmail" : "string" ,
"migrationStatus" : "RUNNING" ,
"state" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"migration" : {
"queued" : "2019-08-24T14:15:22Z" ,
"started" : "2019-08-24T14:15:22Z" ,
"ended" : "2019-08-24T14:15:22Z" ,
"failed" : true ,
"targets" : 0 ,
"migratedTargets" : 0 ,
"targetGroups" : 0 ,
"migratedTargetGroups" : 0 ,
"reports" : 0 ,
"migratedReports" : 0 ,
"managedReports" : 0 ,
"migratedManagedReports" : 0
}
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Customer ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
false
read-only
The name of the entry.
» country
string
false
read-only
Country associated with the entry.
» active
boolean
false
read-only
Determines if the entry is active or not.
» features
[string]
false
none
none
» awsExternalId
string
false
read-only
none
» uuid
string
false
read-only
The UUID of the entry.
» organization
string
false
read-only
none
» organizationUuid
string
false
read-only
none
» farsightProducts
[string]
false
read-only
none
» salesAccountId
string
false
read-only
none
» assetMigration
string(date-time)
false
none
none
» customerSuccessManagerEmail
string
false
read-only
The email to the customer success manager responsible for this customer
» accountManagerEmail
string
false
read-only
The email to the account manager responsible for this customer
» migrationStatus
string
false
read-only
The migration status
» state
string
false
read-only
none
» tags
[Tag ]
false
read-only
The tags
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
» migration
Customer.Migration
false
read-only
The migration status
»» queued
string(date-time)
false
none
none
»» started
string(date-time)
false
none
none
»» ended
string(date-time)
false
none
none
»» failed
boolean
false
none
none
»» targets
integer(int32)
false
none
none
»» migratedTargets
integer(int32)
false
none
none
»» targetGroups
integer(int32)
false
none
none
»» migratedTargetGroups
integer(int32)
false
none
none
»» reports
integer(int32)
false
none
none
»» migratedReports
integer(int32)
false
none
none
»» managedReports
integer(int32)
false
none
none
»» migratedManagedReports
integer(int32)
false
none
none
Enumerated Values
Property
Value
migrationStatus
RUNNING
migrationStatus
FINISHED
migrationStatus
FAILED
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/customers \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/customers" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/customers' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/customers' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /customers
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get usage stats for a customer
# You can also use wget
curl -X GET \
/rest/customers/{ customerId} /usage-stats \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/{customerId}/usage-stats ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/{customerId}/usage-stats ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/customers/{customerId}/usage-stats" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/customers/{customerId}/usage-stats' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/customers/{customerId}/usage-stats' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /customers/{customerId}/usage-stats
Parameters
Name
In
Type
Required
Description
customerId
path
integer(int32)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"customerName" : "string" ,
"organization" : "string" ,
"salesAccountId" : "string" ,
"statsUpdated" : "2019-08-24T14:15:22Z" ,
"applianceStatsUpdated" : "2019-08-24T14:15:22Z" ,
"scaleConfigurations" : 0 ,
"scoutConfigurations" : 0 ,
"cloudsecConfigurations" : 0 ,
"applianceScaleConfigurations" : 0 ,
"users" : 0 ,
"lastLogin" : "2019-08-24T14:15:22Z" ,
"applianceUsers" : 0 ,
"applianceLastLogin" : "2019-08-24T14:15:22Z" ,
"findingsCritical" : 0 ,
"findingsHigh" : 0 ,
"findingsMedium" : 0 ,
"findingsLow" : 0 ,
"findingsRecommendations" : 0 ,
"applianceFindingsCritical" : 0 ,
"applianceFindingsHigh" : 0 ,
"applianceFindingsMedium" : 0 ,
"applianceFindingsLow" : 0 ,
"applianceFindingsRecommendations" : 0 ,
"scans" : 0 ,
"lastScan" : "2019-08-24T14:15:22Z" ,
"applianceScans" : 0 ,
"applianceLastScan" : "2019-08-24T14:15:22Z" ,
"accountsAws" : 0 ,
"accountsGcp" : 0 ,
"accountsAzure" : 0 ,
"accountsVsphere" : 0 ,
"accountsBasic" : 0 ,
"accountsWeb" : 0 ,
"applianceAccountsAws" : 0 ,
"applianceAccountsGcp" : 0 ,
"applianceAccountsAzure" : 0 ,
"applianceAccountsVsphere" : 0 ,
"applianceAccountsBasic" : 0 ,
"applianceAccountsWeb" : 0 ,
"cyr3conAssets" : 0 ,
"cyr3conApplianceAssets" : 0 ,
"agents" : 0 ,
"agentsScanned" : 0 ,
"agentsOutdated" : 0 ,
"applianceAgents" : 0 ,
"applianceAgentsScanned" : 0 ,
"applianceAgentsOutdated" : 0
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[UsageStats ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» customerName
string
false
read-only
none
» organization
string
false
read-only
none
» salesAccountId
string
false
read-only
none
» statsUpdated
string(date-time)
false
none
none
» applianceStatsUpdated
string(date-time)
false
none
none
» scaleConfigurations
integer(int32)
false
none
none
» scoutConfigurations
integer(int32)
false
none
none
» cloudsecConfigurations
integer(int32)
false
none
none
» applianceScaleConfigurations
integer(int32)
false
none
none
» users
integer(int32)
false
none
none
» lastLogin
string(date-time)
false
none
none
» applianceUsers
integer(int32)
false
none
none
» applianceLastLogin
string(date-time)
false
none
none
» findingsCritical
integer(int32)
false
none
none
» findingsHigh
integer(int32)
false
none
none
» findingsMedium
integer(int32)
false
none
none
» findingsLow
integer(int32)
false
none
none
» findingsRecommendations
integer(int32)
false
none
none
» applianceFindingsCritical
integer(int32)
false
none
none
» applianceFindingsHigh
integer(int32)
false
none
none
» applianceFindingsMedium
integer(int32)
false
none
none
» applianceFindingsLow
integer(int32)
false
none
none
» applianceFindingsRecommendations
integer(int32)
false
none
none
» scans
integer(int32)
false
none
none
» lastScan
string(date-time)
false
none
none
» applianceScans
integer(int32)
false
none
none
» applianceLastScan
string(date-time)
false
none
none
» accountsAws
integer(int32)
false
none
none
» accountsGcp
integer(int32)
false
none
none
» accountsAzure
integer(int32)
false
none
none
» accountsVsphere
integer(int32)
false
none
none
» accountsBasic
integer(int32)
false
none
none
» accountsWeb
integer(int32)
false
none
none
» applianceAccountsAws
integer(int32)
false
none
none
» applianceAccountsGcp
integer(int32)
false
none
none
» applianceAccountsAzure
integer(int32)
false
none
none
» applianceAccountsVsphere
integer(int32)
false
none
none
» applianceAccountsBasic
integer(int32)
false
none
none
» applianceAccountsWeb
integer(int32)
false
none
none
» cyr3conAssets
integer(int32)
false
none
none
» cyr3conApplianceAssets
integer(int32)
false
none
none
» agents
integer(int32)
false
none
none
» agentsScanned
integer(int32)
false
none
none
» agentsOutdated
integer(int32)
false
none
none
» applianceAgents
integer(int32)
false
none
none
» applianceAgentsScanned
integer(int32)
false
none
none
» applianceAgentsOutdated
integer(int32)
false
none
none
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Migrate current customer
# You can also use wget
curl -X POST \
/rest/customers/me/migrate \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/me/migrate ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/me/migrate ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/customers/me/migrate" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/customers/me/migrate' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/customers/me/migrate' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /customers/me/migrate
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Migrate a customer
# You can also use wget
curl -X POST \
/rest/customers/{ customerId} /migrate \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/{customerId}/migrate ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/{customerId}/migrate ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/customers/{customerId}/migrate" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/customers/{customerId}/migrate' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/customers/{customerId}/migrate' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /customers/{customerId}/migrate
Parameters
Name
In
Type
Required
Description
customerId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/customers/{ customerId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/{customerId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/{customerId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/customers/{customerId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/customers/{customerId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/customers/{customerId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /customers/{customerId}/tags
Body parameter
Name
In
Type
Required
Description
customerId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Reset migration for current customer
# You can also use wget
curl -X POST \
/rest/customers/me/reset-migration \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/me/reset-migration ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/me/reset-migration ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/customers/me/reset-migration" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/customers/me/reset-migration' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/customers/me/reset-migration' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /customers/me/reset-migration
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Reset migration for a customer
# You can also use wget
curl -X POST \
/rest/customers/{ customerId} /reset-migration \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/customers/{customerId}/reset-migration ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/customers/{customerId}/reset-migration ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/customers/{customerId}/reset-migration" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/customers/{customerId}/reset-migration' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/customers/{customerId}/reset-migration' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /customers/{customerId}/reset-migration
Parameters
Name
In
Type
Required
Description
customerId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Dashboards
Get a dashboard
# You can also use wget
curl -X GET \
/rest/dashboards/{ dashboardId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/dashboards/{dashboardId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/dashboards/{dashboardId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/dashboards/{dashboardId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/dashboards/{dashboardId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/dashboards/{dashboardId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /dashboards/{dashboardId}
Parameters
Name
In
Type
Required
Description
dashboardId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"cards" : [
{
"name" : "string" ,
"data" : "string" ,
"width" : 0 ,
"height" : 0 ,
"x" : 0 ,
"y" : 0
}
],
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Dashboard
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a dashboard
# You can also use wget
curl -X DELETE \
/rest/dashboards/{ dashboardId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/dashboards/{dashboardId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/dashboards/{dashboardId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/dashboards/{dashboardId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/dashboards/{dashboardId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/dashboards/{dashboardId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /dashboards/{dashboardId}
Parameters
Name
In
Type
Required
Description
dashboardId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a dashboard
# You can also use wget
curl -X PATCH \
/rest/dashboards/{ dashboardId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/dashboards/{dashboardId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"cards": [
{
"name": "string",
"data": "string",
"width": 0,
"height": 0,
"x": 0,
"y": 0
}
]
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/dashboards/{dashboardId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/dashboards/{dashboardId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/dashboards/{dashboardId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/dashboards/{dashboardId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /dashboards/{dashboardId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"cards" : [
{
"name" : "string" ,
"data" : "string" ,
"width" : 0 ,
"height" : 0 ,
"x" : 0 ,
"y" : 0
}
]
}
Parameters
Name
In
Type
Required
Description
dashboardId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Dashboard
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/dashboards/{ dashboardId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/dashboards/{dashboardId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/dashboards/{dashboardId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/dashboards/{dashboardId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/dashboards/{dashboardId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/dashboards/{dashboardId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /dashboards/{dashboardId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
dashboardId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/dashboards/{ dashboardId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/dashboards/{dashboardId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/dashboards/{dashboardId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/dashboards/{dashboardId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/dashboards/{dashboardId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/dashboards/{dashboardId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /dashboards/{dashboardId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
dashboardId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of dashboards
# You can also use wget
curl -X GET \
/rest/dashboards \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/dashboards ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/dashboards ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/dashboards" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/dashboards' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/dashboards' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /dashboards
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"cards" : [
{
"name" : "string" ,
"data" : "string" ,
"width" : 0 ,
"height" : 0 ,
"x" : 0 ,
"y" : 0
}
],
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Dashboard ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» cards
[Dashboard.Card ]
false
none
none
»» name
string
false
none
The name of the entry.
»» data
string
false
none
none
»» width
integer(int32)
false
none
none
»» height
integer(int32)
false
none
none
»» x
integer(int32)
false
none
none
»» y
integer(int32)
false
none
none
» tags
[Tag ]
false
read-only
[The tags]
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a dashboard
# You can also use wget
curl -X POST \
/rest/dashboards \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/dashboards ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"cards": [
{
"name": "string",
"data": "string",
"width": 0,
"height": 0,
"x": 0,
"y": 0
}
]
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/dashboards ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/dashboards" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/dashboards' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/dashboards' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /dashboards
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"cards" : [
{
"name" : "string" ,
"data" : "string" ,
"width" : 0 ,
"height" : 0 ,
"x" : 0 ,
"y" : 0
}
]
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Dashboard
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/dashboards \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/dashboards ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/dashboards ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/dashboards" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/dashboards' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/dashboards' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /dashboards
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/dashboards/{ dashboardId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/dashboards/{dashboardId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/dashboards/{dashboardId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/dashboards/{dashboardId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/dashboards/{dashboardId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/dashboards/{dashboardId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /dashboards/{dashboardId}/tags
Body parameter
Name
In
Type
Required
Description
dashboardId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Decrypt
Request the decryption of an uploaded file
# You can also use wget
curl -X POST \
/rest/decrypt/file \
-H 'Content-Type: multipart/form-data' \
-H 'Accept: application/octet-stream' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' multipart/form-data ' ,
' Accept ' : ' application/octet-stream ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/decrypt/file ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"file": {
"type": "string",
"parameters": {
"property1": "string",
"property2": "string"
},
"fileName": "string",
"creationDate": "2019-08-24T14:15:22Z",
"modificationDate": "2019-08-24T14:15:22Z",
"readDate": "2019-08-24T14:15:22Z",
"size": 0,
"name": "string"
},
"data": "string"
} ' ;
const headers = {
' Content-Type ' : ' multipart/form-data ' ,
' Accept ' : ' application/octet-stream ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/decrypt/file ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "multipart/form-data" },
"Accept" : [] string { "application/octet-stream" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/decrypt/file" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'multipart/form-data' ,
'Accept' : 'application/octet-stream' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/decrypt/file' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'multipart/form-data' ,
'Accept' => 'application/octet-stream' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/decrypt/file' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /decrypt/file
Body parameter
file :
type : string
parameters :
property1 : string
property2 : string
fileName : string
creationDate : 2019-08-24T14:15:22Z
modificationDate : 2019-08-24T14:15:22Z
readDate : 2019-08-24T14:15:22Z
size : 0
name : string
data : string
Parameters
Name
In
Type
Required
Description
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
object
false
none
» file
body
FormDataContentDisposition
true
none
»» type
body
string
false
none
»» parameters
body
object
false
none
»»» additionalProperties
body
string
false
none
»» fileName
body
string
false
none
»» creationDate
body
string(date-time)
false
none
»» modificationDate
body
string(date-time)
false
none
»» readDate
body
string(date-time)
false
none
»» size
body
integer(int64)
false
none
»» name
body
string
false
The name of the entry.
» data
body
string
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Request the decryption of a file from object storage
# You can also use wget
curl -X POST \
/rest/decrypt/object \
-H 'Content-Type: application/json' \
-H 'Accept: application/octet-stream' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/octet-stream ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/decrypt/object ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"bucket": "string",
"key": "string",
"unsigned": true,
"auditComment": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/octet-stream ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/decrypt/object ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/octet-stream" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/decrypt/object" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/octet-stream' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/decrypt/object' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/octet-stream' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/decrypt/object' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /decrypt/object
Body parameter
{
"bucket" : "string" ,
"key" : "string" ,
"unsigned" : true ,
"auditComment" : "string"
}
Parameters
Name
In
Type
Required
Description
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ObjectDecryptionRequest
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Downloads
Get a download cache entry and generate a token for downloading the file, expires after 5 minutes
# You can also use wget
curl -X GET \
/rest/downloads/{ key} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/downloads/{key} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/downloads/{key} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/downloads/{key}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/downloads/{key}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/downloads/{key}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /downloads/{key}
Parameters
Name
In
Type
Required
Description
key
path
string
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a download cache entry, and potentially associated data
# You can also use wget
curl -X DELETE \
/rest/downloads/{ key} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/downloads/{key} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/downloads/{key} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/downloads/{key}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/downloads/{key}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/downloads/{key}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /downloads/{key}
Parameters
Name
In
Type
Required
Description
key
path
string
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Download a file
# You can also use wget
curl -X GET \
/rest/downloads/download/{ token} \
-H 'Accept: */*'
var headers = {
' Accept ' : ' */* '
};
$ . ajax ({
url : ' /rest/downloads/download/{token} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' */* '
};
fetch ( ' /rest/downloads/download/{token} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "*/*" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/downloads/download/{token}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : '*/*'
}
r = requests . get ( '/rest/downloads/download/{token}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => '*/*'
}
result = RestClient . get '/rest/downloads/download/{token}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /downloads/download/{token}
Parameters
Name
In
Type
Required
Description
token
path
string
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
This operation does not require authentication
Get a list of download cache entries
# You can also use wget
curl -X GET \
/rest/downloads \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/downloads ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/downloads ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/downloads" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/downloads' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/downloads' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /downloads
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"created" : "2019-08-24T14:15:22Z" ,
"name" : "string" ,
"key" : "string" ,
"status" : "string" ,
"size" : 0 ,
"token" : "string" ,
"tokenExpires" : "2019-08-24T14:15:22Z" ,
"type" : "ATTACHMENT"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[DownloadCacheEntry ]
false
none
none
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» name
string
false
read-only
The name of the entry.
» key
string
false
read-only
none
» status
string
false
read-only
none
» size
integer(int64)
false
read-only
none
» token
string
false
read-only
none
» tokenExpires
string(date-time)
false
read-only
none
» type
string
false
read-only
none
Enumerated Values
Property
Value
type
ATTACHMENT
type
REPORT
type
BLUEPRINT
type
INTERNAL_BLUEPRINT
type
MANAGED_REPORT
type
DECRYPTED_OBJECT
type
LOGS
type
AGENT_INSTALLER
type
UPDATE_PACKAGE
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/downloads \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/downloads ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/downloads ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/downloads" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/downloads' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/downloads' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /downloads
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Compatibility endpoint for file download (Deprecated: 2021-03-04)
# You can also use wget
curl -X GET \
/rest/downloads/{ token} \
-H 'Accept: */*'
var headers = {
' Accept ' : ' */* '
};
$ . ajax ({
url : ' /rest/downloads/{token} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' */* '
};
fetch ( ' /rest/downloads/{token} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "*/*" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/downloads/{token}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : '*/*'
}
r = requests . get ( '/rest/downloads/{token}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => '*/*'
}
result = RestClient . get '/rest/downloads/{token}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /downloads/{token}
Parameters
Name
In
Type
Required
Description
token
path
string
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
This operation does not require authentication
Enroll
# You can also use wget
curl -X POST \
/rest/enroll/db-settings \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json '
};
$ . ajax ({
url : ' /rest/enroll/db-settings ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"host": "string",
"port": 1,
"password": "string",
"ssl": true,
"certificate": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json '
};
fetch ( ' /rest/enroll/db-settings ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/enroll/db-settings" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json'
}
r = requests . post ( '/rest/enroll/db-settings' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json'
}
result = RestClient . post '/rest/enroll/db-settings' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /enroll/db-settings
Body parameter
{
"host" : "string" ,
"port" : 1 ,
"password" : "string" ,
"ssl" : true ,
"certificate" : "string"
}
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
This operation does not require authentication
Delete database settings
# You can also use wget
curl -X DELETE \
/rest/enroll/db-settings \
-H 'Accept: application/json'
var headers = {
' Accept ' : ' application/json '
};
$ . ajax ({
url : ' /rest/enroll/db-settings ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json '
};
fetch ( ' /rest/enroll/db-settings ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/enroll/db-settings" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json'
}
r = requests . delete ( '/rest/enroll/db-settings' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient . delete '/rest/enroll/db-settings' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /enroll/db-settings
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
This operation does not require authentication
Enroll services
# You can also use wget
curl -X POST \
/rest/enroll/services \
-H 'Content-Type: text/plain' \
-H 'Accept: */*' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' text/plain ' ,
' Accept ' : ' */* ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/enroll/services ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' string ' ;
const headers = {
' Content-Type ' : ' text/plain ' ,
' Accept ' : ' */* ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/enroll/services ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "text/plain" },
"Accept" : [] string { "*/*" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/enroll/services" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'text/plain' ,
'Accept' : '*/*' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/enroll/services' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'text/plain' ,
'Accept' => '*/*' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/enroll/services' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /enroll/services
Body parameter
Parameters
Name
In
Type
Required
Description
body
body
string
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Events
Get an event subscription
# You can also use wget
curl -X GET \
/rest/events/subscriptions/{ subscriptionId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/events/subscriptions/{subscriptionId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/events/subscriptions/{subscriptionId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/events/subscriptions/{subscriptionId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/events/subscriptions/{subscriptionId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/events/subscriptions/{subscriptionId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /events/subscriptions/{subscriptionId}
Parameters
Name
In
Type
Required
Description
subscriptionId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"trigger" : "SCHEDULE_CREATED" ,
"viewTemplateId" : 0 ,
"integrationId" : 0 ,
"integrationType" : "WEBHOOK" ,
"enabled" : true ,
"settings" : {
"timeBefore" : 0 ,
"timeSince" : 0 ,
"diskUsage" : 0 ,
"metric" : "NETSEC_ASSETS" ,
"limit" : 0 ,
"userId" : 0 ,
"from" : "to review" ,
"to" : "to review" ,
"entityType" : "FINDING"
},
"contentConfiguration" : {
"integrationType" : "WEBHOOK"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Responses
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete an event subscription
# You can also use wget
curl -X DELETE \
/rest/events/subscriptions/{ subscriptionId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/events/subscriptions/{subscriptionId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/events/subscriptions/{subscriptionId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/events/subscriptions/{subscriptionId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/events/subscriptions/{subscriptionId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/events/subscriptions/{subscriptionId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /events/subscriptions/{subscriptionId}
Parameters
Name
In
Type
Required
Description
subscriptionId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update an event subscription
# You can also use wget
curl -X PATCH \
/rest/events/subscriptions/{ subscriptionId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/events/subscriptions/{subscriptionId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"trigger": "SCHEDULE_CREATED",
"viewTemplateId": 0,
"integrationId": 0,
"enabled": true,
"settings": {
"timeBefore": 0,
"timeSince": 0,
"diskUsage": 0,
"metric": "NETSEC_ASSETS",
"limit": 0,
"userId": 0,
"from": "to review",
"to": "to review",
"entityType": "FINDING"
},
"contentConfiguration": {
"integrationType": "WEBHOOK"
}
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/events/subscriptions/{subscriptionId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/events/subscriptions/{subscriptionId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/events/subscriptions/{subscriptionId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/events/subscriptions/{subscriptionId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /events/subscriptions/{subscriptionId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"trigger" : "SCHEDULE_CREATED" ,
"viewTemplateId" : 0 ,
"integrationId" : 0 ,
"enabled" : true ,
"settings" : {
"timeBefore" : 0 ,
"timeSince" : 0 ,
"diskUsage" : 0 ,
"metric" : "NETSEC_ASSETS" ,
"limit" : 0 ,
"userId" : 0 ,
"from" : "to review" ,
"to" : "to review" ,
"entityType" : "FINDING"
},
"contentConfiguration" : {
"integrationType" : "WEBHOOK"
}
}
Parameters
Name
In
Type
Required
Description
subscriptionId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
EventSubscription
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/events/subscriptions/{ subscriptionId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/events/subscriptions/{subscriptionId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/events/subscriptions/{subscriptionId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/events/subscriptions/{subscriptionId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/events/subscriptions/{subscriptionId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/events/subscriptions/{subscriptionId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /events/subscriptions/{subscriptionId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
subscriptionId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/events/subscriptions/{ subscriptionId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/events/subscriptions/{subscriptionId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/events/subscriptions/{subscriptionId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/events/subscriptions/{subscriptionId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/events/subscriptions/{subscriptionId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/events/subscriptions/{subscriptionId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /events/subscriptions/{subscriptionId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
subscriptionId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of event subscriptions
# You can also use wget
curl -X GET \
/rest/events/subscriptions \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/events/subscriptions ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/events/subscriptions ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/events/subscriptions" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/events/subscriptions' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/events/subscriptions' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /events/subscriptions
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"trigger" : "SCHEDULE_CREATED" ,
"viewTemplateId" : 0 ,
"integrationId" : 0 ,
"integrationType" : "WEBHOOK" ,
"enabled" : true ,
"settings" : {
"timeBefore" : 0 ,
"timeSince" : 0 ,
"diskUsage" : 0 ,
"metric" : "NETSEC_ASSETS" ,
"limit" : 0 ,
"userId" : 0 ,
"from" : "to review" ,
"to" : "to review" ,
"entityType" : "FINDING"
},
"contentConfiguration" : {
"integrationType" : "WEBHOOK"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[EventSubscription ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» trigger
string
true
none
none
» viewTemplateId
integer(int32)
false
none
none
» integrationId
integer(int32)
false
none
none
» integrationType
string
false
read-only
none
» enabled
boolean
false
none
Determines if the entry is enabled or not.
» settings
EventSubscription.Settings
false
none
none
»» timeBefore
integer(int32)
false
none
none
»» timeSince
integer(int32)
false
none
none
»» diskUsage
integer(int32)
false
none
none
»» metric
string
false
none
none
»» limit
integer(int32)
false
none
none
»» userId
integer(int32)
false
none
none
»» from
string
false
none
none
»» to
string
false
none
none
»» entityType
string
false
none
none
» contentConfiguration
BaseContentConfiguration
false
none
none
»» integrationType
string
true
none
none
» tags
[Tag ]
false
read-only
The tags
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
Enumerated Values
Property
Value
trigger
SCHEDULE_CREATED
trigger
SCHEDULE_DELETED
trigger
SCHEDULE_MODIFIED
trigger
SCHEDULE_SCHEDULED
trigger
CONFIGURATION_CREATED
trigger
CONFIGURATION_DELETED
trigger
CONFIGURATION_MODIFIED
trigger
CONFIGURATION_STARTED
trigger
CONFIGURATION_DONE
trigger
SCAN_STARTED
trigger
SCAN_STOPPED
trigger
SCAN_DONE
trigger
ASSET_NOT_RECENTLY_SEEN
trigger
ASSET_SEEN
trigger
ASSET_CREATED
trigger
ASSET_DELETED
trigger
ASSET_MODIFIED
trigger
FINDING_SEEN
trigger
FINDING_CREATED
trigger
FINDING_MODIFIED
trigger
FINDING_STATUS_TRANSITIONED
trigger
FINDING_RISK_ACCEPTED_EXPIRATION
trigger
WATCHED_FINDING_UPDATED
trigger
USER_CREATED
trigger
USER_DELETED
trigger
USER_MODIFIED
trigger
USER_LOGIN_ATTEMPT
trigger
USER_PASSWORD_RESET
trigger
ROLE_CREATED
trigger
ROLE_DELETED
trigger
ROLE_MODIFIED
trigger
RESOURCE_GROUP_CREATED
trigger
RESOURCE_GROUP_DELETED
trigger
RESOURCE_GROUP_MODIFIED
trigger
NEW_RELEASE_NOTES
trigger
HIAB_SCANNER_MISSING
trigger
HIAB_UPDATE_DONE
trigger
HIAB_UPDATE_FAILED
trigger
HIAB_BACKUP_DONE
trigger
HIAB_BACKUP_FAILED
trigger
HIAB_MAINTENANCE_PLAN_DONE
trigger
HIAB_DISK_USAGE_HIGH
trigger
HIAB_REBOOTED
trigger
HIAB_REMOTE_SUPPORT
trigger
OUTSCAN_CONSULTANCY
trigger
CONSUMPTION_ABSOLUTE
trigger
CONSUMPTION_RELATIVE
trigger
WORKFLOW_CREATED
trigger
WORKFLOW_DELETED
trigger
WORKFLOW_MODIFIED
trigger
WORKFLOW_STARTED
trigger
WORKFLOW_DONE
trigger
COMPLIANCE_CREATED
trigger
COMPLIANCE_MODIFIED
trigger
COMPLIANCE_RISK_EXCEPTION
trigger
COMPLIANCE_RISK_EXCEPTION_EXPIRATION
trigger
COMMENT_CREATED
trigger
EXECUTIVE_SUMMARY_UPDATED
trigger
ACTIVITY_FEED_UPDATED
trigger
ASSET_GROUP_CREATED
trigger
ASSET_GROUP_DELETED
trigger
ASSET_GROUP_MODIFIED
integrationType
WEBHOOK
integrationType
EMAIL
integrationType
LOG
integrationType
SYSLOG
integrationType
SNMP
integrationType
NOTIFICATION
metric
NETSEC_ASSETS
metric
NETSEC_SCANS
metric
NETSEC_INTERNAL_ASSETS
metric
NETSEC_INTERNAL_SCANS
metric
NETSEC_APPLIANCE_ASSETS
metric
NETSEC_APPLIANCE_SCANS
metric
NETSEC_APPLIANCE_EXTERNAL_ASSETS
metric
NETSEC_APPLIANCE_EXTERNAL_SCANS
metric
COMPLIANCE_ASSETS
metric
COMPLIANCE_SCANS
metric
COMPLIANCE_INTERNAL_ASSETS
metric
COMPLIANCE_INTERNAL_SCANS
metric
COMPLIANCE_APPLIANCE_ASSETS
metric
COMPLIANCE_APPLIANCE_SCANS
metric
COMPLIANCE_APPLIANCE_EXTERNAL_ASSETS
metric
COMPLIANCE_APPLIANCE_EXTERNAL_SCANS
metric
PCI_ASSETS
metric
PCI_SCANS
metric
SCALE_ASSETS
metric
SCALE_SCANS
metric
SCALE_INTERNAL_ASSETS
metric
SCALE_APPLIANCE_ASSETS
metric
SCALE_APPLIANCE_SCANS
metric
SCALE_APPLIANCE_EXTERNAL_ASSETS
metric
SCALE_APPLIANCE_EXTERNAL_SCANS
metric
CLOUDSEC_ASSETS
metric
CLOUDSEC_SCANS
metric
NETWORK_DISCOVERY_SCANS
metric
NETWORK_DISCOVERY_APPLIANCE_SCANS
metric
CLOUD_DISCOVERY_SCANS
metric
CLOUD_DISCOVERY_APPLIANCE_SCANS
metric
NETWORK_ASSETS
metric
NETWORK_SCANS
metric
NETWORK_APPLIANCE_ASSETS
metric
NETWORK_APPLIANCE_SCANS
metric
DOCKER_IMAGE_DISCOVERY_SCANS
metric
DOCKER_IMAGE_ASSETS
metric
DOCKER_IMAGE_SCANS
metric
DOCKER_IMAGE_DISCOVERY_APPLIANCE_SCANS
metric
DOCKER_IMAGE_APPLIANCE_ASSETS
metric
DOCKER_IMAGE_APPLIANCE_SCANS
metric
OUTSCAN_NX_ASSETS
metric
OUTSCAN_NX_APPLIANCE_ASSETS
from
to review
from
to verify
from
to QA
from
to publish
from
rejected
from
present
from
accepted
from
false positive
from
pending verification
from
fixed
from
irreproducible
to
to review
to
to verify
to
to QA
to
to publish
to
rejected
to
present
to
accepted
to
false positive
to
pending verification
to
fixed
to
irreproducible
entityType
FINDING
entityType
ASSET_GROUP
entityType
ASSET
entityType
SCAN_CONFIGURATION
entityType
SCHEDULE
entityType
SCAN
entityType
USER
entityType
ROLE
entityType
RESOURCE_GROUP
entityType
COMPLIANCE
entityType
WORKFLOW
entityType
CHECK
integrationType
WEBHOOK
integrationType
EMAIL
integrationType
LOG
integrationType
SYSLOG
integrationType
SNMP
integrationType
NOTIFICATION
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create event subscription
# You can also use wget
curl -X POST \
/rest/events/subscriptions \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/events/subscriptions ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"trigger": "SCHEDULE_CREATED",
"viewTemplateId": 0,
"integrationId": 0,
"enabled": true,
"settings": {
"timeBefore": 0,
"timeSince": 0,
"diskUsage": 0,
"metric": "NETSEC_ASSETS",
"limit": 0,
"userId": 0,
"from": "to review",
"to": "to review",
"entityType": "FINDING"
},
"contentConfiguration": {
"integrationType": "WEBHOOK"
}
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/events/subscriptions ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/events/subscriptions" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/events/subscriptions' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/events/subscriptions' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /events/subscriptions
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"trigger" : "SCHEDULE_CREATED" ,
"viewTemplateId" : 0 ,
"integrationId" : 0 ,
"enabled" : true ,
"settings" : {
"timeBefore" : 0 ,
"timeSince" : 0 ,
"diskUsage" : 0 ,
"metric" : "NETSEC_ASSETS" ,
"limit" : 0 ,
"userId" : 0 ,
"from" : "to review" ,
"to" : "to review" ,
"entityType" : "FINDING"
},
"contentConfiguration" : {
"integrationType" : "WEBHOOK"
}
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
EventSubscription
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/events/subscriptions \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/events/subscriptions ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/events/subscriptions ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/events/subscriptions" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/events/subscriptions' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/events/subscriptions' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /events/subscriptions
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get jinja variables relevant to an event
# You can also use wget
curl -X GET \
/rest/events/subscriptions/template-variables/{ trigger} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/events/subscriptions/template-variables/{trigger} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/events/subscriptions/template-variables/{trigger} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/events/subscriptions/template-variables/{trigger}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/events/subscriptions/template-variables/{trigger}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/events/subscriptions/template-variables/{trigger}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /events/subscriptions/template-variables/{trigger}
Parameters
Name
In
Type
Required
Description
trigger
path
string
true
none
Enumerated Values
Parameter
Value
trigger
SCHEDULE_CREATED
trigger
SCHEDULE_DELETED
trigger
SCHEDULE_MODIFIED
trigger
SCHEDULE_SCHEDULED
trigger
CONFIGURATION_CREATED
trigger
CONFIGURATION_DELETED
trigger
CONFIGURATION_MODIFIED
trigger
CONFIGURATION_STARTED
trigger
CONFIGURATION_DONE
trigger
SCAN_STARTED
trigger
SCAN_STOPPED
trigger
SCAN_DONE
trigger
ASSET_NOT_RECENTLY_SEEN
trigger
ASSET_SEEN
trigger
ASSET_CREATED
trigger
ASSET_DELETED
trigger
ASSET_MODIFIED
trigger
FINDING_SEEN
trigger
FINDING_CREATED
trigger
FINDING_MODIFIED
trigger
FINDING_STATUS_TRANSITIONED
trigger
FINDING_RISK_ACCEPTED_EXPIRATION
trigger
WATCHED_FINDING_UPDATED
trigger
USER_CREATED
trigger
USER_DELETED
trigger
USER_MODIFIED
trigger
USER_LOGIN_ATTEMPT
trigger
USER_PASSWORD_RESET
trigger
ROLE_CREATED
trigger
ROLE_DELETED
trigger
ROLE_MODIFIED
trigger
RESOURCE_GROUP_CREATED
trigger
RESOURCE_GROUP_DELETED
trigger
RESOURCE_GROUP_MODIFIED
trigger
NEW_RELEASE_NOTES
trigger
HIAB_SCANNER_MISSING
trigger
HIAB_UPDATE_DONE
trigger
HIAB_UPDATE_FAILED
trigger
HIAB_BACKUP_DONE
trigger
HIAB_BACKUP_FAILED
trigger
HIAB_MAINTENANCE_PLAN_DONE
trigger
HIAB_DISK_USAGE_HIGH
trigger
HIAB_REBOOTED
trigger
HIAB_REMOTE_SUPPORT
trigger
OUTSCAN_CONSULTANCY
trigger
CONSUMPTION_ABSOLUTE
trigger
CONSUMPTION_RELATIVE
trigger
WORKFLOW_CREATED
trigger
WORKFLOW_DELETED
trigger
WORKFLOW_MODIFIED
trigger
WORKFLOW_STARTED
trigger
WORKFLOW_DONE
trigger
COMPLIANCE_CREATED
trigger
COMPLIANCE_MODIFIED
trigger
COMPLIANCE_RISK_EXCEPTION
trigger
COMPLIANCE_RISK_EXCEPTION_EXPIRATION
trigger
COMMENT_CREATED
trigger
EXECUTIVE_SUMMARY_UPDATED
trigger
ACTIVITY_FEED_UPDATED
trigger
ASSET_GROUP_CREATED
trigger
ASSET_GROUP_DELETED
trigger
ASSET_GROUP_MODIFIED
The above code returns response like this:
default Response
[
{
"key" : "string" ,
"description" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[EventTemplateVariable ]
false
none
none
» key
string
false
none
The event template variable name
» description
string
false
none
Description of the entry.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/events/subscriptions/{ subscriptionId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/events/subscriptions/{subscriptionId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/events/subscriptions/{subscriptionId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/events/subscriptions/{subscriptionId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/events/subscriptions/{subscriptionId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/events/subscriptions/{subscriptionId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /events/subscriptions/{subscriptionId}/tags
Body parameter
Name
In
Type
Required
Description
subscriptionId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Exploits
Get an exploit
# You can also use wget
curl -X GET \
/rest/exploits/{ exploitId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/exploits/{exploitId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/exploits/{exploitId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/exploits/{exploitId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/exploits/{exploitId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/exploits/{exploitId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /exploits/{exploitId}
Parameters
Name
In
Type
Required
Description
exploitId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"source" : "Unknown" ,
"cve" : "string" ,
"name" : "string" ,
"created" : "2019-08-24T14:15:22Z" ,
"pack" : "string" ,
"checkId" : 0 ,
"url" : "string"
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Exploit
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of exploits
# You can also use wget
curl -X GET \
/rest/exploits \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/exploits ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/exploits ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/exploits" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/exploits' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/exploits' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /exploits
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"source" : "Unknown" ,
"cve" : "string" ,
"name" : "string" ,
"created" : "2019-08-24T14:15:22Z" ,
"pack" : "string" ,
"checkId" : 0 ,
"url" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Exploit ]
false
none
none
» id
integer(int64)
false
read-only
The ID of the entry.
» source
string
false
read-only
none
» cve
string
false
read-only
none
» name
string
false
read-only
The name of the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» pack
string
false
read-only
none
» checkId
integer(int64)
false
read-only
none
» url
string
false
read-only
none
Enumerated Values
Property
Value
source
Unknown
source
Core Security
source
Immunity
source
Exploit Database
source
DSquare Security
source
Contagio
source
Metasploit
source
SAINT
source
Security Focus
source
Snort
source
Farsight
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/exploits \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/exploits ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/exploits ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/exploits" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/exploits' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/exploits' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /exploits
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Finding template groups
Get a finding template group
# You can also use wget
curl -X GET \
/rest/finding-template-groups/{ findingTemplateGroupId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/finding-template-groups/{findingTemplateGroupId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/finding-template-groups/{findingTemplateGroupId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/finding-template-groups/{findingTemplateGroupId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/finding-template-groups/{findingTemplateGroupId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/finding-template-groups/{findingTemplateGroupId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /finding-template-groups/{findingTemplateGroupId}
Parameters
Name
In
Type
Required
Description
findingTemplateGroupId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"parentId" : 0
}
Responses
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a finding template group
# You can also use wget
curl -X DELETE \
/rest/finding-template-groups/{ findingTemplateGroupId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/finding-template-groups/{findingTemplateGroupId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/finding-template-groups/{findingTemplateGroupId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/finding-template-groups/{findingTemplateGroupId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/finding-template-groups/{findingTemplateGroupId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/finding-template-groups/{findingTemplateGroupId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /finding-template-groups/{findingTemplateGroupId}
Parameters
Name
In
Type
Required
Description
findingTemplateGroupId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of finding template groups
# You can also use wget
curl -X GET \
/rest/finding-template-groups \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/finding-template-groups ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/finding-template-groups ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/finding-template-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/finding-template-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/finding-template-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /finding-template-groups
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"parentId" : 0
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[FindingTemplateGroup ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» parentId
integer(int32)
false
none
The ID of the parent entry.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a finding template group
# You can also use wget
curl -X POST \
/rest/finding-template-groups \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/finding-template-groups ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"parentId": 0
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/finding-template-groups ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/finding-template-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/finding-template-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/finding-template-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /finding-template-groups
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"parentId" : 0
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
FindingTemplateGroup
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/finding-template-groups \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/finding-template-groups ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/finding-template-groups ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/finding-template-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/finding-template-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/finding-template-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /finding-template-groups
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Update a finding template
# You can also use wget
curl -X PATCH \
/rest/finding-template-groups/{ findingTemplateId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/finding-template-groups/{findingTemplateId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"parentId": 0
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/finding-template-groups/{findingTemplateId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/finding-template-groups/{findingTemplateId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/finding-template-groups/{findingTemplateId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/finding-template-groups/{findingTemplateId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /finding-template-groups/{findingTemplateId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"parentId" : 0
}
Parameters
Name
In
Type
Required
Description
findingTemplateId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
FindingTemplateGroup
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Finding templates
Get a finding template
# You can also use wget
curl -X GET \
/rest/finding-templates/{ findingTemplateId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/finding-templates/{findingTemplateId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/finding-templates/{findingTemplateId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/finding-templates/{findingTemplateId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/finding-templates/{findingTemplateId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/finding-templates/{findingTemplateId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /finding-templates/{findingTemplateId}
Parameters
Name
In
Type
Required
Description
findingTemplateId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"uuid" : "string" ,
"groupId" : 0 ,
"cvssV2Score" : 0 ,
"cvssV3Score" : 0 ,
"cvssV2Severity" : "RECOMMENDATION" ,
"cvssV3Severity" : "RECOMMENDATION" ,
"template" : {
"name" : "string" ,
"description" : "string" ,
"remediation" : "string" ,
"impact" : "string" ,
"recreation" : "string" ,
"cwe" : 0 ,
"cvssV2Vector" : "string" ,
"cvssV3Vector" : "string" ,
"owaspMobile2024" : 1 ,
"owaspApi2023" : 1
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
FindingTemplate
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a finding template
# You can also use wget
curl -X DELETE \
/rest/finding-templates/{ findingTemplateId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/finding-templates/{findingTemplateId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/finding-templates/{findingTemplateId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/finding-templates/{findingTemplateId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/finding-templates/{findingTemplateId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/finding-templates/{findingTemplateId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /finding-templates/{findingTemplateId}
Parameters
Name
In
Type
Required
Description
findingTemplateId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Update a finding template
# You can also use wget
curl -X PATCH \
/rest/finding-templates/{ findingTemplateId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/finding-templates/{findingTemplateId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"uuid": "string",
"groupId": 0,
"template": {
"name": "string",
"description": "string",
"remediation": "string",
"impact": "string",
"recreation": "string",
"cwe": 0,
"cvssV2Vector": "string",
"cvssV3Vector": "string",
"owaspMobile2024": 1,
"owaspApi2023": 1
}
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/finding-templates/{findingTemplateId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/finding-templates/{findingTemplateId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/finding-templates/{findingTemplateId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/finding-templates/{findingTemplateId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /finding-templates/{findingTemplateId}
Body parameter
{
"customerId" : 0 ,
"uuid" : "string" ,
"groupId" : 0 ,
"template" : {
"name" : "string" ,
"description" : "string" ,
"remediation" : "string" ,
"impact" : "string" ,
"recreation" : "string" ,
"cwe" : 0 ,
"cvssV2Vector" : "string" ,
"cvssV3Vector" : "string" ,
"owaspMobile2024" : 1 ,
"owaspApi2023" : 1
}
}
Parameters
Name
In
Type
Required
Description
findingTemplateId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
FindingTemplate
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/finding-templates/{ findingTemplateId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/finding-templates/{findingTemplateId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/finding-templates/{findingTemplateId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/finding-templates/{findingTemplateId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/finding-templates/{findingTemplateId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/finding-templates/{findingTemplateId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /finding-templates/{findingTemplateId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
findingTemplateId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/finding-templates/{ findingTemplateId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/finding-templates/{findingTemplateId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/finding-templates/{findingTemplateId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/finding-templates/{findingTemplateId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/finding-templates/{findingTemplateId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/finding-templates/{findingTemplateId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /finding-templates/{findingTemplateId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
findingTemplateId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of finding templates
# You can also use wget
curl -X GET \
/rest/finding-templates \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/finding-templates ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/finding-templates ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/finding-templates" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/finding-templates' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/finding-templates' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /finding-templates
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"uuid" : "string" ,
"groupId" : 0 ,
"cvssV2Score" : 0 ,
"cvssV3Score" : 0 ,
"cvssV2Severity" : "RECOMMENDATION" ,
"cvssV3Severity" : "RECOMMENDATION" ,
"template" : {
"name" : "string" ,
"description" : "string" ,
"remediation" : "string" ,
"impact" : "string" ,
"recreation" : "string" ,
"cwe" : 0 ,
"cvssV2Vector" : "string" ,
"cvssV3Vector" : "string" ,
"owaspMobile2024" : 1 ,
"owaspApi2023" : 1
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[FindingTemplate ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» uuid
string
false
none
The UUID of the entry.
» groupId
integer(int32)
false
none
none
» cvssV2Score
number(float)
false
read-only
The CVSS V2 score
» cvssV3Score
number(float)
false
read-only
The CVSS V3 score
» cvssV2Severity
string
false
read-only
The CVSS V2 severity
» cvssV3Severity
string
false
read-only
The CVSS V3 severity
» template
FindingTemplate.Template
true
none
The finding template attributes
»» name
string
true
none
The name of the entry.
»» description
string
false
none
Description of the entry.
»» remediation
string
false
none
none
»» impact
string
false
none
none
»» recreation
string
false
none
none
»» cwe
integer(int32)
false
none
CWE classification of the entry.
»» cvssV2Vector
string
false
none
none
»» cvssV3Vector
string
false
none
none
»» owaspMobile2024
integer(int32)
false
none
none
»» owaspApi2023
integer(int32)
false
none
none
» tags
[Tag ]
false
read-only
The tags
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
Enumerated Values
Property
Value
cvssV2Severity
RECOMMENDATION
cvssV2Severity
LOW
cvssV2Severity
MEDIUM
cvssV2Severity
HIGH
cvssV2Severity
CRITICAL
cvssV3Severity
RECOMMENDATION
cvssV3Severity
LOW
cvssV3Severity
MEDIUM
cvssV3Severity
HIGH
cvssV3Severity
CRITICAL
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a finding template
# You can also use wget
curl -X POST \
/rest/finding-templates \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/finding-templates ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"uuid": "string",
"groupId": 0,
"template": {
"name": "string",
"description": "string",
"remediation": "string",
"impact": "string",
"recreation": "string",
"cwe": 0,
"cvssV2Vector": "string",
"cvssV3Vector": "string",
"owaspMobile2024": 1,
"owaspApi2023": 1
}
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/finding-templates ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/finding-templates" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/finding-templates' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/finding-templates' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /finding-templates
Body parameter
{
"customerId" : 0 ,
"uuid" : "string" ,
"groupId" : 0 ,
"template" : {
"name" : "string" ,
"description" : "string" ,
"remediation" : "string" ,
"impact" : "string" ,
"recreation" : "string" ,
"cwe" : 0 ,
"cvssV2Vector" : "string" ,
"cvssV3Vector" : "string" ,
"owaspMobile2024" : 1 ,
"owaspApi2023" : 1
}
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
FindingTemplate
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/finding-templates \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/finding-templates ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/finding-templates ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/finding-templates" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/finding-templates' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/finding-templates' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /finding-templates
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/finding-templates/{ findingTemplateId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/finding-templates/{findingTemplateId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/finding-templates/{findingTemplateId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/finding-templates/{findingTemplateId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/finding-templates/{findingTemplateId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/finding-templates/{findingTemplateId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /finding-templates/{findingTemplateId}/tags
Body parameter
Name
In
Type
Required
Description
findingTemplateId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Findings
Get an attachment for a finding
# You can also use wget
curl -X GET \
/rest/findings/{ findingId} /attachments/{ attachmentId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/attachments/{attachmentId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/attachments/{attachmentId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/findings/{findingId}/attachments/{attachmentId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/findings/{findingId}/attachments/{attachmentId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/findings/{findingId}/attachments/{attachmentId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /findings/{findingId}/attachments/{attachmentId}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
attachmentId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"findingId" : 0 ,
"type" : "OTHER" ,
"name" : "string"
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Attachment
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete an attachment for a finding
# You can also use wget
curl -X DELETE \
/rest/findings/{ findingId} /attachments/{ attachmentId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/attachments/{attachmentId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/attachments/{attachmentId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/findings/{findingId}/attachments/{attachmentId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/findings/{findingId}/attachments/{attachmentId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/findings/{findingId}/attachments/{attachmentId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /findings/{findingId}/attachments/{attachmentId}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
attachmentId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X GET \
/rest/findings/{ findingId} /comments/{ commentId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/comments/{commentId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/comments/{commentId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/findings/{findingId}/comments/{commentId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/findings/{findingId}/comments/{commentId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/findings/{findingId}/comments/{commentId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /findings/{findingId}/comments/{commentId}
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
commentId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"authorIsStaff" : true ,
"deleted" : "2019-08-24T14:15:22Z"
}
Status
Meaning
Description
Schema
default
Default
default response
Comment
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X DELETE \
/rest/findings/{ findingId} /comments/{ commentId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/comments/{commentId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/comments/{commentId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/findings/{findingId}/comments/{commentId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/findings/{findingId}/comments/{commentId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/findings/{findingId}/comments/{commentId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /findings/{findingId}/comments/{commentId}
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
commentId
path
integer(int32)
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PATCH \
/rest/findings/{ findingId} /comments/{ commentId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/comments/{commentId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"parentId": 0,
"comment": "string",
"entityType": "FINDING",
"entityId": 0,
"supportStatus": "NOT_APPLICABLE",
"deleted": "2019-08-24T14:15:22Z"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/comments/{commentId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/findings/{findingId}/comments/{commentId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/findings/{findingId}/comments/{commentId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/findings/{findingId}/comments/{commentId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /findings/{findingId}/comments/{commentId}
Body parameter
{
"customerId" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"deleted" : "2019-08-24T14:15:22Z"
}
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
commentId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Comment
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X GET \
/rest/findings/comments \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/comments ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/comments ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/findings/comments" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/findings/comments' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/findings/comments' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /findings/comments
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"authorIsStaff" : true ,
"deleted" : "2019-08-24T14:15:22Z"
}
]
Status
Meaning
Description
Schema
default
Default
default response
Inline
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Comment ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» parentId
integer(int32)
false
none
The ID of the parent entry.
» comment
string
false
none
The content of the comment
» entityType
string
false
none
The type of object this comment is made for
» entityId
integer(int32)
false
none
The ID of the object this comment is made for
» supportStatus
string
false
none
Current support status of the comment
» authorIsStaff
boolean
false
read-only
Whether the comment is from Outpost24 or the customer
» deleted
string(date-time)
false
none
When the comment was deleted
Enumerated Values
Property
Value
entityType
FINDING
entityType
ASSET_GROUP
entityType
ASSET
entityType
SCAN_CONFIGURATION
entityType
SCHEDULE
entityType
SCAN
entityType
USER
entityType
ROLE
entityType
RESOURCE_GROUP
entityType
COMPLIANCE
entityType
WORKFLOW
entityType
CHECK
supportStatus
NOT_APPLICABLE
supportStatus
WAITING
supportStatus
DONE
supportStatus
INTERNAL
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X POST \
/rest/findings/comments \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/comments ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"parentId": 0,
"comment": "string",
"entityType": "FINDING",
"entityId": 0,
"supportStatus": "NOT_APPLICABLE",
"deleted": "2019-08-24T14:15:22Z"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/comments ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/comments" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/comments' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/comments' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/comments
Body parameter
{
"customerId" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"deleted" : "2019-08-24T14:15:22Z"
}
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Comment
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X DELETE \
/rest/findings/comments \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/comments ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/comments ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/findings/comments" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/findings/comments' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/findings/comments' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /findings/comments
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/findings \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/findings" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/findings' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/findings' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /findings
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a finding by ID
# You can also use wget
curl -X GET \
/rest/findings/{ findingId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/findings/{findingId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/findings/{findingId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/findings/{findingId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /findings/{findingId}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"checkId" : 0 ,
"findingTemplateId" : 0 ,
"cvssScore" : 0 ,
"cvssSeverity" : "RECOMMENDATION" ,
"cvssV2Score" : 0 ,
"cvssV2BaseScore" : 0 ,
"cvssV2TemporalScore" : 0 ,
"cvssV2EnvironmentalScore" : 0 ,
"cvssV2Vector" : "string" ,
"cvssV2Severity" : "RECOMMENDATION" ,
"cvssV3Score" : 0 ,
"cvssV3BaseScore" : 0 ,
"cvssV3TemporalScore" : 0 ,
"cvssV3EnvironmentalScore" : 0 ,
"cvssV3Vector" : "string" ,
"cvssV3Severity" : "RECOMMENDATION" ,
"falsePositive" : "2019-08-24T14:15:22Z" ,
"falsePositiveComment" : "string" ,
"isAccepted" : true ,
"accepted" : "2019-08-24T14:15:22Z" ,
"acceptedComment" : "string" ,
"acceptedUntil" : "2019-08-24T14:15:22Z" ,
"fixed" : "2019-08-24T14:15:22Z" ,
"commentsCount" : 0 ,
"customName" : "string" ,
"customDescription" : "string" ,
"customCve" : "string" ,
"customCwe" : 0 ,
"customBugTraq" : "string" ,
"customSolution" : "string" ,
"customRecreation" : "string" ,
"customImpact" : "string" ,
"customOwaspMobile2024" : 1 ,
"customOwaspApi2023" : 1 ,
"solutionPatches" : [
"string"
],
"customCvssV2Vector" : "string" ,
"customCvssV2Severity" : "RECOMMENDATION" ,
"customCvssV3Vector" : "string" ,
"customCvssV3Severity" : "RECOMMENDATION" ,
"source" : [
"SCOUT"
],
"activeSubscriptionTypes" : [
"DAST"
],
"name" : "string" ,
"description" : "string" ,
"cve" : "string" ,
"cwe" : "string" ,
"solutionType" : "NOT_CLASSIFIED" ,
"solution" : "string" ,
"solutionProduct" : "string" ,
"solutionTitle" : "string" ,
"solutionUuid" : "string" ,
"exploitAvailable" : true ,
"matchIds" : [
0
],
"attachmentIds" : [
0
],
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"lastScanConfigurationId" : 0 ,
"status" : "to review" ,
"commentPendingSince" : "2019-08-24T14:15:22Z" ,
"reviewed" : "2019-08-24T14:15:22Z" ,
"reviewedBy" : "string" ,
"reviewedById" : 0 ,
"verified" : "2019-08-24T14:15:22Z" ,
"verifiedBy" : "string" ,
"verifiedById" : 0 ,
"qualityAssured" : "2019-08-24T14:15:22Z" ,
"qualityAssuredBy" : "string" ,
"qualityAssuredById" : 0 ,
"published" : "2019-08-24T14:15:22Z" ,
"publishedBy" : "string" ,
"publishedById" : 0 ,
"rejected" : "2019-08-24T14:15:22Z" ,
"rejectedBy" : "string" ,
"rejectedById" : 0 ,
"recreation" : "string" ,
"alternativeRecreation" : "string" ,
"impact" : "string" ,
"sans25" : 0 ,
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
],
"owaspMobile2024" : 1 ,
"owaspApi2023" : 1 ,
"capec" : [
0
],
"assetId" : 0 ,
"assetName" : "string" ,
"potential" : true ,
"softwareComponent" : "string" ,
"cyrating" : 0 ,
"cyratingDelta" : 0 ,
"exploitProbability" : 0 ,
"exploitProbabilityDelta" : 0 ,
"cyratingUpdated" : "2019-08-24T14:15:22Z" ,
"cyratingLastSeen" : "2019-08-24T14:15:22Z" ,
"seenLastScan" : true ,
"watching" : true ,
"age" : 0 ,
"assetGroupIds" : [
0
],
"sentTo" : [
"string"
],
"renderedName" : "string" ,
"renderedDescription" : "string" ,
"renderedCwe" : 0 ,
"renderedSolution" : "string" ,
"renderedRecreation" : "string" ,
"renderedImpact" : "string" ,
"renderedOwaspMobile2024" : 1 ,
"renderedOwaspApi2023" : 1 ,
"customerName" : "string" ,
"enabled" : true ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"bugTraq" : [
0
],
"secureCodeWarrior" : {
"name" : "string" ,
"description" : "string" ,
"url" : "string"
},
"farsight" : {
"risk" : {
"score" : 0 ,
"delta" : 0
},
"updated" : "2019-08-24T14:15:22Z" ,
"lastThreatActivity" : "2019-08-24T14:15:22Z"
},
"matches" : [
{
"type" : "WAS" ,
"service" : {
"name" : "string" ,
"scheme" : "string" ,
"port" : 0 ,
"protocol" : "TCP" ,
"virtualHost" : "string"
},
"patternUuid" : "string"
}
],
"classifications" : {
"sans25" : 0 ,
"capec" : [
0
],
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
]
},
"ports" : [
{
"name" : "string" ,
"port" : 0 ,
"protocol" : "TCP"
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Finding
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a finding
# You can also use wget
curl -X DELETE \
/rest/findings/{ findingId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/findings/{findingId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/findings/{findingId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/findings/{findingId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /findings/{findingId}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a finding
# You can also use wget
curl -X PATCH \
/rest/findings/{ findingId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"checkId": 0,
"findingTemplateId": 0,
"customName": "string",
"customDescription": "string",
"customCve": "string",
"customCwe": 0,
"customBugTraq": "string",
"customSolution": "string",
"customRecreation": "string",
"customImpact": "string",
"customOwaspMobile2024": 1,
"customOwaspApi2023": 1,
"solutionPatches": [
"string"
],
"customCvssV2Vector": "string",
"customCvssV2Severity": "RECOMMENDATION",
"customCvssV3Vector": "string",
"customCvssV3Severity": "RECOMMENDATION",
"matchIds": [
0
],
"alternativeRecreation": "string",
"impact": "string",
"owaspMobile2024": 1,
"owaspApi2023": 1,
"assetId": 0,
"potential": true,
"assetGroupIds": [
0
],
"renderedOwaspMobile2024": 1,
"renderedOwaspApi2023": 1,
"customerName": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/findings/{findingId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/findings/{findingId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/findings/{findingId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /findings/{findingId}
Body parameter
{
"customerId" : 0 ,
"checkId" : 0 ,
"findingTemplateId" : 0 ,
"customName" : "string" ,
"customDescription" : "string" ,
"customCve" : "string" ,
"customCwe" : 0 ,
"customBugTraq" : "string" ,
"customSolution" : "string" ,
"customRecreation" : "string" ,
"customImpact" : "string" ,
"customOwaspMobile2024" : 1 ,
"customOwaspApi2023" : 1 ,
"solutionPatches" : [
"string"
],
"customCvssV2Vector" : "string" ,
"customCvssV2Severity" : "RECOMMENDATION" ,
"customCvssV3Vector" : "string" ,
"customCvssV3Severity" : "RECOMMENDATION" ,
"matchIds" : [
0
],
"alternativeRecreation" : "string" ,
"impact" : "string" ,
"owaspMobile2024" : 1 ,
"owaspApi2023" : 1 ,
"assetId" : 0 ,
"potential" : true ,
"assetGroupIds" : [
0
],
"renderedOwaspMobile2024" : 1 ,
"renderedOwaspApi2023" : 1 ,
"customerName" : "string"
}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Finding
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/findings/{ findingId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/findings/{findingId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/findings/{findingId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/findings/{findingId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /findings/{findingId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/findings/{ findingId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/findings/{findingId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/findings/{findingId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/findings/{findingId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /findings/{findingId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create links to a tag
# You can also use wget
curl -X PUT \
/rest/findings/tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/findings/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/findings/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/findings/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /findings/tags/{tagId}
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete links to a tag
# You can also use wget
curl -X DELETE \
/rest/findings/tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/findings/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/findings/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/findings/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /findings/tags/{tagId}
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of findings
# You can also use wget
curl -X GET \
/rest/findings \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/findings" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/findings' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/findings' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /findings
Findings are vulnerabilities and recommendations that were detected during the scan and are deducted from matches (see /matches) based on checks (see /checks). Checks might involve multiple conditions to trigger a finding and therefore findings can be associated with multiple matches. Findings are associated with a service (see /services) connected to an asset identifier of type "IP". Any findings detected during the scan will be associated with a service connected to the IP that was resolved during the scan.
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"checkId" : 0 ,
"findingTemplateId" : 0 ,
"cvssScore" : 0 ,
"cvssSeverity" : "RECOMMENDATION" ,
"cvssV2Score" : 0 ,
"cvssV2BaseScore" : 0 ,
"cvssV2TemporalScore" : 0 ,
"cvssV2EnvironmentalScore" : 0 ,
"cvssV2Vector" : "string" ,
"cvssV2Severity" : "RECOMMENDATION" ,
"cvssV3Score" : 0 ,
"cvssV3BaseScore" : 0 ,
"cvssV3TemporalScore" : 0 ,
"cvssV3EnvironmentalScore" : 0 ,
"cvssV3Vector" : "string" ,
"cvssV3Severity" : "RECOMMENDATION" ,
"falsePositive" : "2019-08-24T14:15:22Z" ,
"falsePositiveComment" : "string" ,
"isAccepted" : true ,
"accepted" : "2019-08-24T14:15:22Z" ,
"acceptedComment" : "string" ,
"acceptedUntil" : "2019-08-24T14:15:22Z" ,
"fixed" : "2019-08-24T14:15:22Z" ,
"commentsCount" : 0 ,
"customName" : "string" ,
"customDescription" : "string" ,
"customCve" : "string" ,
"customCwe" : 0 ,
"customBugTraq" : "string" ,
"customSolution" : "string" ,
"customRecreation" : "string" ,
"customImpact" : "string" ,
"customOwaspMobile2024" : 1 ,
"customOwaspApi2023" : 1 ,
"solutionPatches" : [
"string"
],
"customCvssV2Vector" : "string" ,
"customCvssV2Severity" : "RECOMMENDATION" ,
"customCvssV3Vector" : "string" ,
"customCvssV3Severity" : "RECOMMENDATION" ,
"source" : [
"SCOUT"
],
"activeSubscriptionTypes" : [
"DAST"
],
"name" : "string" ,
"description" : "string" ,
"cve" : "string" ,
"cwe" : "string" ,
"solutionType" : "NOT_CLASSIFIED" ,
"solution" : "string" ,
"solutionProduct" : "string" ,
"solutionTitle" : "string" ,
"solutionUuid" : "string" ,
"exploitAvailable" : true ,
"matchIds" : [
0
],
"attachmentIds" : [
0
],
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"lastScanConfigurationId" : 0 ,
"status" : "to review" ,
"commentPendingSince" : "2019-08-24T14:15:22Z" ,
"reviewed" : "2019-08-24T14:15:22Z" ,
"reviewedBy" : "string" ,
"reviewedById" : 0 ,
"verified" : "2019-08-24T14:15:22Z" ,
"verifiedBy" : "string" ,
"verifiedById" : 0 ,
"qualityAssured" : "2019-08-24T14:15:22Z" ,
"qualityAssuredBy" : "string" ,
"qualityAssuredById" : 0 ,
"published" : "2019-08-24T14:15:22Z" ,
"publishedBy" : "string" ,
"publishedById" : 0 ,
"rejected" : "2019-08-24T14:15:22Z" ,
"rejectedBy" : "string" ,
"rejectedById" : 0 ,
"recreation" : "string" ,
"alternativeRecreation" : "string" ,
"impact" : "string" ,
"sans25" : 0 ,
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
],
"owaspMobile2024" : 1 ,
"owaspApi2023" : 1 ,
"capec" : [
0
],
"assetId" : 0 ,
"assetName" : "string" ,
"potential" : true ,
"softwareComponent" : "string" ,
"cyrating" : 0 ,
"cyratingDelta" : 0 ,
"exploitProbability" : 0 ,
"exploitProbabilityDelta" : 0 ,
"cyratingUpdated" : "2019-08-24T14:15:22Z" ,
"cyratingLastSeen" : "2019-08-24T14:15:22Z" ,
"seenLastScan" : true ,
"watching" : true ,
"age" : 0 ,
"assetGroupIds" : [
0
],
"sentTo" : [
"string"
],
"renderedName" : "string" ,
"renderedDescription" : "string" ,
"renderedCwe" : 0 ,
"renderedSolution" : "string" ,
"renderedRecreation" : "string" ,
"renderedImpact" : "string" ,
"renderedOwaspMobile2024" : 1 ,
"renderedOwaspApi2023" : 1 ,
"customerName" : "string" ,
"enabled" : true ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"bugTraq" : [
0
],
"secureCodeWarrior" : {
"name" : "string" ,
"description" : "string" ,
"url" : "string"
},
"farsight" : {
"risk" : {
"score" : 0 ,
"delta" : 0
},
"updated" : "2019-08-24T14:15:22Z" ,
"lastThreatActivity" : "2019-08-24T14:15:22Z"
},
"matches" : [
{
"type" : "WAS" ,
"service" : {
"name" : "string" ,
"scheme" : "string" ,
"port" : 0 ,
"protocol" : "TCP" ,
"virtualHost" : "string"
},
"patternUuid" : "string"
}
],
"classifications" : {
"sans25" : 0 ,
"capec" : [
0
],
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
]
},
"ports" : [
{
"name" : "string" ,
"port" : 0 ,
"protocol" : "TCP"
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Finding ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» checkId
integer(int32)
false
none
The check id associated with the finding
» findingTemplateId
integer(int32)
false
none
The finding template from which the finding was created
» cvssScore
number(float)
false
read-only
The CVSS score, take CVSS V3 if available, otherwise CVSS V2
» cvssSeverity
string
false
read-only
The CVSS severity, take CVSS V3 severity if available, otherwise CVSS V2
» cvssV2Score
number(float)
false
read-only
The CVSS V2 score
» cvssV2BaseScore
number(float)
false
read-only
The CVSS V2 base score
» cvssV2TemporalScore
number(float)
false
read-only
The CVSS V2 temporal score
» cvssV2EnvironmentalScore
number(float)
false
read-only
The CVSS V2 environmental score
» cvssV2Vector
string
false
read-only
The CVSS V2 vector
» cvssV2Severity
string
false
read-only
The CVSS V2 severity
» cvssV3Score
number(float)
false
read-only
The CVSS V3 score
» cvssV3BaseScore
number(float)
false
read-only
The CVSS V3 base score
» cvssV3TemporalScore
number(float)
false
read-only
The CVSS V3 temporal score
» cvssV3EnvironmentalScore
number(float)
false
read-only
The CVSS V3 environmental score
» cvssV3Vector
string
false
read-only
The CVSS V3 vector
» cvssV3Severity
string
false
read-only
The CVSS V3 severity
» falsePositive
string(date-time)
false
read-only
The date when marked as false positive
» falsePositiveComment
string
false
read-only
The false positive comment
» isAccepted
boolean
false
read-only
Set to true when the risk is accepted
» accepted
string(date-time)
false
read-only
The date when the finding was marked as accepted risk.
» acceptedComment
string
false
read-only
The accepted comment
» acceptedUntil
string(date-time)
false
read-only
The date when the risk acceptance will expire.
» fixed
string(date-time)
false
read-only
The date when the risk was fixed
» commentsCount
integer(int32)
false
read-only
The number of comments
» customName
string
false
none
The custom name
» customDescription
string
false
none
The custom description
» customCve
string
false
none
The custom CVE
» customCwe
integer(int32)
false
none
The custom CWE
» customBugTraq
string
false
none
The custom bug track
» customSolution
string
false
none
The custom solution
» customRecreation
string
false
none
The custom recreation
» customImpact
string
false
none
The custom impact
» customOwaspMobile2024
integer(int32)
false
none
Custom OWASP Mobile 2024 score
» customOwaspApi2023
integer(int32)
false
none
Custom OWASP API 2023 score
» solutionPatches
[string]
false
none
The solution patches
» customCvssV2Vector
string
false
none
The custom CVSS V2 vector
» customCvssV2Severity
string
false
none
The custom CVSS V2 severity
» customCvssV3Vector
string
false
none
The custom CVSS V3 vector
» customCvssV3Severity
string
false
none
The custom CVSS V3 severity
» source
[string]
false
read-only
The scan sources
» activeSubscriptionTypes
[string]
false
read-only
The finding's active subscription types
» name
string
false
read-only
The name of the entry.
» description
string
false
read-only
Description of the entry.
» cve
string
false
read-only
The finding CVE
» cwe
string
false
read-only
CWE classification of the entry.
» solutionType
string
false
read-only
The solution type
» solution
string
false
read-only
The solution
» solutionProduct
string
false
read-only
The solution product
» solutionTitle
string
false
read-only
The solution title
» solutionUuid
string
false
read-only
The solution uuid
» exploitAvailable
boolean
false
read-only
Set to true when exploits are available
» matchIds
[integer]
false
none
The match ids
» attachmentIds
[integer]
false
read-only
The attachments ids
» firstSeen
string(date-time)
false
read-only
Timestamp when the entry was seen for the first time.
» lastSeen
string(date-time)
false
read-only
Timestamp when the entry was seen last time.
» firstScanId
integer(int32)
false
read-only
The id of the first scan
» lastScanId
integer(int32)
false
read-only
The id of the last scan
» lastScanConfigurationId
integer(int32)
false
read-only
The id of the last scan configuration
» status
string
false
read-only
The finding status
» commentPendingSince
string(date-time)
false
read-only
The date since comment is pending
» reviewed
string(date-time)
false
read-only
The finding reviewed date
» reviewedBy
string
false
read-only
The username of the user that reviewed the finding
» reviewedById
integer(int32)
false
read-only
The user ID of the user that reviewed the finding
» verified
string(date-time)
false
read-only
The finding verified date
» verifiedBy
string
false
read-only
The username of the user that verified the finding
» verifiedById
integer(int32)
false
read-only
The user ID of the user that verified the finding
» qualityAssured
string(date-time)
false
read-only
The finding quality assured date
» qualityAssuredBy
string
false
read-only
The username of the user that quality assured the finding
» qualityAssuredById
integer(int32)
false
read-only
The user ID of the user that quality assured the finding
» published
string(date-time)
false
read-only
The finding published date
» publishedBy
string
false
read-only
The username of the user that published the finding
» publishedById
integer(int32)
false
read-only
The user ID of the user that published the finding
» rejected
string(date-time)
false
read-only
The finding rejected date
» rejectedBy
string
false
read-only
The username of the user that rejected the finding
» rejectedById
integer(int32)
false
read-only
The user ID of the user that rejected the finding
» recreation
string
false
read-only
The recreation
» alternativeRecreation
string
false
none
The alternate recreation
» impact
string
false
none
The impact
» sans25
integer(int32)
false
read-only
SANS 25 classification of the entry.
» owasp2004
[integer]
false
read-only
An array of OWASP Top 10 2004 classifications of the entry.
» owasp2007
[integer]
false
read-only
An array of OWASP Top 10 2007 classifications of the entry.
» owasp2010
[integer]
false
read-only
An array of OWASP Top 10 2010 classifications of the entry.
» owasp2013
[integer]
false
read-only
An array of OWASP Top 10 2013 classifications of the entry.
» owasp2017
[integer]
false
read-only
An array of OWASP Top 10 2017 classifications of the entry.
» owasp2021
[integer]
false
read-only
The OWASP 2021 scores
» owaspMobile2024
integer(int32)
false
none
The OWASP Mobile 2024 score
» owaspApi2023
integer(int32)
false
none
The OWASP API 2023 score
» capec
[integer]
false
read-only
CAPEC classification of the entry.
» assetId
integer(int32)
true
none
The asset id
» assetName
string
false
read-only
The asset name
» potential
boolean
false
none
The finding potential. Set to true when potential false positive
» softwareComponent
string
false
read-only
The software component
» cyrating
number(double)
false
read-only
The cyrating
» cyratingDelta
number(double)
false
read-only
The cyrating delta
» exploitProbability
number(double)
false
read-only
The exploit probability
» exploitProbabilityDelta
number(double)
false
read-only
The exploit probability delta
» cyratingUpdated
string(date-time)
false
read-only
The cyrating updated date
» cyratingLastSeen
string(date-time)
false
read-only
The cyrating last seen date
» seenLastScan
boolean
false
read-only
Set to true if finding was seen in last scan
» watching
boolean
false
read-only
Whether the current user is watching this finding
» age
integer(int32)
false
read-only
The finding's age in days since creation
» assetGroupIds
[integer]
false
none
The asset group ids
» sentTo
[string]
false
read-only
A list of e-mail addresses that this finding has been sent to
» renderedName
string
false
read-only
Finding name derived from finding template
» renderedDescription
string
false
read-only
Finding description derived from finding template
» renderedCwe
integer(int32)
false
read-only
Finding CWE derived from finding template
» renderedSolution
string
false
read-only
Solution derived from finding template
» renderedRecreation
string
false
read-only
Finding recreation derived from finding template
» renderedImpact
string
false
read-only
Finding impact derived from finding template
» renderedOwaspMobile2024
integer(int32)
false
none
Finding OWASP Mobile 2024 score derived from finding template
» renderedOwaspApi2023
integer(int32)
false
none
Finding OWASP API 2023 score derived from finding template
» customerName
string
false
none
The customer name
» enabled
boolean
false
read-only
Determines if the entry is enabled or not.
» tags
[Tag ]
false
read-only
The tags
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
» bugTraq
[integer]
false
read-only
An array of Bugtraq reference IDs.
» secureCodeWarrior
SecureCodeWarrior
false
read-only
The secure code warrior information on the vulnerability description and training
»» name
string
false
none
The name of the entry.
»» description
string
false
none
Description of the entry.
»» url
string
false
none
none
» farsight
Farsight
false
read-only
The farsight concists in additional information on risk such as likelihood, threat activity
»» risk
Farsight.Risk
false
none
none
»»» score
number(float)
false
none
none
»»» delta
number(float)
false
none
none
»» updated
string(date-time)
false
none
The timestamp when the entry was updated.
»» lastThreatActivity
string(date-time)
false
none
none
» matches
[BaseMatch ]
false
read-only
The match list
»» type
string
true
none
none
»» service
Service
false
none
none
»»» name
string
true
none
The name of the entry.
»»» scheme
string
false
none
none
»»» port
integer(int32)
false
none
none
»»» protocol
string
true
none
none
»»» virtualHost
string
false
none
none
»» patternUuid
string
false
none
none
» classifications
Classification.Classifications
false
read-only
The classifications such as CAPEC, OWASP20XX
»» sans25
integer(int32)
false
none
SANS 25 classification of the entry.
»» capec
[integer]
false
none
CAPEC classification of the entry.
»» owasp2004
[integer]
false
none
An array of OWASP Top 10 2004 classifications of the entry.
»» owasp2007
[integer]
false
none
An array of OWASP Top 10 2007 classifications of the entry.
»» owasp2010
[integer]
false
none
An array of OWASP Top 10 2010 classifications of the entry.
»» owasp2013
[integer]
false
none
An array of OWASP Top 10 2013 classifications of the entry.
»» owasp2017
[integer]
false
none
An array of OWASP Top 10 2017 classifications of the entry.
»» owasp2021
[integer]
false
none
none
» ports
[Port ]
false
read-only
Ports information on the vulnerability description
»» name
string
false
none
The name of the entry.
»» port
integer(int32)
false
none
none
»» protocol
string
false
none
none
Enumerated Values
Property
Value
cvssSeverity
RECOMMENDATION
cvssSeverity
LOW
cvssSeverity
MEDIUM
cvssSeverity
HIGH
cvssSeverity
CRITICAL
cvssV2Severity
RECOMMENDATION
cvssV2Severity
LOW
cvssV2Severity
MEDIUM
cvssV2Severity
HIGH
cvssV2Severity
CRITICAL
cvssV3Severity
RECOMMENDATION
cvssV3Severity
LOW
cvssV3Severity
MEDIUM
cvssV3Severity
HIGH
cvssV3Severity
CRITICAL
customCvssV2Severity
RECOMMENDATION
customCvssV2Severity
LOW
customCvssV2Severity
MEDIUM
customCvssV2Severity
HIGH
customCvssV2Severity
CRITICAL
customCvssV3Severity
RECOMMENDATION
customCvssV3Severity
LOW
customCvssV3Severity
MEDIUM
customCvssV3Severity
HIGH
customCvssV3Severity
CRITICAL
solutionType
NOT_CLASSIFIED
solutionType
UNKNOWN
solutionType
RECONFIGURE
solutionType
WORKAROUND
solutionType
SOLUTION_IN_PROGRESS
solutionType
CONTACT_VENDOR
solutionType
UPDATE
solutionType
PATCH
solutionType
NOT_ACKNOWLEDGED
solutionType
NO_SOLUTION
solutionType
CONFIGURE_ACCOUNT
solutionType
DISABLE
solutionType
FILTER
solutionType
MALWARE
status
to review
status
to verify
status
to QA
status
to publish
status
rejected
status
present
status
accepted
status
false positive
status
pending verification
status
fixed
status
irreproducible
type
WAS
type
GATHEREDINFORMATION
type
COMPONENT
type
COMPLIANCE
type
PAC
protocol
TCP
protocol
UDP
protocol
TCP
protocol
UDP
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a finding
# You can also use wget
curl -X POST \
/rest/findings \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"checkId": 0,
"findingTemplateId": 0,
"customName": "string",
"customDescription": "string",
"customCve": "string",
"customCwe": 0,
"customBugTraq": "string",
"customSolution": "string",
"customRecreation": "string",
"customImpact": "string",
"customOwaspMobile2024": 1,
"customOwaspApi2023": 1,
"solutionPatches": [
"string"
],
"customCvssV2Vector": "string",
"customCvssV2Severity": "RECOMMENDATION",
"customCvssV3Vector": "string",
"customCvssV3Severity": "RECOMMENDATION",
"matchIds": [
0
],
"alternativeRecreation": "string",
"impact": "string",
"owaspMobile2024": 1,
"owaspApi2023": 1,
"assetId": 0,
"potential": true,
"assetGroupIds": [
0
],
"renderedOwaspMobile2024": 1,
"renderedOwaspApi2023": 1,
"customerName": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings
Body parameter
{
"customerId" : 0 ,
"checkId" : 0 ,
"findingTemplateId" : 0 ,
"customName" : "string" ,
"customDescription" : "string" ,
"customCve" : "string" ,
"customCwe" : 0 ,
"customBugTraq" : "string" ,
"customSolution" : "string" ,
"customRecreation" : "string" ,
"customImpact" : "string" ,
"customOwaspMobile2024" : 1 ,
"customOwaspApi2023" : 1 ,
"solutionPatches" : [
"string"
],
"customCvssV2Vector" : "string" ,
"customCvssV2Severity" : "RECOMMENDATION" ,
"customCvssV3Vector" : "string" ,
"customCvssV3Severity" : "RECOMMENDATION" ,
"matchIds" : [
0
],
"alternativeRecreation" : "string" ,
"impact" : "string" ,
"owaspMobile2024" : 1 ,
"owaspApi2023" : 1 ,
"assetId" : 0 ,
"potential" : true ,
"assetGroupIds" : [
0
],
"renderedOwaspMobile2024" : 1 ,
"renderedOwaspApi2023" : 1 ,
"customerName" : "string"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Finding
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete one or several findings
# You can also use wget
curl -X DELETE \
/rest/findings \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/findings" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/findings' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/findings' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /findings
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update one or several findings
# You can also use wget
curl -X PATCH \
/rest/findings \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"checkId": 0,
"findingTemplateId": 0,
"customName": "string",
"customDescription": "string",
"customCve": "string",
"customCwe": 0,
"customBugTraq": "string",
"customSolution": "string",
"customRecreation": "string",
"customImpact": "string",
"customOwaspMobile2024": 1,
"customOwaspApi2023": 1,
"solutionPatches": [
"string"
],
"customCvssV2Vector": "string",
"customCvssV2Severity": "RECOMMENDATION",
"customCvssV3Vector": "string",
"customCvssV3Severity": "RECOMMENDATION",
"matchIds": [
0
],
"alternativeRecreation": "string",
"impact": "string",
"owaspMobile2024": 1,
"owaspApi2023": 1,
"assetId": 0,
"potential": true,
"assetGroupIds": [
0
],
"renderedOwaspMobile2024": 1,
"renderedOwaspApi2023": 1,
"customerName": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/findings" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/findings' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/findings' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /findings
Body parameter
{
"customerId" : 0 ,
"checkId" : 0 ,
"findingTemplateId" : 0 ,
"customName" : "string" ,
"customDescription" : "string" ,
"customCve" : "string" ,
"customCwe" : 0 ,
"customBugTraq" : "string" ,
"customSolution" : "string" ,
"customRecreation" : "string" ,
"customImpact" : "string" ,
"customOwaspMobile2024" : 1 ,
"customOwaspApi2023" : 1 ,
"solutionPatches" : [
"string"
],
"customCvssV2Vector" : "string" ,
"customCvssV2Severity" : "RECOMMENDATION" ,
"customCvssV3Vector" : "string" ,
"customCvssV3Severity" : "RECOMMENDATION" ,
"matchIds" : [
0
],
"alternativeRecreation" : "string" ,
"impact" : "string" ,
"owaspMobile2024" : 1 ,
"owaspApi2023" : 1 ,
"assetId" : 0 ,
"potential" : true ,
"assetGroupIds" : [
0
],
"renderedOwaspMobile2024" : 1 ,
"renderedOwaspApi2023" : 1 ,
"customerName" : "string"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
body
body
Finding
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a match
# You can also use wget
curl -X PUT \
/rest/findings/{ findingId} /matches/{ matchId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/matches/{matchId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/matches/{matchId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/findings/{findingId}/matches/{matchId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/findings/{findingId}/matches/{matchId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/findings/{findingId}/matches/{matchId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /findings/{findingId}/matches/{matchId}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
matchId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a match
# You can also use wget
curl -X DELETE \
/rest/findings/{ findingId} /matches/{ matchId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/matches/{matchId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/matches/{matchId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/findings/{findingId}/matches/{matchId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/findings/{findingId}/matches/{matchId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/findings/{findingId}/matches/{matchId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /findings/{findingId}/matches/{matchId}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
matchId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get the token for downloading an attachment for a finding
# You can also use wget
curl -X GET \
/rest/findings/{ findingId} /attachments/{ attachmentId} /download \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/attachments/{attachmentId}/download ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/attachments/{attachmentId}/download ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/findings/{findingId}/attachments/{attachmentId}/download" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/findings/{findingId}/attachments/{attachmentId}/download' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/findings/{findingId}/attachments/{attachmentId}/download' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /findings/{findingId}/attachments/{attachmentId}/download
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
attachmentId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Send finding as email
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /send \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/send ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"emailAddresses": [
"string"
],
"comment": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/send ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/send" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/send' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/send' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/send
Body parameter
{
"emailAddresses" : [
"string"
],
"comment" : "string"
}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
body
body
FindingExportAsEmail
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get the attachments for a finding
# You can also use wget
curl -X GET \
/rest/findings/{ findingId} /attachments \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/attachments ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/attachments ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/findings/{findingId}/attachments" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/findings/{findingId}/attachments' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/findings/{findingId}/attachments' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /findings/{findingId}/attachments
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"findingId" : 0 ,
"type" : "OTHER" ,
"name" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Attachment ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» findingId
integer(int32)
false
read-only
none
» type
string
false
read-only
none
» name
string
false
read-only
The name of the entry.
Enumerated Values
Property
Value
type
OTHER
type
IMAGE
type
TEXT
type
VIDEO
type
ARCHIVE
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Add an attachment for a finding
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /attachments \
-H 'Content-Type: multipart/form-data' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' multipart/form-data ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/attachments ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"name": "string",
"type": "OTHER",
"file": {
"type": "string",
"parameters": {
"property1": "string",
"property2": "string"
},
"fileName": "string",
"creationDate": "2019-08-24T14:15:22Z",
"modificationDate": "2019-08-24T14:15:22Z",
"readDate": "2019-08-24T14:15:22Z",
"size": 0,
"name": "string"
}
} ' ;
const headers = {
' Content-Type ' : ' multipart/form-data ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/attachments ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "multipart/form-data" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/attachments" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'multipart/form-data' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/attachments' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'multipart/form-data' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/attachments' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/attachments
Body parameter
name : string
type : OTHER
file :
type : string
parameters :
property1 : string
property2 : string
fileName : string
creationDate : 2019-08-24T14:15:22Z
modificationDate : 2019-08-24T14:15:22Z
readDate : 2019-08-24T14:15:22Z
size : 0
name : string
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
object
false
none
» name
body
string
false
none
» type
body
string
false
none
» file
body
FormDataContentDisposition
false
none
»» type
body
string
false
none
»» parameters
body
object
false
none
»»» additionalProperties
body
string
false
none
»» fileName
body
string
false
none
»» creationDate
body
string(date-time)
false
none
»» modificationDate
body
string(date-time)
false
none
»» readDate
body
string(date-time)
false
none
»» size
body
integer(int64)
false
none
»» name
body
string
false
The name of the entry.
Enumerated Values
Parameter
Value
» type
OTHER
» type
IMAGE
» type
TEXT
» type
VIDEO
» type
ARCHIVE
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X GET \
/rest/findings/{ findingId} /comments \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/comments ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/comments ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/findings/{findingId}/comments" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/findings/{findingId}/comments' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/findings/{findingId}/comments' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /findings/{findingId}/comments
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"authorIsStaff" : true ,
"deleted" : "2019-08-24T14:15:22Z"
}
]
Status
Meaning
Description
Schema
default
Default
default response
Inline
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Comment ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» parentId
integer(int32)
false
none
The ID of the parent entry.
» comment
string
false
none
The content of the comment
» entityType
string
false
none
The type of object this comment is made for
» entityId
integer(int32)
false
none
The ID of the object this comment is made for
» supportStatus
string
false
none
Current support status of the comment
» authorIsStaff
boolean
false
read-only
Whether the comment is from Outpost24 or the customer
» deleted
string(date-time)
false
none
When the comment was deleted
Enumerated Values
Property
Value
entityType
FINDING
entityType
ASSET_GROUP
entityType
ASSET
entityType
SCAN_CONFIGURATION
entityType
SCHEDULE
entityType
SCAN
entityType
USER
entityType
ROLE
entityType
RESOURCE_GROUP
entityType
COMPLIANCE
entityType
WORKFLOW
entityType
CHECK
supportStatus
NOT_APPLICABLE
supportStatus
WAITING
supportStatus
DONE
supportStatus
INTERNAL
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /comments \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/comments ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"parentId": 0,
"comment": "string",
"entityType": "FINDING",
"entityId": 0,
"supportStatus": "NOT_APPLICABLE",
"deleted": "2019-08-24T14:15:22Z"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/comments ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/comments" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/comments' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/comments' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/comments
Body parameter
{
"customerId" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"deleted" : "2019-08-24T14:15:22Z"
}
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Comment
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get the exploits for a finding
# You can also use wget
curl -X GET \
/rest/findings/{ findingId} /exploits \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/exploits ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/exploits ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/findings/{findingId}/exploits" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/findings/{findingId}/exploits' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/findings/{findingId}/exploits' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /findings/{findingId}/exploits
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"source" : "Unknown" ,
"cve" : "string" ,
"name" : "string" ,
"created" : "2019-08-24T14:15:22Z" ,
"pack" : "string" ,
"checkId" : 0 ,
"url" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Exploit ]
false
none
none
» id
integer(int64)
false
read-only
The ID of the entry.
» source
string
false
read-only
none
» cve
string
false
read-only
none
» name
string
false
read-only
The name of the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» pack
string
false
read-only
none
» checkId
integer(int64)
false
read-only
none
» url
string
false
read-only
none
Enumerated Values
Property
Value
source
Unknown
source
Core Security
source
Immunity
source
Exploit Database
source
DSquare Security
source
Contagio
source
Metasploit
source
SAINT
source
Security Focus
source
Snort
source
Farsight
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of deltas
# You can also use wget
curl -X GET \
/rest/findings/delta \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/delta ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/delta ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/findings/delta" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/findings/delta' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/findings/delta' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /findings/delta
Parameters
Name
In
Type
Required
Description
from
query
string(date-time)
false
none
to
query
string(date-time)
false
none
findingFilter
query
string
false
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"firstSeen" : 0 ,
"lastSeen" : 0 ,
"unchanged" : 0 ,
"asset" : {
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"source" : [
"SCOUT"
],
"platform" : "string" ,
"assetIdentifierIds" : [
0
],
"assetIdentifierTypes" : [
"IP"
],
"activeSubscriptionTypes" : [
"DAST"
],
"uuid" : "string" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"compliant" : "COMPLIANT" ,
"cvssV2EnvironmentalVector" : "string" ,
"cvssV3EnvironmentalVector" : "string" ,
"customerName" : "string" ,
"enabled" : true ,
"active" : true ,
"dockerImageProperties" : {
"type" : "IP"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"assetIdentifiers" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"presentableName" : "string" ,
"type" : "IP" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"scannerId" : 0 ,
"scannerName" : "string" ,
"ownership" : 0 ,
"customOwnership" : 100 ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"source" : [
"SCOUT"
],
"links" : [
0
],
"assetIds" : [
0
],
"assetNames" : [
"string"
],
"accountIds" : [
0
],
"platform" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"properties" : {
"type" : "IP"
}
}
],
"assetGroups" : [
{
"id" : 0 ,
"name" : "string"
}
]
}
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[FindingDelta ]
false
none
none
» firstSeen
integer(int32)
false
read-only
Timestamp when the entry was seen for the first time.
» lastSeen
integer(int32)
false
read-only
Timestamp when the entry was seen last time.
» unchanged
integer(int32)
false
read-only
none
» asset
Asset
false
read-only
none
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» name
string
true
none
The name of the entry.
»» source
[string]
true
none
The asset sources
»» platform
string
false
read-only
The asset platform
»» assetIdentifierIds
[integer]
false
none
An array of asset identifier IDs associated with this entry
»» assetIdentifierTypes
[string]
false
read-only
The asset identifier types (deprecated)
»» activeSubscriptionTypes
[string]
false
read-only
The asset's active subscription types
»» uuid
string
false
read-only
The UUID of the entry.
»» firstScanId
integer(int32)
false
read-only
The id of the first scan performed on the asset
»» lastScanId
integer(int32)
false
read-only
The id of last scan performed on the asset
»» compliant
string
false
read-only
The asset compliance status
»» cvssV2EnvironmentalVector
string
false
none
The CVSS V2 environmental vector
»» cvssV3EnvironmentalVector
string
false
none
The CVSS V3 environmental vector
»» customerName
string
false
none
The customer name
»» enabled
boolean
false
none
Determines if the entry is enabled or not.
»» active
boolean
false
read-only
Determines if the entry is active or not.
»» dockerImageProperties
BaseProperties
false
none
The asset base properties
»»» type
string
true
none
none
»» tags
[Tag ]
false
read-only
The tags
»»» id
integer(int32)
false
read-only
The ID of the entry.
»»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»»» createdBy
string
false
read-only
The name of the user who created the entry.
»»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»»» key
string
true
none
none
»»» value
string
false
none
none
»»» inherited
boolean
false
read-only
none
»»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
»» assetIdentifiers
[AssetIdentifier ]
false
none
The asset links
»»» id
integer(int32)
false
read-only
The ID of the entry.
»»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»»» createdBy
string
false
read-only
The name of the user who created the entry.
»»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»»» name
string
true
none
The name of the entry.
»»» presentableName
string
false
none
none
»»» type
string
true
none
none
»»» firstSeen
string(date-time)
false
none
Timestamp when the entry was seen for the first time.
»»» lastSeen
string(date-time)
false
none
Timestamp when the entry was seen last time.
»»» scannerId
integer(int32)
false
none
none
»»» scannerName
string
false
read-only
none
»»» ownership
integer(int32)
false
read-only
none
»»» customOwnership
integer(int32)
false
none
none
»»» firstScanId
integer(int32)
false
read-only
none
»»» lastScanId
integer(int32)
false
read-only
none
»»» source
[string]
true
none
none
»»» links
[integer]
false
read-only
none
»»» assetIds
[integer]
false
none
none
»»» assetNames
[string]
false
read-only
none
»»» accountIds
[integer]
false
none
none
»»» platform
string
false
none
none
»»» tags
[Tag ]
false
read-only
[The tags]
»»» properties
BaseProperties
false
none
The asset base properties
»» assetGroups
[Asset.AssetGroup ]
false
read-only
Information of all asset groups the asset is linked to
»»» id
integer(int32)
false
none
The ID of the entry.
»»» name
string
false
none
The name of the entry.
Enumerated Values
Property
Value
compliant
COMPLIANT
compliant
NOT_COMPLIANT
compliant
COMPLIANT_WITH_EXCEPTIONS
type
IP
type
HOSTNAME
type
AWS_ACCOUNT_ID
type
AWS_INSTANCE_ID
type
AWS_REGION
type
MAC
type
NETBIOS
type
GCP_PROJECT_ID
type
MAZ_TENANT_ID
type
MAZ_SUBSCRIPTION
type
MAZ_RESOURCE_GROUP
type
MAZ_RESOURCE
type
DOCKER_REGISTRY
type
DOCKER_IMAGE
type
SEED_PATH
type
AGENT
type
SERIAL_MACHINE_ID
type
SERIAL_PRODUCT_ID
type
SERIAL_DISK_ID
type
IP
type
HOSTNAME
type
AWS_ACCOUNT_ID
type
AWS_INSTANCE_ID
type
AWS_REGION
type
MAC
type
NETBIOS
type
GCP_PROJECT_ID
type
MAZ_TENANT_ID
type
MAZ_SUBSCRIPTION
type
MAZ_RESOURCE_GROUP
type
MAZ_RESOURCE
type
DOCKER_REGISTRY
type
DOCKER_IMAGE
type
SEED_PATH
type
AGENT
type
SERIAL_MACHINE_ID
type
SERIAL_PRODUCT_ID
type
SERIAL_DISK_ID
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a delta summary
# You can also use wget
curl -X GET \
/rest/findings/delta-summary \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/delta-summary ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/delta-summary ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/findings/delta-summary" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/findings/delta-summary' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/findings/delta-summary' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /findings/delta-summary
Parameters
Name
In
Type
Required
Description
from
query
string(date-time)
false
none
to
query
string(date-time)
false
none
findingFilter
query
string
false
none
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
{
"firstSeen" : 0 ,
"lastSeen" : 0 ,
"unchanged" : 0 ,
"asset" : {
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"source" : [
"SCOUT"
],
"platform" : "string" ,
"assetIdentifierIds" : [
0
],
"assetIdentifierTypes" : [
"IP"
],
"activeSubscriptionTypes" : [
"DAST"
],
"uuid" : "string" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"compliant" : "COMPLIANT" ,
"cvssV2EnvironmentalVector" : "string" ,
"cvssV3EnvironmentalVector" : "string" ,
"customerName" : "string" ,
"enabled" : true ,
"active" : true ,
"dockerImageProperties" : {
"type" : "IP"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"assetIdentifiers" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"presentableName" : "string" ,
"type" : "IP" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"scannerId" : 0 ,
"scannerName" : "string" ,
"ownership" : 0 ,
"customOwnership" : 100 ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"source" : [
"SCOUT"
],
"links" : [
0
],
"assetIds" : [
0
],
"assetNames" : [
"string"
],
"accountIds" : [
0
],
"platform" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"properties" : {
"type" : "IP"
}
}
],
"assetGroups" : [
{
"id" : 0 ,
"name" : "string"
}
]
}
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
FindingDelta
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of solutions
# You can also use wget
curl -X GET \
/rest/findings/solutions \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/solutions ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/solutions ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/findings/solutions" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/findings/solutions' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/findings/solutions' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /findings/solutions
Parameters
Name
In
Type
Required
Description
assetIds
query
string
false
none
assetGroupIds
query
string
false
none
findingFilter
query
string
false
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"solutionUuid" : "string" ,
"solutionType" : "NOT_CLASSIFIED" ,
"solution" : "string" ,
"solutionProduct" : "string" ,
"solutionTitle" : "string" ,
"riskCount" : 0 ,
"assetCount" : 0 ,
"severityCount" : {
"critical" : 0 ,
"high" : 0 ,
"medium" : 0 ,
"low" : 0 ,
"recommendation" : 0
}
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[FindingSolution ]
false
none
none
» solutionUuid
string
false
read-only
none
» solutionType
string
false
read-only
none
» solution
string
false
read-only
none
» solutionProduct
string
false
read-only
none
» solutionTitle
string
false
read-only
none
» riskCount
integer(int32)
false
read-only
none
» assetCount
integer(int32)
false
read-only
none
» severityCount
FindingSolution.SeverityCount
false
read-only
none
»» critical
integer(int32)
false
none
none
»» high
integer(int32)
false
none
none
»» medium
integer(int32)
false
none
none
»» low
integer(int32)
false
none
none
»» recommendation
integer(int32)
false
none
none
Enumerated Values
Property
Value
solutionType
NOT_CLASSIFIED
solutionType
UNKNOWN
solutionType
RECONFIGURE
solutionType
WORKAROUND
solutionType
SOLUTION_IN_PROGRESS
solutionType
CONTACT_VENDOR
solutionType
UPDATE
solutionType
PATCH
solutionType
NOT_ACKNOWLEDGED
solutionType
NO_SOLUTION
solutionType
CONFIGURE_ACCOUNT
solutionType
DISABLE
solutionType
FILTER
solutionType
MALWARE
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Log the request to Secure Code Warrior
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /secure-code-warrior \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/secure-code-warrior ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/secure-code-warrior ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/secure-code-warrior" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/secure-code-warrior' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/secure-code-warrior' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/secure-code-warrior
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Mark finding as false positive
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /mark-false-positive \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/mark-false-positive ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"falsePositiveComment": "string",
"sendInfo": true,
"clarificationRequestComment": "string",
"sendBlueprint": true
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/mark-false-positive ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/mark-false-positive" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/mark-false-positive' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/mark-false-positive' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/mark-false-positive
Body parameter
{
"falsePositiveComment" : "string" ,
"sendInfo" : true ,
"clarificationRequestComment" : "string" ,
"sendBlueprint" : true
}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
body
body
FindingFalsePositive
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Mark one or several finding(s) as false positives
# You can also use wget
curl -X POST \
/rest/findings/mark-false-positive \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/mark-false-positive ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"falsePositiveComment": "string",
"sendInfo": true,
"clarificationRequestComment": "string",
"sendBlueprint": true
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/mark-false-positive ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/mark-false-positive" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/mark-false-positive' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/mark-false-positive' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/mark-false-positive
Body parameter
{
"falsePositiveComment" : "string" ,
"sendInfo" : true ,
"clarificationRequestComment" : "string" ,
"sendBlueprint" : true
}
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
body
body
FindingFalsePositive
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Mark finding as fixed
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /mark-fixed \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/mark-fixed ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/mark-fixed ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/mark-fixed" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/mark-fixed' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/mark-fixed' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/mark-fixed
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Mark one or several findings as fixed
# You can also use wget
curl -X POST \
/rest/findings/mark-fixed \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/mark-fixed ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/mark-fixed ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/mark-fixed" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/mark-fixed' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/mark-fixed' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/mark-fixed
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Mark finding as irreproducible
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /mark-irreproducible \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/mark-irreproducible ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/mark-irreproducible ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/mark-irreproducible" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/mark-irreproducible' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/mark-irreproducible' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/mark-irreproducible
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Mark one or several findings as irreproducible
# You can also use wget
curl -X POST \
/rest/findings/mark-irreproducible \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/mark-irreproducible ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/mark-irreproducible ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/mark-irreproducible" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/mark-irreproducible' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/mark-irreproducible' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/mark-irreproducible
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/findings/{ findingId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/findings/{findingId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/findings/{findingId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/findings/{findingId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /findings/{findingId}/tags
Body parameter
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/findings/tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/findings/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/findings/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/findings/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /findings/tags
Body parameter
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Publish finding (set as present)
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /publish \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/publish ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/publish ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/publish" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/publish' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/publish' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/publish
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Set finding as rejected
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /reject \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/reject ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/reject ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/reject" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/reject' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/reject' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/reject
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Request clarification for a finding
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /request-clarification \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/request-clarification ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"clarificationRequestComment": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/request-clarification ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/request-clarification" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/request-clarification' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/request-clarification' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/request-clarification
Body parameter
{
"clarificationRequestComment" : "string"
}
Parameters
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Mark finding as pending verification
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /request-verification \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/request-verification ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"verificationRequestComment": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/request-verification ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/request-verification" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/request-verification' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/request-verification' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/request-verification
Body parameter
{
"verificationRequestComment" : "string"
}
Parameters
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Mark one or several findings as pending for verification
# You can also use wget
curl -X POST \
/rest/findings/request-verification \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/request-verification ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"verificationRequestComment": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/request-verification ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/request-verification" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/request-verification' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/request-verification' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/request-verification
Body parameter
{
"verificationRequestComment" : "string"
}
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
body
body
FindingVerificationRequest
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Reset status of finding to 'PRESENT'
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /reset-status \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/reset-status ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/reset-status ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/reset-status" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/reset-status' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/reset-status' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/reset-status
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Reset status on one or several findings to 'PRESENT
# You can also use wget
curl -X POST \
/rest/findings/reset-status \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/reset-status ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/reset-status ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/reset-status" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/reset-status' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/reset-status' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/reset-status
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Accept finding
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /accept \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/accept ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"acceptedUntil": "2019-08-24T14:15:22Z",
"acceptedComment": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/accept ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/accept" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/accept' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/accept' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/accept
Body parameter
{
"acceptedUntil" : "2019-08-24T14:15:22Z" ,
"acceptedComment" : "string"
}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
body
body
FindingAccept
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Accept one or several findings
# You can also use wget
curl -X POST \
/rest/findings/accept \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/accept ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"acceptedUntil": "2019-08-24T14:15:22Z",
"acceptedComment": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/accept ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/accept" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/accept' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/accept' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/accept
Body parameter
{
"acceptedUntil" : "2019-08-24T14:15:22Z" ,
"acceptedComment" : "string"
}
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
body
body
FindingAccept
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Set finding as quality assured
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /quality-assure \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/quality-assure ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/quality-assure ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/quality-assure" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/quality-assure' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/quality-assure' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/quality-assure
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Set finding as reviewed and transition to be verified
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /review \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/review ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/review ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/review" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/review' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/review' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/review
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Set finding as verified and transitioned to be quality assured
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /verify \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/verify ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/verify ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/verify" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/verify' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/verify' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/verify
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Unwatch a finding
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /unwatch \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/unwatch ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/unwatch ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/unwatch" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/unwatch' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/unwatch' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/unwatch
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Unwatch one or several findings
# You can also use wget
curl -X POST \
/rest/findings/unwatch \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/unwatch ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/unwatch ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/unwatch" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/unwatch' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/unwatch' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/unwatch
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Watch a finding
# You can also use wget
curl -X POST \
/rest/findings/{ findingId} /watch \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/{findingId}/watch ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/{findingId}/watch ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/{findingId}/watch" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/{findingId}/watch' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/{findingId}/watch' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/{findingId}/watch
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Watch one or several findings
# You can also use wget
curl -X POST \
/rest/findings/watch \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/findings/watch ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/findings/watch ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/findings/watch" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/findings/watch' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/findings/watch' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /findings/watch
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Globals
Get global settings
# You can also use wget
curl -X GET \
/rest/globals \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/globals ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/globals ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/globals" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/globals' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/globals' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /globals
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"awsAccountId" : "string" ,
"appliance" : true ,
"awsAccessKeyAllowRemote" : true
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Globals
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of timezones
# You can also use wget
curl -X GET \
/rest/globals/timezones \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/globals/timezones ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/globals/timezones ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/globals/timezones" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/globals/timezones' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/globals/timezones' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /globals/timezones
Parameters
Name
In
Type
Required
Description
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
The above code returns response like this:
default Response
[
{
"name" : "string" ,
"gmtOffset" : 0
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Timezone ]
false
none
none
» name
string
true
none
The name of the entry.
» gmtOffset
number(double)
true
none
none
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Integrations
Authorization
# You can also use wget
curl -X GET \
/rest/integrations/authorization?code= string \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/integrations/authorization ' ,
method : ' get ' ,
data : ' ?code=string ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/integrations/authorization?code=string ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "text/plain" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/integrations/authorization" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'text/plain' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/integrations/authorization' , params = {
'code' : 'string'
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/integrations/authorization' ,
params: {
'code' => 'string'
}, headers: headers
p JSON . parse ( result )
GET /integrations/authorization
Parameters
Name
In
Type
Required
Description
code
query
string
true
none
error
query
string
false
none
error_description
query
string
false
none
state
query
string
false
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Authorize an integration based on OAuth 2.0
# You can also use wget
curl -X GET \
/rest/integrations/{ integrationId} /authorize \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/integrations/{integrationId}/authorize ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/integrations/{integrationId}/authorize ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "text/plain" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/integrations/{integrationId}/authorize" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'text/plain' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/integrations/{integrationId}/authorize' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/integrations/{integrationId}/authorize' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /integrations/{integrationId}/authorize
Parameters
Name
In
Type
Required
Description
integrationId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get an integration
# You can also use wget
curl -X GET \
/rest/integrations/{ integrationId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/integrations/{integrationId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/integrations/{integrationId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/integrations/{integrationId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/integrations/{integrationId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/integrations/{integrationId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /integrations/{integrationId}
Parameters
Name
In
Type
Required
Description
integrationId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"type" : "OBJECT_STORAGE" ,
"verified" : "2019-08-24T14:15:22Z" ,
"verifiedBy" : "string" ,
"verifiedById" : 0 ,
"verifyStatus" : true ,
"configuration" : {
"type" : "OBJECT_STORAGE"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Integration
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete an integration
# You can also use wget
curl -X DELETE \
/rest/integrations/{ integrationId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/integrations/{integrationId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/integrations/{integrationId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/integrations/{integrationId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/integrations/{integrationId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/integrations/{integrationId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /integrations/{integrationId}
Parameters
Name
In
Type
Required
Description
integrationId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update an integration
# You can also use wget
curl -X PATCH \
/rest/integrations/{ integrationId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/integrations/{integrationId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"configuration": {
"type": "OBJECT_STORAGE"
}
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/integrations/{integrationId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/integrations/{integrationId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/integrations/{integrationId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/integrations/{integrationId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /integrations/{integrationId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"configuration" : {
"type" : "OBJECT_STORAGE"
}
}
Parameters
Name
In
Type
Required
Description
integrationId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Integration
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/integrations/{ integrationId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/integrations/{integrationId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/integrations/{integrationId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/integrations/{integrationId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/integrations/{integrationId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/integrations/{integrationId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /integrations/{integrationId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
integrationId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/integrations/{ integrationId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/integrations/{integrationId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/integrations/{integrationId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/integrations/{integrationId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/integrations/{integrationId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/integrations/{integrationId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /integrations/{integrationId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
integrationId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of integrations
# You can also use wget
curl -X GET \
/rest/integrations \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/integrations ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/integrations ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/integrations" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/integrations' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/integrations' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /integrations
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"type" : "OBJECT_STORAGE" ,
"verified" : "2019-08-24T14:15:22Z" ,
"verifiedBy" : "string" ,
"verifiedById" : 0 ,
"verifyStatus" : true ,
"configuration" : {
"type" : "OBJECT_STORAGE"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Integration ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» type
string
false
read-only
none
» verified
string(date-time)
false
read-only
none
» verifiedBy
string
false
read-only
none
» verifiedById
integer(int32)
false
read-only
none
» verifyStatus
boolean
false
read-only
none
» configuration
BaseIntegrationConfiguration
true
none
none
»» type
string
true
none
none
» tags
[Tag ]
false
read-only
[The tags]
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
Enumerated Values
Property
Value
type
OBJECT_STORAGE
type
AGENT
type
ENCRYPTION_SERVICE
type
EMAIL
type
WEBHOOK
type
LOG
type
SYSLOG
type
SNMP
type
CYBERARK
type
DELINEA
type
NOTIFICATION
type
OBJECT_STORAGE
type
AGENT
type
ENCRYPTION_SERVICE
type
EMAIL
type
WEBHOOK
type
LOG
type
SYSLOG
type
SNMP
type
CYBERARK
type
DELINEA
type
NOTIFICATION
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create an integration
# You can also use wget
curl -X POST \
/rest/integrations \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/integrations ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"configuration": {
"type": "OBJECT_STORAGE"
}
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/integrations ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/integrations" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/integrations' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/integrations' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /integrations
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"configuration" : {
"type" : "OBJECT_STORAGE"
}
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Integration
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/integrations \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/integrations ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/integrations ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/integrations" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/integrations' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/integrations' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /integrations
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/integrations/{ integrationId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/integrations/{integrationId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/integrations/{integrationId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/integrations/{integrationId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/integrations/{integrationId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/integrations/{integrationId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /integrations/{integrationId}/tags
Body parameter
Name
In
Type
Required
Description
integrationId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Verify the integration connectivity
# You can also use wget
curl -X POST \
/rest/integrations/{ integrationId} /verify \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/integrations/{integrationId}/verify ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/integrations/{integrationId}/verify ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/integrations/{integrationId}/verify" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/integrations/{integrationId}/verify' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/integrations/{integrationId}/verify' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /integrations/{integrationId}/verify
Parameters
Name
In
Type
Required
Description
integrationId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Managed report groups
Get a managed report group (Deprecated: 2019-12-11)
# You can also use wget
curl -X GET \
/rest/managed-report-groups/{ managedReportGroupId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/managed-report-groups/{managedReportGroupId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/managed-report-groups/{managedReportGroupId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/managed-report-groups/{managedReportGroupId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/managed-report-groups/{managedReportGroupId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/managed-report-groups/{managedReportGroupId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /managed-report-groups/{managedReportGroupId}
Parameters
Name
In
Type
Required
Description
managedReportGroupId
path
integer(int64)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"userId" : 0 ,
"name" : "string" ,
"parentId" : 0 ,
"updated" : "2019-08-24T14:15:22Z" ,
"created" : "2019-08-24T14:15:22Z" ,
"count" : 0
}
Responses
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of managed report groups (Deprecated: 2019-12-11)
# You can also use wget
curl -X GET \
/rest/managed-report-groups \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/managed-report-groups ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/managed-report-groups ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/managed-report-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/managed-report-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/managed-report-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /managed-report-groups
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"userId" : 0 ,
"name" : "string" ,
"parentId" : 0 ,
"updated" : "2019-08-24T14:15:22Z" ,
"created" : "2019-08-24T14:15:22Z" ,
"count" : 0
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ManagedReportGroup ]
false
none
none
» id
integer(int64)
false
read-only
The ID of the entry.
» userId
integer(int64)
false
read-only
none
» name
string
true
none
The name of the entry.
» parentId
integer(int64)
false
none
The ID of the parent entry.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» count
integer(int64)
false
read-only
The total number of entries associated with this entry and its child entries.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/managed-report-groups \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/managed-report-groups ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/managed-report-groups ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/managed-report-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/managed-report-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/managed-report-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /managed-report-groups
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Managed reports
Get a managed report
# You can also use wget
curl -X GET \
/rest/managed-reports/{ managedReportId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/managed-reports/{managedReportId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/managed-reports/{managedReportId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/managed-reports/{managedReportId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/managed-reports/{managedReportId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/managed-reports/{managedReportId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /managed-reports/{managedReportId}
Parameters
Name
In
Type
Required
Description
managedReportId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"size" : 0 ,
"lastDownloaded" : "2019-08-24T14:15:22Z" ,
"lastDownloadedBy" : "string" ,
"uuid" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
ManagedReport
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a managed report
# You can also use wget
curl -X DELETE \
/rest/managed-reports/{ managedReportId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/managed-reports/{managedReportId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/managed-reports/{managedReportId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/managed-reports/{managedReportId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/managed-reports/{managedReportId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/managed-reports/{managedReportId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /managed-reports/{managedReportId}
Parameters
Name
In
Type
Required
Description
managedReportId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a managed report
# You can also use wget
curl -X PATCH \
/rest/managed-reports/{ managedReportId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/managed-reports/{managedReportId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/managed-reports/{managedReportId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/managed-reports/{managedReportId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/managed-reports/{managedReportId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/managed-reports/{managedReportId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /managed-reports/{managedReportId}
Body parameter
{
"customerId" : 0 ,
"name" : "string"
}
Parameters
Name
In
Type
Required
Description
managedReportId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ManagedReport
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/managed-reports/{ managedReportId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/managed-reports/{managedReportId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/managed-reports/{managedReportId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/managed-reports/{managedReportId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/managed-reports/{managedReportId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/managed-reports/{managedReportId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /managed-reports/{managedReportId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
managedReportId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/managed-reports/{ managedReportId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/managed-reports/{managedReportId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/managed-reports/{managedReportId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/managed-reports/{managedReportId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/managed-reports/{managedReportId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/managed-reports/{managedReportId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /managed-reports/{managedReportId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
managedReportId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get the token for downloading a managed report
# You can also use wget
curl -X GET \
/rest/managed-reports/{ managedReportId} /download \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/managed-reports/{managedReportId}/download ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/managed-reports/{managedReportId}/download ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/managed-reports/{managedReportId}/download" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/managed-reports/{managedReportId}/download' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/managed-reports/{managedReportId}/download' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /managed-reports/{managedReportId}/download
Parameters
Name
In
Type
Required
Description
managedReportId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of managed reports
# You can also use wget
curl -X GET \
/rest/managed-reports \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/managed-reports ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/managed-reports ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/managed-reports" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/managed-reports' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/managed-reports' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /managed-reports
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"size" : 0 ,
"lastDownloaded" : "2019-08-24T14:15:22Z" ,
"lastDownloadedBy" : "string" ,
"uuid" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ManagedReport ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» size
integer(int32)
false
read-only
none
» lastDownloaded
string(date-time)
false
read-only
none
» lastDownloadedBy
string
false
read-only
none
» uuid
string
false
read-only
The UUID of the entry.
» tags
[Tag ]
false
read-only
[The tags]
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a managed report
# You can also use wget
curl -X POST \
/rest/managed-reports \
-H 'Content-Type: multipart/form-data' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' multipart/form-data ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/managed-reports ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"name": "string",
"file": {
"type": "string",
"parameters": {
"property1": "string",
"property2": "string"
},
"fileName": "string",
"creationDate": "2019-08-24T14:15:22Z",
"modificationDate": "2019-08-24T14:15:22Z",
"readDate": "2019-08-24T14:15:22Z",
"size": 0,
"name": "string"
}
} ' ;
const headers = {
' Content-Type ' : ' multipart/form-data ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/managed-reports ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "multipart/form-data" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/managed-reports" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'multipart/form-data' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/managed-reports' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'multipart/form-data' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/managed-reports' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /managed-reports
Body parameter
name : string
file :
type : string
parameters :
property1 : string
property2 : string
fileName : string
creationDate : 2019-08-24T14:15:22Z
modificationDate : 2019-08-24T14:15:22Z
readDate : 2019-08-24T14:15:22Z
size : 0
name : string
Parameters
Name
In
Type
Required
Description
body
body
object
false
none
» name
body
string
false
none
» file
body
FormDataContentDisposition
false
none
»» type
body
string
false
none
»» parameters
body
object
false
none
»»» additionalProperties
body
string
false
none
»» fileName
body
string
false
none
»» creationDate
body
string(date-time)
false
none
»» modificationDate
body
string(date-time)
false
none
»» readDate
body
string(date-time)
false
none
»» size
body
integer(int64)
false
none
»» name
body
string
false
The name of the entry.
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/managed-reports \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/managed-reports ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/managed-reports ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/managed-reports" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/managed-reports' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/managed-reports' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /managed-reports
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X GET \
/rest/managed-reports/tags \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/managed-reports/tags ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/managed-reports/tags ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/managed-reports/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/managed-reports/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/managed-reports/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /managed-reports/tags
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
Status
Meaning
Description
Schema
default
Default
default response
Inline
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Tag ]
false
none
[The tags]
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» key
string
true
none
none
» value
string
false
none
none
» inherited
boolean
false
read-only
none
» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/managed-reports/{ managedReportId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/managed-reports/{managedReportId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/managed-reports/{managedReportId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/managed-reports/{managedReportId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/managed-reports/{managedReportId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/managed-reports/{managedReportId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /managed-reports/{managedReportId}/tags
Body parameter
Name
In
Type
Required
Description
managedReportId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Upload a managed report from HIAB
# You can also use wget
curl -X POST \
/rest/managed-reports/upload \
-H 'Content-Type: multipart/form-data' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' multipart/form-data ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/managed-reports/upload ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"key": "string",
"name": "string",
"tags": "string",
"file": {
"type": "string",
"parameters": {
"property1": "string",
"property2": "string"
},
"fileName": "string",
"creationDate": "2019-08-24T14:15:22Z",
"modificationDate": "2019-08-24T14:15:22Z",
"readDate": "2019-08-24T14:15:22Z",
"size": 0,
"name": "string"
}
} ' ;
const headers = {
' Content-Type ' : ' multipart/form-data ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/managed-reports/upload ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "multipart/form-data" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/managed-reports/upload" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'multipart/form-data' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/managed-reports/upload' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'multipart/form-data' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/managed-reports/upload' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /managed-reports/upload
Body parameter
key : string
name : string
tags : string
file :
type : string
parameters :
property1 : string
property2 : string
fileName : string
creationDate : 2019-08-24T14:15:22Z
modificationDate : 2019-08-24T14:15:22Z
readDate : 2019-08-24T14:15:22Z
size : 0
name : string
Parameters
Name
In
Type
Required
Description
body
body
object
false
none
» key
body
string
false
none
» name
body
string
false
none
» tags
body
string
false
none
» file
body
FormDataContentDisposition
false
none
»» type
body
string
false
none
»» parameters
body
object
false
none
»»» additionalProperties
body
string
false
none
»» fileName
body
string
false
none
»» creationDate
body
string(date-time)
false
none
»» modificationDate
body
string(date-time)
false
none
»» readDate
body
string(date-time)
false
none
»» size
body
integer(int64)
false
none
»» name
body
string
false
The name of the entry.
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Matches
Get a match
# You can also use wget
curl -X GET \
/rest/matches/{ matchId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/matches/{matchId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/matches/{matchId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/matches/{matchId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/matches/{matchId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/matches/{matchId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /matches/{matchId}
Parameters
Name
In
Type
Required
Description
matchId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"assetId" : 0 ,
"type" : "WAS" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"findingIds" : [
0
],
"source" : [
"SCOUT"
],
"subscriptionType" : "DAST" ,
"match" : {
"type" : "WAS" ,
"service" : {
"name" : "string" ,
"scheme" : "string" ,
"port" : 0 ,
"protocol" : "TCP" ,
"virtualHost" : "string"
},
"patternUuid" : "string"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Match
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a match
# You can also use wget
curl -X DELETE \
/rest/matches/{ matchId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/matches/{matchId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/matches/{matchId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/matches/{matchId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/matches/{matchId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/matches/{matchId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /matches/{matchId}
Parameters
Name
In
Type
Required
Description
matchId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a match
# You can also use wget
curl -X PATCH \
/rest/matches/{ matchId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/matches/{matchId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"assetId": 0,
"type": "WAS",
"firstSeen": "2019-08-24T14:15:22Z",
"lastSeen": "2019-08-24T14:15:22Z",
"source": [
"SCOUT"
],
"subscriptionType": "DAST"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/matches/{matchId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/matches/{matchId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/matches/{matchId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/matches/{matchId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /matches/{matchId}
Body parameter
{
"customerId" : 0 ,
"assetId" : 0 ,
"type" : "WAS" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"source" : [
"SCOUT"
],
"subscriptionType" : "DAST"
}
Parameters
Name
In
Type
Required
Description
matchId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Match
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of matches
# You can also use wget
curl -X GET \
/rest/matches \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/matches ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/matches ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/matches" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/matches' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/matches' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /matches
Matches are the most atomic elements composing findings. A match is an output from the scanner describing a state that has been detected on the scanned asset.
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"assetId" : 0 ,
"type" : "WAS" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"findingIds" : [
0
],
"source" : [
"SCOUT"
],
"subscriptionType" : "DAST" ,
"match" : {
"type" : "WAS" ,
"service" : {
"name" : "string" ,
"scheme" : "string" ,
"port" : 0 ,
"protocol" : "TCP" ,
"virtualHost" : "string"
},
"patternUuid" : "string"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Match ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» assetId
integer(int32)
true
none
none
» type
string
true
none
none
» firstSeen
string(date-time)
true
none
Timestamp when the entry was seen for the first time.
» lastSeen
string(date-time)
true
none
Timestamp when the entry was seen last time.
» firstScanId
integer(int32)
false
read-only
none
» lastScanId
integer(int32)
false
read-only
none
» findingIds
[integer]
false
read-only
none
» source
[string]
true
none
none
» subscriptionType
string
false
none
none
» match
BaseMatch
false
read-only
The match list
»» type
string
true
none
none
»» service
Service
false
none
none
»»» name
string
true
none
The name of the entry.
»»» scheme
string
false
none
none
»»» port
integer(int32)
false
none
none
»»» protocol
string
true
none
none
»»» virtualHost
string
false
none
none
»» patternUuid
string
false
none
none
» tags
[Tag ]
false
read-only
[The tags]
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
Enumerated Values
Property
Value
type
WAS
type
GATHEREDINFORMATION
type
COMPONENT
type
COMPLIANCE
type
PAC
subscriptionType
DAST
subscriptionType
SCALE
subscriptionType
SCOUT
subscriptionType
SNAPSHOT
subscriptionType
ASSURE
subscriptionType
DAST_EXPERT
subscriptionType
VERIFY
subscriptionType
SWAT
subscriptionType
CLOUDSEC
subscriptionType
NETSEC
subscriptionType
CONSUMPTION
type
WAS
type
GATHEREDINFORMATION
type
COMPONENT
type
COMPLIANCE
type
PAC
protocol
TCP
protocol
UDP
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a match
# You can also use wget
curl -X POST \
/rest/matches \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/matches ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"assetId": 0,
"type": "WAS",
"firstSeen": "2019-08-24T14:15:22Z",
"lastSeen": "2019-08-24T14:15:22Z",
"source": [
"SCOUT"
],
"subscriptionType": "DAST"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/matches ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/matches" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/matches' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/matches' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /matches
Body parameter
{
"customerId" : 0 ,
"assetId" : 0 ,
"type" : "WAS" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"source" : [
"SCOUT"
],
"subscriptionType" : "DAST"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Match
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/matches \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/matches ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/matches ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/matches" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/matches' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/matches' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /matches
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Notifications
Get a notification
# You can also use wget
curl -X GET \
/rest/notifications/{ notificationId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/notifications/{notificationId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/notifications/{notificationId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/notifications/{notificationId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/notifications/{notificationId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/notifications/{notificationId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /notifications/{notificationId}
Parameters
Name
In
Type
Required
Description
notificationId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"userId" : 0 ,
"subUserId" : 0 ,
"eventSubscriptionId" : 0 ,
"read" : "2019-08-24T14:15:22Z" ,
"content" : {
"subject" : "string" ,
"message" : "string" ,
"trigger" : "SCHEDULE_CREATED" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"subEntityType" : "COMMENT" ,
"subEntityId" : 0
}
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Notification
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of notifications
# You can also use wget
curl -X GET \
/rest/notifications \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/notifications ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/notifications ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/notifications" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/notifications' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/notifications' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /notifications
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"userId" : 0 ,
"subUserId" : 0 ,
"eventSubscriptionId" : 0 ,
"read" : "2019-08-24T14:15:22Z" ,
"content" : {
"subject" : "string" ,
"message" : "string" ,
"trigger" : "SCHEDULE_CREATED" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"subEntityType" : "COMMENT" ,
"subEntityId" : 0
}
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Notification ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» userId
integer(int64)
false
none
none
» subUserId
integer(int64)
false
none
none
» eventSubscriptionId
integer(int32)
false
none
none
» read
string(date-time)
false
none
none
» content
Notification.Content
false
none
none
»» subject
string
true
none
none
»» message
string
false
none
none
»» trigger
string
true
none
none
»» entityType
string
false
none
none
»» entityId
integer(int32)
false
none
none
»» subEntityType
string
false
none
none
»» subEntityId
integer(int32)
false
none
none
Enumerated Values
Property
Value
trigger
SCHEDULE_CREATED
trigger
SCHEDULE_DELETED
trigger
SCHEDULE_MODIFIED
trigger
SCHEDULE_SCHEDULED
trigger
CONFIGURATION_CREATED
trigger
CONFIGURATION_DELETED
trigger
CONFIGURATION_MODIFIED
trigger
CONFIGURATION_STARTED
trigger
CONFIGURATION_DONE
trigger
SCAN_STARTED
trigger
SCAN_STOPPED
trigger
SCAN_DONE
trigger
ASSET_NOT_RECENTLY_SEEN
trigger
ASSET_SEEN
trigger
ASSET_CREATED
trigger
ASSET_DELETED
trigger
ASSET_MODIFIED
trigger
FINDING_SEEN
trigger
FINDING_CREATED
trigger
FINDING_MODIFIED
trigger
FINDING_STATUS_TRANSITIONED
trigger
FINDING_RISK_ACCEPTED_EXPIRATION
trigger
WATCHED_FINDING_UPDATED
trigger
USER_CREATED
trigger
USER_DELETED
trigger
USER_MODIFIED
trigger
USER_LOGIN_ATTEMPT
trigger
USER_PASSWORD_RESET
trigger
ROLE_CREATED
trigger
ROLE_DELETED
trigger
ROLE_MODIFIED
trigger
RESOURCE_GROUP_CREATED
trigger
RESOURCE_GROUP_DELETED
trigger
RESOURCE_GROUP_MODIFIED
trigger
NEW_RELEASE_NOTES
trigger
HIAB_SCANNER_MISSING
trigger
HIAB_UPDATE_DONE
trigger
HIAB_UPDATE_FAILED
trigger
HIAB_BACKUP_DONE
trigger
HIAB_BACKUP_FAILED
trigger
HIAB_MAINTENANCE_PLAN_DONE
trigger
HIAB_DISK_USAGE_HIGH
trigger
HIAB_REBOOTED
trigger
HIAB_REMOTE_SUPPORT
trigger
OUTSCAN_CONSULTANCY
trigger
CONSUMPTION_ABSOLUTE
trigger
CONSUMPTION_RELATIVE
trigger
WORKFLOW_CREATED
trigger
WORKFLOW_DELETED
trigger
WORKFLOW_MODIFIED
trigger
WORKFLOW_STARTED
trigger
WORKFLOW_DONE
trigger
COMPLIANCE_CREATED
trigger
COMPLIANCE_MODIFIED
trigger
COMPLIANCE_RISK_EXCEPTION
trigger
COMPLIANCE_RISK_EXCEPTION_EXPIRATION
trigger
COMMENT_CREATED
trigger
EXECUTIVE_SUMMARY_UPDATED
trigger
ACTIVITY_FEED_UPDATED
trigger
ASSET_GROUP_CREATED
trigger
ASSET_GROUP_DELETED
trigger
ASSET_GROUP_MODIFIED
entityType
FINDING
entityType
ASSET_GROUP
entityType
ASSET
entityType
SCAN_CONFIGURATION
entityType
SCHEDULE
entityType
SCAN
entityType
USER
entityType
ROLE
entityType
RESOURCE_GROUP
entityType
COMPLIANCE
entityType
WORKFLOW
entityType
CHECK
subEntityType
COMMENT
subEntityType
ATTACHMENT
subEntityType
ACTIVITY
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/notifications \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/notifications ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/notifications ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/notifications" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/notifications' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/notifications' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /notifications
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Mark a notification as read
# You can also use wget
curl -X POST \
/rest/notifications/{ notificationId} /mark-as-read \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/notifications/{notificationId}/mark-as-read ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/notifications/{notificationId}/mark-as-read ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/notifications/{notificationId}/mark-as-read" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/notifications/{notificationId}/mark-as-read' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/notifications/{notificationId}/mark-as-read' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /notifications/{notificationId}/mark-as-read
Parameters
Name
In
Type
Required
Description
notificationId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Mark a notification as unread
# You can also use wget
curl -X POST \
/rest/notifications/{ notificationId} /mark-as-unread \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/notifications/{notificationId}/mark-as-unread ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/notifications/{notificationId}/mark-as-unread ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/notifications/{notificationId}/mark-as-unread" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/notifications/{notificationId}/mark-as-unread' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/notifications/{notificationId}/mark-as-unread' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /notifications/{notificationId}/mark-as-unread
Parameters
Name
In
Type
Required
Description
notificationId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Organizations
Get an organization
# You can also use wget
curl -X GET \
/rest/organizations/{ organizationId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/organizations/{organizationId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/organizations/{organizationId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/organizations/{organizationId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/organizations/{organizationId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/organizations/{organizationId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /organizations/{organizationId}
Parameters
Name
In
Type
Required
Description
organizationId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"uuid" : "string" ,
"name" : "string"
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Organization
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of organizations
# You can also use wget
curl -X GET \
/rest/organizations \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/organizations ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/organizations ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/organizations" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/organizations' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/organizations' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /organizations
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"uuid" : "string" ,
"name" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Organization ]
false
none
none
» id
integer(int64)
false
read-only
The ID of the entry.
» uuid
string
false
read-only
The UUID of the entry.
» name
string
false
read-only
The name of the entry.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/organizations \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/organizations ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/organizations ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/organizations" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/organizations' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/organizations' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /organizations
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Outscan findings
Get the exploits for a finding
# You can also use wget
curl -X GET \
/rest/outscan/findings/{ findingId} /exploits \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/findings/{findingId}/exploits ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/findings/{findingId}/exploits ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/outscan/findings/{findingId}/exploits" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/outscan/findings/{findingId}/exploits' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/outscan/findings/{findingId}/exploits' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /outscan/findings/{findingId}/exploits
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int64)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"source" : "Unknown" ,
"cve" : "string" ,
"name" : "string" ,
"created" : "2019-08-24T14:15:22Z" ,
"pack" : "string" ,
"checkId" : 0 ,
"url" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Exploit ]
false
none
none
» id
integer(int64)
false
read-only
The ID of the entry.
» source
string
false
read-only
none
» cve
string
false
read-only
none
» name
string
false
read-only
The name of the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» pack
string
false
read-only
none
» checkId
integer(int64)
false
read-only
none
» url
string
false
read-only
none
Enumerated Values
Property
Value
source
Unknown
source
Core Security
source
Immunity
source
Exploit Database
source
DSquare Security
source
Contagio
source
Metasploit
source
SAINT
source
Security Focus
source
Snort
source
Farsight
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a finding by ID
# You can also use wget
curl -X GET \
/rest/outscan/findings/{ findingId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/findings/{findingId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/findings/{findingId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/outscan/findings/{findingId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/outscan/findings/{findingId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/outscan/findings/{findingId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /outscan/findings/{findingId}
Parameters
Name
In
Type
Required
Description
findingId
path
integer(int64)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"scanJobId" : 0 ,
"scanLogId" : 0 ,
"scheduleId" : 0 ,
"templateId" : 0 ,
"cvssScore" : 0 ,
"cvssV3Score" : 0 ,
"cvssV3Severity" : "RECOMMENDATION" ,
"cvssV3Vector" : "string" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"reportDate" : "2019-08-24T14:15:22Z" ,
"targetId" : 0 ,
"target" : "string" ,
"hostname" : "string" ,
"port" : 0 ,
"protocol" : 0 ,
"name" : "string" ,
"source" : [
"SCOUT"
],
"cve" : "string" ,
"vulnId" : 0 ,
"isNew" : true ,
"previouslyDetected" : true ,
"type" : "string" ,
"isPotentialFalsePositive" : true ,
"productName" : "string" ,
"productUrl" : "string" ,
"solutionProduct" : "string" ,
"checkCreated" : "2019-08-24T14:15:22Z" ,
"hasExploits" : true ,
"solution" : "string" ,
"businessCriticality" : "LOW" ,
"assetBusinessCriticality" : "LOW" ,
"solutionTitle" : "string" ,
"created" : "2019-08-24T14:15:22Z" ,
"cyrating" : 0 ,
"cyratingDelta" : 0 ,
"cyratingUpdated" : "2019-08-24T14:15:22Z" ,
"cyratingLastSeen" : "2019-08-24T14:15:22Z" ,
"exploitProbability" : 0 ,
"exploitProbabilityDelta" : 0 ,
"assetExposed" : true ,
"owasp2017" : [
0
],
"isAccepted" : true ,
"patchInformation" : "string" ,
"cvssVector" : "string" ,
"virtualHost" : "string" ,
"platform" : "string" ,
"bugTraq" : [
0
],
"serviceName" : "string" ,
"riskLevel" : "Initial" ,
"solutionType" : "Unspecified" ,
"age" : 0 ,
"data" : "string" ,
"description" : "string" ,
"farsight" : {
"risk" : {
"score" : 0 ,
"delta" : 0
},
"updated" : "2019-08-24T14:15:22Z" ,
"lastThreatActivity" : "2019-08-24T14:15:22Z"
},
"acceptExpires" : "2019-08-24T14:15:22Z" ,
"acceptedBy" : "string" ,
"acceptDate" : "2019-08-24T14:15:22Z" ,
"acceptComment" : "string"
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
OutscanFinding
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of findings
# You can also use wget
curl -X GET \
/rest/outscan/findings \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/findings ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/findings ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/outscan/findings" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/outscan/findings' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/outscan/findings' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /outscan/findings
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"scanJobId" : 0 ,
"scanLogId" : 0 ,
"scheduleId" : 0 ,
"templateId" : 0 ,
"cvssScore" : 0 ,
"cvssV3Score" : 0 ,
"cvssV3Severity" : "RECOMMENDATION" ,
"cvssV3Vector" : "string" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"reportDate" : "2019-08-24T14:15:22Z" ,
"targetId" : 0 ,
"target" : "string" ,
"hostname" : "string" ,
"port" : 0 ,
"protocol" : 0 ,
"name" : "string" ,
"source" : [
"SCOUT"
],
"cve" : "string" ,
"vulnId" : 0 ,
"isNew" : true ,
"previouslyDetected" : true ,
"type" : "string" ,
"isPotentialFalsePositive" : true ,
"productName" : "string" ,
"productUrl" : "string" ,
"solutionProduct" : "string" ,
"checkCreated" : "2019-08-24T14:15:22Z" ,
"hasExploits" : true ,
"solution" : "string" ,
"businessCriticality" : "LOW" ,
"assetBusinessCriticality" : "LOW" ,
"solutionTitle" : "string" ,
"created" : "2019-08-24T14:15:22Z" ,
"cyrating" : 0 ,
"cyratingDelta" : 0 ,
"cyratingUpdated" : "2019-08-24T14:15:22Z" ,
"cyratingLastSeen" : "2019-08-24T14:15:22Z" ,
"exploitProbability" : 0 ,
"exploitProbabilityDelta" : 0 ,
"assetExposed" : true ,
"owasp2017" : [
0
],
"isAccepted" : true ,
"patchInformation" : "string" ,
"cvssVector" : "string" ,
"virtualHost" : "string" ,
"platform" : "string" ,
"bugTraq" : [
0
],
"serviceName" : "string" ,
"riskLevel" : "Initial" ,
"solutionType" : "Unspecified" ,
"age" : 0 ,
"data" : "string" ,
"description" : "string" ,
"farsight" : {
"risk" : {
"score" : 0 ,
"delta" : 0
},
"updated" : "2019-08-24T14:15:22Z" ,
"lastThreatActivity" : "2019-08-24T14:15:22Z"
},
"acceptExpires" : "2019-08-24T14:15:22Z" ,
"acceptedBy" : "string" ,
"acceptDate" : "2019-08-24T14:15:22Z" ,
"acceptComment" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[OutscanFinding ]
false
none
none
» id
integer(int64)
false
read-only
The ID of the entry.
» scanJobId
integer(int64)
false
read-only
none
» scanLogId
integer(int64)
false
read-only
none
» scheduleId
integer(int64)
false
read-only
none
» templateId
integer(int64)
false
read-only
none
» cvssScore
number(double)
false
read-only
none
» cvssV3Score
number(double)
false
read-only
none
» cvssV3Severity
string
false
read-only
none
» cvssV3Vector
string
false
read-only
none
» firstSeen
string(date-time)
false
read-only
Timestamp when the entry was seen for the first time.
» lastSeen
string(date-time)
false
read-only
Timestamp when the entry was seen last time.
» reportDate
string(date-time)
false
read-only
none
» targetId
integer(int64)
false
read-only
none
» target
string
false
read-only
none
» hostname
string
false
read-only
none
» port
integer(int64)
false
read-only
none
» protocol
integer(int64)
false
read-only
none
» name
string
false
read-only
The name of the entry.
» source
[string]
false
read-only
none
» cve
string
false
read-only
none
» vulnId
integer(int64)
false
read-only
none
» isNew
boolean
false
read-only
none
» previouslyDetected
boolean
false
read-only
none
» type
string
false
read-only
none
» isPotentialFalsePositive
boolean
false
read-only
none
» productName
string
false
read-only
none
» productUrl
string
false
read-only
none
» solutionProduct
string
false
read-only
none
» checkCreated
string(date-time)
false
read-only
none
» hasExploits
boolean
false
read-only
none
» solution
string
false
read-only
none
» businessCriticality
string
false
read-only
none
» assetBusinessCriticality
string
false
read-only
none
» solutionTitle
string
false
read-only
none
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» cyrating
number(double)
false
read-only
none
» cyratingDelta
number(double)
false
read-only
none
» cyratingUpdated
string(date-time)
false
read-only
none
» cyratingLastSeen
string(date-time)
false
read-only
none
» exploitProbability
number(double)
false
read-only
none
» exploitProbabilityDelta
number(double)
false
read-only
none
» assetExposed
boolean
false
read-only
none
» owasp2017
[integer]
false
read-only
An array of OWASP Top 10 2017 classifications of the entry.
» isAccepted
boolean
false
read-only
none
» patchInformation
string
false
read-only
none
» cvssVector
string
false
none
none
» virtualHost
string
false
none
none
» platform
string
false
none
none
» bugTraq
[integer]
false
none
An array of Bugtraq reference IDs.
» serviceName
string
false
none
none
» riskLevel
string
false
none
none
» solutionType
string
false
none
none
» age
integer(int32)
false
none
none
» data
string
false
none
none
» description
string
false
read-only
Description of the entry.
» farsight
Farsight
false
read-only
The farsight concists in additional information on risk such as likelihood, threat activity
»» risk
Farsight.Risk
false
none
none
»»» score
number(float)
false
none
none
»»» delta
number(float)
false
none
none
»» updated
string(date-time)
false
none
The timestamp when the entry was updated.
»» lastThreatActivity
string(date-time)
false
none
none
» acceptExpires
string(date-time)
false
read-only
none
» acceptedBy
string
false
read-only
The name of the user who accepted the risk.
» acceptDate
string(date-time)
false
read-only
none
» acceptComment
string
false
read-only
none
Enumerated Values
Property
Value
cvssV3Severity
RECOMMENDATION
cvssV3Severity
LOW
cvssV3Severity
MEDIUM
cvssV3Severity
HIGH
cvssV3Severity
CRITICAL
businessCriticality
LOW
businessCriticality
MEDIUM
businessCriticality
HIGH
businessCriticality
CRITICAL
assetBusinessCriticality
LOW
assetBusinessCriticality
MEDIUM
assetBusinessCriticality
HIGH
assetBusinessCriticality
CRITICAL
riskLevel
Initial
riskLevel
Recommendation
riskLevel
Low
riskLevel
Medium
riskLevel
High
riskLevel
Critical
solutionType
Unspecified
solutionType
Unknown
solutionType
Reconfigure
solutionType
Workaround
solutionType
InProgress
solutionType
Contact
solutionType
Update
solutionType
Patch
solutionType
Unack
solutionType
NoSol
solutionType
Account
solutionType
Disable
solutionType
Filter
solutionType
Malware
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/outscan/findings \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/findings ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/findings ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/outscan/findings" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/outscan/findings' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/outscan/findings' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /outscan/findings
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Outscan scan logs
Get a list of findings for a scan
# You can also use wget
curl -X GET \
/rest/outscan/scan-logs/{ scanLogId} /findings \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/scan-logs/{scanLogId}/findings ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/scan-logs/{scanLogId}/findings ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/outscan/scan-logs/{scanLogId}/findings" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/outscan/scan-logs/{scanLogId}/findings' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/outscan/scan-logs/{scanLogId}/findings' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /outscan/scan-logs/{scanLogId}/findings
Parameters
Name
In
Type
Required
Description
scanLogId
path
integer(int64)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"scanJobId" : 0 ,
"scanLogId" : 0 ,
"scheduleId" : 0 ,
"templateId" : 0 ,
"cvssScore" : 0 ,
"cvssV3Score" : 0 ,
"cvssV3Severity" : "RECOMMENDATION" ,
"cvssV3Vector" : "string" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"reportDate" : "2019-08-24T14:15:22Z" ,
"targetId" : 0 ,
"target" : "string" ,
"hostname" : "string" ,
"port" : 0 ,
"protocol" : 0 ,
"name" : "string" ,
"source" : [
"SCOUT"
],
"cve" : "string" ,
"vulnId" : 0 ,
"isNew" : true ,
"previouslyDetected" : true ,
"type" : "string" ,
"isPotentialFalsePositive" : true ,
"productName" : "string" ,
"productUrl" : "string" ,
"solutionProduct" : "string" ,
"checkCreated" : "2019-08-24T14:15:22Z" ,
"hasExploits" : true ,
"solution" : "string" ,
"businessCriticality" : "LOW" ,
"assetBusinessCriticality" : "LOW" ,
"solutionTitle" : "string" ,
"created" : "2019-08-24T14:15:22Z" ,
"cyrating" : 0 ,
"cyratingDelta" : 0 ,
"cyratingUpdated" : "2019-08-24T14:15:22Z" ,
"cyratingLastSeen" : "2019-08-24T14:15:22Z" ,
"exploitProbability" : 0 ,
"exploitProbabilityDelta" : 0 ,
"assetExposed" : true ,
"owasp2017" : [
0
],
"isAccepted" : true ,
"patchInformation" : "string" ,
"cvssVector" : "string" ,
"virtualHost" : "string" ,
"platform" : "string" ,
"bugTraq" : [
0
],
"serviceName" : "string" ,
"riskLevel" : "Initial" ,
"solutionType" : "Unspecified" ,
"age" : 0 ,
"data" : "string" ,
"description" : "string" ,
"farsight" : {
"risk" : {
"score" : 0 ,
"delta" : 0
},
"updated" : "2019-08-24T14:15:22Z" ,
"lastThreatActivity" : "2019-08-24T14:15:22Z"
},
"acceptExpires" : "2019-08-24T14:15:22Z" ,
"acceptedBy" : "string" ,
"acceptDate" : "2019-08-24T14:15:22Z" ,
"acceptComment" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[OutscanFinding ]
false
none
none
» id
integer(int64)
false
read-only
The ID of the entry.
» scanJobId
integer(int64)
false
read-only
none
» scanLogId
integer(int64)
false
read-only
none
» scheduleId
integer(int64)
false
read-only
none
» templateId
integer(int64)
false
read-only
none
» cvssScore
number(double)
false
read-only
none
» cvssV3Score
number(double)
false
read-only
none
» cvssV3Severity
string
false
read-only
none
» cvssV3Vector
string
false
read-only
none
» firstSeen
string(date-time)
false
read-only
Timestamp when the entry was seen for the first time.
» lastSeen
string(date-time)
false
read-only
Timestamp when the entry was seen last time.
» reportDate
string(date-time)
false
read-only
none
» targetId
integer(int64)
false
read-only
none
» target
string
false
read-only
none
» hostname
string
false
read-only
none
» port
integer(int64)
false
read-only
none
» protocol
integer(int64)
false
read-only
none
» name
string
false
read-only
The name of the entry.
» source
[string]
false
read-only
none
» cve
string
false
read-only
none
» vulnId
integer(int64)
false
read-only
none
» isNew
boolean
false
read-only
none
» previouslyDetected
boolean
false
read-only
none
» type
string
false
read-only
none
» isPotentialFalsePositive
boolean
false
read-only
none
» productName
string
false
read-only
none
» productUrl
string
false
read-only
none
» solutionProduct
string
false
read-only
none
» checkCreated
string(date-time)
false
read-only
none
» hasExploits
boolean
false
read-only
none
» solution
string
false
read-only
none
» businessCriticality
string
false
read-only
none
» assetBusinessCriticality
string
false
read-only
none
» solutionTitle
string
false
read-only
none
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» cyrating
number(double)
false
read-only
none
» cyratingDelta
number(double)
false
read-only
none
» cyratingUpdated
string(date-time)
false
read-only
none
» cyratingLastSeen
string(date-time)
false
read-only
none
» exploitProbability
number(double)
false
read-only
none
» exploitProbabilityDelta
number(double)
false
read-only
none
» assetExposed
boolean
false
read-only
none
» owasp2017
[integer]
false
read-only
An array of OWASP Top 10 2017 classifications of the entry.
» isAccepted
boolean
false
read-only
none
» patchInformation
string
false
read-only
none
» cvssVector
string
false
none
none
» virtualHost
string
false
none
none
» platform
string
false
none
none
» bugTraq
[integer]
false
none
An array of Bugtraq reference IDs.
» serviceName
string
false
none
none
» riskLevel
string
false
none
none
» solutionType
string
false
none
none
» age
integer(int32)
false
none
none
» data
string
false
none
none
» description
string
false
read-only
Description of the entry.
» farsight
Farsight
false
read-only
The farsight concists in additional information on risk such as likelihood, threat activity
»» risk
Farsight.Risk
false
none
none
»»» score
number(float)
false
none
none
»»» delta
number(float)
false
none
none
»» updated
string(date-time)
false
none
The timestamp when the entry was updated.
»» lastThreatActivity
string(date-time)
false
none
none
» acceptExpires
string(date-time)
false
read-only
none
» acceptedBy
string
false
read-only
The name of the user who accepted the risk.
» acceptDate
string(date-time)
false
read-only
none
» acceptComment
string
false
read-only
none
Enumerated Values
Property
Value
cvssV3Severity
RECOMMENDATION
cvssV3Severity
LOW
cvssV3Severity
MEDIUM
cvssV3Severity
HIGH
cvssV3Severity
CRITICAL
businessCriticality
LOW
businessCriticality
MEDIUM
businessCriticality
HIGH
businessCriticality
CRITICAL
assetBusinessCriticality
LOW
assetBusinessCriticality
MEDIUM
assetBusinessCriticality
HIGH
assetBusinessCriticality
CRITICAL
riskLevel
Initial
riskLevel
Recommendation
riskLevel
Low
riskLevel
Medium
riskLevel
High
riskLevel
Critical
solutionType
Unspecified
solutionType
Unknown
solutionType
Reconfigure
solutionType
Workaround
solutionType
InProgress
solutionType
Contact
solutionType
Update
solutionType
Patch
solutionType
Unack
solutionType
NoSol
solutionType
Account
solutionType
Disable
solutionType
Filter
solutionType
Malware
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a scan log
# You can also use wget
curl -X GET \
/rest/outscan/scan-logs/{ scanLogId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/scan-logs/{scanLogId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/scan-logs/{scanLogId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/outscan/scan-logs/{scanLogId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/outscan/scan-logs/{scanLogId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/outscan/scan-logs/{scanLogId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /outscan/scan-logs/{scanLogId}
Parameters
Name
In
Type
Required
Description
scanLogId
path
integer(int64)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"startDate" : "2019-08-24T14:15:22Z" ,
"endDate" : "2019-08-24T14:15:22Z" ,
"target" : "string" ,
"targetId" : 0 ,
"schedule" : "string" ,
"scheduleId" : 0 ,
"scanJobId" : 0 ,
"status" : "Invalid"
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
OutscanScanLog
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of scan logs
# You can also use wget
curl -X GET \
/rest/outscan/scan-logs \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/scan-logs ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/scan-logs ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/outscan/scan-logs" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/outscan/scan-logs' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/outscan/scan-logs' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /outscan/scan-logs
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"startDate" : "2019-08-24T14:15:22Z" ,
"endDate" : "2019-08-24T14:15:22Z" ,
"target" : "string" ,
"targetId" : 0 ,
"schedule" : "string" ,
"scheduleId" : 0 ,
"scanJobId" : 0 ,
"status" : "Invalid"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[OutscanScanLog ]
false
none
none
» id
integer(int64)
false
read-only
The ID of the entry.
» startDate
string(date-time)
false
read-only
none
» endDate
string(date-time)
false
read-only
none
» target
string
false
read-only
none
» targetId
integer(int64)
false
read-only
none
» schedule
string
false
read-only
none
» scheduleId
integer(int64)
false
read-only
none
» scanJobId
integer(int64)
false
read-only
none
» status
string
false
none
none
Enumerated Values
Property
Value
status
Invalid
status
Ok
status
Forced
status
Timeout
status
Stopped
status
StoppedByUser
status
Large
status
KilledLarge
status
Failed
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/outscan/scan-logs \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/scan-logs ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/scan-logs ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/outscan/scan-logs" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/outscan/scan-logs' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/outscan/scan-logs' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /outscan/scan-logs
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Outscan scans
Get a scan
# You can also use wget
curl -X GET \
/rest/outscan/scans/{ scanId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/scans/{scanId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/scans/{scanId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/outscan/scans/{scanId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/outscan/scans/{scanId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/outscan/scans/{scanId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /outscan/scans/{scanId}
Parameters
Name
In
Type
Required
Description
scanId
path
integer(int64)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"target" : "string" ,
"targetId" : 0 ,
"scheduleId" : 0 ,
"status" : "string" ,
"scanStarted" : "2019-08-24T14:15:22Z" ,
"scanJobId" : 0
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
OutscanScan
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of scans
# You can also use wget
curl -X GET \
/rest/outscan/scans \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/scans ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/scans ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/outscan/scans" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/outscan/scans' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/outscan/scans' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /outscan/scans
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"target" : "string" ,
"targetId" : 0 ,
"scheduleId" : 0 ,
"status" : "string" ,
"scanStarted" : "2019-08-24T14:15:22Z" ,
"scanJobId" : 0
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[OutscanScan ]
false
none
none
» id
integer(int64)
false
read-only
The ID of the entry.
» target
string
false
read-only
none
» targetId
integer(int64)
false
read-only
none
» scheduleId
integer(int64)
false
read-only
none
» status
string
false
read-only
none
» scanStarted
string(date-time)
false
read-only
none
» scanJobId
integer(int64)
false
read-only
none
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/outscan/scans \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/scans ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/scans ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/outscan/scans" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/outscan/scans' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/outscan/scans' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /outscan/scans
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Stop a scan
# You can also use wget
curl -X POST \
/rest/outscan/scans/{ scanId} /stop \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/scans/{scanId}/stop ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/scans/{scanId}/stop ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/outscan/scans/{scanId}/stop" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/outscan/scans/{scanId}/stop' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/outscan/scans/{scanId}/stop' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /outscan/scans/{scanId}/stop
Parameters
Name
In
Type
Required
Description
scanId
path
integer(int64)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Outscan schedules
Get a schedule
# You can also use wget
curl -X GET \
/rest/outscan/schedules/{ scheduleId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/schedules/{scheduleId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/schedules/{scheduleId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/outscan/schedules/{scheduleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/outscan/schedules/{scheduleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/outscan/schedules/{scheduleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /outscan/schedules/{scheduleId}
Parameters
Name
In
Type
Required
Description
scheduleId
path
integer(int64)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"nextScanDate" : "2019-08-24T14:15:22Z" ,
"template" : 0 ,
"name" : "string" ,
"targetList" : "string" ,
"recurrence" : "Now"
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
OutscanSchedule
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a schedule
# You can also use wget
curl -X DELETE \
/rest/outscan/schedules/{ scheduleId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/schedules/{scheduleId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/schedules/{scheduleId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/outscan/schedules/{scheduleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/outscan/schedules/{scheduleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/outscan/schedules/{scheduleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /outscan/schedules/{scheduleId}
Parameters
Name
In
Type
Required
Description
scheduleId
path
integer(int64)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a schedule
# You can also use wget
curl -X PATCH \
/rest/outscan/schedules/{ scheduleId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/schedules/{scheduleId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"nextScanDate": "2019-08-24T14:15:22Z",
"template": 0,
"name": "string",
"targetList": "string",
"recurrence": "Now"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/schedules/{scheduleId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/outscan/schedules/{scheduleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/outscan/schedules/{scheduleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/outscan/schedules/{scheduleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /outscan/schedules/{scheduleId}
Body parameter
{
"nextScanDate" : "2019-08-24T14:15:22Z" ,
"template" : 0 ,
"name" : "string" ,
"targetList" : "string" ,
"recurrence" : "Now"
}
Parameters
Name
In
Type
Required
Description
scheduleId
path
integer(int64)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
OutscanSchedule
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of schedules
# You can also use wget
curl -X GET \
/rest/outscan/schedules \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/schedules ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/schedules ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/outscan/schedules" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/outscan/schedules' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/outscan/schedules' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /outscan/schedules
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"nextScanDate" : "2019-08-24T14:15:22Z" ,
"template" : 0 ,
"name" : "string" ,
"targetList" : "string" ,
"recurrence" : "Now"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[OutscanSchedule ]
false
none
none
» id
integer(int64)
false
read-only
The ID of the entry.
» nextScanDate
string(date-time)
false
none
none
» template
integer(int64)
false
none
none
» name
string
true
none
The name of the entry.
» targetList
string
true
none
none
» recurrence
string
false
none
none
Enumerated Values
Property
Value
recurrence
Now
recurrence
Once
recurrence
Weekly
recurrence
Monthly
recurrence
Bimonthly
recurrence
Quarterly
recurrence
Fortnightly
recurrence
Daily
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a schedule
# You can also use wget
curl -X POST \
/rest/outscan/schedules \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/schedules ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"nextScanDate": "2019-08-24T14:15:22Z",
"template": 0,
"name": "string",
"targetList": "string",
"recurrence": "Now"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/schedules ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/outscan/schedules" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/outscan/schedules' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/outscan/schedules' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /outscan/schedules
Body parameter
{
"nextScanDate" : "2019-08-24T14:15:22Z" ,
"template" : 0 ,
"name" : "string" ,
"targetList" : "string" ,
"recurrence" : "Now"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
OutscanSchedule
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/outscan/schedules \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/schedules ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/schedules ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/outscan/schedules" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/outscan/schedules' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/outscan/schedules' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /outscan/schedules
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Start scanning now
# You can also use wget
curl -X POST \
/rest/outscan/schedules/{ scheduleId} /scan \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/schedules/{scheduleId}/scan ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/schedules/{scheduleId}/scan ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "text/plain" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/outscan/schedules/{scheduleId}/scan" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'text/plain' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/outscan/schedules/{scheduleId}/scan' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/outscan/schedules/{scheduleId}/scan' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /outscan/schedules/{scheduleId}/scan
Parameters
Name
In
Type
Required
Description
scheduleId
path
integer(int64)
true
none
The above code returns response like this:
default Response
Responses
Status
Meaning
Description
Schema
default
Default
default response
integer
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Outscan targets
Get a target
# You can also use wget
curl -X GET \
/rest/outscan/targets/{ targetId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/targets/{targetId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/targets/{targetId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/outscan/targets/{targetId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/outscan/targets/{targetId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/outscan/targets/{targetId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /outscan/targets/{targetId}
Parameters
Name
In
Type
Required
Description
targetId
path
integer(int64)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"ip" : "string" ,
"hostname" : "string" ,
"businessCriticality" : "LOW" ,
"exposed" : true ,
"created" : "2019-08-24T14:15:22Z" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"source" : [
"SCOUT"
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
OutscanTarget
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a target
# You can also use wget
curl -X DELETE \
/rest/outscan/targets/{ targetId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/targets/{targetId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/targets/{targetId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/outscan/targets/{targetId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/outscan/targets/{targetId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/outscan/targets/{targetId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /outscan/targets/{targetId}
Parameters
Name
In
Type
Required
Description
targetId
path
integer(int64)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of targets
# You can also use wget
curl -X GET \
/rest/outscan/targets \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/targets ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/targets ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/outscan/targets" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/outscan/targets' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/outscan/targets' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /outscan/targets
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"ip" : "string" ,
"hostname" : "string" ,
"businessCriticality" : "LOW" ,
"exposed" : true ,
"created" : "2019-08-24T14:15:22Z" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"source" : [
"SCOUT"
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[OutscanTarget ]
false
none
none
» id
integer(int64)
false
read-only
The ID of the entry.
» ip
string
false
read-only
none
» hostname
string
false
read-only
none
» businessCriticality
string
false
read-only
none
» exposed
boolean
false
read-only
none
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» firstSeen
string(date-time)
false
read-only
Timestamp when the entry was seen for the first time.
» lastSeen
string(date-time)
false
read-only
Timestamp when the entry was seen last time.
» source
[string]
false
read-only
none
Enumerated Values
Property
Value
businessCriticality
LOW
businessCriticality
MEDIUM
businessCriticality
HIGH
businessCriticality
CRITICAL
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create new targets
# You can also use wget
curl -X POST \
/rest/outscan/targets \
-H 'Content-Type: text/plain' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' text/plain ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/targets ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' string ' ;
const headers = {
' Content-Type ' : ' text/plain ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/targets ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "text/plain" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/outscan/targets" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'text/plain' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/outscan/targets' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'text/plain' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/outscan/targets' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /outscan/targets
Body parameter
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
string
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/outscan/targets \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/outscan/targets ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/outscan/targets ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/outscan/targets" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/outscan/targets' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/outscan/targets' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /outscan/targets
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Password recovery
Request password recovery email for username
# You can also use wget
curl -X POST \
/rest/password-recovery \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json '
};
$ . ajax ({
url : ' /rest/password-recovery ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"username": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json '
};
fetch ( ' /rest/password-recovery ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/password-recovery" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json'
}
r = requests . post ( '/rest/password-recovery' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json'
}
result = RestClient . post '/rest/password-recovery' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /password-recovery
Body parameter
Parameters
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
This operation does not require authentication
Product information
Get a list of products
# You can also use wget
curl -X GET \
/rest/product-information \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/product-information ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/product-information ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/product-information" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/product-information' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/product-information' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /product-information
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"product" : "string" ,
"name" : "string" ,
"url" : "string" ,
"updated" : "2019-08-24T14:15:22Z"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ProductInformation ]
false
none
none
» product
string
false
read-only
none
» name
string
false
read-only
The name of the entry.
» url
string
false
read-only
none
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/product-information \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/product-information ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/product-information ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/product-information" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/product-information' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/product-information' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /product-information
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Release notes
Get last release notes notification trigger timestamp
# You can also use wget
curl -X GET \
/rest/release-notes/notification-trigger \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/release-notes/notification-trigger ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/release-notes/notification-trigger ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "text/plain" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/release-notes/notification-trigger" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'text/plain' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/release-notes/notification-trigger' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/release-notes/notification-trigger' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /release-notes/notification-trigger
The above code returns response like this:
default Response
Responses
Status
Meaning
Description
Schema
default
Default
default response
string
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Trigger release notes notification and set trigger timestamp
# You can also use wget
curl -X POST \
/rest/release-notes/trigger-notification \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/release-notes/trigger-notification ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/release-notes/trigger-notification ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "text/plain" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/release-notes/trigger-notification" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'text/plain' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/release-notes/trigger-notification' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/release-notes/trigger-notification' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /release-notes/trigger-notification
The above code returns response like this:
default Response
Responses
Status
Meaning
Description
Schema
default
Default
default response
string
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Report schedules
Get a report schedule (Deprecated: 2019-12-11)
# You can also use wget
curl -X GET \
/rest/report-schedules/{ reportScheduleId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/report-schedules/{reportScheduleId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/report-schedules/{reportScheduleId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/report-schedules/{reportScheduleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/report-schedules/{reportScheduleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/report-schedules/{reportScheduleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /report-schedules/{reportScheduleId}
Parameters
Name
In
Type
Required
Description
reportScheduleId
path
integer(int64)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"userId" : 0 ,
"subUserId" : 0 ,
"frequency" : 0 ,
"nextDate" : "2019-08-24T14:15:22Z" ,
"latestDate" : "2019-08-24T14:15:22Z" ,
"lastDate" : "2019-08-24T14:15:22Z" ,
"dayWeekMonth" : 0 ,
"name" : "string" ,
"reportType" : 0 ,
"format" : 0 ,
"zip" : true ,
"recipient" : [
0
],
"recipientEmail" : "string" ,
"encryptionKey" : "string" ,
"managedReportTitle" : "string" ,
"managedReportGroup" : 0 ,
"managedReportToken" : "string" ,
"scanType" : 0 ,
"recipientType" : 0 ,
"reportPassword" : "string" ,
"reportLevel" : 0 ,
"customSubject" : "string" ,
"customText" : "string"
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
ReportSchedule
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a report schedule (Deprecated: 2019-12-11)
# You can also use wget
curl -X DELETE \
/rest/report-schedules/{ reportScheduleId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/report-schedules/{reportScheduleId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/report-schedules/{reportScheduleId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/report-schedules/{reportScheduleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/report-schedules/{reportScheduleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/report-schedules/{reportScheduleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /report-schedules/{reportScheduleId}
Parameters
Name
In
Type
Required
Description
reportScheduleId
path
integer(int64)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a report schedule (Deprecated: 2019-12-11)
# You can also use wget
curl -X PATCH \
/rest/report-schedules/{ reportScheduleId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/report-schedules/{reportScheduleId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"frequency": 0,
"nextDate": "2019-08-24T14:15:22Z",
"lastDate": "2019-08-24T14:15:22Z",
"dayWeekMonth": 0,
"name": "string",
"reportType": 0,
"format": 0,
"zip": true,
"recipient": [
0
],
"recipientEmail": "string",
"encryptionKey": "string",
"managedReportTitle": "string",
"managedReportGroup": 0,
"managedReportToken": "string",
"scanType": 0,
"recipientType": 0,
"reportPassword": "string",
"reportLevel": 0,
"customSubject": "string",
"customText": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/report-schedules/{reportScheduleId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/report-schedules/{reportScheduleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/report-schedules/{reportScheduleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/report-schedules/{reportScheduleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /report-schedules/{reportScheduleId}
Body parameter
{
"frequency" : 0 ,
"nextDate" : "2019-08-24T14:15:22Z" ,
"lastDate" : "2019-08-24T14:15:22Z" ,
"dayWeekMonth" : 0 ,
"name" : "string" ,
"reportType" : 0 ,
"format" : 0 ,
"zip" : true ,
"recipient" : [
0
],
"recipientEmail" : "string" ,
"encryptionKey" : "string" ,
"managedReportTitle" : "string" ,
"managedReportGroup" : 0 ,
"managedReportToken" : "string" ,
"scanType" : 0 ,
"recipientType" : 0 ,
"reportPassword" : "string" ,
"reportLevel" : 0 ,
"customSubject" : "string" ,
"customText" : "string"
}
Parameters
Name
In
Type
Required
Description
reportScheduleId
path
integer(int64)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ReportSchedule
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of report schedules (Deprecated: 2019-12-11)
# You can also use wget
curl -X GET \
/rest/report-schedules \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/report-schedules ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/report-schedules ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/report-schedules" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/report-schedules' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/report-schedules' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /report-schedules
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"userId" : 0 ,
"subUserId" : 0 ,
"frequency" : 0 ,
"nextDate" : "2019-08-24T14:15:22Z" ,
"latestDate" : "2019-08-24T14:15:22Z" ,
"lastDate" : "2019-08-24T14:15:22Z" ,
"dayWeekMonth" : 0 ,
"name" : "string" ,
"reportType" : 0 ,
"format" : 0 ,
"zip" : true ,
"recipient" : [
0
],
"recipientEmail" : "string" ,
"encryptionKey" : "string" ,
"managedReportTitle" : "string" ,
"managedReportGroup" : 0 ,
"managedReportToken" : "string" ,
"scanType" : 0 ,
"recipientType" : 0 ,
"reportPassword" : "string" ,
"reportLevel" : 0 ,
"customSubject" : "string" ,
"customText" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ReportSchedule ]
false
none
none
» id
integer(int64)
false
read-only
The ID of the entry.
» userId
integer(int64)
false
read-only
none
» subUserId
integer(int64)
false
read-only
none
» frequency
integer(int32)
false
none
none
» nextDate
string(date-time)
false
none
none
» latestDate
string(date-time)
false
read-only
none
» lastDate
string(date-time)
false
none
none
» dayWeekMonth
integer(int32)
false
none
none
» name
string
true
none
The name of the entry.
» reportType
integer(int32)
false
none
none
» format
integer(int32)
false
none
none
» zip
boolean
false
none
none
» recipient
[integer]
false
none
none
» recipientEmail
string
false
none
none
» encryptionKey
string
true
none
none
» managedReportTitle
string
false
none
none
» managedReportGroup
integer(int64)
false
none
none
» managedReportToken
string
false
none
none
» scanType
integer(int32)
false
none
none
» recipientType
integer(int32)
false
none
none
» reportPassword
string
false
none
none
» reportLevel
integer(int32)
false
none
none
» customSubject
string
false
none
none
» customText
string
false
none
none
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a new report schedule (Deprecated: 2019-12-11)
# You can also use wget
curl -X POST \
/rest/report-schedules \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/report-schedules ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"frequency": 0,
"nextDate": "2019-08-24T14:15:22Z",
"lastDate": "2019-08-24T14:15:22Z",
"dayWeekMonth": 0,
"name": "string",
"reportType": 0,
"format": 0,
"zip": true,
"recipient": [
0
],
"recipientEmail": "string",
"encryptionKey": "string",
"managedReportTitle": "string",
"managedReportGroup": 0,
"managedReportToken": "string",
"scanType": 0,
"recipientType": 0,
"reportPassword": "string",
"reportLevel": 0,
"customSubject": "string",
"customText": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/report-schedules ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/report-schedules" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/report-schedules' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/report-schedules' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /report-schedules
Body parameter
{
"frequency" : 0 ,
"nextDate" : "2019-08-24T14:15:22Z" ,
"lastDate" : "2019-08-24T14:15:22Z" ,
"dayWeekMonth" : 0 ,
"name" : "string" ,
"reportType" : 0 ,
"format" : 0 ,
"zip" : true ,
"recipient" : [
0
],
"recipientEmail" : "string" ,
"encryptionKey" : "string" ,
"managedReportTitle" : "string" ,
"managedReportGroup" : 0 ,
"managedReportToken" : "string" ,
"scanType" : 0 ,
"recipientType" : 0 ,
"reportPassword" : "string" ,
"reportLevel" : 0 ,
"customSubject" : "string" ,
"customText" : "string"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ReportSchedule
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/report-schedules \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/report-schedules ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/report-schedules ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/report-schedules" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/report-schedules' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/report-schedules' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /report-schedules
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Start scanning now (Deprecated: 2019-12-11)
# You can also use wget
curl -X POST \
/rest/report-schedules/{ reportScheduleId} /send \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/report-schedules/{reportScheduleId}/send ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/report-schedules/{reportScheduleId}/send ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/report-schedules/{reportScheduleId}/send" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/report-schedules/{reportScheduleId}/send' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/report-schedules/{reportScheduleId}/send' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /report-schedules/{reportScheduleId}/send
Parameters
Name
In
Type
Required
Description
reportScheduleId
path
integer(int64)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Reports
Get a report cache entry and generate a token for downloading the report, expires after 5 minutes (Deprecated: 2021-02-25)
# You can also use wget
curl -X GET \
/rest/reports/{ key} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/reports/{key} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/reports/{key} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/reports/{key}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/reports/{key}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/reports/{key}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /reports/{key}
Parameters
Name
In
Type
Required
Description
key
path
string
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a report (Deprecated: 2021-02-25)
# You can also use wget
curl -X DELETE \
/rest/reports/{ key} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/reports/{key} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/reports/{key} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/reports/{key}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/reports/{key}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/reports/{key}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /reports/{key}
Parameters
Name
In
Type
Required
Description
key
path
string
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of report cache entries (Deprecated: 2021-02-25)
# You can also use wget
curl -X GET \
/rest/reports \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/reports ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/reports ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/reports" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/reports' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/reports' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /reports
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"created" : "2019-08-24T14:15:22Z" ,
"key" : "string" ,
"status" : "string" ,
"size" : 0 ,
"token" : "string" ,
"tokenExpires" : "2019-08-24T14:15:22Z" ,
"name" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ReportCacheEntry ]
false
none
none
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» key
string
false
read-only
none
» status
string
false
read-only
none
» size
integer(int64)
false
read-only
none
» token
string
false
read-only
none
» tokenExpires
string(date-time)
false
read-only
none
» name
string
false
read-only
The name of the entry.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Generate a report
# You can also use wget
curl -X POST \
/rest/reports \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/reports ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"name": "string",
"executiveSummary": true,
"format": "PDF",
"password": "string",
"zip": true,
"type": "Technical",
"level": "Detailed",
"product": "Normal",
"viewTemplateId": 0,
"assetIds": [
0
],
"assetGroupIds": [
0
],
"findingIds": [
0
],
"assetIdentifierIds": [
0
],
"serviceIds": [
0
],
"tagIds": [
0
],
"startDate": "2019-08-24T14:15:22Z",
"endDate": "2019-08-24T14:15:22Z",
"filters": "string",
"deliveryMethod": {
"email": {
"userIds": [
0
],
"recipients": {
"addresses": [
"string"
],
"pgpKey": "string"
}
},
"managedReport": {
"name": "string",
"tags": "string"
}
}
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/reports ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/reports" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/reports' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/reports' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /reports
Body parameter
{
"name" : "string" ,
"executiveSummary" : true ,
"format" : "PDF" ,
"password" : "string" ,
"zip" : true ,
"type" : "Technical" ,
"level" : "Detailed" ,
"product" : "Normal" ,
"viewTemplateId" : 0 ,
"assetIds" : [
0
],
"assetGroupIds" : [
0
],
"findingIds" : [
0
],
"assetIdentifierIds" : [
0
],
"serviceIds" : [
0
],
"tagIds" : [
0
],
"startDate" : "2019-08-24T14:15:22Z" ,
"endDate" : "2019-08-24T14:15:22Z" ,
"filters" : "string" ,
"deliveryMethod" : {
"email" : {
"userIds" : [
0
],
"recipients" : {
"addresses" : [
"string"
],
"pgpKey" : "string"
}
},
"managedReport" : {
"name" : "string" ,
"tags" : "string"
}
}
}
Parameters
Name
In
Type
Required
Description
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Report
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/reports \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/reports ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/reports ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/reports" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/reports' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/reports' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /reports
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Resource groups
Get a resource group
# You can also use wget
curl -X GET \
/rest/resource-groups/{ resourceGroupId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/resource-groups/{resourceGroupId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/resource-groups/{resourceGroupId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/resource-groups/{resourceGroupId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/resource-groups/{resourceGroupId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/resource-groups/{resourceGroupId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /resource-groups/{resourceGroupId}
Parameters
Name
In
Type
Required
Description
resourceGroupId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"system" : true ,
"resources" : [
{
"type" : "SCANCONFIGURATION" ,
"tagIds" : [
0
]
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
ResourceGroup
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a resource group
# You can also use wget
curl -X DELETE \
/rest/resource-groups/{ resourceGroupId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/resource-groups/{resourceGroupId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/resource-groups/{resourceGroupId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/resource-groups/{resourceGroupId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/resource-groups/{resourceGroupId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/resource-groups/{resourceGroupId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /resource-groups/{resourceGroupId}
Parameters
Name
In
Type
Required
Description
resourceGroupId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a resource group
# You can also use wget
curl -X PATCH \
/rest/resource-groups/{ resourceGroupId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/resource-groups/{resourceGroupId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"resources": [
{
"type": "SCANCONFIGURATION",
"tagIds": [
0
]
}
]
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/resource-groups/{resourceGroupId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/resource-groups/{resourceGroupId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/resource-groups/{resourceGroupId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/resource-groups/{resourceGroupId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /resource-groups/{resourceGroupId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"resources" : [
{
"type" : "SCANCONFIGURATION" ,
"tagIds" : [
0
]
}
]
}
Parameters
Name
In
Type
Required
Description
resourceGroupId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ResourceGroup
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of resource groups
# You can also use wget
curl -X GET \
/rest/resource-groups \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/resource-groups ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/resource-groups ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/resource-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/resource-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/resource-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /resource-groups
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"system" : true ,
"resources" : [
{
"type" : "SCANCONFIGURATION" ,
"tagIds" : [
0
]
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ResourceGroup ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» system
boolean
false
read-only
Set to true when resource group is system resource group
» resources
[Resource ]
false
none
The resource group resources
»» type
string
false
none
The resource type
»» tagIds
[integer]
false
none
The resource tag ids
Enumerated Values
Property
Value
type
SCANCONFIGURATION
type
ACCOUNT
type
SCHEDULEDREPORT
type
MANAGEDREPORT
type
DASHBOARD
type
INTEGRATION
type
ASSETGROUP
type
ASSET
type
APPSTAK
type
VIEWTEMPLATE
type
EVENTSUBSCRIPTION
type
SCANPOLICY
type
FINDINGTEMPLATE
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a resource group
# You can also use wget
curl -X POST \
/rest/resource-groups \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/resource-groups ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"resources": [
{
"type": "SCANCONFIGURATION",
"tagIds": [
0
]
}
]
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/resource-groups ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/resource-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/resource-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/resource-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /resource-groups
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"resources" : [
{
"type" : "SCANCONFIGURATION" ,
"tagIds" : [
0
]
}
]
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ResourceGroup
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/resource-groups \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/resource-groups ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/resource-groups ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/resource-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/resource-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/resource-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /resource-groups
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Rule engine
Run rule engine
# You can also use wget
curl -X POST \
/rest/rule-engine \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/rule-engine ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [
{
"request": {
"method": "string",
"url": "string"
},
"match": {
"name": "string",
"version": "string",
"context": "string",
"patternUuid": "string"
}
}
] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/rule-engine ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/rule-engine" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/rule-engine' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/rule-engine' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /rule-engine
Body parameter
[
{
"request" : {
"method" : "string" ,
"url" : "string"
},
"match" : {
"name" : "string" ,
"version" : "string" ,
"context" : "string" ,
"patternUuid" : "string"
}
}
]
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
body
body
PatternMatch
true
none
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"checkId" : 0 ,
"findingTemplateId" : 0 ,
"cvssScore" : 0 ,
"cvssSeverity" : "RECOMMENDATION" ,
"cvssV2Score" : 0 ,
"cvssV2BaseScore" : 0 ,
"cvssV2TemporalScore" : 0 ,
"cvssV2EnvironmentalScore" : 0 ,
"cvssV2Vector" : "string" ,
"cvssV2Severity" : "RECOMMENDATION" ,
"cvssV3Score" : 0 ,
"cvssV3BaseScore" : 0 ,
"cvssV3TemporalScore" : 0 ,
"cvssV3EnvironmentalScore" : 0 ,
"cvssV3Vector" : "string" ,
"cvssV3Severity" : "RECOMMENDATION" ,
"falsePositive" : "2019-08-24T14:15:22Z" ,
"falsePositiveComment" : "string" ,
"isAccepted" : true ,
"accepted" : "2019-08-24T14:15:22Z" ,
"acceptedComment" : "string" ,
"acceptedUntil" : "2019-08-24T14:15:22Z" ,
"fixed" : "2019-08-24T14:15:22Z" ,
"commentsCount" : 0 ,
"customName" : "string" ,
"customDescription" : "string" ,
"customCve" : "string" ,
"customCwe" : 0 ,
"customBugTraq" : "string" ,
"customSolution" : "string" ,
"customRecreation" : "string" ,
"customImpact" : "string" ,
"customOwaspMobile2024" : 1 ,
"customOwaspApi2023" : 1 ,
"solutionPatches" : [
"string"
],
"customCvssV2Vector" : "string" ,
"customCvssV2Severity" : "RECOMMENDATION" ,
"customCvssV3Vector" : "string" ,
"customCvssV3Severity" : "RECOMMENDATION" ,
"source" : [
"SCOUT"
],
"activeSubscriptionTypes" : [
"DAST"
],
"name" : "string" ,
"description" : "string" ,
"cve" : "string" ,
"cwe" : "string" ,
"solutionType" : "NOT_CLASSIFIED" ,
"solution" : "string" ,
"solutionProduct" : "string" ,
"solutionTitle" : "string" ,
"solutionUuid" : "string" ,
"exploitAvailable" : true ,
"matchIds" : [
0
],
"attachmentIds" : [
0
],
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"lastScanConfigurationId" : 0 ,
"status" : "to review" ,
"commentPendingSince" : "2019-08-24T14:15:22Z" ,
"reviewed" : "2019-08-24T14:15:22Z" ,
"reviewedBy" : "string" ,
"reviewedById" : 0 ,
"verified" : "2019-08-24T14:15:22Z" ,
"verifiedBy" : "string" ,
"verifiedById" : 0 ,
"qualityAssured" : "2019-08-24T14:15:22Z" ,
"qualityAssuredBy" : "string" ,
"qualityAssuredById" : 0 ,
"published" : "2019-08-24T14:15:22Z" ,
"publishedBy" : "string" ,
"publishedById" : 0 ,
"rejected" : "2019-08-24T14:15:22Z" ,
"rejectedBy" : "string" ,
"rejectedById" : 0 ,
"recreation" : "string" ,
"alternativeRecreation" : "string" ,
"impact" : "string" ,
"sans25" : 0 ,
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
],
"owaspMobile2024" : 1 ,
"owaspApi2023" : 1 ,
"capec" : [
0
],
"assetId" : 0 ,
"assetName" : "string" ,
"potential" : true ,
"softwareComponent" : "string" ,
"cyrating" : 0 ,
"cyratingDelta" : 0 ,
"exploitProbability" : 0 ,
"exploitProbabilityDelta" : 0 ,
"cyratingUpdated" : "2019-08-24T14:15:22Z" ,
"cyratingLastSeen" : "2019-08-24T14:15:22Z" ,
"seenLastScan" : true ,
"watching" : true ,
"age" : 0 ,
"assetGroupIds" : [
0
],
"sentTo" : [
"string"
],
"renderedName" : "string" ,
"renderedDescription" : "string" ,
"renderedCwe" : 0 ,
"renderedSolution" : "string" ,
"renderedRecreation" : "string" ,
"renderedImpact" : "string" ,
"renderedOwaspMobile2024" : 1 ,
"renderedOwaspApi2023" : 1 ,
"customerName" : "string" ,
"enabled" : true ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"bugTraq" : [
0
],
"secureCodeWarrior" : {
"name" : "string" ,
"description" : "string" ,
"url" : "string"
},
"farsight" : {
"risk" : {
"score" : 0 ,
"delta" : 0
},
"updated" : "2019-08-24T14:15:22Z" ,
"lastThreatActivity" : "2019-08-24T14:15:22Z"
},
"matches" : [
{
"type" : "WAS" ,
"service" : {
"name" : "string" ,
"scheme" : "string" ,
"port" : 0 ,
"protocol" : "TCP" ,
"virtualHost" : "string"
},
"patternUuid" : "string"
}
],
"classifications" : {
"sans25" : 0 ,
"capec" : [
0
],
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
]
},
"ports" : [
{
"name" : "string" ,
"port" : 0 ,
"protocol" : "TCP"
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Finding ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» checkId
integer(int32)
false
none
The check id associated with the finding
» findingTemplateId
integer(int32)
false
none
The finding template from which the finding was created
» cvssScore
number(float)
false
read-only
The CVSS score, take CVSS V3 if available, otherwise CVSS V2
» cvssSeverity
string
false
read-only
The CVSS severity, take CVSS V3 severity if available, otherwise CVSS V2
» cvssV2Score
number(float)
false
read-only
The CVSS V2 score
» cvssV2BaseScore
number(float)
false
read-only
The CVSS V2 base score
» cvssV2TemporalScore
number(float)
false
read-only
The CVSS V2 temporal score
» cvssV2EnvironmentalScore
number(float)
false
read-only
The CVSS V2 environmental score
» cvssV2Vector
string
false
read-only
The CVSS V2 vector
» cvssV2Severity
string
false
read-only
The CVSS V2 severity
» cvssV3Score
number(float)
false
read-only
The CVSS V3 score
» cvssV3BaseScore
number(float)
false
read-only
The CVSS V3 base score
» cvssV3TemporalScore
number(float)
false
read-only
The CVSS V3 temporal score
» cvssV3EnvironmentalScore
number(float)
false
read-only
The CVSS V3 environmental score
» cvssV3Vector
string
false
read-only
The CVSS V3 vector
» cvssV3Severity
string
false
read-only
The CVSS V3 severity
» falsePositive
string(date-time)
false
read-only
The date when marked as false positive
» falsePositiveComment
string
false
read-only
The false positive comment
» isAccepted
boolean
false
read-only
Set to true when the risk is accepted
» accepted
string(date-time)
false
read-only
The date when the finding was marked as accepted risk.
» acceptedComment
string
false
read-only
The accepted comment
» acceptedUntil
string(date-time)
false
read-only
The date when the risk acceptance will expire.
» fixed
string(date-time)
false
read-only
The date when the risk was fixed
» commentsCount
integer(int32)
false
read-only
The number of comments
» customName
string
false
none
The custom name
» customDescription
string
false
none
The custom description
» customCve
string
false
none
The custom CVE
» customCwe
integer(int32)
false
none
The custom CWE
» customBugTraq
string
false
none
The custom bug track
» customSolution
string
false
none
The custom solution
» customRecreation
string
false
none
The custom recreation
» customImpact
string
false
none
The custom impact
» customOwaspMobile2024
integer(int32)
false
none
Custom OWASP Mobile 2024 score
» customOwaspApi2023
integer(int32)
false
none
Custom OWASP API 2023 score
» solutionPatches
[string]
false
none
The solution patches
» customCvssV2Vector
string
false
none
The custom CVSS V2 vector
» customCvssV2Severity
string
false
none
The custom CVSS V2 severity
» customCvssV3Vector
string
false
none
The custom CVSS V3 vector
» customCvssV3Severity
string
false
none
The custom CVSS V3 severity
» source
[string]
false
read-only
The scan sources
» activeSubscriptionTypes
[string]
false
read-only
The finding's active subscription types
» name
string
false
read-only
The name of the entry.
» description
string
false
read-only
Description of the entry.
» cve
string
false
read-only
The finding CVE
» cwe
string
false
read-only
CWE classification of the entry.
» solutionType
string
false
read-only
The solution type
» solution
string
false
read-only
The solution
» solutionProduct
string
false
read-only
The solution product
» solutionTitle
string
false
read-only
The solution title
» solutionUuid
string
false
read-only
The solution uuid
» exploitAvailable
boolean
false
read-only
Set to true when exploits are available
» matchIds
[integer]
false
none
The match ids
» attachmentIds
[integer]
false
read-only
The attachments ids
» firstSeen
string(date-time)
false
read-only
Timestamp when the entry was seen for the first time.
» lastSeen
string(date-time)
false
read-only
Timestamp when the entry was seen last time.
» firstScanId
integer(int32)
false
read-only
The id of the first scan
» lastScanId
integer(int32)
false
read-only
The id of the last scan
» lastScanConfigurationId
integer(int32)
false
read-only
The id of the last scan configuration
» status
string
false
read-only
The finding status
» commentPendingSince
string(date-time)
false
read-only
The date since comment is pending
» reviewed
string(date-time)
false
read-only
The finding reviewed date
» reviewedBy
string
false
read-only
The username of the user that reviewed the finding
» reviewedById
integer(int32)
false
read-only
The user ID of the user that reviewed the finding
» verified
string(date-time)
false
read-only
The finding verified date
» verifiedBy
string
false
read-only
The username of the user that verified the finding
» verifiedById
integer(int32)
false
read-only
The user ID of the user that verified the finding
» qualityAssured
string(date-time)
false
read-only
The finding quality assured date
» qualityAssuredBy
string
false
read-only
The username of the user that quality assured the finding
» qualityAssuredById
integer(int32)
false
read-only
The user ID of the user that quality assured the finding
» published
string(date-time)
false
read-only
The finding published date
» publishedBy
string
false
read-only
The username of the user that published the finding
» publishedById
integer(int32)
false
read-only
The user ID of the user that published the finding
» rejected
string(date-time)
false
read-only
The finding rejected date
» rejectedBy
string
false
read-only
The username of the user that rejected the finding
» rejectedById
integer(int32)
false
read-only
The user ID of the user that rejected the finding
» recreation
string
false
read-only
The recreation
» alternativeRecreation
string
false
none
The alternate recreation
» impact
string
false
none
The impact
» sans25
integer(int32)
false
read-only
SANS 25 classification of the entry.
» owasp2004
[integer]
false
read-only
An array of OWASP Top 10 2004 classifications of the entry.
» owasp2007
[integer]
false
read-only
An array of OWASP Top 10 2007 classifications of the entry.
» owasp2010
[integer]
false
read-only
An array of OWASP Top 10 2010 classifications of the entry.
» owasp2013
[integer]
false
read-only
An array of OWASP Top 10 2013 classifications of the entry.
» owasp2017
[integer]
false
read-only
An array of OWASP Top 10 2017 classifications of the entry.
» owasp2021
[integer]
false
read-only
The OWASP 2021 scores
» owaspMobile2024
integer(int32)
false
none
The OWASP Mobile 2024 score
» owaspApi2023
integer(int32)
false
none
The OWASP API 2023 score
» capec
[integer]
false
read-only
CAPEC classification of the entry.
» assetId
integer(int32)
true
none
The asset id
» assetName
string
false
read-only
The asset name
» potential
boolean
false
none
The finding potential. Set to true when potential false positive
» softwareComponent
string
false
read-only
The software component
» cyrating
number(double)
false
read-only
The cyrating
» cyratingDelta
number(double)
false
read-only
The cyrating delta
» exploitProbability
number(double)
false
read-only
The exploit probability
» exploitProbabilityDelta
number(double)
false
read-only
The exploit probability delta
» cyratingUpdated
string(date-time)
false
read-only
The cyrating updated date
» cyratingLastSeen
string(date-time)
false
read-only
The cyrating last seen date
» seenLastScan
boolean
false
read-only
Set to true if finding was seen in last scan
» watching
boolean
false
read-only
Whether the current user is watching this finding
» age
integer(int32)
false
read-only
The finding's age in days since creation
» assetGroupIds
[integer]
false
none
The asset group ids
» sentTo
[string]
false
read-only
A list of e-mail addresses that this finding has been sent to
» renderedName
string
false
read-only
Finding name derived from finding template
» renderedDescription
string
false
read-only
Finding description derived from finding template
» renderedCwe
integer(int32)
false
read-only
Finding CWE derived from finding template
» renderedSolution
string
false
read-only
Solution derived from finding template
» renderedRecreation
string
false
read-only
Finding recreation derived from finding template
» renderedImpact
string
false
read-only
Finding impact derived from finding template
» renderedOwaspMobile2024
integer(int32)
false
none
Finding OWASP Mobile 2024 score derived from finding template
» renderedOwaspApi2023
integer(int32)
false
none
Finding OWASP API 2023 score derived from finding template
» customerName
string
false
none
The customer name
» enabled
boolean
false
read-only
Determines if the entry is enabled or not.
» tags
[Tag ]
false
read-only
The tags
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
» bugTraq
[integer]
false
read-only
An array of Bugtraq reference IDs.
» secureCodeWarrior
SecureCodeWarrior
false
read-only
The secure code warrior information on the vulnerability description and training
»» name
string
false
none
The name of the entry.
»» description
string
false
none
Description of the entry.
»» url
string
false
none
none
» farsight
Farsight
false
read-only
The farsight concists in additional information on risk such as likelihood, threat activity
»» risk
Farsight.Risk
false
none
none
»»» score
number(float)
false
none
none
»»» delta
number(float)
false
none
none
»» updated
string(date-time)
false
none
The timestamp when the entry was updated.
»» lastThreatActivity
string(date-time)
false
none
none
» matches
[BaseMatch ]
false
read-only
The match list
»» type
string
true
none
none
»» service
Service
false
none
none
»»» name
string
true
none
The name of the entry.
»»» scheme
string
false
none
none
»»» port
integer(int32)
false
none
none
»»» protocol
string
true
none
none
»»» virtualHost
string
false
none
none
»» patternUuid
string
false
none
none
» classifications
Classification.Classifications
false
read-only
The classifications such as CAPEC, OWASP20XX
»» sans25
integer(int32)
false
none
SANS 25 classification of the entry.
»» capec
[integer]
false
none
CAPEC classification of the entry.
»» owasp2004
[integer]
false
none
An array of OWASP Top 10 2004 classifications of the entry.
»» owasp2007
[integer]
false
none
An array of OWASP Top 10 2007 classifications of the entry.
»» owasp2010
[integer]
false
none
An array of OWASP Top 10 2010 classifications of the entry.
»» owasp2013
[integer]
false
none
An array of OWASP Top 10 2013 classifications of the entry.
»» owasp2017
[integer]
false
none
An array of OWASP Top 10 2017 classifications of the entry.
»» owasp2021
[integer]
false
none
none
» ports
[Port ]
false
read-only
Ports information on the vulnerability description
»» name
string
false
none
The name of the entry.
»» port
integer(int32)
false
none
none
»» protocol
string
false
none
none
Enumerated Values
Property
Value
cvssSeverity
RECOMMENDATION
cvssSeverity
LOW
cvssSeverity
MEDIUM
cvssSeverity
HIGH
cvssSeverity
CRITICAL
cvssV2Severity
RECOMMENDATION
cvssV2Severity
LOW
cvssV2Severity
MEDIUM
cvssV2Severity
HIGH
cvssV2Severity
CRITICAL
cvssV3Severity
RECOMMENDATION
cvssV3Severity
LOW
cvssV3Severity
MEDIUM
cvssV3Severity
HIGH
cvssV3Severity
CRITICAL
customCvssV2Severity
RECOMMENDATION
customCvssV2Severity
LOW
customCvssV2Severity
MEDIUM
customCvssV2Severity
HIGH
customCvssV2Severity
CRITICAL
customCvssV3Severity
RECOMMENDATION
customCvssV3Severity
LOW
customCvssV3Severity
MEDIUM
customCvssV3Severity
HIGH
customCvssV3Severity
CRITICAL
solutionType
NOT_CLASSIFIED
solutionType
UNKNOWN
solutionType
RECONFIGURE
solutionType
WORKAROUND
solutionType
SOLUTION_IN_PROGRESS
solutionType
CONTACT_VENDOR
solutionType
UPDATE
solutionType
PATCH
solutionType
NOT_ACKNOWLEDGED
solutionType
NO_SOLUTION
solutionType
CONFIGURE_ACCOUNT
solutionType
DISABLE
solutionType
FILTER
solutionType
MALWARE
status
to review
status
to verify
status
to QA
status
to publish
status
rejected
status
present
status
accepted
status
false positive
status
pending verification
status
fixed
status
irreproducible
type
WAS
type
GATHEREDINFORMATION
type
COMPONENT
type
COMPLIANCE
type
PAC
protocol
TCP
protocol
UDP
protocol
TCP
protocol
UDP
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Scan configuration groups
Get scan configuration group
# You can also use wget
curl -X GET \
/rest/scan-configuration-groups/{ scanConfigurationGroupId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configuration-groups/{scanConfigurationGroupId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configuration-groups/{scanConfigurationGroupId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scan-configuration-groups/{scanConfigurationGroupId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scan-configuration-groups/{scanConfigurationGroupId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scan-configuration-groups/{scanConfigurationGroupId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scan-configuration-groups/{scanConfigurationGroupId}
Parameters
Name
In
Type
Required
Description
scanConfigurationGroupId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"parentId" : 0 ,
"count" : 0
}
Responses
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete scan configuration group
# You can also use wget
curl -X DELETE \
/rest/scan-configuration-groups/{ scanConfigurationGroupId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configuration-groups/{scanConfigurationGroupId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configuration-groups/{scanConfigurationGroupId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/scan-configuration-groups/{scanConfigurationGroupId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/scan-configuration-groups/{scanConfigurationGroupId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/scan-configuration-groups/{scanConfigurationGroupId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /scan-configuration-groups/{scanConfigurationGroupId}
Parameters
Name
In
Type
Required
Description
scanConfigurationGroupId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a scan configuration group
# You can also use wget
curl -X PATCH \
/rest/scan-configuration-groups/{ scanConfigurationGroupId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configuration-groups/{scanConfigurationGroupId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"parentId": 0
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configuration-groups/{scanConfigurationGroupId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/scan-configuration-groups/{scanConfigurationGroupId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/scan-configuration-groups/{scanConfigurationGroupId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/scan-configuration-groups/{scanConfigurationGroupId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /scan-configuration-groups/{scanConfigurationGroupId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"parentId" : 0
}
Parameters
Name
In
Type
Required
Description
scanConfigurationGroupId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ScanConfigurationGroup
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of scan configuration groups
# You can also use wget
curl -X GET \
/rest/scan-configuration-groups \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configuration-groups ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configuration-groups ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scan-configuration-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scan-configuration-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scan-configuration-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scan-configuration-groups
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"parentId" : 0 ,
"count" : 0
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ScanConfigurationGroup ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» parentId
integer(int32)
false
none
The ID of the parent entry.
» count
integer(int64)
false
read-only
The total number of entries associated with this entry and its child entries.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a scan configuration group
# You can also use wget
curl -X POST \
/rest/scan-configuration-groups \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configuration-groups ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"parentId": 0
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configuration-groups ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/scan-configuration-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/scan-configuration-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/scan-configuration-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /scan-configuration-groups
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"parentId" : 0
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ScanConfigurationGroup
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/scan-configuration-groups \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configuration-groups ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configuration-groups ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/scan-configuration-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/scan-configuration-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/scan-configuration-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /scan-configuration-groups
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Scan configurations
Create a link to an asset identifier
# You can also use wget
curl -X PUT \
/rest/scan-configurations/{ scanConfigurationId} /asset-identifiers/{ assetIdentifierId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/{scanConfigurationId}/asset-identifiers/{assetIdentifierId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/{scanConfigurationId}/asset-identifiers/{assetIdentifierId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/scan-configurations/{scanConfigurationId}/asset-identifiers/{assetIdentifierId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/scan-configurations/{scanConfigurationId}/asset-identifiers/{assetIdentifierId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/scan-configurations/{scanConfigurationId}/asset-identifiers/{assetIdentifierId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /scan-configurations/{scanConfigurationId}/asset-identifiers/{assetIdentifierId}
Parameters
Name
In
Type
Required
Description
scanConfigurationId
path
integer(int32)
true
none
assetIdentifierId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to an asset identifier
# You can also use wget
curl -X DELETE \
/rest/scan-configurations/{ scanConfigurationId} /asset-identifiers/{ assetIdentifierId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/{scanConfigurationId}/asset-identifiers/{assetIdentifierId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/{scanConfigurationId}/asset-identifiers/{assetIdentifierId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/scan-configurations/{scanConfigurationId}/asset-identifiers/{assetIdentifierId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/scan-configurations/{scanConfigurationId}/asset-identifiers/{assetIdentifierId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/scan-configurations/{scanConfigurationId}/asset-identifiers/{assetIdentifierId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /scan-configurations/{scanConfigurationId}/asset-identifiers/{assetIdentifierId}
Parameters
Name
In
Type
Required
Description
scanConfigurationId
path
integer(int32)
true
none
assetIdentifierId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to an asset
# You can also use wget
curl -X PUT \
/rest/scan-configurations/{ scanConfigurationId} /assets/{ assetId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/{scanConfigurationId}/assets/{assetId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/{scanConfigurationId}/assets/{assetId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/scan-configurations/{scanConfigurationId}/assets/{assetId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/scan-configurations/{scanConfigurationId}/assets/{assetId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/scan-configurations/{scanConfigurationId}/assets/{assetId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /scan-configurations/{scanConfigurationId}/assets/{assetId}
Parameters
Name
In
Type
Required
Description
scanConfigurationId
path
integer(int32)
true
none
assetId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to an asset
# You can also use wget
curl -X DELETE \
/rest/scan-configurations/{ scanConfigurationId} /assets/{ assetId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/{scanConfigurationId}/assets/{assetId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/{scanConfigurationId}/assets/{assetId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/scan-configurations/{scanConfigurationId}/assets/{assetId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/scan-configurations/{scanConfigurationId}/assets/{assetId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/scan-configurations/{scanConfigurationId}/assets/{assetId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /scan-configurations/{scanConfigurationId}/assets/{assetId}
Parameters
Name
In
Type
Required
Description
scanConfigurationId
path
integer(int32)
true
none
assetId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a scan configuration
# You can also use wget
curl -X GET \
/rest/scan-configurations/{ scanConfigurationId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/{scanConfigurationId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/{scanConfigurationId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scan-configurations/{scanConfigurationId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scan-configurations/{scanConfigurationId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scan-configurations/{scanConfigurationId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scan-configurations/{scanConfigurationId}
Parameters
Name
In
Type
Required
Description
scanConfigurationId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"template" : "SCOUT" ,
"groupId" : 0 ,
"scheduleIds" : [
0
],
"assetIdentifierIds" : [
0
],
"assetIds" : [
0
],
"workflowId" : 0 ,
"enabled" : true ,
"scannerId" : 0 ,
"nextOccurrence" : "2019-08-24T14:15:22Z" ,
"lastScan" : "2019-08-24T14:15:22Z" ,
"configuration" : {
"template" : "SCOUT"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Responses
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a scan configuration
# You can also use wget
curl -X DELETE \
/rest/scan-configurations/{ scanConfigurationId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/{scanConfigurationId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/{scanConfigurationId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/scan-configurations/{scanConfigurationId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/scan-configurations/{scanConfigurationId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/scan-configurations/{scanConfigurationId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /scan-configurations/{scanConfigurationId}
Parameters
Name
In
Type
Required
Description
scanConfigurationId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a scan configuration
# You can also use wget
curl -X PATCH \
/rest/scan-configurations/{ scanConfigurationId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/{scanConfigurationId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"groupId": 0,
"assetIdentifierIds": [
0
],
"assetIds": [
0
],
"workflowId": 0,
"enabled": true,
"scannerId": 0,
"configuration": {
"template": "SCOUT"
}
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/{scanConfigurationId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/scan-configurations/{scanConfigurationId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/scan-configurations/{scanConfigurationId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/scan-configurations/{scanConfigurationId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /scan-configurations/{scanConfigurationId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"groupId" : 0 ,
"assetIdentifierIds" : [
0
],
"assetIds" : [
0
],
"workflowId" : 0 ,
"enabled" : true ,
"scannerId" : 0 ,
"configuration" : {
"template" : "SCOUT"
}
}
Parameters
Name
In
Type
Required
Description
scanConfigurationId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ScanConfiguration
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a schedule
# You can also use wget
curl -X PUT \
/rest/scan-configurations/{ scanConfigurationId} /schedules/{ scheduleId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/{scanConfigurationId}/schedules/{scheduleId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/{scanConfigurationId}/schedules/{scheduleId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/scan-configurations/{scanConfigurationId}/schedules/{scheduleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/scan-configurations/{scanConfigurationId}/schedules/{scheduleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/scan-configurations/{scanConfigurationId}/schedules/{scheduleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /scan-configurations/{scanConfigurationId}/schedules/{scheduleId}
Parameters
Name
In
Type
Required
Description
scanConfigurationId
path
integer(int32)
true
none
scheduleId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a schedule
# You can also use wget
curl -X DELETE \
/rest/scan-configurations/{ scanConfigurationId} /schedules/{ scheduleId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/{scanConfigurationId}/schedules/{scheduleId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/{scanConfigurationId}/schedules/{scheduleId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/scan-configurations/{scanConfigurationId}/schedules/{scheduleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/scan-configurations/{scanConfigurationId}/schedules/{scheduleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/scan-configurations/{scanConfigurationId}/schedules/{scheduleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /scan-configurations/{scanConfigurationId}/schedules/{scheduleId}
Parameters
Name
In
Type
Required
Description
scanConfigurationId
path
integer(int32)
true
none
scheduleId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/scan-configurations/{ scanConfigurationId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/{scanConfigurationId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/{scanConfigurationId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/scan-configurations/{scanConfigurationId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/scan-configurations/{scanConfigurationId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/scan-configurations/{scanConfigurationId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /scan-configurations/{scanConfigurationId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
scanConfigurationId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/scan-configurations/{ scanConfigurationId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/{scanConfigurationId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/{scanConfigurationId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/scan-configurations/{scanConfigurationId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/scan-configurations/{scanConfigurationId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/scan-configurations/{scanConfigurationId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /scan-configurations/{scanConfigurationId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
scanConfigurationId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a tag link to one or several scan configurations
# You can also use wget
curl -X PUT \
/rest/scan-configurations/tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/scan-configurations/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/scan-configurations/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/scan-configurations/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /scan-configurations/tags/{tagId}
Parameters
Name
In
Type
Required
Description
tagId
path
integer(int32)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a tag link to one or several scan configurations
# You can also use wget
curl -X DELETE \
/rest/scan-configurations/tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/scan-configurations/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/scan-configurations/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/scan-configurations/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /scan-configurations/tags/{tagId}
Parameters
Name
In
Type
Required
Description
tagId
path
integer(int32)
true
none
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of scan configurations
# You can also use wget
curl -X GET \
/rest/scan-configurations \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scan-configurations" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scan-configurations' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scan-configurations' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scan-configurations
Scan configurations define settings that should apply to the scan.
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"template" : "SCOUT" ,
"groupId" : 0 ,
"scheduleIds" : [
0
],
"assetIdentifierIds" : [
0
],
"assetIds" : [
0
],
"workflowId" : 0 ,
"enabled" : true ,
"scannerId" : 0 ,
"nextOccurrence" : "2019-08-24T14:15:22Z" ,
"lastScan" : "2019-08-24T14:15:22Z" ,
"configuration" : {
"template" : "SCOUT"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ScanConfiguration ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» template
string
false
read-only
The scan template
» groupId
integer(int32)
false
none
The scan group id
» scheduleIds
[integer]
false
read-only
The schedule ids associated with this scan configuration
» assetIdentifierIds
[integer]
false
none
An array of asset identifier IDs associated with this entry
» assetIds
[integer]
false
none
The asset IDs associated with this scan configuration
» workflowId
integer(int32)
false
none
The workflow ID associated with this scan configuration
» enabled
boolean
false
none
Determines if the entry is enabled or not.
» scannerId
integer(int32)
false
none
The scanner id
» nextOccurrence
string(date-time)
false
read-only
The scan next occurrence date
» lastScan
string(date-time)
false
read-only
Last time a scan was performed using this configuration
» configuration
BaseScanConfigurationTemplate
true
none
The scan configuration
»» template
string
true
none
none
» tags
[Tag ]
false
read-only
The tags
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
Enumerated Values
Property
Value
template
SCOUT
template
SCALE
template
SWAT
template
CLOUDSEC
template
NETWORK_SCAN
template
DOCKER_SCAN
template
DOCKER_DISCOVERY
template
NETWORK_DISCOVERY
template
CLOUD_DISCOVERY
template
AGENT_SCAN
template
WORKFLOW
template
SCOUT
template
SCALE
template
SWAT
template
CLOUDSEC
template
NETWORK_SCAN
template
DOCKER_SCAN
template
DOCKER_DISCOVERY
template
NETWORK_DISCOVERY
template
CLOUD_DISCOVERY
template
AGENT_SCAN
template
WORKFLOW
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a scan configuration
# You can also use wget
curl -X POST \
/rest/scan-configurations \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"groupId": 0,
"assetIdentifierIds": [
0
],
"assetIds": [
0
],
"workflowId": 0,
"enabled": true,
"scannerId": 0,
"configuration": {
"template": "SCOUT"
}
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/scan-configurations" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/scan-configurations' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/scan-configurations' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /scan-configurations
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"groupId" : 0 ,
"assetIdentifierIds" : [
0
],
"assetIds" : [
0
],
"workflowId" : 0 ,
"enabled" : true ,
"scannerId" : 0 ,
"configuration" : {
"template" : "SCOUT"
}
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ScanConfiguration
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete one or several scan configurations
# You can also use wget
curl -X DELETE \
/rest/scan-configurations \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/scan-configurations" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/scan-configurations' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/scan-configurations' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /scan-configurations
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/scan-configurations \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/scan-configurations" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/scan-configurations' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/scan-configurations' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /scan-configurations
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update one or several scan configurations
# You can also use wget
curl -X PATCH \
/rest/scan-configurations \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"groupId": 0,
"assetIdentifierIds": [
0
],
"assetIds": [
0
],
"workflowId": 0,
"enabled": true,
"scannerId": 0,
"configuration": {
"template": "SCOUT"
}
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/scan-configurations" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/scan-configurations' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/scan-configurations' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /scan-configurations
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"groupId" : 0 ,
"assetIdentifierIds" : [
0
],
"assetIds" : [
0
],
"workflowId" : 0 ,
"enabled" : true ,
"scannerId" : 0 ,
"configuration" : {
"template" : "SCOUT"
}
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
body
body
ScanConfiguration
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/scan-configurations/{ scanConfigurationId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/{scanConfigurationId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/{scanConfigurationId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/scan-configurations/{scanConfigurationId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/scan-configurations/{scanConfigurationId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/scan-configurations/{scanConfigurationId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /scan-configurations/{scanConfigurationId}/tags
Body parameter
Name
In
Type
Required
Description
scanConfigurationId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/scan-configurations/tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/scan-configurations/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/scan-configurations/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/scan-configurations/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /scan-configurations/tags
Body parameter
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Start a scan based on this configuration
# You can also use wget
curl -X POST \
/rest/scan-configurations/{ scanConfigurationId} /scan \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/{scanConfigurationId}/scan ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/{scanConfigurationId}/scan ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/scan-configurations/{scanConfigurationId}/scan" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/scan-configurations/{scanConfigurationId}/scan' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/scan-configurations/{scanConfigurationId}/scan' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /scan-configurations/{scanConfigurationId}/scan
Parameters
Name
In
Type
Required
Description
scanConfigurationId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Test a setup LUA script
# You can also use wget
curl -X POST \
/rest/scan-configurations/test-setup-script \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/test-setup-script ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"script": "string",
"blacklist": [
"string"
],
"hostmap": [
{
"from": "string",
"to": [
"string"
]
}
]
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/test-setup-script ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/scan-configurations/test-setup-script" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/scan-configurations/test-setup-script' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/scan-configurations/test-setup-script' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /scan-configurations/test-setup-script
Body parameter
{
"script" : "string" ,
"blacklist" : [
"string"
],
"hostmap" : [
{
"from" : "string" ,
"to" : [
"string"
]
}
]
}
Parameters
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Test an application setup LUA script
# You can also use wget
curl -X POST \
/rest/scan-configurations/{ scanConfigurationId} /test-setup-script \
-H 'Content-Type: text/plain' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' text/plain ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-configurations/{scanConfigurationId}/test-setup-script ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' string ' ;
const headers = {
' Content-Type ' : ' text/plain ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-configurations/{scanConfigurationId}/test-setup-script ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "text/plain" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/scan-configurations/{scanConfigurationId}/test-setup-script" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'text/plain' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/scan-configurations/{scanConfigurationId}/test-setup-script' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'text/plain' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/scan-configurations/{scanConfigurationId}/test-setup-script' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /scan-configurations/{scanConfigurationId}/test-setup-script
Body parameter
Parameters
Name
In
Type
Required
Description
scanConfigurationId
path
integer(int32)
true
none
body
body
string
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Scan policies
Get a scan policy
# You can also use wget
curl -X GET \
/rest/scan-policies/{ scanPolicyId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-policies/{scanPolicyId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-policies/{scanPolicyId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scan-policies/{scanPolicyId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scan-policies/{scanPolicyId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scan-policies/{scanPolicyId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scan-policies/{scanPolicyId}
Parameters
Name
In
Type
Required
Description
scanPolicyId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"system" : true ,
"accountIds" : [
0
],
"settings" : {
"safeOnly" : true ,
"tryDefaultCredentials" : true ,
"ignoreFallbackKernels" : true ,
"useDiscoveredCredentials" : true ,
"virtualHostsIp" : true ,
"virtualHostsHostName" : true ,
"virtualHostsReverseDns" : true ,
"speed" : "string" ,
"portsTcp" : "string" ,
"portsUdp" : "string" ,
"netstatCheck" : "string" ,
"regularPortScanFallback" : true ,
"authenticatedScanSshPort" : 65535 ,
"trustedCasPem" : "string" ,
"useCustomCredentials" : true ,
"enableRemoteRegistry" : true
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
ScanPolicy
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a scan policy
# You can also use wget
curl -X DELETE \
/rest/scan-policies/{ scanPolicyId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-policies/{scanPolicyId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-policies/{scanPolicyId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/scan-policies/{scanPolicyId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/scan-policies/{scanPolicyId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/scan-policies/{scanPolicyId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /scan-policies/{scanPolicyId}
Parameters
Name
In
Type
Required
Description
scanPolicyId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update an scan policy
# You can also use wget
curl -X PATCH \
/rest/scan-policies/{ scanPolicyId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-policies/{scanPolicyId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"accountIds": [
0
],
"settings": {
"safeOnly": true,
"tryDefaultCredentials": true,
"ignoreFallbackKernels": true,
"useDiscoveredCredentials": true,
"virtualHostsIp": true,
"virtualHostsHostName": true,
"virtualHostsReverseDns": true,
"speed": "string",
"portsTcp": "string",
"portsUdp": "string",
"netstatCheck": "string",
"regularPortScanFallback": true,
"authenticatedScanSshPort": 65535,
"trustedCasPem": "string",
"useCustomCredentials": true,
"enableRemoteRegistry": true
}
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-policies/{scanPolicyId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/scan-policies/{scanPolicyId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/scan-policies/{scanPolicyId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/scan-policies/{scanPolicyId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /scan-policies/{scanPolicyId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"accountIds" : [
0
],
"settings" : {
"safeOnly" : true ,
"tryDefaultCredentials" : true ,
"ignoreFallbackKernels" : true ,
"useDiscoveredCredentials" : true ,
"virtualHostsIp" : true ,
"virtualHostsHostName" : true ,
"virtualHostsReverseDns" : true ,
"speed" : "string" ,
"portsTcp" : "string" ,
"portsUdp" : "string" ,
"netstatCheck" : "string" ,
"regularPortScanFallback" : true ,
"authenticatedScanSshPort" : 65535 ,
"trustedCasPem" : "string" ,
"useCustomCredentials" : true ,
"enableRemoteRegistry" : true
}
}
Parameters
Name
In
Type
Required
Description
scanPolicyId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ScanPolicy
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to an account
# You can also use wget
curl -X PUT \
/rest/scan-policies/{ scanPolicyId} /accounts/{ accountId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-policies/{scanPolicyId}/accounts/{accountId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-policies/{scanPolicyId}/accounts/{accountId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/scan-policies/{scanPolicyId}/accounts/{accountId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/scan-policies/{scanPolicyId}/accounts/{accountId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/scan-policies/{scanPolicyId}/accounts/{accountId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /scan-policies/{scanPolicyId}/accounts/{accountId}
Parameters
Name
In
Type
Required
Description
scanPolicyId
path
integer(int32)
true
none
accountId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to an account
# You can also use wget
curl -X DELETE \
/rest/scan-policies/{ scanPolicyId} /accounts/{ accountId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-policies/{scanPolicyId}/accounts/{accountId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-policies/{scanPolicyId}/accounts/{accountId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/scan-policies/{scanPolicyId}/accounts/{accountId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/scan-policies/{scanPolicyId}/accounts/{accountId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/scan-policies/{scanPolicyId}/accounts/{accountId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /scan-policies/{scanPolicyId}/accounts/{accountId}
Parameters
Name
In
Type
Required
Description
scanPolicyId
path
integer(int32)
true
none
accountId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/scan-policies/{ scanPolicyId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-policies/{scanPolicyId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-policies/{scanPolicyId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/scan-policies/{scanPolicyId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/scan-policies/{scanPolicyId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/scan-policies/{scanPolicyId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /scan-policies/{scanPolicyId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
scanPolicyId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/scan-policies/{ scanPolicyId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-policies/{scanPolicyId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-policies/{scanPolicyId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/scan-policies/{scanPolicyId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/scan-policies/{scanPolicyId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/scan-policies/{scanPolicyId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /scan-policies/{scanPolicyId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
scanPolicyId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get default scan policy settings
# You can also use wget
curl -X GET \
/rest/scan-policies/default-settings \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-policies/default-settings ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-policies/default-settings ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scan-policies/default-settings" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scan-policies/default-settings' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scan-policies/default-settings' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scan-policies/default-settings
The above code returns response like this:
default Response
{
"safeOnly" : true ,
"tryDefaultCredentials" : true ,
"ignoreFallbackKernels" : true ,
"useDiscoveredCredentials" : true ,
"virtualHostsIp" : true ,
"virtualHostsHostName" : true ,
"virtualHostsReverseDns" : true ,
"speed" : "string" ,
"portsTcp" : "string" ,
"portsUdp" : "string" ,
"netstatCheck" : "string" ,
"regularPortScanFallback" : true ,
"authenticatedScanSshPort" : 65535 ,
"trustedCasPem" : "string" ,
"useCustomCredentials" : true ,
"enableRemoteRegistry" : true
}
Responses
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of scan policies
# You can also use wget
curl -X GET \
/rest/scan-policies \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-policies ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-policies ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scan-policies" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scan-policies' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scan-policies' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scan-policies
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"system" : true ,
"accountIds" : [
0
],
"settings" : {
"safeOnly" : true ,
"tryDefaultCredentials" : true ,
"ignoreFallbackKernels" : true ,
"useDiscoveredCredentials" : true ,
"virtualHostsIp" : true ,
"virtualHostsHostName" : true ,
"virtualHostsReverseDns" : true ,
"speed" : "string" ,
"portsTcp" : "string" ,
"portsUdp" : "string" ,
"netstatCheck" : "string" ,
"regularPortScanFallback" : true ,
"authenticatedScanSshPort" : 65535 ,
"trustedCasPem" : "string" ,
"useCustomCredentials" : true ,
"enableRemoteRegistry" : true
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ScanPolicy ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» system
boolean
false
read-only
none
» accountIds
[integer]
false
none
none
» settings
ScanPolicySettings
false
none
none
»» safeOnly
boolean
false
none
none
»» tryDefaultCredentials
boolean
false
none
none
»» ignoreFallbackKernels
boolean
false
none
none
»» useDiscoveredCredentials
boolean
false
none
none
»» virtualHostsIp
boolean
false
none
none
»» virtualHostsHostName
boolean
false
none
none
»» virtualHostsReverseDns
boolean
false
none
none
»» speed
string
false
none
none
»» portsTcp
string
false
none
none
»» portsUdp
string
false
none
none
»» netstatCheck
string
false
none
none
»» regularPortScanFallback
boolean
false
none
none
»» authenticatedScanSshPort
integer(int32)
false
none
none
»» trustedCasPem
string
false
none
none
»» useCustomCredentials
boolean
false
none
none
»» enableRemoteRegistry
boolean
false
none
none
» tags
[Tag ]
false
read-only
[The tags]
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a scan policy
# You can also use wget
curl -X POST \
/rest/scan-policies \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-policies ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"accountIds": [
0
],
"settings": {
"safeOnly": true,
"tryDefaultCredentials": true,
"ignoreFallbackKernels": true,
"useDiscoveredCredentials": true,
"virtualHostsIp": true,
"virtualHostsHostName": true,
"virtualHostsReverseDns": true,
"speed": "string",
"portsTcp": "string",
"portsUdp": "string",
"netstatCheck": "string",
"regularPortScanFallback": true,
"authenticatedScanSshPort": 65535,
"trustedCasPem": "string",
"useCustomCredentials": true,
"enableRemoteRegistry": true
}
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-policies ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/scan-policies" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/scan-policies' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/scan-policies' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /scan-policies
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"accountIds" : [
0
],
"settings" : {
"safeOnly" : true ,
"tryDefaultCredentials" : true ,
"ignoreFallbackKernels" : true ,
"useDiscoveredCredentials" : true ,
"virtualHostsIp" : true ,
"virtualHostsHostName" : true ,
"virtualHostsReverseDns" : true ,
"speed" : "string" ,
"portsTcp" : "string" ,
"portsUdp" : "string" ,
"netstatCheck" : "string" ,
"regularPortScanFallback" : true ,
"authenticatedScanSshPort" : 65535 ,
"trustedCasPem" : "string" ,
"useCustomCredentials" : true ,
"enableRemoteRegistry" : true
}
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ScanPolicy
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/scan-policies \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-policies ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-policies ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/scan-policies" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/scan-policies' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/scan-policies' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /scan-policies
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/scan-policies/{ scanPolicyId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-policies/{scanPolicyId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-policies/{scanPolicyId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/scan-policies/{scanPolicyId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/scan-policies/{scanPolicyId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/scan-policies/{scanPolicyId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /scan-policies/{scanPolicyId}/tags
Body parameter
Name
In
Type
Required
Description
scanPolicyId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Modify linked set of account IDs
# You can also use wget
curl -X PUT \
/rest/scan-policies/{ scanPolicyId} /accounts \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scan-policies/{scanPolicyId}/accounts ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scan-policies/{scanPolicyId}/accounts ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/scan-policies/{scanPolicyId}/accounts" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/scan-policies/{scanPolicyId}/accounts' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/scan-policies/{scanPolicyId}/accounts' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /scan-policies/{scanPolicyId}/accounts
Body parameter
Parameters
Name
In
Type
Required
Description
scanPolicyId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Scanners
Get a scanner
# You can also use wget
curl -X GET \
/rest/scanners/{ scannerId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scanners/{scannerId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scanners/{scannerId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scanners/{scannerId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scanners/{scannerId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scanners/{scannerId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scanners/{scannerId}
Parameters
Name
In
Type
Required
Description
scannerId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"userId" : 0 ,
"name" : "string" ,
"ipaddress" : "string" ,
"mode" : 0 ,
"approved" : true ,
"inactive" : true ,
"useProxy" : true ,
"polling" : true ,
"serverStatus" : "string" ,
"lastConnection" : "2019-08-24T14:15:22Z" ,
"lastUpdate" : "2019-08-24T14:15:22Z" ,
"version" : "string" ,
"uiVersion" : "string" ,
"scannerVersion" : "string" ,
"appsecScaleScanner" : true ,
"groupId" : 0 ,
"groupName" : "string" ,
"isOutpost" : true ,
"isAwsScanner" : true ,
"scanningDisabled" : true ,
"isGroup" : true ,
"performUpdate" : true ,
"hwAddr" : "string" ,
"hmacKey" : "string" ,
"rulesVersion" : "2019-08-24T14:15:22Z"
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Scanner
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of scanners
# You can also use wget
curl -X GET \
/rest/scanners \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scanners ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scanners ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scanners" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scanners' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scanners' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scanners
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"userId" : 0 ,
"name" : "string" ,
"ipaddress" : "string" ,
"mode" : 0 ,
"approved" : true ,
"inactive" : true ,
"useProxy" : true ,
"polling" : true ,
"serverStatus" : "string" ,
"lastConnection" : "2019-08-24T14:15:22Z" ,
"lastUpdate" : "2019-08-24T14:15:22Z" ,
"version" : "string" ,
"uiVersion" : "string" ,
"scannerVersion" : "string" ,
"appsecScaleScanner" : true ,
"groupId" : 0 ,
"groupName" : "string" ,
"isOutpost" : true ,
"isAwsScanner" : true ,
"scanningDisabled" : true ,
"isGroup" : true ,
"performUpdate" : true ,
"hwAddr" : "string" ,
"hmacKey" : "string" ,
"rulesVersion" : "2019-08-24T14:15:22Z"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Scanner ]
false
none
none
» id
integer(int64)
false
read-only
The ID of the entry.
» userId
integer(int64)
false
read-only
none
» name
string
true
none
The name of the entry.
» ipaddress
string
true
none
none
» mode
integer(int32)
false
none
none
» approved
boolean
false
none
none
» inactive
boolean
false
none
none
» useProxy
boolean
false
none
none
» polling
boolean
false
read-only
none
» serverStatus
string
false
read-only
none
» lastConnection
string(date-time)
false
read-only
none
» lastUpdate
string(date-time)
false
read-only
none
» version
string
false
read-only
none
» uiVersion
string
false
read-only
none
» scannerVersion
string
false
read-only
none
» appsecScaleScanner
boolean
false
read-only
none
» groupId
integer(int64)
false
none
none
» groupName
string
false
none
none
» isOutpost
boolean
false
read-only
none
» isAwsScanner
boolean
false
read-only
none
» scanningDisabled
boolean
false
read-only
none
» isGroup
boolean
false
none
none
» performUpdate
boolean
false
read-only
none
» hwAddr
string
false
read-only
none
» hmacKey
string
false
read-only
none
» rulesVersion
string(date-time)
false
read-only
none
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/scanners \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scanners ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scanners ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/scanners" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/scanners' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/scanners' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /scanners
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Scans
Get the crawled URLs for a scan
# You can also use wget
curl -X GET \
/rest/scans/{ scanId} /crawled-urls \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scans/{scanId}/crawled-urls ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scans/{scanId}/crawled-urls ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "text/plain" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scans/{scanId}/crawled-urls" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'text/plain' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scans/{scanId}/crawled-urls' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scans/{scanId}/crawled-urls' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scans/{scanId}/crawled-urls
Parameters
Name
In
Type
Required
Description
scanId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get the discovery results for a scan
# You can also use wget
curl -X GET \
/rest/scans/{ scanId} /discovery \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scans/{scanId}/discovery ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scans/{scanId}/discovery ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "text/plain" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scans/{scanId}/discovery" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'text/plain' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scans/{scanId}/discovery' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scans/{scanId}/discovery' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scans/{scanId}/discovery
Parameters
Name
In
Type
Required
Description
scanId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get the issues for a scan
# You can also use wget
curl -X GET \
/rest/scans/{ scanId} /issues \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scans/{scanId}/issues ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scans/{scanId}/issues ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scans/{scanId}/issues" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scans/{scanId}/issues' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scans/{scanId}/issues' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scans/{scanId}/issues
Parameters
Name
In
Type
Required
Description
scanId
path
integer(int32)
true
none
The above code returns response like this:
default Response
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get the log for a scan
# You can also use wget
curl -X GET \
/rest/scans/{ scanId} /log \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scans/{scanId}/log ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scans/{scanId}/log ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scans/{scanId}/log" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scans/{scanId}/log' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scans/{scanId}/log' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scans/{scanId}/log
Parameters
Name
In
Type
Required
Description
scanId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a scan
# You can also use wget
curl -X GET \
/rest/scans/{ scanId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scans/{scanId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scans/{scanId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scans/{scanId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scans/{scanId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scans/{scanId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scans/{scanId}
Parameters
Name
In
Type
Required
Description
scanId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"jobId" : "string" ,
"status" : "QUEUED" ,
"statusDetails" : "string" ,
"source" : "SCOUT" ,
"scanConfigurationId" : 0 ,
"scanConfigurationName" : "string" ,
"workflowId" : 0 ,
"workflowName" : "string" ,
"started" : "2019-08-24T14:15:22Z" ,
"ended" : "2019-08-24T14:15:22Z" ,
"expectedStart" : "2019-08-24T14:15:22Z" ,
"expectedEnd" : "2019-08-24T14:15:22Z" ,
"blueprintAvailable" : true ,
"assetIdentifierId" : 0 ,
"assetIdentifierType" : "IP" ,
"assetIdentifierName" : "string" ,
"assetId" : 0 ,
"assetName" : "string" ,
"latestRuleDate" : "2019-08-24T14:15:22Z" ,
"scanless" : true ,
"parentId" : 0 ,
"scheduleId" : 0 ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
ScanLog
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of scans
# You can also use wget
curl -X GET \
/rest/scans \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scans ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scans ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scans" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scans' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scans' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scans
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"jobId" : "string" ,
"status" : "QUEUED" ,
"statusDetails" : "string" ,
"source" : "SCOUT" ,
"scanConfigurationId" : 0 ,
"scanConfigurationName" : "string" ,
"workflowId" : 0 ,
"workflowName" : "string" ,
"started" : "2019-08-24T14:15:22Z" ,
"ended" : "2019-08-24T14:15:22Z" ,
"expectedStart" : "2019-08-24T14:15:22Z" ,
"expectedEnd" : "2019-08-24T14:15:22Z" ,
"blueprintAvailable" : true ,
"assetIdentifierId" : 0 ,
"assetIdentifierType" : "IP" ,
"assetIdentifierName" : "string" ,
"assetId" : 0 ,
"assetName" : "string" ,
"latestRuleDate" : "2019-08-24T14:15:22Z" ,
"scanless" : true ,
"parentId" : 0 ,
"scheduleId" : 0 ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ScanLog ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» jobId
string
false
none
The id of the scan job
» status
string
true
none
The scan status
» statusDetails
string
false
none
The scan status details
» source
string
true
none
The scan source
» scanConfigurationId
integer(int32)
false
none
The id of the scan configuration
» scanConfigurationName
string
false
read-only
The name of the scan configuration
» workflowId
integer(int32)
false
none
The id of the workflow
» workflowName
string
false
read-only
The name of the workflow
» started
string(date-time)
false
none
The scan started date
» ended
string(date-time)
false
none
The scan ended date
» expectedStart
string(date-time)
false
read-only
The scan expected start date
» expectedEnd
string(date-time)
false
read-only
The scan expected end date
» blueprintAvailable
boolean
false
read-only
Set to true when scan blueprint is available
» assetIdentifierId
integer(int32)
false
none
The ID of the asset identifier associated with this entry
» assetIdentifierType
string
false
read-only
The type of asset on which the scan is performed
» assetIdentifierName
string
false
read-only
The name of asset on which the scan is performed
» assetId
integer(int32)
false
none
The id of asset on which the scan is performed
» assetName
string
false
read-only
The name of asset on which the scan is performed
» latestRuleDate
string(date-time)
false
none
The latest rule date taken into account to perform the scan
» scanless
boolean
false
none
Set to true when scan is scanless (eg only detection performed)
» parentId
integer(int32)
false
none
The ID of the parent entry.
» scheduleId
integer(int32)
false
none
The schedule id when scan triggered by a schedule.
» tags
[Tag ]
false
read-only
The tags
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
Enumerated Values
Property
Value
status
QUEUED
status
PENDING
status
STARTING
status
RUNNING
status
STOPPING
status
STOPPED
status
REPORTING
status
FINISHED
status
ISSUES
status
FAILED
source
SCOUT
source
SCALE
source
SWAT
source
CLOUDSEC
source
NETWORK_SCAN
source
DOCKER_SCAN
source
DOCKER_DISCOVERY
source
NETWORK_DISCOVERY
source
CLOUD_DISCOVERY
source
AGENT_SCAN
source
WORKFLOW
assetIdentifierType
IP
assetIdentifierType
HOSTNAME
assetIdentifierType
AWS_ACCOUNT_ID
assetIdentifierType
AWS_INSTANCE_ID
assetIdentifierType
AWS_REGION
assetIdentifierType
MAC
assetIdentifierType
NETBIOS
assetIdentifierType
GCP_PROJECT_ID
assetIdentifierType
MAZ_TENANT_ID
assetIdentifierType
MAZ_SUBSCRIPTION
assetIdentifierType
MAZ_RESOURCE_GROUP
assetIdentifierType
MAZ_RESOURCE
assetIdentifierType
DOCKER_REGISTRY
assetIdentifierType
DOCKER_IMAGE
assetIdentifierType
SEED_PATH
assetIdentifierType
AGENT
assetIdentifierType
SERIAL_MACHINE_ID
assetIdentifierType
SERIAL_PRODUCT_ID
assetIdentifierType
SERIAL_DISK_ID
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a scan
# You can also use wget
curl -X POST \
/rest/scans \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scans ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"jobId": "string",
"status": "QUEUED",
"statusDetails": "string",
"source": "SCOUT",
"scanConfigurationId": 0,
"workflowId": 0,
"started": "2019-08-24T14:15:22Z",
"ended": "2019-08-24T14:15:22Z",
"assetIdentifierId": 0,
"assetId": 0,
"latestRuleDate": "2019-08-24T14:15:22Z",
"scanless": true,
"parentId": 0,
"scheduleId": 0
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scans ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/scans" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/scans' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/scans' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /scans
Body parameter
{
"customerId" : 0 ,
"jobId" : "string" ,
"status" : "QUEUED" ,
"statusDetails" : "string" ,
"source" : "SCOUT" ,
"scanConfigurationId" : 0 ,
"workflowId" : 0 ,
"started" : "2019-08-24T14:15:22Z" ,
"ended" : "2019-08-24T14:15:22Z" ,
"assetIdentifierId" : 0 ,
"assetId" : 0 ,
"latestRuleDate" : "2019-08-24T14:15:22Z" ,
"scanless" : true ,
"parentId" : 0 ,
"scheduleId" : 0
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ScanLog
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/scans \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scans ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scans ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/scans" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/scans' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/scans' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /scans
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X GET \
/rest/scans/{ scanId} /metadata \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scans/{scanId}/metadata ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scans/{scanId}/metadata ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scans/{scanId}/metadata" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scans/{scanId}/metadata' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scans/{scanId}/metadata' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scans/{scanId}/metadata
Name
In
Type
Required
Description
scanId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"schema" : "string" ,
"attacker" : "string"
}
Status
Meaning
Description
Schema
default
Default
default response
ScanLogMetadata
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Request a blueprint
# You can also use wget
curl -X POST \
/rest/scans/{ scanId} /blueprints \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scans/{scanId}/blueprints ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scans/{scanId}/blueprints ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/scans/{scanId}/blueprints" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/scans/{scanId}/blueprints' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/scans/{scanId}/blueprints' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /scans/{scanId}/blueprints
Parameters
Name
In
Type
Required
Description
scanId
path
integer(int32)
true
none
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Stop a scan
# You can also use wget
curl -X POST \
/rest/scans/{ scanId} /stop \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scans/{scanId}/stop ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scans/{scanId}/stop ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/scans/{scanId}/stop" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/scans/{scanId}/stop' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/scans/{scanId}/stop' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /scans/{scanId}/stop
Parameters
Name
In
Type
Required
Description
scanId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Scheduled reports
Get a scheduled report
# You can also use wget
curl -X GET \
/rest/scheduled-reports/{ scheduledReportId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scheduled-reports/{scheduledReportId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scheduled-reports/{scheduledReportId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scheduled-reports/{scheduledReportId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scheduled-reports/{scheduledReportId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scheduled-reports/{scheduledReportId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scheduled-reports/{scheduledReportId}
Parameters
Name
In
Type
Required
Description
scheduledReportId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"enabled" : true ,
"lastSent" : "2019-08-24T14:15:22Z" ,
"scheduleIds" : [
0
],
"nextOccurrence" : "2019-08-24T14:15:22Z" ,
"workflowId" : 0 ,
"deliveryMethod" : {
"email" : {
"userIds" : [
0
],
"recipients" : {
"addresses" : [
"string"
],
"pgpKey" : "string"
}
},
"managedReport" : {
"name" : "string" ,
"tags" : "string"
}
},
"scope" : {
"assetIds" : [
0
],
"assetGroupIds" : [
0
],
"tagIds" : [
0
]
},
"report" : {
"formats" : [
"PDF"
],
"type" : "Technical" ,
"viewTemplateId" : 0 ,
"viewTemplateName" : "string" ,
"level" : "Detailed" ,
"product" : "Normal" ,
"password" : "string" ,
"executiveSummary" : true ,
"zip" : true ,
"timeFrame" : "LAST_DAY" ,
"startDate" : "2019-08-24T14:15:22Z" ,
"endDate" : "2019-08-24T14:15:22Z"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
ScheduledReport
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a scheduled report
# You can also use wget
curl -X DELETE \
/rest/scheduled-reports/{ scheduledReportId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scheduled-reports/{scheduledReportId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scheduled-reports/{scheduledReportId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/scheduled-reports/{scheduledReportId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/scheduled-reports/{scheduledReportId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/scheduled-reports/{scheduledReportId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /scheduled-reports/{scheduledReportId}
Parameters
Name
In
Type
Required
Description
scheduledReportId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a scheduled report
# You can also use wget
curl -X PATCH \
/rest/scheduled-reports/{ scheduledReportId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scheduled-reports/{scheduledReportId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"enabled": true,
"workflowId": 0,
"deliveryMethod": {
"email": {
"userIds": [
0
],
"recipients": {
"addresses": [
"string"
],
"pgpKey": "string"
}
},
"managedReport": {
"name": "string",
"tags": "string"
}
},
"scope": {
"assetIds": [
0
],
"assetGroupIds": [
0
],
"tagIds": [
0
]
},
"report": {
"formats": [
"PDF"
],
"type": "Technical",
"viewTemplateId": 0,
"viewTemplateName": "string",
"level": "Detailed",
"product": "Normal",
"password": "string",
"executiveSummary": true,
"zip": true,
"timeFrame": "LAST_DAY",
"startDate": "2019-08-24T14:15:22Z",
"endDate": "2019-08-24T14:15:22Z"
}
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scheduled-reports/{scheduledReportId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/scheduled-reports/{scheduledReportId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/scheduled-reports/{scheduledReportId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/scheduled-reports/{scheduledReportId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /scheduled-reports/{scheduledReportId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"enabled" : true ,
"workflowId" : 0 ,
"deliveryMethod" : {
"email" : {
"userIds" : [
0
],
"recipients" : {
"addresses" : [
"string"
],
"pgpKey" : "string"
}
},
"managedReport" : {
"name" : "string" ,
"tags" : "string"
}
},
"scope" : {
"assetIds" : [
0
],
"assetGroupIds" : [
0
],
"tagIds" : [
0
]
},
"report" : {
"formats" : [
"PDF"
],
"type" : "Technical" ,
"viewTemplateId" : 0 ,
"viewTemplateName" : "string" ,
"level" : "Detailed" ,
"product" : "Normal" ,
"password" : "string" ,
"executiveSummary" : true ,
"zip" : true ,
"timeFrame" : "LAST_DAY" ,
"startDate" : "2019-08-24T14:15:22Z" ,
"endDate" : "2019-08-24T14:15:22Z"
}
}
Parameters
Name
In
Type
Required
Description
scheduledReportId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ScheduledReport
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a schedule
# You can also use wget
curl -X PUT \
/rest/scheduled-reports/{ scheduledReportId} /schedules/{ scheduleId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scheduled-reports/{scheduledReportId}/schedules/{scheduleId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scheduled-reports/{scheduledReportId}/schedules/{scheduleId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/scheduled-reports/{scheduledReportId}/schedules/{scheduleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/scheduled-reports/{scheduledReportId}/schedules/{scheduleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/scheduled-reports/{scheduledReportId}/schedules/{scheduleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /scheduled-reports/{scheduledReportId}/schedules/{scheduleId}
Parameters
Name
In
Type
Required
Description
scheduledReportId
path
integer(int32)
true
none
scheduleId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a schedule
# You can also use wget
curl -X DELETE \
/rest/scheduled-reports/{ scheduledReportId} /schedules/{ scheduleId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scheduled-reports/{scheduledReportId}/schedules/{scheduleId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scheduled-reports/{scheduledReportId}/schedules/{scheduleId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/scheduled-reports/{scheduledReportId}/schedules/{scheduleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/scheduled-reports/{scheduledReportId}/schedules/{scheduleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/scheduled-reports/{scheduledReportId}/schedules/{scheduleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /scheduled-reports/{scheduledReportId}/schedules/{scheduleId}
Parameters
Name
In
Type
Required
Description
scheduledReportId
path
integer(int32)
true
none
scheduleId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/scheduled-reports/{ scheduledReportId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scheduled-reports/{scheduledReportId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scheduled-reports/{scheduledReportId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/scheduled-reports/{scheduledReportId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/scheduled-reports/{scheduledReportId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/scheduled-reports/{scheduledReportId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /scheduled-reports/{scheduledReportId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
scheduledReportId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/scheduled-reports/{ scheduledReportId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scheduled-reports/{scheduledReportId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scheduled-reports/{scheduledReportId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/scheduled-reports/{scheduledReportId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/scheduled-reports/{scheduledReportId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/scheduled-reports/{scheduledReportId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /scheduled-reports/{scheduledReportId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
scheduledReportId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of scheduled reports
# You can also use wget
curl -X GET \
/rest/scheduled-reports \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scheduled-reports ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scheduled-reports ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/scheduled-reports" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/scheduled-reports' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/scheduled-reports' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /scheduled-reports
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"enabled" : true ,
"lastSent" : "2019-08-24T14:15:22Z" ,
"scheduleIds" : [
0
],
"nextOccurrence" : "2019-08-24T14:15:22Z" ,
"workflowId" : 0 ,
"deliveryMethod" : {
"email" : {
"userIds" : [
0
],
"recipients" : {
"addresses" : [
"string"
],
"pgpKey" : "string"
}
},
"managedReport" : {
"name" : "string" ,
"tags" : "string"
}
},
"scope" : {
"assetIds" : [
0
],
"assetGroupIds" : [
0
],
"tagIds" : [
0
]
},
"report" : {
"formats" : [
"PDF"
],
"type" : "Technical" ,
"viewTemplateId" : 0 ,
"viewTemplateName" : "string" ,
"level" : "Detailed" ,
"product" : "Normal" ,
"password" : "string" ,
"executiveSummary" : true ,
"zip" : true ,
"timeFrame" : "LAST_DAY" ,
"startDate" : "2019-08-24T14:15:22Z" ,
"endDate" : "2019-08-24T14:15:22Z"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ScheduledReport ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» enabled
boolean
false
none
Determines if the entry is enabled or not.
» lastSent
string(date-time)
false
read-only
none
» scheduleIds
[integer]
false
read-only
none
» nextOccurrence
string(date-time)
false
read-only
none
» workflowId
integer(int32)
false
none
The workflow ID associated with this report
» deliveryMethod
DeliveryMethod
true
none
none
»» email
DeliveryMethod.Email
false
none
none
»»» userIds
[integer]
false
none
none
»»» recipients
DeliveryMethod.Recipients
false
none
none
»»»» addresses
[string]
false
none
none
»»»» pgpKey
string
false
none
none
»» managedReport
DeliveryMethod.ManagedReport
false
none
none
»»» name
string
false
none
The name of the entry.
»»» tags
string
false
none
none
» scope
ScheduledReport.Scope
true
none
none
»» assetIds
[integer]
false
none
none
»» assetGroupIds
[integer]
false
none
none
»» tagIds
[integer]
false
none
none
» report
ScheduledReport.Report
true
none
none
»» formats
[string]
true
none
none
»» type
string
true
none
none
»» viewTemplateId
integer(int32)
false
none
none
»» viewTemplateName
string
false
none
none
»» level
string
false
none
none
»» product
string
false
none
none
»» password
string
false
none
none
»» executiveSummary
boolean
false
none
none
»» zip
boolean
false
none
none
»» timeFrame
string
false
none
none
»» startDate
string(date-time)
false
none
none
»» endDate
string(date-time)
false
none
none
» tags
[Tag ]
false
read-only
[The tags]
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
Enumerated Values
Property
Value
type
Technical
type
Trend
type
GroupVulnerability
type
Delta
type
Pci
type
WasDiscovery
type
Discovery
type
SolutionTaskReport
type
SolutionTargetReport
type
GroupTrending
type
GroupDelta
type
Compliance
type
Consumption
level
Detailed
level
Management
level
Summary
product
Normal
product
Pci
product
Was
product
SWAT
product
Compliance
product
Appsec Scale
product
APPSEC
product
CLOUDSEC
timeFrame
LAST_DAY
timeFrame
LAST_WEEK
timeFrame
LAST_MONTH
timeFrame
LAST_QUARTER
timeFrame
LAST_YEAR
timeFrame
CUSTOM
timeFrame
ALL_TIME
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a scheduled report
# You can also use wget
curl -X POST \
/rest/scheduled-reports \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scheduled-reports ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"enabled": true,
"workflowId": 0,
"deliveryMethod": {
"email": {
"userIds": [
0
],
"recipients": {
"addresses": [
"string"
],
"pgpKey": "string"
}
},
"managedReport": {
"name": "string",
"tags": "string"
}
},
"scope": {
"assetIds": [
0
],
"assetGroupIds": [
0
],
"tagIds": [
0
]
},
"report": {
"formats": [
"PDF"
],
"type": "Technical",
"viewTemplateId": 0,
"viewTemplateName": "string",
"level": "Detailed",
"product": "Normal",
"password": "string",
"executiveSummary": true,
"zip": true,
"timeFrame": "LAST_DAY",
"startDate": "2019-08-24T14:15:22Z",
"endDate": "2019-08-24T14:15:22Z"
}
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scheduled-reports ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/scheduled-reports" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/scheduled-reports' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/scheduled-reports' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /scheduled-reports
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"enabled" : true ,
"workflowId" : 0 ,
"deliveryMethod" : {
"email" : {
"userIds" : [
0
],
"recipients" : {
"addresses" : [
"string"
],
"pgpKey" : "string"
}
},
"managedReport" : {
"name" : "string" ,
"tags" : "string"
}
},
"scope" : {
"assetIds" : [
0
],
"assetGroupIds" : [
0
],
"tagIds" : [
0
]
},
"report" : {
"formats" : [
"PDF"
],
"type" : "Technical" ,
"viewTemplateId" : 0 ,
"viewTemplateName" : "string" ,
"level" : "Detailed" ,
"product" : "Normal" ,
"password" : "string" ,
"executiveSummary" : true ,
"zip" : true ,
"timeFrame" : "LAST_DAY" ,
"startDate" : "2019-08-24T14:15:22Z" ,
"endDate" : "2019-08-24T14:15:22Z"
}
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ScheduledReport
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/scheduled-reports \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scheduled-reports ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scheduled-reports ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/scheduled-reports" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/scheduled-reports' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/scheduled-reports' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /scheduled-reports
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/scheduled-reports/{ scheduledReportId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scheduled-reports/{scheduledReportId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scheduled-reports/{scheduledReportId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/scheduled-reports/{scheduledReportId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/scheduled-reports/{scheduledReportId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/scheduled-reports/{scheduledReportId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /scheduled-reports/{scheduledReportId}/tags
Body parameter
Name
In
Type
Required
Description
scheduledReportId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Send report
# You can also use wget
curl -X POST \
/rest/scheduled-reports/{ scheduledReportId} /send \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scheduled-reports/{scheduledReportId}/send ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scheduled-reports/{scheduledReportId}/send ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/scheduled-reports/{scheduledReportId}/send" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/scheduled-reports/{scheduledReportId}/send' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/scheduled-reports/{scheduledReportId}/send' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /scheduled-reports/{scheduledReportId}/send
Parameters
Name
In
Type
Required
Description
scheduledReportId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Schedules
Get a schedule
# You can also use wget
curl -X GET \
/rest/schedules/{ scheduleId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/schedules/{scheduleId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/schedules/{scheduleId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/schedules/{scheduleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/schedules/{scheduleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/schedules/{scheduleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /schedules/{scheduleId}
Parameters
Name
In
Type
Required
Description
scheduleId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"enabled" : true ,
"frequency" : "NONE" ,
"interval" : 0 ,
"weekdays" : [
"MONDAY"
],
"days" : [
0
],
"nthDays" : [
0
],
"weeks" : [
0
],
"months" : [
"JANUARY"
],
"remainingOccurrences" : 0 ,
"scanConfigurationIds" : [
0
],
"workflowIds" : [
0
],
"scheduledReportIds" : [
0
],
"timezone" : "string" ,
"scanWindowDuration" : 12 ,
"startsFrom" : "2019-08-24T14:15:22Z" ,
"until" : "2019-08-24T14:15:22Z" ,
"nextOccurrence" : "2019-08-24T14:15:22Z" ,
"blockedTimeSlots" : {
"monday" : [
0
],
"tuesday" : [
0
],
"wednesday" : [
0
],
"thursday" : [
0
],
"friday" : [
0
],
"saturday" : [
0
],
"sunday" : [
0
]
}
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Schedule
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a schedule
# You can also use wget
curl -X DELETE \
/rest/schedules/{ scheduleId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/schedules/{scheduleId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/schedules/{scheduleId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/schedules/{scheduleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/schedules/{scheduleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/schedules/{scheduleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /schedules/{scheduleId}
Parameters
Name
In
Type
Required
Description
scheduleId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a schedule
# You can also use wget
curl -X PATCH \
/rest/schedules/{ scheduleId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/schedules/{scheduleId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"enabled": true,
"frequency": "NONE",
"interval": 0,
"weekdays": [
"MONDAY"
],
"days": [
0
],
"nthDays": [
0
],
"weeks": [
0
],
"months": [
"JANUARY"
],
"remainingOccurrences": 0,
"timezone": "string",
"scanWindowDuration": 12,
"startsFrom": "2019-08-24T14:15:22Z",
"until": "2019-08-24T14:15:22Z",
"blockedTimeSlots": {
"monday": [
0
],
"tuesday": [
0
],
"wednesday": [
0
],
"thursday": [
0
],
"friday": [
0
],
"saturday": [
0
],
"sunday": [
0
]
}
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/schedules/{scheduleId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/schedules/{scheduleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/schedules/{scheduleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/schedules/{scheduleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /schedules/{scheduleId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"enabled" : true ,
"frequency" : "NONE" ,
"interval" : 0 ,
"weekdays" : [
"MONDAY"
],
"days" : [
0
],
"nthDays" : [
0
],
"weeks" : [
0
],
"months" : [
"JANUARY"
],
"remainingOccurrences" : 0 ,
"timezone" : "string" ,
"scanWindowDuration" : 12 ,
"startsFrom" : "2019-08-24T14:15:22Z" ,
"until" : "2019-08-24T14:15:22Z" ,
"blockedTimeSlots" : {
"monday" : [
0
],
"tuesday" : [
0
],
"wednesday" : [
0
],
"thursday" : [
0
],
"friday" : [
0
],
"saturday" : [
0
],
"sunday" : [
0
]
}
}
Parameters
Name
In
Type
Required
Description
scheduleId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Schedule
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of schedules
# You can also use wget
curl -X GET \
/rest/schedules \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/schedules ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/schedules ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/schedules" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/schedules' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/schedules' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /schedules
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"enabled" : true ,
"frequency" : "NONE" ,
"interval" : 0 ,
"weekdays" : [
"MONDAY"
],
"days" : [
0
],
"nthDays" : [
0
],
"weeks" : [
0
],
"months" : [
"JANUARY"
],
"remainingOccurrences" : 0 ,
"scanConfigurationIds" : [
0
],
"workflowIds" : [
0
],
"scheduledReportIds" : [
0
],
"timezone" : "string" ,
"scanWindowDuration" : 12 ,
"startsFrom" : "2019-08-24T14:15:22Z" ,
"until" : "2019-08-24T14:15:22Z" ,
"nextOccurrence" : "2019-08-24T14:15:22Z" ,
"blockedTimeSlots" : {
"monday" : [
0
],
"tuesday" : [
0
],
"wednesday" : [
0
],
"thursday" : [
0
],
"friday" : [
0
],
"saturday" : [
0
],
"sunday" : [
0
]
}
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Schedule ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» enabled
boolean
false
none
Determines if the entry is enabled or not.
» frequency
string
true
none
The schedule frequency
» interval
integer(int32)
true
none
The schedule interval
» weekdays
[string]
false
none
The schedule weekdays set what weekdays have been selected for recurrence
» days
[integer]
false
none
The schedule days set what days have been selected for recurrence
» nthDays
[integer]
false
none
The schedule nthDays set what ordinal days have been selected for recurrence
» weeks
[integer]
false
none
The schedule weeks set what weeks have been selected for recurrence
» months
[string]
false
none
The schedule months set what months have been selected for recurrence
» remainingOccurrences
integer(int32)
false
none
The schedule remaining occurrences
» scanConfigurationIds
[integer]
false
read-only
The scan configuration IDs associated with this schedule
» workflowIds
[integer]
false
read-only
The workflow IDs associated with this schedule
» scheduledReportIds
[integer]
false
read-only
The report IDs associated with this schedule
» timezone
string
false
none
The schedule time zone
» scanWindowDuration
integer(int32)
false
none
The schedule scan window duration.
» startsFrom
string(date-time)
true
none
The schedule starts from date
» until
string(date-time)
false
none
The schedule until date
» nextOccurrence
string(date-time)
false
read-only
The schedule next occurrence date
» blockedTimeSlots
Schedule.BlockedTimeSlots
false
none
The schedule blocked time slots
»» monday
[integer]
false
none
none
»» tuesday
[integer]
false
none
none
»» wednesday
[integer]
false
none
none
»» thursday
[integer]
false
none
none
»» friday
[integer]
false
none
none
»» saturday
[integer]
false
none
none
»» sunday
[integer]
false
none
none
Enumerated Values
Property
Value
frequency
NONE
frequency
ONCE
frequency
HOURLY
frequency
DAILY
frequency
WEEKLY
frequency
MONTHLY
frequency
YEARLY
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a schedule
# You can also use wget
curl -X POST \
/rest/schedules \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/schedules ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"enabled": true,
"frequency": "NONE",
"interval": 0,
"weekdays": [
"MONDAY"
],
"days": [
0
],
"nthDays": [
0
],
"weeks": [
0
],
"months": [
"JANUARY"
],
"remainingOccurrences": 0,
"timezone": "string",
"scanWindowDuration": 12,
"startsFrom": "2019-08-24T14:15:22Z",
"until": "2019-08-24T14:15:22Z",
"blockedTimeSlots": {
"monday": [
0
],
"tuesday": [
0
],
"wednesday": [
0
],
"thursday": [
0
],
"friday": [
0
],
"saturday": [
0
],
"sunday": [
0
]
}
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/schedules ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/schedules" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/schedules' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/schedules' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /schedules
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"enabled" : true ,
"frequency" : "NONE" ,
"interval" : 0 ,
"weekdays" : [
"MONDAY"
],
"days" : [
0
],
"nthDays" : [
0
],
"weeks" : [
0
],
"months" : [
"JANUARY"
],
"remainingOccurrences" : 0 ,
"timezone" : "string" ,
"scanWindowDuration" : 12 ,
"startsFrom" : "2019-08-24T14:15:22Z" ,
"until" : "2019-08-24T14:15:22Z" ,
"blockedTimeSlots" : {
"monday" : [
0
],
"tuesday" : [
0
],
"wednesday" : [
0
],
"thursday" : [
0
],
"friday" : [
0
],
"saturday" : [
0
],
"sunday" : [
0
]
}
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Schedule
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/schedules \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/schedules ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/schedules ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/schedules" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/schedules' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/schedules' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /schedules
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Scoping
# You can also use wget
curl -X POST \
/rest/scoping \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/scoping ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"targetSolution": "Appsec SWAT",
"targetStartDate": "2019-08-24T14:15:22Z",
"assetIdentifierIds": [
0
],
"adminUrls": [
"string"
],
"outOfScopeUrls": [
"string"
],
"knownSensitiveFunctionality": "string",
"rolesAndCredentials": "string",
"componentsAndTechnologies": "string",
"focusAreas": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/scoping ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/scoping" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/scoping' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/scoping' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /scoping
Body parameter
{
"targetSolution" : "Appsec SWAT" ,
"targetStartDate" : "2019-08-24T14:15:22Z" ,
"assetIdentifierIds" : [
0
],
"adminUrls" : [
"string"
],
"outOfScopeUrls" : [
"string"
],
"knownSensitiveFunctionality" : "string" ,
"rolesAndCredentials" : "string" ,
"componentsAndTechnologies" : "string" ,
"focusAreas" : "string"
}
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Sub users
Change current sub-users password; if current user isn't a sub-user, redirect to /users/me/change-password
# You can also use wget
curl -X POST \
/rest/sub-users/me/change-password \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/sub-users/me/change-password ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"password": "string",
"oldPassword": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/sub-users/me/change-password ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/sub-users/me/change-password" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/sub-users/me/change-password' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/sub-users/me/change-password' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /sub-users/me/change-password
Body parameter
{
"password" : "string" ,
"oldPassword" : "string"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ChangePasswordRequest
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a sub-user
# You can also use wget
curl -X GET \
/rest/sub-users/{ subUserId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/sub-users/{subUserId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/sub-users/{subUserId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/sub-users/{subUserId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/sub-users/{subUserId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/sub-users/{subUserId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /sub-users/{subUserId}
Parameters
Name
In
Type
Required
Description
subUserId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"timezone" : "string" ,
"portalPreferences" : "string" ,
"customerId" : 0 ,
"id" : 0 ,
"subUser" : true ,
"username" : "string" ,
"firstName" : "string" ,
"lastName" : "string" ,
"email" : "string" ,
"emailEncryptionKey" : "string" ,
"countryCode" : "string" ,
"stateCode" : "string" ,
"parentId" : 0 ,
"mobilePhone" : "string" ,
"lastLogonIp" : "string" ,
"lastLogonDate" : "2019-08-24T14:15:22Z" ,
"logons" : 0 ,
"language" : "string" ,
"twoFactorCode" : "string" ,
"subParentId" : 0 ,
"superUser" : true ,
"snapshotSubscriptions" : 0 ,
"snapshotSubscriptionsRemaining" : 0 ,
"swatSubscriptions" : 0 ,
"swatSubscriptionsRemaining" : 0 ,
"userRoleIds" : [
0
],
"resourceGroupIds" : [
0
],
"userRolePermissions" : [
"ASSETS_VIEW"
],
"allowedCustomerTagIds" : [
0
],
"roles" : "string" ,
"pgpPublicKey" : "string" ,
"twoFactorType" : "ANY" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"allowedCustomerTags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"twoFactorSecret" : "string"
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
SubUser
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a sub-user
# You can also use wget
curl -X DELETE \
/rest/sub-users/{ subUserId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/sub-users/{subUserId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/sub-users/{subUserId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/sub-users/{subUserId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/sub-users/{subUserId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/sub-users/{subUserId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /sub-users/{subUserId}
Parameters
Name
In
Type
Required
Description
subUserId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a sub-user
# You can also use wget
curl -X PATCH \
/rest/sub-users/{ subUserId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/sub-users/{subUserId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"timezone": "string",
"portalPreferences": "string",
"username": "string",
"firstName": "string",
"lastName": "string",
"email": "string",
"emailEncryptionKey": "string",
"countryCode": "string",
"stateCode": "string",
"mobilePhone": "string",
"language": "string",
"twoFactorCode": "string",
"subParentId": 0,
"superUser": true,
"userRoleIds": [
0
],
"resourceGroupIds": [
0
],
"allowedCustomerTagIds": [
0
],
"pgpPublicKey": "string",
"twoFactorType": "ANY",
"twoFactorSecret": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/sub-users/{subUserId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/sub-users/{subUserId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/sub-users/{subUserId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/sub-users/{subUserId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /sub-users/{subUserId}
Body parameter
{
"timezone" : "string" ,
"portalPreferences" : "string" ,
"username" : "string" ,
"firstName" : "string" ,
"lastName" : "string" ,
"email" : "string" ,
"emailEncryptionKey" : "string" ,
"countryCode" : "string" ,
"stateCode" : "string" ,
"mobilePhone" : "string" ,
"language" : "string" ,
"twoFactorCode" : "string" ,
"subParentId" : 0 ,
"superUser" : true ,
"userRoleIds" : [
0
],
"resourceGroupIds" : [
0
],
"allowedCustomerTagIds" : [
0
],
"pgpPublicKey" : "string" ,
"twoFactorType" : "ANY" ,
"twoFactorSecret" : "string"
}
Parameters
Name
In
Type
Required
Description
subUserId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
SubUser
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/sub-users/{ subUserId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/sub-users/{subUserId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/sub-users/{subUserId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/sub-users/{subUserId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/sub-users/{subUserId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/sub-users/{subUserId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /sub-users/{subUserId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
subUserId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/sub-users/{ subUserId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/sub-users/{subUserId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/sub-users/{subUserId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/sub-users/{subUserId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/sub-users/{subUserId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/sub-users/{subUserId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /sub-users/{subUserId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
subUserId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get current sub-user; if current user isn't a sub-user, redirect to /users/me
# You can also use wget
curl -X GET \
/rest/sub-users/me \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/sub-users/me ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/sub-users/me ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/sub-users/me" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/sub-users/me' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/sub-users/me' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /sub-users/me
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update current sub-user; if current user isn't a sub-user, redirect to /users/me
# You can also use wget
curl -X PATCH \
/rest/sub-users/me \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/sub-users/me ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"timezone": "string",
"portalPreferences": "string",
"username": "string",
"firstName": "string",
"lastName": "string",
"email": "string",
"emailEncryptionKey": "string",
"countryCode": "string",
"stateCode": "string",
"mobilePhone": "string",
"language": "string",
"twoFactorCode": "string",
"subParentId": 0,
"superUser": true,
"userRoleIds": [
0
],
"resourceGroupIds": [
0
],
"allowedCustomerTagIds": [
0
],
"pgpPublicKey": "string",
"twoFactorType": "ANY",
"twoFactorSecret": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/sub-users/me ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/sub-users/me" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/sub-users/me' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/sub-users/me' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /sub-users/me
Body parameter
{
"timezone" : "string" ,
"portalPreferences" : "string" ,
"username" : "string" ,
"firstName" : "string" ,
"lastName" : "string" ,
"email" : "string" ,
"emailEncryptionKey" : "string" ,
"countryCode" : "string" ,
"stateCode" : "string" ,
"mobilePhone" : "string" ,
"language" : "string" ,
"twoFactorCode" : "string" ,
"subParentId" : 0 ,
"superUser" : true ,
"userRoleIds" : [
0
],
"resourceGroupIds" : [
0
],
"allowedCustomerTagIds" : [
0
],
"pgpPublicKey" : "string" ,
"twoFactorType" : "ANY" ,
"twoFactorSecret" : "string"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
SubUser
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of sub-users
# You can also use wget
curl -X GET \
/rest/sub-users \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/sub-users ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/sub-users ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/sub-users" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/sub-users' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/sub-users' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /sub-users
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"timezone" : "string" ,
"portalPreferences" : "string" ,
"customerId" : 0 ,
"id" : 0 ,
"subUser" : true ,
"username" : "string" ,
"firstName" : "string" ,
"lastName" : "string" ,
"email" : "string" ,
"emailEncryptionKey" : "string" ,
"countryCode" : "string" ,
"stateCode" : "string" ,
"parentId" : 0 ,
"mobilePhone" : "string" ,
"lastLogonIp" : "string" ,
"lastLogonDate" : "2019-08-24T14:15:22Z" ,
"logons" : 0 ,
"language" : "string" ,
"twoFactorCode" : "string" ,
"subParentId" : 0 ,
"superUser" : true ,
"snapshotSubscriptions" : 0 ,
"snapshotSubscriptionsRemaining" : 0 ,
"swatSubscriptions" : 0 ,
"swatSubscriptionsRemaining" : 0 ,
"userRoleIds" : [
0
],
"resourceGroupIds" : [
0
],
"userRolePermissions" : [
"ASSETS_VIEW"
],
"allowedCustomerTagIds" : [
0
],
"roles" : "string" ,
"pgpPublicKey" : "string" ,
"twoFactorType" : "ANY" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"allowedCustomerTags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"twoFactorSecret" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[SubUser ]
false
none
none
» timezone
string
false
none
The user time zone
» portalPreferences
string
false
none
The user portal preferences
» customerId
integer(int32)
false
read-only
The ID of the customer owning the entry.
» id
integer(int64)
false
read-only
The ID of the entry.
» subUser
boolean
false
read-only
none
» username
string
true
none
none
» firstName
string
true
none
none
» lastName
string
true
none
none
» email
string
true
none
none
» emailEncryptionKey
string
false
none
none
» countryCode
string
false
none
none
» stateCode
string
false
none
none
» parentId
integer(int64)
false
read-only
The ID of the parent entry.
» mobilePhone
string
false
none
none
» lastLogonIp
string
false
read-only
none
» lastLogonDate
string(date-time)
false
read-only
none
» logons
integer(int64)
false
read-only
none
» language
string
false
none
none
» twoFactorCode
string
false
none
none
» subParentId
integer(int64)
false
none
none
» superUser
boolean
false
none
none
» snapshotSubscriptions
integer(int64)
false
read-only
none
» snapshotSubscriptionsRemaining
integer(int64)
false
read-only
none
» swatSubscriptions
integer(int64)
false
read-only
none
» swatSubscriptionsRemaining
integer(int64)
false
read-only
none
» userRoleIds
[integer]
false
none
none
» resourceGroupIds
[integer]
false
none
none
» userRolePermissions
[string]
false
read-only
none
» allowedCustomerTagIds
[integer]
false
none
none
» roles
string
false
read-only
The user's roles
» pgpPublicKey
string
false
none
This user's PGP public key
» twoFactorType
string
false
none
The sub-user's two-factor authentication type
» tags
[Tag ]
false
read-only
[The tags]
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
» allowedCustomerTags
[Tag ]
false
read-only
The allowed customer tags
» twoFactorSecret
string
false
none
The sub-user's two-factor secret
Enumerated Values
Property
Value
twoFactorType
ANY
twoFactorType
NONE
twoFactorType
SMS
twoFactorType
TOTP
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a new sub-user
# You can also use wget
curl -X POST \
/rest/sub-users \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/sub-users ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"timezone": "string",
"portalPreferences": "string",
"username": "string",
"firstName": "string",
"lastName": "string",
"email": "string",
"emailEncryptionKey": "string",
"countryCode": "string",
"stateCode": "string",
"mobilePhone": "string",
"language": "string",
"twoFactorCode": "string",
"subParentId": 0,
"superUser": true,
"userRoleIds": [
0
],
"resourceGroupIds": [
0
],
"allowedCustomerTagIds": [
0
],
"pgpPublicKey": "string",
"twoFactorType": "ANY",
"twoFactorSecret": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/sub-users ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/sub-users" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/sub-users' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/sub-users' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /sub-users
Body parameter
{
"timezone" : "string" ,
"portalPreferences" : "string" ,
"username" : "string" ,
"firstName" : "string" ,
"lastName" : "string" ,
"email" : "string" ,
"emailEncryptionKey" : "string" ,
"countryCode" : "string" ,
"stateCode" : "string" ,
"mobilePhone" : "string" ,
"language" : "string" ,
"twoFactorCode" : "string" ,
"subParentId" : 0 ,
"superUser" : true ,
"userRoleIds" : [
0
],
"resourceGroupIds" : [
0
],
"allowedCustomerTagIds" : [
0
],
"pgpPublicKey" : "string" ,
"twoFactorType" : "ANY" ,
"twoFactorSecret" : "string"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
SubUser
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/sub-users \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/sub-users ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/sub-users ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/sub-users" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/sub-users' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/sub-users' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /sub-users
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/sub-users/{ subUserId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/sub-users/{subUserId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/sub-users/{subUserId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/sub-users/{subUserId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/sub-users/{subUserId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/sub-users/{subUserId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /sub-users/{subUserId}/tags
Body parameter
Name
In
Type
Required
Description
subUserId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Subscription audits
Get a subscription audit
# You can also use wget
curl -X GET \
/rest/subscription-audits/{ auditId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscription-audits/{auditId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscription-audits/{auditId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/subscription-audits/{auditId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/subscription-audits/{auditId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/subscription-audits/{auditId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /subscription-audits/{auditId}
Parameters
Name
In
Type
Required
Description
auditId
path
integer(int64)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"action" : "string" ,
"time" : "2019-08-24T14:15:22Z" ,
"ip" : "string" ,
"comment" : "string" ,
"username" : "string" ,
"customerName" : "string"
}
Responses
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of subscription audits
# You can also use wget
curl -X GET \
/rest/subscription-audits \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscription-audits ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscription-audits ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/subscription-audits" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/subscription-audits' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/subscription-audits' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /subscription-audits
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"action" : "string" ,
"time" : "2019-08-24T14:15:22Z" ,
"ip" : "string" ,
"comment" : "string" ,
"username" : "string" ,
"customerName" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[SubscriptionAudit ]
false
none
none
» id
integer(int64)
false
read-only
The ID of the entry.
» action
string
false
read-only
none
» time
string(date-time)
false
read-only
none
» ip
string
false
read-only
none
» comment
string
false
read-only
none
» username
string
false
read-only
none
» customerName
string
false
read-only
none
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/subscription-audits \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscription-audits ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscription-audits ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/subscription-audits" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/subscription-audits' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/subscription-audits' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /subscription-audits
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Subscriptions
Get a subscription
# You can also use wget
curl -X GET \
/rest/subscriptions/{ subscriptionUuid} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscriptions/{subscriptionUuid} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscriptions/{subscriptionUuid} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/subscriptions/{subscriptionUuid}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/subscriptions/{subscriptionUuid}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/subscriptions/{subscriptionUuid}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /subscriptions/{subscriptionUuid}
Parameters
Name
In
Type
Required
Description
subscriptionUuid
path
string
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"uuid" : "string" ,
"type" : "DAST" ,
"associations" : {
"assetGroups" : [
"string"
]
},
"durationInDays" : 0 ,
"activeUntil" : "2019-08-24T14:15:22Z" ,
"activatedAt" : "2019-08-24T14:15:22Z" ,
"redeemableUntil" : "2019-08-24T14:15:22Z" ,
"created" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updated" : "2019-08-24T14:15:22Z" ,
"updatedBy" : "string" ,
"template" : {
"uuid" : "string" ,
"variables" : "string" ,
"template" : "string" ,
"name" : "string"
},
"customer" : {
"uuid" : "string"
},
"limits" : {
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
},
"isActive" : true
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Subscription
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a subscription
# You can also use wget
curl -X DELETE \
/rest/subscriptions/{ subscriptionUuid} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscriptions/{subscriptionUuid} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscriptions/{subscriptionUuid} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/subscriptions/{subscriptionUuid}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/subscriptions/{subscriptionUuid}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/subscriptions/{subscriptionUuid}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /subscriptions/{subscriptionUuid}
Parameters
Name
In
Type
Required
Description
subscriptionUuid
path
string
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a subscription
# You can also use wget
curl -X PATCH \
/rest/subscriptions/{ subscriptionUuid} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscriptions/{subscriptionUuid} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"uuid": "string",
"type": "DAST",
"associations": {
"assetGroups": [
"string"
]
},
"durationInDays": 0,
"activeUntil": "2019-08-24T14:15:22Z",
"activatedAt": "2019-08-24T14:15:22Z",
"redeemableUntil": "2019-08-24T14:15:22Z",
"created": "2019-08-24T14:15:22Z",
"createdBy": "string",
"updated": "2019-08-24T14:15:22Z",
"updatedBy": "string",
"template": {
"uuid": "string",
"variables": "string",
"template": "string",
"name": "string"
},
"customer": {
"uuid": "string"
},
"limits": {
"netsecAssets": 0,
"netsecScans": 0,
"netsecInternalAssets": 0,
"netsecInternalScans": 0,
"netsecApplianceAssets": 0,
"netsecApplianceScans": 0,
"netsecApplianceExternalAssets": 0,
"netsecApplianceExternalScans": 0,
"complianceAssets": 0,
"complianceScans": 0,
"complianceInternalAssets": 0,
"complianceInternalScans": 0,
"complianceApplianceAssets": 0,
"complianceApplianceScans": 0,
"complianceApplianceExternalAssets": 0,
"complianceApplianceExternalScans": 0,
"pciAssets": 0,
"pciScans": 0,
"scaleAssets": 0,
"scaleScans": 0,
"scaleInternalAssets": 0,
"scaleApplianceAssets": 0,
"scaleApplianceScans": 0,
"scaleApplianceExternalScans": 0,
"scaleApplianceExternalAssets": 0,
"cloudsecAssets": 0,
"cloudsecScans": 0,
"networkDiscoveryScans": 0,
"networkDiscoveryApplianceScans": 0,
"cloudDiscoveryScans": 0,
"cloudDiscoveryApplianceScans": 0,
"networkAssets": 0,
"networkScans": 0,
"networkApplianceAssets": 0,
"networkApplianceScans": 0,
"dockerImageDiscoveryScans": 0,
"dockerImageAssets": 0,
"dockerImageScans": 0,
"dockerImageDiscoveryApplianceScans": 0,
"dockerImageApplianceAssets": 0,
"dockerImageApplianceScans": 0,
"outscanNXAssets": 0,
"outscanNXApplianceAssets": 0
},
"isActive": true
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscriptions/{subscriptionUuid} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/subscriptions/{subscriptionUuid}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/subscriptions/{subscriptionUuid}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/subscriptions/{subscriptionUuid}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /subscriptions/{subscriptionUuid}
Body parameter
{
"uuid" : "string" ,
"type" : "DAST" ,
"associations" : {
"assetGroups" : [
"string"
]
},
"durationInDays" : 0 ,
"activeUntil" : "2019-08-24T14:15:22Z" ,
"activatedAt" : "2019-08-24T14:15:22Z" ,
"redeemableUntil" : "2019-08-24T14:15:22Z" ,
"created" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updated" : "2019-08-24T14:15:22Z" ,
"updatedBy" : "string" ,
"template" : {
"uuid" : "string" ,
"variables" : "string" ,
"template" : "string" ,
"name" : "string"
},
"customer" : {
"uuid" : "string"
},
"limits" : {
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
},
"isActive" : true
}
Parameters
Name
In
Type
Required
Description
subscriptionUuid
path
string
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Subscription
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a subscription template
# You can also use wget
curl -X GET \
/rest/subscriptions/templates/{ subscriptionTemplateUuid} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscriptions/templates/{subscriptionTemplateUuid} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscriptions/templates/{subscriptionTemplateUuid} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/subscriptions/templates/{subscriptionTemplateUuid}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/subscriptions/templates/{subscriptionTemplateUuid}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/subscriptions/templates/{subscriptionTemplateUuid}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /subscriptions/templates/{subscriptionTemplateUuid}
Parameters
Name
In
Type
Required
Description
subscriptionTemplateUuid
path
string
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"uuid" : "string" ,
"name" : "string" ,
"organization" : {
"uuid" : "string"
},
"variables" : "string" ,
"template" : "string" ,
"created" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updated" : "2019-08-24T14:15:22Z" ,
"updatedBy" : "string"
}
Responses
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a subscription template
# You can also use wget
curl -X DELETE \
/rest/subscriptions/templates/{ subscriptionTemplateUuid} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscriptions/templates/{subscriptionTemplateUuid} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscriptions/templates/{subscriptionTemplateUuid} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/subscriptions/templates/{subscriptionTemplateUuid}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/subscriptions/templates/{subscriptionTemplateUuid}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/subscriptions/templates/{subscriptionTemplateUuid}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /subscriptions/templates/{subscriptionTemplateUuid}
Parameters
Name
In
Type
Required
Description
subscriptionTemplateUuid
path
string
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a subscription template
# You can also use wget
curl -X PATCH \
/rest/subscriptions/templates/{ subscriptionTemplateUuid} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscriptions/templates/{subscriptionTemplateUuid} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"uuid": "string",
"name": "string",
"organization": {
"uuid": "string"
},
"variables": "string",
"template": "string",
"created": "2019-08-24T14:15:22Z",
"createdBy": "string",
"updated": "2019-08-24T14:15:22Z",
"updatedBy": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscriptions/templates/{subscriptionTemplateUuid} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/subscriptions/templates/{subscriptionTemplateUuid}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/subscriptions/templates/{subscriptionTemplateUuid}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/subscriptions/templates/{subscriptionTemplateUuid}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /subscriptions/templates/{subscriptionTemplateUuid}
Body parameter
{
"uuid" : "string" ,
"name" : "string" ,
"organization" : {
"uuid" : "string"
},
"variables" : "string" ,
"template" : "string" ,
"created" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updated" : "2019-08-24T14:15:22Z" ,
"updatedBy" : "string"
}
Parameters
Name
In
Type
Required
Description
subscriptionTemplateUuid
path
string
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
SubscriptionTemplate
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get asset groups associated with the subscription
# You can also use wget
curl -X GET \
/rest/subscriptions/{ subscriptionId} /asset-groups \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscriptions/{subscriptionId}/asset-groups ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscriptions/{subscriptionId}/asset-groups ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/subscriptions/{subscriptionId}/asset-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/subscriptions/{subscriptionId}/asset-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/subscriptions/{subscriptionId}/asset-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /subscriptions/{subscriptionId}/asset-groups
Parameters
Name
In
Type
Required
Description
subscriptionId
path
string
true
none
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"type" : "WEB_APP" ,
"parentId" : 0 ,
"assetIds" : [
0
],
"assetGroupIds" : [
0
],
"summaryId" : 0 ,
"summary" : "string" ,
"summaryPublishedAt" : "2019-08-24T14:15:22Z" ,
"path" : [
0
],
"activeSubscriptionTypes" : [
"DAST"
],
"managed" : true ,
"dynamic" : true ,
"labels" : "string" ,
"contactName" : "string" ,
"contactDetails" : "string" ,
"additionalDetails" : "string" ,
"commentPendingSince" : "2019-08-24T14:15:22Z" ,
"customerName" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"includedDynamicTags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"excludedDynamicTags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[AssetGroup ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» type
string
false
none
The assetgroup's type
» parentId
integer(int32)
false
none
The ID of the parent entry.
» assetIds
[integer]
false
read-only
The component assets
» assetGroupIds
[integer]
false
read-only
The children asset groups
» summaryId
integer(int32)
false
read-only
The ID of the executive summary
» summary
string
false
read-only
The content of the executive summary
» summaryPublishedAt
string(date-time)
false
read-only
When the executive summary was published
» path
[integer]
false
read-only
The path of the asset group tree
» activeSubscriptionTypes
[string]
false
read-only
The assetgroup's active subscription types
» managed
boolean
false
read-only
Managed internally by (e.g SWAT API or GhostLab)
» dynamic
boolean
false
none
Indicates whether the asset group is automatically populated with assets based on the assigned tags
» labels
string
false
none
The labels of the asset group
» contactName
string
false
none
The customer's contact name with regards to this asset group
» contactDetails
string
false
none
The customer's contact details
» additionalDetails
string
false
none
Additional information about the asset group that may require attention
» commentPendingSince
string(date-time)
false
read-only
The date since comment is pending
» customerName
string
false
none
The customer name
» tags
[Tag ]
false
read-only
The tags
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
» includedDynamicTags
[Tag ]
false
read-only
The included dynamic asset tags
» excludedDynamicTags
[Tag ]
false
read-only
The excluded dynamic asset tags
Enumerated Values
Property
Value
type
WEB_APP
type
INSTANCE
type
API
type
INTERNAL
type
EXTERNAL
type
MOBILE
type
PHYSICAL
type
WIRELESS
type
PHISHING
type
RED
type
ASSUMED
type
DIGITAL
type
HARDWARE
type
PROJECT
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of subscriptions
# You can also use wget
curl -X GET \
/rest/subscriptions \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscriptions ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscriptions ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/subscriptions" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/subscriptions' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/subscriptions' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /subscriptions
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"uuid" : "string" ,
"type" : "DAST" ,
"associations" : {
"assetGroups" : [
"string"
]
},
"durationInDays" : 0 ,
"activeUntil" : "2019-08-24T14:15:22Z" ,
"activatedAt" : "2019-08-24T14:15:22Z" ,
"redeemableUntil" : "2019-08-24T14:15:22Z" ,
"created" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updated" : "2019-08-24T14:15:22Z" ,
"updatedBy" : "string" ,
"template" : {
"uuid" : "string" ,
"variables" : "string" ,
"template" : "string" ,
"name" : "string"
},
"customer" : {
"uuid" : "string"
},
"limits" : {
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
},
"isActive" : true
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Subscription ]
false
none
none
» uuid
string
false
none
The UUID of the entry.
» type
string
false
none
none
» associations
Subscription.Associations
false
none
none
»» assetGroups
[string]
false
none
none
» durationInDays
integer(int32)
false
none
none
» activeUntil
string(date-time)
false
none
none
» activatedAt
string(date-time)
false
none
none
» redeemableUntil
string(date-time)
false
none
none
» created
string(date-time)
false
none
The timestamp when the entry was created.
» createdBy
string
false
none
The name of the user who created the entry.
» updated
string(date-time)
false
none
The timestamp when the entry was updated.
» updatedBy
string
false
none
The name of the user who updated the entry.
» template
Subscription.Template
false
none
none
»» uuid
string
true
none
The UUID of the entry.
»» variables
string
false
none
none
»» template
string
false
none
none
»» name
string
false
none
The name of the entry.
» customer
Subscription.Customer
false
none
none
»» uuid
string
true
none
The UUID of the entry.
» limits
Subscription.Limits
false
none
none
»» netsecAssets
integer(int32)
false
none
The netsec assets
»» netsecScans
integer(int32)
false
none
The netsec scans
»» netsecInternalAssets
integer(int32)
false
none
The netsec internal assets
»» netsecInternalScans
integer(int32)
false
none
The netsec internal scans
»» netsecApplianceAssets
integer(int32)
false
none
The netsec appliance assets
»» netsecApplianceScans
integer(int32)
false
none
The netsec appliance scans
»» netsecApplianceExternalAssets
integer(int32)
false
none
The netsec appliance external assets
»» netsecApplianceExternalScans
integer(int32)
false
none
The netsec appliance external scans
»» complianceAssets
integer(int32)
false
none
The compliance assets
»» complianceScans
integer(int32)
false
none
The compliance scans
»» complianceInternalAssets
integer(int32)
false
none
The compliance internal assets
»» complianceInternalScans
integer(int32)
false
none
The compliance internal scans
»» complianceApplianceAssets
integer(int32)
false
none
The compliance appliance assets
»» complianceApplianceScans
integer(int32)
false
none
The compliance appliance scans
»» complianceApplianceExternalAssets
integer(int32)
false
none
The compliance appliance external assets
»» complianceApplianceExternalScans
integer(int32)
false
none
The compliance appliance external scans
»» pciAssets
integer(int32)
false
none
The pci assets
»» pciScans
integer(int32)
false
none
The pci scans
»» scaleAssets
integer(int32)
false
none
The scale assets
»» scaleScans
integer(int32)
false
none
The scale scans
»» scaleInternalAssets
integer(int32)
false
none
The scale internal assets
»» scaleApplianceAssets
integer(int32)
false
none
The scale appliance assets
»» scaleApplianceScans
integer(int32)
false
none
The scale appliance scans
»» scaleApplianceExternalScans
integer(int32)
false
none
The scale appliance external scans
»» scaleApplianceExternalAssets
integer(int32)
false
none
The scale appliance external assets
»» cloudsecAssets
integer(int32)
false
none
The cloudsec assets
»» cloudsecScans
integer(int32)
false
none
The cloudsec scans
»» networkDiscoveryScans
integer(int32)
false
none
The network discovery scans
»» networkDiscoveryApplianceScans
integer(int32)
false
none
The network discovery appliance scans
»» cloudDiscoveryScans
integer(int32)
false
none
The cloud discovery scans
»» cloudDiscoveryApplianceScans
integer(int32)
false
none
The cloud discovery appliance scans
»» networkAssets
integer(int32)
false
none
The network assets
»» networkScans
integer(int32)
false
none
The network scans
»» networkApplianceAssets
integer(int32)
false
none
The network appliance assets
»» networkApplianceScans
integer(int32)
false
none
The network appliance scans
»» dockerImageDiscoveryScans
integer(int32)
false
none
The docker image discovery scans
»» dockerImageAssets
integer(int32)
false
none
The docker image assets
»» dockerImageScans
integer(int32)
false
none
The docker image scans
»» dockerImageDiscoveryApplianceScans
integer(int32)
false
none
The docker image discovery appliance scans
»» dockerImageApplianceAssets
integer(int32)
false
none
The docker image appliance assets
»» dockerImageApplianceScans
integer(int32)
false
none
The docker image appliance scans
»» outscanNXAssets
integer(int32)
false
none
The outscan NX assets
»» outscanNXApplianceAssets
integer(int32)
false
none
The outscan NX appliance assets
» isActive
boolean
false
none
none
Enumerated Values
Property
Value
type
DAST
type
SCALE
type
SCOUT
type
SNAPSHOT
type
ASSURE
type
DAST_EXPERT
type
VERIFY
type
SWAT
type
CLOUDSEC
type
NETSEC
type
CONSUMPTION
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a subscription
# You can also use wget
curl -X POST \
/rest/subscriptions \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscriptions ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"uuid": "string",
"type": "DAST",
"associations": {
"assetGroups": [
"string"
]
},
"durationInDays": 0,
"activeUntil": "2019-08-24T14:15:22Z",
"activatedAt": "2019-08-24T14:15:22Z",
"redeemableUntil": "2019-08-24T14:15:22Z",
"created": "2019-08-24T14:15:22Z",
"createdBy": "string",
"updated": "2019-08-24T14:15:22Z",
"updatedBy": "string",
"template": {
"uuid": "string",
"variables": "string",
"template": "string",
"name": "string"
},
"customer": {
"uuid": "string"
},
"limits": {
"netsecAssets": 0,
"netsecScans": 0,
"netsecInternalAssets": 0,
"netsecInternalScans": 0,
"netsecApplianceAssets": 0,
"netsecApplianceScans": 0,
"netsecApplianceExternalAssets": 0,
"netsecApplianceExternalScans": 0,
"complianceAssets": 0,
"complianceScans": 0,
"complianceInternalAssets": 0,
"complianceInternalScans": 0,
"complianceApplianceAssets": 0,
"complianceApplianceScans": 0,
"complianceApplianceExternalAssets": 0,
"complianceApplianceExternalScans": 0,
"pciAssets": 0,
"pciScans": 0,
"scaleAssets": 0,
"scaleScans": 0,
"scaleInternalAssets": 0,
"scaleApplianceAssets": 0,
"scaleApplianceScans": 0,
"scaleApplianceExternalScans": 0,
"scaleApplianceExternalAssets": 0,
"cloudsecAssets": 0,
"cloudsecScans": 0,
"networkDiscoveryScans": 0,
"networkDiscoveryApplianceScans": 0,
"cloudDiscoveryScans": 0,
"cloudDiscoveryApplianceScans": 0,
"networkAssets": 0,
"networkScans": 0,
"networkApplianceAssets": 0,
"networkApplianceScans": 0,
"dockerImageDiscoveryScans": 0,
"dockerImageAssets": 0,
"dockerImageScans": 0,
"dockerImageDiscoveryApplianceScans": 0,
"dockerImageApplianceAssets": 0,
"dockerImageApplianceScans": 0,
"outscanNXAssets": 0,
"outscanNXApplianceAssets": 0
},
"isActive": true
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscriptions ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/subscriptions" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/subscriptions' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/subscriptions' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /subscriptions
Body parameter
{
"uuid" : "string" ,
"type" : "DAST" ,
"associations" : {
"assetGroups" : [
"string"
]
},
"durationInDays" : 0 ,
"activeUntil" : "2019-08-24T14:15:22Z" ,
"activatedAt" : "2019-08-24T14:15:22Z" ,
"redeemableUntil" : "2019-08-24T14:15:22Z" ,
"created" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updated" : "2019-08-24T14:15:22Z" ,
"updatedBy" : "string" ,
"template" : {
"uuid" : "string" ,
"variables" : "string" ,
"template" : "string" ,
"name" : "string"
},
"customer" : {
"uuid" : "string"
},
"limits" : {
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
},
"isActive" : true
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Subscription
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/subscriptions/templates \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscriptions/templates ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscriptions/templates ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/subscriptions/templates" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/subscriptions/templates' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/subscriptions/templates' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /subscriptions/templates
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of subscription templates
# You can also use wget
curl -X GET \
/rest/subscriptions/templates \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscriptions/templates ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscriptions/templates ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/subscriptions/templates" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/subscriptions/templates' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/subscriptions/templates' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /subscriptions/templates
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"uuid" : "string" ,
"name" : "string" ,
"organization" : {
"uuid" : "string"
},
"variables" : "string" ,
"template" : "string" ,
"created" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updated" : "2019-08-24T14:15:22Z" ,
"updatedBy" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[SubscriptionTemplate ]
false
none
none
» uuid
string
false
none
The UUID of the entry.
» name
string
true
none
The name of the entry.
» organization
SubscriptionTemplate.Organization
true
none
none
»» uuid
string
true
none
The UUID of the entry.
» variables
string
false
none
none
» template
string
true
none
none
» created
string(date-time)
false
none
The timestamp when the entry was created.
» createdBy
string
false
none
The name of the user who created the entry.
» updated
string(date-time)
false
none
The timestamp when the entry was updated.
» updatedBy
string
false
none
The name of the user who updated the entry.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a subscription template
# You can also use wget
curl -X POST \
/rest/subscriptions/templates \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscriptions/templates ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"uuid": "string",
"name": "string",
"organization": {
"uuid": "string"
},
"variables": "string",
"template": "string",
"created": "2019-08-24T14:15:22Z",
"createdBy": "string",
"updated": "2019-08-24T14:15:22Z",
"updatedBy": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscriptions/templates ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/subscriptions/templates" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/subscriptions/templates' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/subscriptions/templates' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /subscriptions/templates
Body parameter
{
"uuid" : "string" ,
"name" : "string" ,
"organization" : {
"uuid" : "string"
},
"variables" : "string" ,
"template" : "string" ,
"created" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updated" : "2019-08-24T14:15:22Z" ,
"updatedBy" : "string"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
SubscriptionTemplate
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get variables for subscription templates
# You can also use wget
curl -X GET \
/rest/subscriptions/template-variables \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscriptions/template-variables ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscriptions/template-variables ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/subscriptions/template-variables" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/subscriptions/template-variables' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/subscriptions/template-variables' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /subscriptions/template-variables
The above code returns response like this:
default Response
[
{
"key" : "string" ,
"description" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[SubscriptionTemplateVariable ]
false
none
none
» key
string
false
none
The subscription template variable name
» description
string
false
none
Description of the entry.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Preview a subscription template
# You can also use wget
curl -X POST \
/rest/subscriptions/templates/preview \
-H 'Content-Type: application/json' \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscriptions/templates/preview ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"variables": "string",
"template": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' text/plain ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscriptions/templates/preview ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "text/plain" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/subscriptions/templates/preview" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'text/plain' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/subscriptions/templates/preview' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'text/plain' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/subscriptions/templates/preview' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /subscriptions/templates/preview
Body parameter
{
"variables" : "string" ,
"template" : "string"
}
Parameters
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Generate a report
# You can also use wget
curl -X POST \
/rest/subscriptions/reports \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/subscriptions/reports ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerIds": [
0
],
"startDate": "2019-08-24T14:15:22Z",
"endDate": "2019-08-24T14:15:22Z"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/subscriptions/reports ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/subscriptions/reports" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/subscriptions/reports' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/subscriptions/reports' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /subscriptions/reports
Body parameter
{
"customerIds" : [
0
],
"startDate" : "2019-08-24T14:15:22Z" ,
"endDate" : "2019-08-24T14:15:22Z"
}
Parameters
Name
In
Type
Required
Description
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
SubscriptionReport
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Summaries
Get a summary
# You can also use wget
curl -X GET \
/rest/summaries/{ summaryId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/summaries/{summaryId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/summaries/{summaryId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/summaries/{summaryId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/summaries/{summaryId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/summaries/{summaryId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /summaries/{summaryId}
Parameters
Name
In
Type
Required
Description
summaryId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"content" : "string" ,
"assetGroupId" : 0 ,
"swatScheduleId" : 0 ,
"reviewed" : "2019-08-24T14:15:22Z" ,
"reviewedBy" : "string" ,
"reviewedById" : 0 ,
"qualityAssured" : "2019-08-24T14:15:22Z" ,
"qualityAssuredBy" : "string" ,
"qualityAssuredById" : 0 ,
"published" : "2019-08-24T14:15:22Z" ,
"publishedBy" : "string" ,
"publishedById" : 0 ,
"rejected" : "2019-08-24T14:15:22Z" ,
"rejectedBy" : "string" ,
"rejectedById" : 0 ,
"status" : "PENDING_REVIEW"
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Summary
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a summary
# You can also use wget
curl -X DELETE \
/rest/summaries/{ summaryId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/summaries/{summaryId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/summaries/{summaryId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/summaries/{summaryId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/summaries/{summaryId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/summaries/{summaryId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /summaries/{summaryId}
Parameters
Name
In
Type
Required
Description
summaryId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a summary
# You can also use wget
curl -X PATCH \
/rest/summaries/{ summaryId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/summaries/{summaryId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"content": "string",
"assetGroupId": 0,
"swatScheduleId": 0,
"reviewed": "2019-08-24T14:15:22Z",
"reviewedBy": "string",
"reviewedById": 0,
"qualityAssured": "2019-08-24T14:15:22Z",
"qualityAssuredBy": "string",
"qualityAssuredById": 0,
"published": "2019-08-24T14:15:22Z",
"publishedBy": "string",
"publishedById": 0,
"rejected": "2019-08-24T14:15:22Z",
"rejectedBy": "string",
"rejectedById": 0,
"status": "PENDING_REVIEW"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/summaries/{summaryId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/summaries/{summaryId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/summaries/{summaryId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/summaries/{summaryId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /summaries/{summaryId}
Body parameter
{
"customerId" : 0 ,
"content" : "string" ,
"assetGroupId" : 0 ,
"swatScheduleId" : 0 ,
"reviewed" : "2019-08-24T14:15:22Z" ,
"reviewedBy" : "string" ,
"reviewedById" : 0 ,
"qualityAssured" : "2019-08-24T14:15:22Z" ,
"qualityAssuredBy" : "string" ,
"qualityAssuredById" : 0 ,
"published" : "2019-08-24T14:15:22Z" ,
"publishedBy" : "string" ,
"publishedById" : 0 ,
"rejected" : "2019-08-24T14:15:22Z" ,
"rejectedBy" : "string" ,
"rejectedById" : 0 ,
"status" : "PENDING_REVIEW"
}
Parameters
Name
In
Type
Required
Description
summaryId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Summary
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of summaries
# You can also use wget
curl -X GET \
/rest/summaries \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/summaries ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/summaries ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/summaries" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/summaries' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/summaries' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /summaries
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"content" : "string" ,
"assetGroupId" : 0 ,
"swatScheduleId" : 0 ,
"reviewed" : "2019-08-24T14:15:22Z" ,
"reviewedBy" : "string" ,
"reviewedById" : 0 ,
"qualityAssured" : "2019-08-24T14:15:22Z" ,
"qualityAssuredBy" : "string" ,
"qualityAssuredById" : 0 ,
"published" : "2019-08-24T14:15:22Z" ,
"publishedBy" : "string" ,
"publishedById" : 0 ,
"rejected" : "2019-08-24T14:15:22Z" ,
"rejectedBy" : "string" ,
"rejectedById" : 0 ,
"status" : "PENDING_REVIEW"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Summary ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» content
string
false
none
none
» assetGroupId
integer(int32)
true
none
none
» swatScheduleId
integer(int64)
false
none
none
» reviewed
string(date-time)
false
none
none
» reviewedBy
string
false
none
none
» reviewedById
integer(int32)
false
none
none
» qualityAssured
string(date-time)
false
none
none
» qualityAssuredBy
string
false
none
none
» qualityAssuredById
integer(int32)
false
none
none
» published
string(date-time)
false
none
none
» publishedBy
string
false
none
none
» publishedById
integer(int32)
false
none
none
» rejected
string(date-time)
false
none
none
» rejectedBy
string
false
none
none
» rejectedById
integer(int32)
false
none
none
» status
string
false
none
none
Enumerated Values
Property
Value
status
PENDING_REVIEW
status
PENDING_QA
status
PENDING_PUBLICATION
status
PUBLISHED
status
REJECTED
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a summary
# You can also use wget
curl -X POST \
/rest/summaries \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/summaries ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"content": "string",
"assetGroupId": 0,
"swatScheduleId": 0,
"reviewed": "2019-08-24T14:15:22Z",
"reviewedBy": "string",
"reviewedById": 0,
"qualityAssured": "2019-08-24T14:15:22Z",
"qualityAssuredBy": "string",
"qualityAssuredById": 0,
"published": "2019-08-24T14:15:22Z",
"publishedBy": "string",
"publishedById": 0,
"rejected": "2019-08-24T14:15:22Z",
"rejectedBy": "string",
"rejectedById": 0,
"status": "PENDING_REVIEW"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/summaries ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/summaries" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/summaries' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/summaries' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /summaries
Body parameter
{
"customerId" : 0 ,
"content" : "string" ,
"assetGroupId" : 0 ,
"swatScheduleId" : 0 ,
"reviewed" : "2019-08-24T14:15:22Z" ,
"reviewedBy" : "string" ,
"reviewedById" : 0 ,
"qualityAssured" : "2019-08-24T14:15:22Z" ,
"qualityAssuredBy" : "string" ,
"qualityAssuredById" : 0 ,
"published" : "2019-08-24T14:15:22Z" ,
"publishedBy" : "string" ,
"publishedById" : 0 ,
"rejected" : "2019-08-24T14:15:22Z" ,
"rejectedBy" : "string" ,
"rejectedById" : 0 ,
"status" : "PENDING_REVIEW"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Summary
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/summaries \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/summaries ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/summaries ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/summaries" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/summaries' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/summaries' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /summaries
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Transition a summary status
# You can also use wget
curl -X POST \
/rest/summaries/{ summaryId} /transition \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/summaries/{summaryId}/transition ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"transitionTo": "PENDING_REVIEW",
"transitionBy": "string",
"transitionById": 0
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/summaries/{summaryId}/transition ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/summaries/{summaryId}/transition" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/summaries/{summaryId}/transition' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/summaries/{summaryId}/transition' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /summaries/{summaryId}/transition
Body parameter
{
"transitionTo" : "PENDING_REVIEW" ,
"transitionBy" : "string" ,
"transitionById" : 0
}
Parameters
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Tags
Get a tag by ID
# You can also use wget
curl -X GET \
/rest/tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/tags/{tagId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/tags/{tagId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /tags/{tagId}
Parameters
Name
In
Type
Required
Description
tagId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Tag
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a tag
# You can also use wget
curl -X DELETE \
/rest/tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /tags/{tagId}
Parameters
Name
In
Type
Required
Description
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a tag
# You can also use wget
curl -X PATCH \
/rest/tags/{ tagId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/tags/{tagId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"key": "string",
"value": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/tags/{tagId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /tags/{tagId}
Body parameter
{
"customerId" : 0 ,
"key" : "string" ,
"value" : "string"
}
Parameters
Name
In
Type
Required
Description
tagId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Tag
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X GET \
/rest/tags \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/tags ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/tags ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /tags
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
Status
Meaning
Description
Schema
default
Default
default response
Inline
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Tag ]
false
none
[The tags]
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» key
string
true
none
none
» value
string
false
none
none
» inherited
boolean
false
read-only
none
» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a tag
# You can also use wget
curl -X POST \
/rest/tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/tags ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"key": "string",
"value": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/tags ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /tags
Body parameter
{
"customerId" : 0 ,
"key" : "string" ,
"value" : "string"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Tag
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/tags/statistics \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/tags/statistics ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/tags/statistics ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/tags/statistics" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/tags/statistics' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/tags/statistics' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /tags/statistics
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get tag statistics by ID
# You can also use wget
curl -X GET \
/rest/tags/statistics/{ statisticId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/tags/statistics/{statisticId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/tags/statistics/{statisticId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/tags/statistics/{statisticId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/tags/statistics/{statisticId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/tags/statistics/{statisticId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /tags/statistics/{statisticId}
Parameters
Name
In
Type
Required
Description
statisticId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"statistics" : {
"accounts" : 0 ,
"assetGroups" : 0 ,
"assets" : 0 ,
"assetIdentifiers" : 0 ,
"eventSubscriptions" : 0 ,
"managedReports" : 0 ,
"scheduledReports" : 0 ,
"complianceFindings" : 0 ,
"findings" : 0 ,
"scanConfigurations" : 0 ,
"workflows" : 0 ,
"dashboards" : 0 ,
"integrations" : 0 ,
"scanPolicies" : 0 ,
"viewTemplates" : 0 ,
"users" : 0 ,
"scanConfigurationSettings" : 0 ,
"scheduledReportSettings" : 0 ,
"resourceGroupSettings" : 0
}
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
TagStatistic
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of tag statistics
# You can also use wget
curl -X GET \
/rest/tags/statistics \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/tags/statistics ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/tags/statistics ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/tags/statistics" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/tags/statistics' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/tags/statistics' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /tags/statistics
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"statistics" : {
"accounts" : 0 ,
"assetGroups" : 0 ,
"assets" : 0 ,
"assetIdentifiers" : 0 ,
"eventSubscriptions" : 0 ,
"managedReports" : 0 ,
"scheduledReports" : 0 ,
"complianceFindings" : 0 ,
"findings" : 0 ,
"scanConfigurations" : 0 ,
"workflows" : 0 ,
"dashboards" : 0 ,
"integrations" : 0 ,
"scanPolicies" : 0 ,
"viewTemplates" : 0 ,
"users" : 0 ,
"scanConfigurationSettings" : 0 ,
"scheduledReportSettings" : 0 ,
"resourceGroupSettings" : 0
}
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[TagStatistic ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» key
string
false
read-only
none
» value
string
false
read-only
none
» statistics
TagStatistic.Statistics
false
read-only
none
»» accounts
integer(int32)
false
none
none
»» assetGroups
integer(int32)
false
none
none
»» assets
integer(int32)
false
none
none
»» assetIdentifiers
integer(int32)
false
none
none
»» eventSubscriptions
integer(int32)
false
none
none
»» managedReports
integer(int32)
false
none
none
»» scheduledReports
integer(int32)
false
none
none
»» complianceFindings
integer(int32)
false
none
none
»» findings
integer(int32)
false
none
none
»» scanConfigurations
integer(int32)
false
none
none
»» workflows
integer(int32)
false
none
none
»» dashboards
integer(int32)
false
none
none
»» integrations
integer(int32)
false
none
none
»» scanPolicies
integer(int32)
false
none
none
»» viewTemplates
integer(int32)
false
none
none
»» users
integer(int32)
false
none
none
»» scanConfigurationSettings
integer(int32)
false
none
none
»» scheduledReportSettings
integer(int32)
false
none
none
»» resourceGroupSettings
integer(int32)
false
none
none
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X POST \
/rest/tags/transform \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/tags/transform ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"objects": {
"accounts": true,
"assetGroups": true,
"assets": true,
"assetIdentifiers": true,
"eventSubscriptions": true,
"managedReports": true,
"scheduledReports": true,
"complianceFindings": true,
"findings": true,
"scanConfigurations": true,
"dashboards": true,
"integrations": true,
"scanPolicies": true,
"viewTemplates": true,
"users": true,
"scanConfigurationSettings": true,
"scheduledReportSettings": true,
"resourceGroupSettings": true,
"workflows": true
},
"from": {
"key": "string",
"allKeys": true,
"value": "string",
"allValues": true
},
"to": {
"key": "string",
"allKeys": true,
"value": "string",
"allValues": true
}
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/tags/transform ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/tags/transform" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/tags/transform' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/tags/transform' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /tags/transform
Body parameter
{
"objects" : {
"accounts" : true ,
"assetGroups" : true ,
"assets" : true ,
"assetIdentifiers" : true ,
"eventSubscriptions" : true ,
"managedReports" : true ,
"scheduledReports" : true ,
"complianceFindings" : true ,
"findings" : true ,
"scanConfigurations" : true ,
"dashboards" : true ,
"integrations" : true ,
"scanPolicies" : true ,
"viewTemplates" : true ,
"users" : true ,
"scanConfigurationSettings" : true ,
"scheduledReportSettings" : true ,
"resourceGroupSettings" : true ,
"workflows" : true
},
"from" : {
"key" : "string" ,
"allKeys" : true ,
"value" : "string" ,
"allValues" : true
},
"to" : {
"key" : "string" ,
"allKeys" : true ,
"value" : "string" ,
"allValues" : true
}
}
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Terms
Accept terms
# You can also use wget
curl -X POST \
/rest/terms/{ termsId} /accept \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/terms/{termsId}/accept ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/terms/{termsId}/accept ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/terms/{termsId}/accept" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/terms/{termsId}/accept' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/terms/{termsId}/accept' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /terms/{termsId}/accept
Parameters
Name
In
Type
Required
Description
termsId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get terms
# You can also use wget
curl -X GET \
/rest/terms/{ termsId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/terms/{termsId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/terms/{termsId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/terms/{termsId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/terms/{termsId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/terms/{termsId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /terms/{termsId}
Parameters
Name
In
Type
Required
Description
termsId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"mainUserMustAccept" : true ,
"allUsersMustAccept" : true ,
"termsTemplateId" : 0 ,
"termsTemplateName" : "string" ,
"termsTemplateContent" : "string" ,
"customerName" : "string"
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Terms
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete terms
# You can also use wget
curl -X DELETE \
/rest/terms/{ termsId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/terms/{termsId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/terms/{termsId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/terms/{termsId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/terms/{termsId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/terms/{termsId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /terms/{termsId}
Parameters
Name
In
Type
Required
Description
termsId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of terms acceptances
# You can also use wget
curl -X GET \
/rest/terms/acceptances \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/terms/acceptances ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/terms/acceptances ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/terms/acceptances" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/terms/acceptances' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/terms/acceptances' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /terms/acceptances
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"termsId" : 0
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[TermsAcceptance ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» termsId
integer(int32)
true
none
none
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of terms
# You can also use wget
curl -X GET \
/rest/terms \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/terms ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/terms ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/terms" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/terms' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/terms' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /terms
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"mainUserMustAccept" : true ,
"allUsersMustAccept" : true ,
"termsTemplateId" : 0 ,
"termsTemplateName" : "string" ,
"termsTemplateContent" : "string" ,
"customerName" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Terms ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» mainUserMustAccept
boolean
true
none
none
» allUsersMustAccept
boolean
true
none
none
» termsTemplateId
integer(int32)
true
none
none
» termsTemplateName
string
false
read-only
none
» termsTemplateContent
string
false
read-only
none
» customerName
string
false
read-only
none
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create terms
# You can also use wget
curl -X POST \
/rest/terms \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/terms ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"mainUserMustAccept": true,
"allUsersMustAccept": true,
"termsTemplateId": 0
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/terms ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/terms" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/terms' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/terms' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /terms
Body parameter
{
"customerId" : 0 ,
"mainUserMustAccept" : true ,
"allUsersMustAccept" : true ,
"termsTemplateId" : 0
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Terms
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/terms \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/terms ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/terms ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/terms" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/terms' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/terms' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /terms
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Terms templates
Get a terms template
# You can also use wget
curl -X GET \
/rest/terms-templates/{ termsTemplateId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/terms-templates/{termsTemplateId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/terms-templates/{termsTemplateId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/terms-templates/{termsTemplateId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/terms-templates/{termsTemplateId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/terms-templates/{termsTemplateId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /terms-templates/{termsTemplateId}
Parameters
Name
In
Type
Required
Description
termsTemplateId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"name" : "string" ,
"content" : "string" ,
"id" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
TermsTemplate
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a terms template
# You can also use wget
curl -X DELETE \
/rest/terms-templates/{ termsTemplateId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/terms-templates/{termsTemplateId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/terms-templates/{termsTemplateId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/terms-templates/{termsTemplateId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/terms-templates/{termsTemplateId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/terms-templates/{termsTemplateId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /terms-templates/{termsTemplateId}
Parameters
Name
In
Type
Required
Description
termsTemplateId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of terms templates
# You can also use wget
curl -X GET \
/rest/terms-templates \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/terms-templates ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/terms-templates ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/terms-templates" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/terms-templates' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/terms-templates' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /terms-templates
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"name" : "string" ,
"content" : "string" ,
"id" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[TermsTemplate ]
false
none
none
» name
string
true
none
The name of the entry.
» content
string
true
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a terms template
# You can also use wget
curl -X POST \
/rest/terms-templates \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/terms-templates ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"name": "string",
"content": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/terms-templates ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/terms-templates" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/terms-templates' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/terms-templates' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /terms-templates
Body parameter
{
"name" : "string" ,
"content" : "string"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
TermsTemplate
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/terms-templates \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/terms-templates ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/terms-templates ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/terms-templates" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/terms-templates' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/terms-templates' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /terms-templates
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Usage stats
Get cyr3con stats
# You can also use wget
curl -X GET \
/rest/usage-stats/cyr3con \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/usage-stats/cyr3con ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/usage-stats/cyr3con ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/usage-stats/cyr3con" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/usage-stats/cyr3con' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/usage-stats/cyr3con' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /usage-stats/cyr3con
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get usage stats by ID
# You can also use wget
curl -X GET \
/rest/usage-stats/{ usageStatsId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/usage-stats/{usageStatsId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/usage-stats/{usageStatsId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/usage-stats/{usageStatsId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/usage-stats/{usageStatsId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/usage-stats/{usageStatsId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /usage-stats/{usageStatsId}
Parameters
Name
In
Type
Required
Description
usageStatsId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"customerName" : "string" ,
"organization" : "string" ,
"salesAccountId" : "string" ,
"statsUpdated" : "2019-08-24T14:15:22Z" ,
"applianceStatsUpdated" : "2019-08-24T14:15:22Z" ,
"scaleConfigurations" : 0 ,
"scoutConfigurations" : 0 ,
"cloudsecConfigurations" : 0 ,
"applianceScaleConfigurations" : 0 ,
"users" : 0 ,
"lastLogin" : "2019-08-24T14:15:22Z" ,
"applianceUsers" : 0 ,
"applianceLastLogin" : "2019-08-24T14:15:22Z" ,
"findingsCritical" : 0 ,
"findingsHigh" : 0 ,
"findingsMedium" : 0 ,
"findingsLow" : 0 ,
"findingsRecommendations" : 0 ,
"applianceFindingsCritical" : 0 ,
"applianceFindingsHigh" : 0 ,
"applianceFindingsMedium" : 0 ,
"applianceFindingsLow" : 0 ,
"applianceFindingsRecommendations" : 0 ,
"scans" : 0 ,
"lastScan" : "2019-08-24T14:15:22Z" ,
"applianceScans" : 0 ,
"applianceLastScan" : "2019-08-24T14:15:22Z" ,
"accountsAws" : 0 ,
"accountsGcp" : 0 ,
"accountsAzure" : 0 ,
"accountsVsphere" : 0 ,
"accountsBasic" : 0 ,
"accountsWeb" : 0 ,
"applianceAccountsAws" : 0 ,
"applianceAccountsGcp" : 0 ,
"applianceAccountsAzure" : 0 ,
"applianceAccountsVsphere" : 0 ,
"applianceAccountsBasic" : 0 ,
"applianceAccountsWeb" : 0 ,
"cyr3conAssets" : 0 ,
"cyr3conApplianceAssets" : 0 ,
"agents" : 0 ,
"agentsScanned" : 0 ,
"agentsOutdated" : 0 ,
"applianceAgents" : 0 ,
"applianceAgentsScanned" : 0 ,
"applianceAgentsOutdated" : 0
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
UsageStats
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of usage stats
# You can also use wget
curl -X GET \
/rest/usage-stats \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/usage-stats ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/usage-stats ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/usage-stats" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/usage-stats' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/usage-stats' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /usage-stats
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"customerName" : "string" ,
"organization" : "string" ,
"salesAccountId" : "string" ,
"statsUpdated" : "2019-08-24T14:15:22Z" ,
"applianceStatsUpdated" : "2019-08-24T14:15:22Z" ,
"scaleConfigurations" : 0 ,
"scoutConfigurations" : 0 ,
"cloudsecConfigurations" : 0 ,
"applianceScaleConfigurations" : 0 ,
"users" : 0 ,
"lastLogin" : "2019-08-24T14:15:22Z" ,
"applianceUsers" : 0 ,
"applianceLastLogin" : "2019-08-24T14:15:22Z" ,
"findingsCritical" : 0 ,
"findingsHigh" : 0 ,
"findingsMedium" : 0 ,
"findingsLow" : 0 ,
"findingsRecommendations" : 0 ,
"applianceFindingsCritical" : 0 ,
"applianceFindingsHigh" : 0 ,
"applianceFindingsMedium" : 0 ,
"applianceFindingsLow" : 0 ,
"applianceFindingsRecommendations" : 0 ,
"scans" : 0 ,
"lastScan" : "2019-08-24T14:15:22Z" ,
"applianceScans" : 0 ,
"applianceLastScan" : "2019-08-24T14:15:22Z" ,
"accountsAws" : 0 ,
"accountsGcp" : 0 ,
"accountsAzure" : 0 ,
"accountsVsphere" : 0 ,
"accountsBasic" : 0 ,
"accountsWeb" : 0 ,
"applianceAccountsAws" : 0 ,
"applianceAccountsGcp" : 0 ,
"applianceAccountsAzure" : 0 ,
"applianceAccountsVsphere" : 0 ,
"applianceAccountsBasic" : 0 ,
"applianceAccountsWeb" : 0 ,
"cyr3conAssets" : 0 ,
"cyr3conApplianceAssets" : 0 ,
"agents" : 0 ,
"agentsScanned" : 0 ,
"agentsOutdated" : 0 ,
"applianceAgents" : 0 ,
"applianceAgentsScanned" : 0 ,
"applianceAgentsOutdated" : 0
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[UsageStats ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» customerName
string
false
read-only
none
» organization
string
false
read-only
none
» salesAccountId
string
false
read-only
none
» statsUpdated
string(date-time)
false
none
none
» applianceStatsUpdated
string(date-time)
false
none
none
» scaleConfigurations
integer(int32)
false
none
none
» scoutConfigurations
integer(int32)
false
none
none
» cloudsecConfigurations
integer(int32)
false
none
none
» applianceScaleConfigurations
integer(int32)
false
none
none
» users
integer(int32)
false
none
none
» lastLogin
string(date-time)
false
none
none
» applianceUsers
integer(int32)
false
none
none
» applianceLastLogin
string(date-time)
false
none
none
» findingsCritical
integer(int32)
false
none
none
» findingsHigh
integer(int32)
false
none
none
» findingsMedium
integer(int32)
false
none
none
» findingsLow
integer(int32)
false
none
none
» findingsRecommendations
integer(int32)
false
none
none
» applianceFindingsCritical
integer(int32)
false
none
none
» applianceFindingsHigh
integer(int32)
false
none
none
» applianceFindingsMedium
integer(int32)
false
none
none
» applianceFindingsLow
integer(int32)
false
none
none
» applianceFindingsRecommendations
integer(int32)
false
none
none
» scans
integer(int32)
false
none
none
» lastScan
string(date-time)
false
none
none
» applianceScans
integer(int32)
false
none
none
» applianceLastScan
string(date-time)
false
none
none
» accountsAws
integer(int32)
false
none
none
» accountsGcp
integer(int32)
false
none
none
» accountsAzure
integer(int32)
false
none
none
» accountsVsphere
integer(int32)
false
none
none
» accountsBasic
integer(int32)
false
none
none
» accountsWeb
integer(int32)
false
none
none
» applianceAccountsAws
integer(int32)
false
none
none
» applianceAccountsGcp
integer(int32)
false
none
none
» applianceAccountsAzure
integer(int32)
false
none
none
» applianceAccountsVsphere
integer(int32)
false
none
none
» applianceAccountsBasic
integer(int32)
false
none
none
» applianceAccountsWeb
integer(int32)
false
none
none
» cyr3conAssets
integer(int32)
false
none
none
» cyr3conApplianceAssets
integer(int32)
false
none
none
» agents
integer(int32)
false
none
none
» agentsScanned
integer(int32)
false
none
none
» agentsOutdated
integer(int32)
false
none
none
» applianceAgents
integer(int32)
false
none
none
» applianceAgentsScanned
integer(int32)
false
none
none
» applianceAgentsOutdated
integer(int32)
false
none
none
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/usage-stats \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/usage-stats ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/usage-stats ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/usage-stats" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/usage-stats' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/usage-stats' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /usage-stats
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
User role permissions
Get a user role permission
# You can also use wget
curl -X GET \
/rest/user-role-permissions/{ userRolePermissionId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/user-role-permissions/{userRolePermissionId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/user-role-permissions/{userRolePermissionId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/user-role-permissions/{userRolePermissionId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/user-role-permissions/{userRolePermissionId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/user-role-permissions/{userRolePermissionId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /user-role-permissions/{userRolePermissionId}
Parameters
Name
In
Type
Required
Description
userRolePermissionId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"name" : "string"
}
Responses
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of user role permissions
# You can also use wget
curl -X GET \
/rest/user-role-permissions \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/user-role-permissions ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/user-role-permissions ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/user-role-permissions" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/user-role-permissions' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/user-role-permissions' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /user-role-permissions
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"name" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[UserRolePermission ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» name
string
false
read-only
The name of the entry.
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/user-role-permissions \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/user-role-permissions ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/user-role-permissions ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/user-role-permissions" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/user-role-permissions' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/user-role-permissions' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /user-role-permissions
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
User roles
Get a user role
# You can also use wget
curl -X GET \
/rest/user-roles/{ userRoleId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/user-roles/{userRoleId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/user-roles/{userRoleId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/user-roles/{userRoleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/user-roles/{userRoleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/user-roles/{userRoleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /user-roles/{userRoleId}
Parameters
Name
In
Type
Required
Description
userRoleId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"system" : true ,
"permissionIds" : [
0
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
UserRole
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a user role
# You can also use wget
curl -X DELETE \
/rest/user-roles/{ userRoleId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/user-roles/{userRoleId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/user-roles/{userRoleId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/user-roles/{userRoleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/user-roles/{userRoleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/user-roles/{userRoleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /user-roles/{userRoleId}
Parameters
Name
In
Type
Required
Description
userRoleId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a user role
# You can also use wget
curl -X PATCH \
/rest/user-roles/{ userRoleId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/user-roles/{userRoleId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"permissionIds": [
0
]
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/user-roles/{userRoleId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/user-roles/{userRoleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/user-roles/{userRoleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/user-roles/{userRoleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /user-roles/{userRoleId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"permissionIds" : [
0
]
}
Parameters
Name
In
Type
Required
Description
userRoleId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
UserRole
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of user roles
# You can also use wget
curl -X GET \
/rest/user-roles \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/user-roles ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/user-roles ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/user-roles" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/user-roles' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/user-roles' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /user-roles
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"system" : true ,
"permissionIds" : [
0
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[UserRole ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» system
boolean
false
read-only
Set to true when system role
» permissionIds
[integer]
false
none
The user role permission ids
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a user role
# You can also use wget
curl -X POST \
/rest/user-roles \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/user-roles ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"permissionIds": [
0
]
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/user-roles ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/user-roles" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/user-roles' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/user-roles' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /user-roles
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"permissionIds" : [
0
]
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
UserRole
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/user-roles \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/user-roles ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/user-roles ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/user-roles" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/user-roles' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/user-roles' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /user-roles
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Users
Change current users password; if current user is a sub-user, redirect to /sub-users/me/change-password
# You can also use wget
curl -X POST \
/rest/users/me/change-password \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/users/me/change-password ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"password": "string",
"oldPassword": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/users/me/change-password ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/users/me/change-password" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/users/me/change-password' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/users/me/change-password' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /users/me/change-password
Body parameter
{
"password" : "string" ,
"oldPassword" : "string"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ChangePasswordRequest
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/users/{ userId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/users/{userId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/users/{userId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/users/{userId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/users/{userId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/users/{userId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /users/{userId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
userId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/users/{ userId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/users/{userId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/users/{userId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/users/{userId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/users/{userId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/users/{userId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /users/{userId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
userId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get current user; if current user is a sub-user, redirect to /sub-users/me
# You can also use wget
curl -X GET \
/rest/users/me \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/users/me ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/users/me ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/users/me" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/users/me' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/users/me' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /users/me
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update current user; if current user is a sub-user, redirect to /sub-users/me
# You can also use wget
curl -X PATCH \
/rest/users/me \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/users/me ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"timezone": "string",
"portalPreferences": "string",
"firstName": "string",
"lastName": "string",
"email": "string",
"username": "string",
"emailEncryptionKey": "string",
"sshPublicKey": "string",
"mobilePhone": "string",
"countryCode": "string",
"stateCode": "string",
"language": "string",
"twoFactorCode": "string",
"snapshotSubscriptions": 0,
"snapshotSubscriptionsRemaining": 0,
"swatSubscriptions": 0,
"swatSubscriptionsRemaining": 0,
"customerSuccessManagerEmail": "string",
"accountManagerEmail": "string",
"pgpPublicKey": "string",
"twoFactorType": "ANY",
"twoFactorSecret": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/users/me ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/users/me" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/users/me' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/users/me' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /users/me
Body parameter
{
"timezone" : "string" ,
"portalPreferences" : "string" ,
"firstName" : "string" ,
"lastName" : "string" ,
"email" : "string" ,
"username" : "string" ,
"emailEncryptionKey" : "string" ,
"sshPublicKey" : "string" ,
"mobilePhone" : "string" ,
"countryCode" : "string" ,
"stateCode" : "string" ,
"language" : "string" ,
"twoFactorCode" : "string" ,
"snapshotSubscriptions" : 0 ,
"snapshotSubscriptionsRemaining" : 0 ,
"swatSubscriptions" : 0 ,
"swatSubscriptionsRemaining" : 0 ,
"customerSuccessManagerEmail" : "string" ,
"accountManagerEmail" : "string" ,
"pgpPublicKey" : "string" ,
"twoFactorType" : "ANY" ,
"twoFactorSecret" : "string"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
User
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a user
# You can also use wget
curl -X GET \
/rest/users/{ userId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/users/{userId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/users/{userId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/users/{userId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/users/{userId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/users/{userId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /users/{userId}
Parameters
Name
In
Type
Required
Description
userId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"timezone" : "string" ,
"portalPreferences" : "string" ,
"customerId" : 0 ,
"id" : 0 ,
"company" : "string" ,
"firstName" : "string" ,
"lastName" : "string" ,
"email" : "string" ,
"username" : "string" ,
"emailEncryptionKey" : "string" ,
"sshPublicKey" : "string" ,
"mobilePhone" : "string" ,
"countryCode" : "string" ,
"stateCode" : "string" ,
"lastLogonIp" : "string" ,
"lastLogonDate" : "2019-08-24T14:15:22Z" ,
"logons" : 0 ,
"language" : "string" ,
"remoteSupport" : true ,
"twoFactorCode" : "string" ,
"roles" : "string" ,
"snapshotSubscriptions" : 0 ,
"snapshotSubscriptionsRemaining" : 0 ,
"swatSubscriptions" : 0 ,
"swatSubscriptionsRemaining" : 0 ,
"customerSuccessManagerEmail" : "string" ,
"accountManagerEmail" : "string" ,
"pgpPublicKey" : "string" ,
"twoFactorType" : "ANY" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"twoFactorSecret" : "string"
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
User
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a user
# You can also use wget
curl -X PATCH \
/rest/users/{ userId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/users/{userId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"timezone": "string",
"portalPreferences": "string",
"firstName": "string",
"lastName": "string",
"email": "string",
"username": "string",
"emailEncryptionKey": "string",
"sshPublicKey": "string",
"mobilePhone": "string",
"countryCode": "string",
"stateCode": "string",
"language": "string",
"twoFactorCode": "string",
"snapshotSubscriptions": 0,
"snapshotSubscriptionsRemaining": 0,
"swatSubscriptions": 0,
"swatSubscriptionsRemaining": 0,
"customerSuccessManagerEmail": "string",
"accountManagerEmail": "string",
"pgpPublicKey": "string",
"twoFactorType": "ANY",
"twoFactorSecret": "string"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/users/{userId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/users/{userId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/users/{userId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/users/{userId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /users/{userId}
Body parameter
{
"timezone" : "string" ,
"portalPreferences" : "string" ,
"firstName" : "string" ,
"lastName" : "string" ,
"email" : "string" ,
"username" : "string" ,
"emailEncryptionKey" : "string" ,
"sshPublicKey" : "string" ,
"mobilePhone" : "string" ,
"countryCode" : "string" ,
"stateCode" : "string" ,
"language" : "string" ,
"twoFactorCode" : "string" ,
"snapshotSubscriptions" : 0 ,
"snapshotSubscriptionsRemaining" : 0 ,
"swatSubscriptions" : 0 ,
"swatSubscriptionsRemaining" : 0 ,
"customerSuccessManagerEmail" : "string" ,
"accountManagerEmail" : "string" ,
"pgpPublicKey" : "string" ,
"twoFactorType" : "ANY" ,
"twoFactorSecret" : "string"
}
Parameters
Name
In
Type
Required
Description
userId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
User
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of users
# You can also use wget
curl -X GET \
/rest/users \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/users ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/users ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/users" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/users' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/users' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /users
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"timezone" : "string" ,
"portalPreferences" : "string" ,
"customerId" : 0 ,
"id" : 0 ,
"company" : "string" ,
"firstName" : "string" ,
"lastName" : "string" ,
"email" : "string" ,
"username" : "string" ,
"emailEncryptionKey" : "string" ,
"sshPublicKey" : "string" ,
"mobilePhone" : "string" ,
"countryCode" : "string" ,
"stateCode" : "string" ,
"lastLogonIp" : "string" ,
"lastLogonDate" : "2019-08-24T14:15:22Z" ,
"logons" : 0 ,
"language" : "string" ,
"remoteSupport" : true ,
"twoFactorCode" : "string" ,
"roles" : "string" ,
"snapshotSubscriptions" : 0 ,
"snapshotSubscriptionsRemaining" : 0 ,
"swatSubscriptions" : 0 ,
"swatSubscriptionsRemaining" : 0 ,
"customerSuccessManagerEmail" : "string" ,
"accountManagerEmail" : "string" ,
"pgpPublicKey" : "string" ,
"twoFactorType" : "ANY" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"twoFactorSecret" : "string"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[User ]
false
none
none
» timezone
string
false
none
The user time zone
» portalPreferences
string
false
none
The user portal preferences
» customerId
integer(int32)
false
read-only
The ID of the customer owning the entry.
» id
integer(int64)
false
read-only
The ID of the entry.
» company
string
false
read-only
The user company name
» firstName
string
true
none
The user first name
» lastName
string
true
none
The user last name
» email
string
true
none
The user email address
» username
string
true
none
The user name
» emailEncryptionKey
string
false
none
The user public key for email encryption
» sshPublicKey
string
false
none
The user ssh public key
» mobilePhone
string
false
none
The user mobile phone number
» countryCode
string
false
none
The user country code
» stateCode
string
false
none
The user state code
» lastLogonIp
string
false
read-only
The user last logon ip address
» lastLogonDate
string(date-time)
false
read-only
The user last logon date
» logons
integer(int64)
false
read-only
The user logon numbers
» language
string
false
none
The user language
» remoteSupport
boolean
false
read-only
The user remote support status
» twoFactorCode
string
false
none
none
» roles
string
false
read-only
The user's roles
» snapshotSubscriptions
integer(int64)
false
none
The snapshot subscriptions
» snapshotSubscriptionsRemaining
integer(int64)
false
none
The remaining snapshot subscriptions
» swatSubscriptions
integer(int64)
false
none
The SWAT subscriptions
» swatSubscriptionsRemaining
integer(int64)
false
none
The remaining SWAT subscriptions
» customerSuccessManagerEmail
string
false
none
The email to the customer success manager responsible for this customer
» accountManagerEmail
string
false
none
The email to the account manager responsible for this customer
» pgpPublicKey
string
false
none
This user's PGP public key
» twoFactorType
string
false
none
The user's two-factor authentication type
» tags
[Tag ]
false
read-only
The tags
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
» twoFactorSecret
string
false
none
The user's two-factor secret
Enumerated Values
Property
Value
twoFactorType
ANY
twoFactorType
NONE
twoFactorType
SMS
twoFactorType
TOTP
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/users \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/users ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/users ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/users" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/users' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/users' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /users
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/users/{ userId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/users/{userId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/users/{userId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/users/{userId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/users/{userId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/users/{userId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /users/{userId}/tags
Body parameter
Name
In
Type
Required
Description
userId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
View template groups
Get view template group
# You can also use wget
curl -X GET \
/rest/view-template-groups/{ viewTemplateGroupId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/view-template-groups/{viewTemplateGroupId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/view-template-groups/{viewTemplateGroupId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/view-template-groups/{viewTemplateGroupId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/view-template-groups/{viewTemplateGroupId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/view-template-groups/{viewTemplateGroupId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /view-template-groups/{viewTemplateGroupId}
Parameters
Name
In
Type
Required
Description
viewTemplateGroupId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"parentId" : 0 ,
"type" : "ASSET_GROUPS"
}
Responses
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete view template group
# You can also use wget
curl -X DELETE \
/rest/view-template-groups/{ viewTemplateGroupId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/view-template-groups/{viewTemplateGroupId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/view-template-groups/{viewTemplateGroupId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/view-template-groups/{viewTemplateGroupId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/view-template-groups/{viewTemplateGroupId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/view-template-groups/{viewTemplateGroupId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /view-template-groups/{viewTemplateGroupId}
Parameters
Name
In
Type
Required
Description
viewTemplateGroupId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a view template group
# You can also use wget
curl -X PATCH \
/rest/view-template-groups/{ viewTemplateGroupId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/view-template-groups/{viewTemplateGroupId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"parentId": 0,
"type": "ASSET_GROUPS"
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/view-template-groups/{viewTemplateGroupId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/view-template-groups/{viewTemplateGroupId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/view-template-groups/{viewTemplateGroupId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/view-template-groups/{viewTemplateGroupId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /view-template-groups/{viewTemplateGroupId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"parentId" : 0 ,
"type" : "ASSET_GROUPS"
}
Parameters
Name
In
Type
Required
Description
viewTemplateGroupId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ViewTemplateGroup
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of view template groups
# You can also use wget
curl -X GET \
/rest/view-template-groups \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/view-template-groups ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/view-template-groups ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/view-template-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/view-template-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/view-template-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /view-template-groups
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"parentId" : 0 ,
"type" : "ASSET_GROUPS"
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ViewTemplateGroup ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» parentId
integer(int32)
false
none
The ID of the parent entry.
» type
string
true
none
none
Enumerated Values
Property
Value
type
ASSET_GROUPS
type
ASSETS
type
SCAN_CONFIGURATIONS
type
SCHEDULES
type
SCANS
type
FINDINGS
type
REPORTS
type
USERS
type
ACCOUNTS
type
AUDITS
type
SCHEDULED_REPORTS
type
MANAGED_REPORTS
type
INTEGRATIONS
type
COMPLIANCE
type
TAGS
type
VIEW_TEMPLATES
type
SCAN_POLICIES
type
AGENTS
type
CONSUMPTION
type
WORKFLOWS
type
CHECKS
type
FINDING_TEMPLATES
type
MATCHES
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a view template group
# You can also use wget
curl -X POST \
/rest/view-template-groups \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/view-template-groups ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"parentId": 0,
"type": "ASSET_GROUPS"
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/view-template-groups ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/view-template-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/view-template-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/view-template-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /view-template-groups
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"parentId" : 0 ,
"type" : "ASSET_GROUPS"
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ViewTemplateGroup
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/view-template-groups \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/view-template-groups ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/view-template-groups ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/view-template-groups" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/view-template-groups' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/view-template-groups' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /view-template-groups
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
View templates
Get a list of view templates
# You can also use wget
curl -X GET \
/rest/view-templates \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/view-templates ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/view-templates ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/view-templates" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/view-templates' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/view-templates' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /view-templates
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"type" : "ASSET_GROUPS" ,
"sorting" : "string" ,
"fields" : "string" ,
"columnsWidth" : "string" ,
"system" : true ,
"isDefault" : true ,
"groupId" : 0 ,
"filters" : [
{
"field" : "string" ,
"comparison" : "string" ,
"value" : "string"
}
],
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[ViewTemplate ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» type
string
true
none
none
» sorting
string
false
none
none
» fields
string
false
none
none
» columnsWidth
string
false
none
none
» system
boolean
false
read-only
none
» isDefault
boolean
false
none
none
» groupId
integer(int32)
false
none
The view template group id
» filters
[ViewTemplate.Filter ]
false
none
none
»» field
string
true
none
none
»» comparison
string
true
none
none
»» value
string
true
none
none
» tags
[Tag ]
false
none
[The tags]
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
Enumerated Values
Property
Value
type
ASSET_GROUPS
type
ASSETS
type
SCAN_CONFIGURATIONS
type
SCHEDULES
type
SCANS
type
FINDINGS
type
REPORTS
type
USERS
type
ACCOUNTS
type
AUDITS
type
SCHEDULED_REPORTS
type
MANAGED_REPORTS
type
INTEGRATIONS
type
COMPLIANCE
type
TAGS
type
VIEW_TEMPLATES
type
SCAN_POLICIES
type
AGENTS
type
CONSUMPTION
type
WORKFLOWS
type
CHECKS
type
FINDING_TEMPLATES
type
MATCHES
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a view template
# You can also use wget
curl -X POST \
/rest/view-templates \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/view-templates ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"type": "ASSET_GROUPS",
"sorting": "string",
"fields": "string",
"columnsWidth": "string",
"isDefault": true,
"groupId": 0,
"filters": [
{
"field": "string",
"comparison": "string",
"value": "string"
}
],
"tags": [
{
"customerId": 0,
"key": "string",
"value": "string"
}
]
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/view-templates ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/view-templates" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/view-templates' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/view-templates' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /view-templates
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"type" : "ASSET_GROUPS" ,
"sorting" : "string" ,
"fields" : "string" ,
"columnsWidth" : "string" ,
"isDefault" : true ,
"groupId" : 0 ,
"filters" : [
{
"field" : "string" ,
"comparison" : "string" ,
"value" : "string"
}
],
"tags" : [
{
"customerId" : 0 ,
"key" : "string" ,
"value" : "string"
}
]
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ViewTemplate
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/view-templates \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/view-templates ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/view-templates ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/view-templates" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/view-templates' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/view-templates' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /view-templates
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get view template by ID
# You can also use wget
curl -X GET \
/rest/view-templates/{ viewTemplateId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/view-templates/{viewTemplateId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/view-templates/{viewTemplateId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/view-templates/{viewTemplateId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/view-templates/{viewTemplateId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/view-templates/{viewTemplateId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /view-templates/{viewTemplateId}
Parameters
Name
In
Type
Required
Description
viewTemplateId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"type" : "ASSET_GROUPS" ,
"sorting" : "string" ,
"fields" : "string" ,
"columnsWidth" : "string" ,
"system" : true ,
"isDefault" : true ,
"groupId" : 0 ,
"filters" : [
{
"field" : "string" ,
"comparison" : "string" ,
"value" : "string"
}
],
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
ViewTemplate
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a view template
# You can also use wget
curl -X DELETE \
/rest/view-templates/{ viewTemplateId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/view-templates/{viewTemplateId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/view-templates/{viewTemplateId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/view-templates/{viewTemplateId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/view-templates/{viewTemplateId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/view-templates/{viewTemplateId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /view-templates/{viewTemplateId}
Parameters
Name
In
Type
Required
Description
viewTemplateId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a view template
# You can also use wget
curl -X PATCH \
/rest/view-templates/{ viewTemplateId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/view-templates/{viewTemplateId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"type": "ASSET_GROUPS",
"sorting": "string",
"fields": "string",
"columnsWidth": "string",
"isDefault": true,
"groupId": 0,
"filters": [
{
"field": "string",
"comparison": "string",
"value": "string"
}
],
"tags": [
{
"customerId": 0,
"key": "string",
"value": "string"
}
]
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/view-templates/{viewTemplateId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/view-templates/{viewTemplateId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/view-templates/{viewTemplateId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/view-templates/{viewTemplateId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /view-templates/{viewTemplateId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"type" : "ASSET_GROUPS" ,
"sorting" : "string" ,
"fields" : "string" ,
"columnsWidth" : "string" ,
"isDefault" : true ,
"groupId" : 0 ,
"filters" : [
{
"field" : "string" ,
"comparison" : "string" ,
"value" : "string"
}
],
"tags" : [
{
"customerId" : 0 ,
"key" : "string" ,
"value" : "string"
}
]
}
Parameters
Name
In
Type
Required
Description
viewTemplateId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
ViewTemplate
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/view-templates/{ viewTemplateId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/view-templates/{viewTemplateId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/view-templates/{viewTemplateId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/view-templates/{viewTemplateId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/view-templates/{viewTemplateId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/view-templates/{viewTemplateId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /view-templates/{viewTemplateId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
viewTemplateId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/view-templates/{ viewTemplateId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/view-templates/{viewTemplateId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/view-templates/{viewTemplateId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/view-templates/{viewTemplateId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/view-templates/{viewTemplateId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/view-templates/{viewTemplateId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /view-templates/{viewTemplateId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
viewTemplateId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/view-templates/{ viewTemplateId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/view-templates/{viewTemplateId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/view-templates/{viewTemplateId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/view-templates/{viewTemplateId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/view-templates/{viewTemplateId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/view-templates/{viewTemplateId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /view-templates/{viewTemplateId}/tags
Body parameter
Name
In
Type
Required
Description
viewTemplateId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Workflows
Get a workflow
# You can also use wget
curl -X GET \
/rest/workflows/{ workflowId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/workflows/{workflowId} ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/workflows/{workflowId} ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/workflows/{workflowId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/workflows/{workflowId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/workflows/{workflowId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /workflows/{workflowId}
Parameters
Name
In
Type
Required
Description
workflowId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
The above code returns response like this:
default Response
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"enabled" : true ,
"nextOccurrence" : "2019-08-24T14:15:22Z" ,
"lastScan" : "2019-08-24T14:15:22Z" ,
"scheduleIds" : [
0
],
"scannerId" : 0 ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"configurations" : [
{
"id" : 0 ,
"type" : "SCAN_CONFIGURATION"
}
]
}
Responses
Status
Meaning
Description
Schema
default
Default
default response
Workflow
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a workflow
# You can also use wget
curl -X DELETE \
/rest/workflows/{ workflowId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/workflows/{workflowId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/workflows/{workflowId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/workflows/{workflowId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/workflows/{workflowId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/workflows/{workflowId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /workflows/{workflowId}
Parameters
Name
In
Type
Required
Description
workflowId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Partially update a workflow
# You can also use wget
curl -X PATCH \
/rest/workflows/{ workflowId} \
-H 'Content-Type: application/merge-patch+json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/workflows/{workflowId} ' ,
method : ' patch ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"enabled": true,
"scannerId": 0,
"configurations": [
{
"id": 0,
"type": "SCAN_CONFIGURATION"
}
]
} ' ;
const headers = {
' Content-Type ' : ' application/merge-patch+json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/workflows/{workflowId} ' ,
{
method : ' PATCH ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/merge-patch+json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PATCH" , "/rest/workflows/{workflowId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/merge-patch+json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . patch ( '/rest/workflows/{workflowId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/merge-patch+json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . patch '/rest/workflows/{workflowId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PATCH /workflows/{workflowId}
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"enabled" : true ,
"scannerId" : 0 ,
"configurations" : [
{
"id" : 0 ,
"type" : "SCAN_CONFIGURATION"
}
]
}
Parameters
Name
In
Type
Required
Description
workflowId
path
integer(int32)
true
none
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Workflow
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a schedule
# You can also use wget
curl -X PUT \
/rest/workflows/{ workflowId} /schedules/{ scheduleId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/workflows/{workflowId}/schedules/{scheduleId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/workflows/{workflowId}/schedules/{scheduleId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/workflows/{workflowId}/schedules/{scheduleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/workflows/{workflowId}/schedules/{scheduleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/workflows/{workflowId}/schedules/{scheduleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /workflows/{workflowId}/schedules/{scheduleId}
Parameters
Name
In
Type
Required
Description
workflowId
path
integer(int32)
true
none
scheduleId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a schedule
# You can also use wget
curl -X DELETE \
/rest/workflows/{ workflowId} /schedules/{ scheduleId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/workflows/{workflowId}/schedules/{scheduleId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/workflows/{workflowId}/schedules/{scheduleId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/workflows/{workflowId}/schedules/{scheduleId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/workflows/{workflowId}/schedules/{scheduleId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/workflows/{workflowId}/schedules/{scheduleId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /workflows/{workflowId}/schedules/{scheduleId}
Parameters
Name
In
Type
Required
Description
workflowId
path
integer(int32)
true
none
scheduleId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a link to a tag
# You can also use wget
curl -X PUT \
/rest/workflows/{ workflowId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/workflows/{workflowId}/tags/{tagId} ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/workflows/{workflowId}/tags/{tagId} ' ,
{
method : ' PUT ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/workflows/{workflowId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/workflows/{workflowId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/workflows/{workflowId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /workflows/{workflowId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
workflowId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Delete a link to a tag
# You can also use wget
curl -X DELETE \
/rest/workflows/{ workflowId} /tags/{ tagId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/workflows/{workflowId}/tags/{tagId} ' ,
method : ' delete ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/workflows/{workflowId}/tags/{tagId} ' ,
{
method : ' DELETE ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "DELETE" , "/rest/workflows/{workflowId}/tags/{tagId}" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . delete ( '/rest/workflows/{workflowId}/tags/{tagId}' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . delete '/rest/workflows/{workflowId}/tags/{tagId}' ,
params: {
}, headers: headers
p JSON . parse ( result )
DELETE /workflows/{workflowId}/tags/{tagId}
Parameters
Name
In
Type
Required
Description
workflowId
path
integer(int32)
true
none
tagId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Get a list of workflows
# You can also use wget
curl -X GET \
/rest/workflows \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/workflows ' ,
method : ' get ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/workflows ' ,
{
method : ' GET ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "GET" , "/rest/workflows" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . get ( '/rest/workflows' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . get '/rest/workflows' ,
params: {
}, headers: headers
p JSON . parse ( result )
GET /workflows
Parameters
Name
In
Type
Required
Description
limit
query
integer(int32)
false
Maximum number of entries to return
offset
query
integer(int32)
false
Zero-based offset from first entry in list
sort
query
string
false
Comma-separated list of fields to sort on, ascending by default, dash prefix inverts order
fields
query
string
false
A comma-separated string of fields to request
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
The above code returns response like this:
default Response
[
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"enabled" : true ,
"nextOccurrence" : "2019-08-24T14:15:22Z" ,
"lastScan" : "2019-08-24T14:15:22Z" ,
"scheduleIds" : [
0
],
"scannerId" : 0 ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"configurations" : [
{
"id" : 0 ,
"type" : "SCAN_CONFIGURATION"
}
]
}
]
Responses
Status
Meaning
Description
Schema
default
Default
default response
Inline
Response Schema
Status Code default
Name
Type
Required
Restrictions
Description
anonymous
[Workflow ]
false
none
none
» id
integer(int32)
false
read-only
The ID of the entry.
» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
» created
string(date-time)
false
read-only
The timestamp when the entry was created.
» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
» createdBy
string
false
read-only
The name of the user who created the entry.
» updatedBy
string
false
read-only
The name of the user who updated the entry.
» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
» name
string
true
none
The name of the entry.
» enabled
boolean
false
none
Determines if the entry is enabled or not.
» nextOccurrence
string(date-time)
false
read-only
The scan next occurrence date
» lastScan
string(date-time)
false
read-only
Last time a scan was performed using this workflow
» scheduleIds
[integer]
false
read-only
The schedule ids associated with this workflow
» scannerId
integer(int32)
false
none
The scanner id
» tags
[Tag ]
false
read-only
The tags
»» id
integer(int32)
false
read-only
The ID of the entry.
»» customerId
integer(int32)
false
none
The ID of the customer owning the entry.
»» created
string(date-time)
false
read-only
The timestamp when the entry was created.
»» updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
»» createdBy
string
false
read-only
The name of the user who created the entry.
»» updatedBy
string
false
read-only
The name of the user who updated the entry.
»» createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
»» updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
»» key
string
true
none
none
»» value
string
false
none
none
»» inherited
boolean
false
read-only
none
»» count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
» configurations
[Workflow.Configuration ]
true
none
The workflow configurations
»» id
integer(int32)
true
none
The ID of the entry.
»» type
string
true
none
none
Enumerated Values
Property
Value
type
SCAN_CONFIGURATION
type
SCHEDULED_REPORT
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Create a workflow
# You can also use wget
curl -X POST \
/rest/workflows \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/workflows ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' {
"customerId": 0,
"name": "string",
"enabled": true,
"scannerId": 0,
"configurations": [
{
"id": 0,
"type": "SCAN_CONFIGURATION"
}
]
} ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/workflows ' ,
{
method : ' POST ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/workflows" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/workflows' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/workflows' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /workflows
Body parameter
{
"customerId" : 0 ,
"name" : "string" ,
"enabled" : true ,
"scannerId" : 0 ,
"configurations" : [
{
"id" : 0 ,
"type" : "SCAN_CONFIGURATION"
}
]
}
Parameters
Name
In
Type
Required
Description
fields
query
string
false
A comma-separated string of fields to request
return-result
query
boolean
false
"true" to return the object(s) created/modified in e.g. a POST or PATCH
body
body
Workflow
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X HEAD \
/rest/workflows \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/workflows ' ,
method : ' head ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/workflows ' ,
{
method : ' HEAD ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "HEAD" , "/rest/workflows" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Authorization' : 'Bearer {access-token}'
}
r = requests . head ( '/rest/workflows' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . head '/rest/workflows' ,
params: {
}, headers: headers
p JSON . parse ( result )
HEAD /workflows
Name
In
Type
Required
Description
filter
query
string
false
JSON array with filters; [{"field":"<name>","value":"<string/number/boolean>","comparison":"<eq/ne/gt/lt/any/all/none/today/null>"}]
Status
Meaning
Description
Schema
default
Default
default response
None
Status
Header
Type
Format
Description
default
Count
integer
The number of total entries, without limit and offset
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
# You can also use wget
curl -X PUT \
/rest/workflows/{ workflowId} /tags \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/workflows/{workflowId}/tags ' ,
method : ' put ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const inputBody = ' [] ' ;
const headers = {
' Content-Type ' : ' application/json ' ,
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/workflows/{workflowId}/tags ' ,
{
method : ' PUT ' ,
body : inputBody ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Content-Type" : [] string { "application/json" },
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "PUT" , "/rest/workflows/{workflowId}/tags" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Content-Type' : 'application/json' ,
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . put ( '/rest/workflows/{workflowId}/tags' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json' ,
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . put '/rest/workflows/{workflowId}/tags' ,
params: {
}, headers: headers
p JSON . parse ( result )
PUT /workflows/{workflowId}/tags
Body parameter
Name
In
Type
Required
Description
workflowId
path
integer(int32)
true
none
body
body
array
true
none
The above code returns response like this:
Status
Meaning
Description
Schema
default
Default
default response
None
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Start scans based on this workflow
# You can also use wget
curl -X POST \
/rest/workflows/{ workflowId} /scan \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
var headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
$ . ajax ({
url : ' /rest/workflows/{workflowId}/scan ' ,
method : ' post ' ,
headers : headers ,
success : function ( data ) {
console . log ( JSON . stringify ( data ));
}
})
const fetch = require ( ' node-fetch ' );
const headers = {
' Accept ' : ' application/json ' ,
' Authorization ' : ' Bearer {access-token} '
};
fetch ( ' /rest/workflows/{workflowId}/scan ' ,
{
method : ' POST ' ,
headers : headers
})
. then ( function ( res ) {
return res . json ();
}). then ( function ( body ) {
console . log ( body );
});
package main
import (
"bytes"
"net/http"
)
func main () {
headers := map [ string ][] string {
"Accept" : [] string { "application/json" },
"Authorization" : [] string { "Bearer {access-token}" },
}
data := bytes . NewBuffer ([] byte { jsonReq })
req , err := http . NewRequest ( "POST" , "/rest/workflows/{workflowId}/scan" , data )
req . Header = headers
client := & http . Client {}
resp , err := client . Do ( req )
// ...
}
import requests
headers = {
'Accept' : 'application/json' ,
'Authorization' : 'Bearer {access-token}'
}
r = requests . post ( '/rest/workflows/{workflowId}/scan' , params = {
}, headers = headers )
print r . json ()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json' ,
'Authorization' => 'Bearer {access-token}'
}
result = RestClient . post '/rest/workflows/{workflowId}/scan' ,
params: {
}, headers: headers
p JSON . parse ( result )
POST /workflows/{workflowId}/scan
Parameters
Name
In
Type
Required
Description
workflowId
path
integer(int32)
true
none
The above code returns response like this:
Responses
Status
Meaning
Description
Schema
default
Default
default response
None
Response Schema
To perform this operation, you must be authenticated through one of the following methods:
bearerAuth
Schemas
VersionInfo
{
"software" : "AGENT" ,
"version" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
software
string
false
none
none
version
string
false
none
none
Enumerated Values
Property
Value
software
AGENT
software
RULES
Account
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"type" : "SMB" ,
"name" : "string" ,
"url" : "string" ,
"role" : "string" ,
"integrationId" : 0 ,
"credentials" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"accountId" : 0 ,
"classId" : 0 ,
"className" : "string" ,
"value" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
],
"assetIdentifierIds" : [
0
],
"scanConfigurationIds" : [
0
],
"scanPolicyIds" : [
0
],
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
type
string
true
none
none
name
string
true
none
The name of the entry.
url
string
false
none
none
role
string
false
none
none
integrationId
integer(int32)
false
none
none
credentials
[Credential ]
false
none
none
assetIdentifierIds
[integer]
false
none
An array of asset identifier IDs associated with this entry
scanConfigurationIds
[integer]
false
none
none
scanPolicyIds
[integer]
false
none
none
tags
[Tag ]
false
read-only
[The tags]
Enumerated Values
Property
Value
type
SMB
type
SSH
type
BASIC
type
WEB
type
AWS
type
AZURE
type
VSPHERE
type
GCP
type
DOCKER
Credential
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"accountId" : 0 ,
"classId" : 0 ,
"className" : "string" ,
"value" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
accountId
integer(int32)
true
none
none
classId
integer(int32)
true
none
none
className
string
false
none
none
value
string
true
none
none
tags
[Tag ]
false
read-only
[The tags]
Tag
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
The tags
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
key
string
true
none
none
value
string
false
none
none
inherited
boolean
false
read-only
none
count
integer(int32)
false
read-only
The total number of entries associated with this entry and its child entries.
AgentInstallerCreationRequest
{
"platform" : "string" ,
"arch" : "string" ,
"pkg" : "string" ,
"customAttributes" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"expires" : "string" ,
"allowedUses" : 0
}
Properties
Name
Type
Required
Restrictions
Description
platform
string
true
none
none
arch
string
true
none
none
pkg
string
true
none
none
customAttributes
string
false
none
none
tags
[Tag ]
false
none
[The tags]
expires
string
false
none
none
allowedUses
integer(int64)
false
none
none
Appliance
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"customerName" : "string" ,
"primary" : true ,
"virtual" : true ,
"revoked" : "2019-08-24T14:15:22Z" ,
"mac" : "string" ,
"updatedOnline" : "2019-08-24T14:15:22Z" ,
"updatedOffline" : "2019-08-24T14:15:22Z" ,
"versions" : {
"xmlapi" : "string" ,
"ui" : "string" ,
"scanner" : "string" ,
"rules" : "string"
}
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
customerName
string
false
read-only
none
primary
boolean
false
read-only
none
virtual
boolean
false
read-only
none
revoked
string(date-time)
false
read-only
none
mac
string
false
read-only
none
updatedOnline
string(date-time)
false
read-only
none
updatedOffline
string(date-time)
false
read-only
none
versions
Appliance.ApplianceVersion
false
none
none
Appliance.ApplianceVersion
{
"xmlapi" : "string" ,
"ui" : "string" ,
"scanner" : "string" ,
"rules" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
xmlapi
string
false
none
none
ui
string
false
none
none
scanner
string
false
none
none
rules
string
false
none
none
Activity
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"assetGroupId" : 0 ,
"activityType" : "PENTEST_COMPLETED" ,
"description" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
assetGroupId
integer(int32)
false
read-only
The id of the AssetGroup this activity is related to
activityType
string
true
none
The type of this activity
description
string
false
none
Description of the entry.
Enumerated Values
Property
Value
activityType
PENTEST_COMPLETED
activityType
ONBOARDING_COMPLETED
activityType
FALSE_POSITIVE_DISCARDED
activityType
NEW_VULNERABILITY_CHECK
activityType
EXECUTIVE_SUMMARY_UPDATED
activityType
VERIFICATION_REQUEST_COMPLETED
AssetGroup
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"type" : "WEB_APP" ,
"parentId" : 0 ,
"assetIds" : [
0
],
"assetGroupIds" : [
0
],
"summaryId" : 0 ,
"summary" : "string" ,
"summaryPublishedAt" : "2019-08-24T14:15:22Z" ,
"path" : [
0
],
"activeSubscriptionTypes" : [
"DAST"
],
"managed" : true ,
"dynamic" : true ,
"labels" : "string" ,
"contactName" : "string" ,
"contactDetails" : "string" ,
"additionalDetails" : "string" ,
"commentPendingSince" : "2019-08-24T14:15:22Z" ,
"customerName" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"includedDynamicTags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"excludedDynamicTags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
type
string
false
none
The assetgroup's type
parentId
integer(int32)
false
none
The ID of the parent entry.
assetIds
[integer]
false
read-only
The component assets
assetGroupIds
[integer]
false
read-only
The children asset groups
summaryId
integer(int32)
false
read-only
The ID of the executive summary
summary
string
false
read-only
The content of the executive summary
summaryPublishedAt
string(date-time)
false
read-only
When the executive summary was published
path
[integer]
false
read-only
The path of the asset group tree
activeSubscriptionTypes
[string]
false
read-only
The assetgroup's active subscription types
managed
boolean
false
read-only
Managed internally by (e.g SWAT API or GhostLab)
dynamic
boolean
false
none
Indicates whether the asset group is automatically populated with assets based on the assigned tags
labels
string
false
none
The labels of the asset group
contactName
string
false
none
The customer's contact name with regards to this asset group
contactDetails
string
false
none
The customer's contact details
additionalDetails
string
false
none
Additional information about the asset group that may require attention
commentPendingSince
string(date-time)
false
read-only
The date since comment is pending
customerName
string
false
none
The customer name
tags
[Tag ]
false
read-only
The tags
includedDynamicTags
[Tag ]
false
read-only
The included dynamic asset tags
excludedDynamicTags
[Tag ]
false
read-only
The excluded dynamic asset tags
Enumerated Values
Property
Value
type
WEB_APP
type
INSTANCE
type
API
type
INTERNAL
type
EXTERNAL
type
MOBILE
type
PHYSICAL
type
WIRELESS
type
PHISHING
type
RED
type
ASSUMED
type
DIGITAL
type
HARDWARE
type
PROJECT
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"parentId" : 0 ,
"comment" : "string" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"supportStatus" : "NOT_APPLICABLE" ,
"authorIsStaff" : true ,
"deleted" : "2019-08-24T14:15:22Z"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
parentId
integer(int32)
false
none
The ID of the parent entry.
comment
string
false
none
The content of the comment
entityType
string
false
none
The type of object this comment is made for
entityId
integer(int32)
false
none
The ID of the object this comment is made for
supportStatus
string
false
none
Current support status of the comment
authorIsStaff
boolean
false
read-only
Whether the comment is from Outpost24 or the customer
deleted
string(date-time)
false
none
When the comment was deleted
Enumerated Values
Property
Value
entityType
FINDING
entityType
ASSET_GROUP
entityType
ASSET
entityType
SCAN_CONFIGURATION
entityType
SCHEDULE
entityType
SCAN
entityType
USER
entityType
ROLE
entityType
RESOURCE_GROUP
entityType
COMPLIANCE
entityType
WORKFLOW
entityType
CHECK
supportStatus
NOT_APPLICABLE
supportStatus
WAITING
supportStatus
DONE
supportStatus
INTERNAL
Subscription
{
"uuid" : "string" ,
"type" : "DAST" ,
"associations" : {
"assetGroups" : [
"string"
]
},
"durationInDays" : 0 ,
"activeUntil" : "2019-08-24T14:15:22Z" ,
"activatedAt" : "2019-08-24T14:15:22Z" ,
"redeemableUntil" : "2019-08-24T14:15:22Z" ,
"created" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updated" : "2019-08-24T14:15:22Z" ,
"updatedBy" : "string" ,
"template" : {
"uuid" : "string" ,
"variables" : "string" ,
"template" : "string" ,
"name" : "string"
},
"customer" : {
"uuid" : "string"
},
"limits" : {
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
},
"isActive" : true
}
Properties
Name
Type
Required
Restrictions
Description
uuid
string
false
none
The UUID of the entry.
type
string
false
none
none
associations
Subscription.Associations
false
none
none
durationInDays
integer(int32)
false
none
none
activeUntil
string(date-time)
false
none
none
activatedAt
string(date-time)
false
none
none
redeemableUntil
string(date-time)
false
none
none
created
string(date-time)
false
none
The timestamp when the entry was created.
createdBy
string
false
none
The name of the user who created the entry.
updated
string(date-time)
false
none
The timestamp when the entry was updated.
updatedBy
string
false
none
The name of the user who updated the entry.
template
Subscription.Template
false
none
none
customer
Subscription.Customer
false
none
none
limits
Subscription.Limits
false
none
none
isActive
boolean
false
none
none
Enumerated Values
Property
Value
type
DAST
type
SCALE
type
SCOUT
type
SNAPSHOT
type
ASSURE
type
DAST_EXPERT
type
VERIFY
type
SWAT
type
CLOUDSEC
type
NETSEC
type
CONSUMPTION
Subscription.Associations
{
"assetGroups" : [
"string"
]
}
Properties
Name
Type
Required
Restrictions
Description
assetGroups
[string]
false
none
none
Subscription.Customer
Properties
Name
Type
Required
Restrictions
Description
uuid
string
true
none
The UUID of the entry.
Subscription.Limits
{
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
}
Properties
Name
Type
Required
Restrictions
Description
netsecAssets
integer(int32)
false
none
The netsec assets
netsecScans
integer(int32)
false
none
The netsec scans
netsecInternalAssets
integer(int32)
false
none
The netsec internal assets
netsecInternalScans
integer(int32)
false
none
The netsec internal scans
netsecApplianceAssets
integer(int32)
false
none
The netsec appliance assets
netsecApplianceScans
integer(int32)
false
none
The netsec appliance scans
netsecApplianceExternalAssets
integer(int32)
false
none
The netsec appliance external assets
netsecApplianceExternalScans
integer(int32)
false
none
The netsec appliance external scans
complianceAssets
integer(int32)
false
none
The compliance assets
complianceScans
integer(int32)
false
none
The compliance scans
complianceInternalAssets
integer(int32)
false
none
The compliance internal assets
complianceInternalScans
integer(int32)
false
none
The compliance internal scans
complianceApplianceAssets
integer(int32)
false
none
The compliance appliance assets
complianceApplianceScans
integer(int32)
false
none
The compliance appliance scans
complianceApplianceExternalAssets
integer(int32)
false
none
The compliance appliance external assets
complianceApplianceExternalScans
integer(int32)
false
none
The compliance appliance external scans
pciAssets
integer(int32)
false
none
The pci assets
pciScans
integer(int32)
false
none
The pci scans
scaleAssets
integer(int32)
false
none
The scale assets
scaleScans
integer(int32)
false
none
The scale scans
scaleInternalAssets
integer(int32)
false
none
The scale internal assets
scaleApplianceAssets
integer(int32)
false
none
The scale appliance assets
scaleApplianceScans
integer(int32)
false
none
The scale appliance scans
scaleApplianceExternalScans
integer(int32)
false
none
The scale appliance external scans
scaleApplianceExternalAssets
integer(int32)
false
none
The scale appliance external assets
cloudsecAssets
integer(int32)
false
none
The cloudsec assets
cloudsecScans
integer(int32)
false
none
The cloudsec scans
networkDiscoveryScans
integer(int32)
false
none
The network discovery scans
networkDiscoveryApplianceScans
integer(int32)
false
none
The network discovery appliance scans
cloudDiscoveryScans
integer(int32)
false
none
The cloud discovery scans
cloudDiscoveryApplianceScans
integer(int32)
false
none
The cloud discovery appliance scans
networkAssets
integer(int32)
false
none
The network assets
networkScans
integer(int32)
false
none
The network scans
networkApplianceAssets
integer(int32)
false
none
The network appliance assets
networkApplianceScans
integer(int32)
false
none
The network appliance scans
dockerImageDiscoveryScans
integer(int32)
false
none
The docker image discovery scans
dockerImageAssets
integer(int32)
false
none
The docker image assets
dockerImageScans
integer(int32)
false
none
The docker image scans
dockerImageDiscoveryApplianceScans
integer(int32)
false
none
The docker image discovery appliance scans
dockerImageApplianceAssets
integer(int32)
false
none
The docker image appliance assets
dockerImageApplianceScans
integer(int32)
false
none
The docker image appliance scans
outscanNXAssets
integer(int32)
false
none
The outscan NX assets
outscanNXApplianceAssets
integer(int32)
false
none
The outscan NX appliance assets
Subscription.Template
{
"uuid" : "string" ,
"variables" : "string" ,
"template" : "string" ,
"name" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
uuid
string
true
none
The UUID of the entry.
variables
string
false
none
none
template
string
false
none
none
name
string
false
none
The name of the entry.
AgentMatch
{
"data" : {
"type" : "IP" ,
"identifier" : "string" ,
"from" : {
"type" : "IP" ,
"identifier" : "string" ,
"relation" : "string"
}
},
"type" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
data
IdentifierData
false
none
none
type
string
false
none
none
AssetIdentifier
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"presentableName" : "string" ,
"type" : "IP" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"scannerId" : 0 ,
"scannerName" : "string" ,
"ownership" : 0 ,
"customOwnership" : 100 ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"source" : [
"SCOUT"
],
"links" : [
0
],
"assetIds" : [
0
],
"assetNames" : [
"string"
],
"accountIds" : [
0
],
"platform" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"properties" : {
"type" : "IP"
}
}
The asset links
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
presentableName
string
false
none
none
type
string
true
none
none
firstSeen
string(date-time)
false
none
Timestamp when the entry was seen for the first time.
lastSeen
string(date-time)
false
none
Timestamp when the entry was seen last time.
scannerId
integer(int32)
false
none
none
scannerName
string
false
read-only
none
ownership
integer(int32)
false
read-only
none
customOwnership
integer(int32)
false
none
none
firstScanId
integer(int32)
false
read-only
none
lastScanId
integer(int32)
false
read-only
none
source
[string]
true
none
none
links
[integer]
false
read-only
none
assetIds
[integer]
false
none
none
assetNames
[string]
false
read-only
none
accountIds
[integer]
false
none
none
platform
string
false
none
none
tags
[Tag ]
false
read-only
[The tags]
properties
BaseProperties
false
none
The asset base properties
Enumerated Values
Property
Value
type
IP
type
HOSTNAME
type
AWS_ACCOUNT_ID
type
AWS_INSTANCE_ID
type
AWS_REGION
type
MAC
type
NETBIOS
type
GCP_PROJECT_ID
type
MAZ_TENANT_ID
type
MAZ_SUBSCRIPTION
type
MAZ_RESOURCE_GROUP
type
MAZ_RESOURCE
type
DOCKER_REGISTRY
type
DOCKER_IMAGE
type
SEED_PATH
type
AGENT
type
SERIAL_MACHINE_ID
type
SERIAL_PRODUCT_ID
type
SERIAL_DISK_ID
AssetIdentifier.AgentProperties
{
"type" : "IP" ,
"uuid" : "string" ,
"version" : "string" ,
"lastSynchronized" : "2019-08-24T14:15:22Z" ,
"customAttributes" : {
"property1" : "string" ,
"property2" : "string"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"retired" : "2019-08-24T14:15:22Z" ,
"matches" : [
{
"data" : {
"type" : "IP" ,
"identifier" : "string" ,
"from" : {
"type" : "IP" ,
"identifier" : "string" ,
"relation" : "string"
}
},
"type" : "string"
}
]
}
Properties
allOf
Name
Type
Required
Restrictions
Description
anonymous
BaseProperties
false
none
The asset base properties
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» uuid
string
false
none
none
» version
string
false
none
none
» lastSynchronized
string(date-time)
false
none
none
» customAttributes
object
false
none
none
»» additionalProperties
string
false
none
none
» tags
[Tag ]
false
none
[The tags]
» retired
string(date-time)
false
none
none
» matches
[AgentMatch ]
false
none
none
AssetIdentifier.DockerImageProperties
{
"type" : "IP" ,
"os" : "string" ,
"tag" : "string" ,
"size" : 0 ,
"architecture" : "string"
}
The docker image properties
Properties
allOf
Name
Type
Required
Restrictions
Description
anonymous
BaseProperties
false
none
The asset base properties
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» os
string
false
none
none
» tag
string
false
none
none
» size
integer(int64)
false
none
none
» architecture
string
false
none
none
BaseProperties
The asset base properties
Properties
Name
Type
Required
Restrictions
Description
type
string
true
none
none
Enumerated Values
Property
Value
type
IP
type
HOSTNAME
type
AWS_ACCOUNT_ID
type
AWS_INSTANCE_ID
type
AWS_REGION
type
MAC
type
NETBIOS
type
GCP_PROJECT_ID
type
MAZ_TENANT_ID
type
MAZ_SUBSCRIPTION
type
MAZ_RESOURCE_GROUP
type
MAZ_RESOURCE
type
DOCKER_REGISTRY
type
DOCKER_IMAGE
type
SEED_PATH
type
AGENT
type
SERIAL_MACHINE_ID
type
SERIAL_PRODUCT_ID
type
SERIAL_DISK_ID
From
{
"type" : "IP" ,
"identifier" : "string" ,
"relation" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
type
string
false
none
none
identifier
string
false
none
none
relation
string
false
none
none
Enumerated Values
Property
Value
type
IP
type
HOSTNAME
type
AWS_ACCOUNT_ID
type
AWS_INSTANCE_ID
type
AWS_REGION
type
MAC
type
NETBIOS
type
GCP_PROJECT_ID
type
MAZ_TENANT_ID
type
MAZ_SUBSCRIPTION
type
MAZ_RESOURCE_GROUP
type
MAZ_RESOURCE
type
DOCKER_REGISTRY
type
DOCKER_IMAGE
type
SEED_PATH
type
AGENT
type
SERIAL_MACHINE_ID
type
SERIAL_PRODUCT_ID
type
SERIAL_DISK_ID
IdentifierData
{
"type" : "IP" ,
"identifier" : "string" ,
"from" : {
"type" : "IP" ,
"identifier" : "string" ,
"relation" : "string"
}
}
Properties
Name
Type
Required
Restrictions
Description
type
string
false
none
none
identifier
string
false
none
none
from
From
false
none
none
Enumerated Values
Property
Value
type
IP
type
HOSTNAME
type
AWS_ACCOUNT_ID
type
AWS_INSTANCE_ID
type
AWS_REGION
type
MAC
type
NETBIOS
type
GCP_PROJECT_ID
type
MAZ_TENANT_ID
type
MAZ_SUBSCRIPTION
type
MAZ_RESOURCE_GROUP
type
MAZ_RESOURCE
type
DOCKER_REGISTRY
type
DOCKER_IMAGE
type
SEED_PATH
type
AGENT
type
SERIAL_MACHINE_ID
type
SERIAL_PRODUCT_ID
type
SERIAL_DISK_ID
AssetIdentifierLink
{
"id" : 0 ,
"assetIdentifierId" : 0 ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"type" : "RESOLVES_TO"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
assetIdentifierId
integer(int32)
true
none
The ID of the asset identifier associated with this entry
firstSeen
string(date-time)
true
none
Timestamp when the entry was seen for the first time.
lastSeen
string(date-time)
true
none
Timestamp when the entry was seen last time.
type
string
true
none
none
Enumerated Values
Property
Value
type
RESOLVES_TO
type
LOADS_SCRIPTS_FROM
type
REFERS_IN_TLS_TO
type
DNS_CNAME
type
DNS_DNAME
type
DNS_MX
type
DNS_NS
type
DNS_PTR
type
DNS_SRV
type
DNS_A
type
DNS_AAAA
type
DNS_URI
type
CONTAINS
type
HTML_LINKS_TO
type
ARP
Asset
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"source" : [
"SCOUT"
],
"platform" : "string" ,
"assetIdentifierIds" : [
0
],
"assetIdentifierTypes" : [
"IP"
],
"activeSubscriptionTypes" : [
"DAST"
],
"uuid" : "string" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"compliant" : "COMPLIANT" ,
"cvssV2EnvironmentalVector" : "string" ,
"cvssV3EnvironmentalVector" : "string" ,
"customerName" : "string" ,
"enabled" : true ,
"active" : true ,
"dockerImageProperties" : {
"type" : "IP"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"assetIdentifiers" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"presentableName" : "string" ,
"type" : "IP" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"scannerId" : 0 ,
"scannerName" : "string" ,
"ownership" : 0 ,
"customOwnership" : 100 ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"source" : [
"SCOUT"
],
"links" : [
0
],
"assetIds" : [
0
],
"assetNames" : [
"string"
],
"accountIds" : [
0
],
"platform" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"properties" : {
"type" : "IP"
}
}
],
"assetGroups" : [
{
"id" : 0 ,
"name" : "string"
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
source
[string]
true
none
The asset sources
platform
string
false
read-only
The asset platform
assetIdentifierIds
[integer]
false
none
An array of asset identifier IDs associated with this entry
assetIdentifierTypes
[string]
false
read-only
The asset identifier types (deprecated)
activeSubscriptionTypes
[string]
false
read-only
The asset's active subscription types
uuid
string
false
read-only
The UUID of the entry.
firstScanId
integer(int32)
false
read-only
The id of the first scan performed on the asset
lastScanId
integer(int32)
false
read-only
The id of last scan performed on the asset
compliant
string
false
read-only
The asset compliance status
cvssV2EnvironmentalVector
string
false
none
The CVSS V2 environmental vector
cvssV3EnvironmentalVector
string
false
none
The CVSS V3 environmental vector
customerName
string
false
none
The customer name
enabled
boolean
false
none
Determines if the entry is enabled or not.
active
boolean
false
read-only
Determines if the entry is active or not.
dockerImageProperties
BaseProperties
false
none
The asset base properties
tags
[Tag ]
false
read-only
The tags
assetIdentifiers
[AssetIdentifier ]
false
none
The asset links
assetGroups
[Asset.AssetGroup ]
false
read-only
Information of all asset groups the asset is linked to
Enumerated Values
Property
Value
compliant
COMPLIANT
compliant
NOT_COMPLIANT
compliant
COMPLIANT_WITH_EXCEPTIONS
Asset.AssetGroup
{
"id" : 0 ,
"name" : "string"
}
Information of all asset groups the asset is linked to
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
none
The ID of the entry.
name
string
false
none
The name of the entry.
AssetLink
{
"id" : 0 ,
"assetId" : 0 ,
"assetIdentifierId" : 0 ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
assetId
integer(int32)
false
none
none
assetIdentifierId
integer(int32)
true
none
The ID of the asset identifier associated with this entry
firstSeen
string(date-time)
true
none
Timestamp when the entry was seen for the first time.
lastSeen
string(date-time)
true
none
Timestamp when the entry was seen last time.
Audit
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"objectName" : "string" ,
"objectId" : 0 ,
"action" : "string" ,
"updatedFields" : {
"property1" : "string" ,
"property2" : "string"
}
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
objectName
string
false
read-only
none
objectId
integer(int32)
false
read-only
none
action
string
false
read-only
none
updatedFields
object
false
read-only
none
» additionalProperties
string
false
read-only
none
SendSmsRequest
{
"phoneNumber" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
phoneNumber
string
true
none
none
CertificateCreationRequest
{
"certificateSigningRequest" : "string" ,
"scannerId" : 0 ,
"key" : "string" ,
"service" : "OUTPOST24_GLOBAL"
}
Properties
Name
Type
Required
Restrictions
Description
certificateSigningRequest
string
false
none
none
scannerId
integer(int64)
false
none
none
key
string
false
none
none
service
string
false
none
none
Enumerated Values
Property
Value
service
OUTPOST24_GLOBAL
service
OUTSCAN
service
OPERATOR
service
OUTSCAN_FRONTEND
service
OUTSCAN_ADMIN
service
OUTSCAN_BACKEND
service
OUTSCAN_ATTACKER
service
OUTSCAN_REMOTE_SUPPORT
service
HIAB_SCHEDULER
service
HIAB_SCANNER
service
REPORT_SERVICE
service
EVENT_SERVICE
service
MESOTHELAE_JOBS
service
MESOTHELAE_TASKS
service
LIBELLUM
service
TEDDY_SALAD
service
AGENT
service
MESOS_AGENT
service
SWAT_API
service
SWAT_WORKER
service
SUPPORT
Check
{
"id" : 0 ,
"cve" : "string" ,
"name" : "string" ,
"nvdCvssV2Score" : 0 ,
"nvdCvssV3Score" : 0 ,
"nvdCvssV2Vector" : "string" ,
"cvssV3Severity" : "RECOMMENDATION" ,
"hasExploits" : true ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"description" : "string" ,
"cyrating" : 0 ,
"previousCyrating" : 0 ,
"cyratingDelta" : 0 ,
"cyratingUpdated" : "2019-08-24T14:15:22Z" ,
"cyratingLastSeen" : "2019-08-24T14:15:22Z" ,
"exploitProbability" : 0 ,
"previousExploitProbability" : 0 ,
"exploitProbabilityDelta" : 0 ,
"softwareComponent" : "string" ,
"owasp2017" : [
0
],
"solutionType" : "NOT_CLASSIFIED" ,
"solution" : "string" ,
"solutionProduct" : "string" ,
"solutionTitle" : "string" ,
"solutionUuid" : "string" ,
"bugTraq" : [
0
],
"nvdCvssV3Vector" : "string" ,
"farsight" : {
"risk" : {
"score" : 0 ,
"delta" : 0
},
"updated" : "2019-08-24T14:15:22Z" ,
"lastThreatActivity" : "2019-08-24T14:15:22Z"
},
"classifications" : {
"sans25" : 0 ,
"capec" : [
0
],
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
]
}
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
cve
string
false
read-only
The check CVE
name
string
false
read-only
The name of the entry.
nvdCvssV2Score
number(double)
false
read-only
The CVSS V2 score
nvdCvssV3Score
number(double)
false
read-only
The CVSS V3 score
nvdCvssV2Vector
string
false
read-only
The CVSS V2 vector
cvssV3Severity
string
false
read-only
The CVSS V3 Severity
hasExploits
boolean
false
read-only
Set to true when exploits are available
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
description
string
false
read-only
Description of the entry.
cyrating
number(double)
false
read-only
none
previousCyrating
number(double)
false
read-only
none
cyratingDelta
number(double)
false
read-only
none
cyratingUpdated
string(date-time)
false
read-only
none
cyratingLastSeen
string(date-time)
false
read-only
none
exploitProbability
number(double)
false
read-only
The exploit probability
previousExploitProbability
number(double)
false
read-only
The previous exploit probability
exploitProbabilityDelta
number(double)
false
read-only
The exploit probability delta
softwareComponent
string
false
read-only
The software component
owasp2017
[integer]
false
read-only
An array of OWASP Top 10 2017 classifications of the entry.
solutionType
string
false
read-only
The solution type
solution
string
false
read-only
The solution
solutionProduct
string
false
read-only
The solution product
solutionTitle
string
false
read-only
The solution title
solutionUuid
string
false
read-only
The solution uuid
bugTraq
[integer]
false
read-only
An array of Bugtraq reference IDs.
nvdCvssV3Vector
string
false
read-only
The CVSS V3 vector
farsight
Farsight
false
none
The farsight concists in additional information on risk such as likelihood, threat activity
classifications
Classification.Classifications
false
none
The classifications such as CAPEC, OWASP20XX
Enumerated Values
Property
Value
cvssV3Severity
RECOMMENDATION
cvssV3Severity
LOW
cvssV3Severity
MEDIUM
cvssV3Severity
HIGH
cvssV3Severity
CRITICAL
solutionType
NOT_CLASSIFIED
solutionType
UNKNOWN
solutionType
RECONFIGURE
solutionType
WORKAROUND
solutionType
SOLUTION_IN_PROGRESS
solutionType
CONTACT_VENDOR
solutionType
UPDATE
solutionType
PATCH
solutionType
NOT_ACKNOWLEDGED
solutionType
NO_SOLUTION
solutionType
CONFIGURE_ACCOUNT
solutionType
DISABLE
solutionType
FILTER
solutionType
MALWARE
Classification.Classifications
{
"sans25" : 0 ,
"capec" : [
0
],
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
]
}
The classifications such as CAPEC, OWASP20XX
Properties
Name
Type
Required
Restrictions
Description
sans25
integer(int32)
false
none
SANS 25 classification of the entry.
capec
[integer]
false
none
CAPEC classification of the entry.
owasp2004
[integer]
false
none
An array of OWASP Top 10 2004 classifications of the entry.
owasp2007
[integer]
false
none
An array of OWASP Top 10 2007 classifications of the entry.
owasp2010
[integer]
false
none
An array of OWASP Top 10 2010 classifications of the entry.
owasp2013
[integer]
false
none
An array of OWASP Top 10 2013 classifications of the entry.
owasp2017
[integer]
false
none
An array of OWASP Top 10 2017 classifications of the entry.
owasp2021
[integer]
false
none
none
Farsight
{
"risk" : {
"score" : 0 ,
"delta" : 0
},
"updated" : "2019-08-24T14:15:22Z" ,
"lastThreatActivity" : "2019-08-24T14:15:22Z"
}
The farsight concists in additional information on risk such as likelihood, threat activity
Properties
Name
Type
Required
Restrictions
Description
risk
Farsight.Risk
false
none
none
updated
string(date-time)
false
none
The timestamp when the entry was updated.
lastThreatActivity
string(date-time)
false
none
none
Farsight.Risk
{
"score" : 0 ,
"delta" : 0
}
Properties
Name
Type
Required
Restrictions
Description
score
number(float)
false
none
none
delta
number(float)
false
none
none
Exploit
{
"id" : 0 ,
"source" : "Unknown" ,
"cve" : "string" ,
"name" : "string" ,
"created" : "2019-08-24T14:15:22Z" ,
"pack" : "string" ,
"checkId" : 0 ,
"url" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int64)
false
read-only
The ID of the entry.
source
string
false
read-only
none
cve
string
false
read-only
none
name
string
false
read-only
The name of the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
pack
string
false
read-only
none
checkId
integer(int64)
false
read-only
none
url
string
false
read-only
none
Enumerated Values
Property
Value
source
Unknown
source
Core Security
source
Immunity
source
Exploit Database
source
DSquare Security
source
Contagio
source
Metasploit
source
SAINT
source
Security Focus
source
Snort
source
Farsight
Classification
{
"id" : 0 ,
"cwe" : 0 ,
"name" : "string" ,
"sans25" : 0 ,
"capec" : [
0
],
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
],
"secureCodeWarrior" : {
"name" : "string" ,
"description" : "string" ,
"url" : "string"
},
"classifications" : {
"sans25" : 0 ,
"capec" : [
0
],
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
]
}
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
cwe
integer(int32)
false
read-only
CWE classification of the entry.
name
string
false
read-only
The name of the entry.
sans25
integer(int32)
false
read-only
SANS 25 classification of the entry.
capec
[integer]
false
read-only
CAPEC classification of the entry.
owasp2004
[integer]
false
read-only
An array of OWASP Top 10 2004 classifications of the entry.
owasp2007
[integer]
false
read-only
An array of OWASP Top 10 2007 classifications of the entry.
owasp2010
[integer]
false
read-only
An array of OWASP Top 10 2010 classifications of the entry.
owasp2013
[integer]
false
read-only
An array of OWASP Top 10 2013 classifications of the entry.
owasp2017
[integer]
false
read-only
An array of OWASP Top 10 2017 classifications of the entry.
owasp2021
[integer]
false
read-only
none
secureCodeWarrior
SecureCodeWarrior
false
none
The secure code warrior information on the vulnerability description and training
classifications
Classification.Classifications
false
none
The classifications such as CAPEC, OWASP20XX
SecureCodeWarrior
{
"name" : "string" ,
"description" : "string" ,
"url" : "string"
}
The secure code warrior information on the vulnerability description and training
Properties
Name
Type
Required
Restrictions
Description
name
string
false
none
The name of the entry.
description
string
false
none
Description of the entry.
url
string
false
none
none
ComplianceFinding
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"requirementId" : 0 ,
"matchId" : 0 ,
"assetId" : 0 ,
"policyId" : 0 ,
"policyName" : "string" ,
"audit" : "string" ,
"description" : "string" ,
"rationale" : "string" ,
"scored" : true ,
"nameLong" : "string" ,
"nameShort" : "string" ,
"requirement" : "string" ,
"solution" : "string" ,
"impacts" : "string" ,
"notes" : "string" ,
"references" : "string" ,
"controls" : "string" ,
"category" : "INFRASTRUCTURE" ,
"source" : [
"SCOUT"
],
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"compliant" : "COMPLIANT" ,
"falsePositive" : "2019-08-24T14:15:22Z" ,
"falsePositiveComment" : "string" ,
"falsePositiveBy" : "string" ,
"exception" : "2019-08-24T14:15:22Z" ,
"exceptionComment" : "string" ,
"exceptionUntil" : "2019-08-24T14:15:22Z" ,
"exceptionBy" : "string" ,
"humanCheck" : true ,
"firstFailed" : "2019-08-24T14:15:22Z" ,
"lastFailed" : "2019-08-24T14:15:22Z" ,
"assetName" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
requirementId
integer(int32)
true
none
Id of the requirement associated with the finding
matchId
integer(int32)
true
none
Id of the matching entity
assetId
integer(int32)
true
none
Id of the associated asset
policyId
integer(int32)
false
read-only
Id of the associated policy
policyName
string
false
read-only
Name of the associated policy
audit
string
false
read-only
Audit information related to the finding
description
string
false
read-only
Description of the entry.
rationale
string
false
read-only
Rationale behind the finding
scored
boolean
false
read-only
Indicates whether the finding is scored
nameLong
string
false
read-only
Long name associated with the finding
nameShort
string
false
read-only
Short name associated with the finding
requirement
string
false
read-only
Requirement details associated with the finding
solution
string
false
read-only
Solution to address the finding
impacts
string
false
read-only
Impacts of the finding
notes
string
false
read-only
Additional notes related to the finding
references
string
false
read-only
References related to the finding
controls
string
false
read-only
Controls in place to address the finding
category
string
false
read-only
Category of compliance requirement
source
[string]
false
read-only
Array of sources related to the finding
firstSeen
string(date-time)
false
read-only
Timestamp when the entry was seen for the first time.
lastSeen
string(date-time)
false
read-only
Timestamp when the entry was seen last time.
firstScanId
integer(int32)
false
read-only
Id of the first scan associated with the finding
lastScanId
integer(int32)
false
read-only
Id of the last scan associated with the finding
compliant
string
false
read-only
Compliance status of the finding
falsePositive
string(date-time)
false
read-only
Instant when the finding was marked as false positive
falsePositiveComment
string
false
read-only
Comment related to marking the finding as false positive
falsePositiveBy
string
false
read-only
User who marked the finding as false positive
exception
string(date-time)
false
read-only
Instant when an exception was recorded for the finding
exceptionComment
string
false
read-only
Comment related to the exception recorded for the finding
exceptionUntil
string(date-time)
false
read-only
Instant until when the exception is valid
exceptionBy
string
false
read-only
User who recorded the exception for the finding
humanCheck
boolean
false
read-only
Indicates whether there is a human check for the finding
firstFailed
string(date-time)
false
read-only
Instant when the finding first failed
lastFailed
string(date-time)
false
read-only
Instant when the finding last failed
assetName
string
false
read-only
Name of the asset associated with the finding
tags
[Tag ]
false
read-only
The tags
Enumerated Values
Property
Value
category
INFRASTRUCTURE
category
COMPUTE
category
NETWORK
category
STORAGE
category
DATABASE
category
BIG_DATA_AND_ANALYTICS
category
SECURITY_AND_IDENTITY
category
MONITORING_AND_LOGGING
category
NOT_DEFINED
compliant
COMPLIANT
compliant
NOT_COMPLIANT
compliant
COMPLIANT_WITH_EXCEPTIONS
Policy
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"description" : "string" ,
"type" : "AWS" ,
"checksum" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
false
read-only
The name of the entry.
description
string
false
read-only
Description of the entry.
type
string
false
read-only
none
checksum
string(byte)
false
read-only
none
Enumerated Values
Property
Value
type
AWS
type
GCP
type
AZURE
Requirement
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"policyId" : 0 ,
"audit" : "string" ,
"description" : "string" ,
"rationale" : "string" ,
"scored" : true ,
"nameLong" : "string" ,
"nameShort" : "string" ,
"requirementId" : "string" ,
"solution" : "string" ,
"category" : "INFRASTRUCTURE" ,
"notes" : "string" ,
"references" : "string" ,
"controls" : "string" ,
"impacts" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
policyId
integer(int32)
false
read-only
none
audit
string
false
read-only
none
description
string
false
read-only
Description of the entry.
rationale
string
false
read-only
none
scored
boolean
false
read-only
none
nameLong
string
false
read-only
none
nameShort
string
false
read-only
none
requirementId
string
false
read-only
none
solution
string
false
read-only
none
category
string
false
read-only
none
notes
string
false
read-only
none
references
string
false
read-only
none
controls
string
false
read-only
none
impacts
string
false
read-only
none
Enumerated Values
Property
Value
category
INFRASTRUCTURE
category
COMPUTE
category
NETWORK
category
STORAGE
category
DATABASE
category
BIG_DATA_AND_ANALYTICS
category
SECURITY_AND_IDENTITY
category
MONITORING_AND_LOGGING
category
NOT_DEFINED
ComplianceFindingException
{
"exceptionUntil" : "2019-08-24T14:15:22Z" ,
"exceptionComment" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
exceptionUntil
string(date-time)
true
none
none
exceptionComment
string
false
none
none
ComplianceFindingFalsePositive
{
"falsePositiveComment" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
falsePositiveComment
string
true
none
none
ComplianceReport
{
"name" : "string" ,
"format" : "PDF" ,
"password" : "string" ,
"zip" : true ,
"level" : "Detailed" ,
"assetIds" : [
0
],
"assetGroupIds" : [
0
],
"tagIds" : [
0
],
"filter" : "string" ,
"viewTemplateId" : 0 ,
"deliveryMethod" : {
"email" : {
"userIds" : [
0
],
"recipients" : {
"addresses" : [
"string"
],
"pgpKey" : "string"
}
},
"managedReport" : {
"name" : "string" ,
"tags" : "string"
}
}
}
Properties
Name
Type
Required
Restrictions
Description
name
string
true
none
The name of the entry.
format
string
true
none
none
password
string
false
none
none
zip
boolean
false
none
none
level
string
false
none
none
assetIds
[integer]
false
none
none
assetGroupIds
[integer]
false
none
none
tagIds
[integer]
false
none
none
filter
string
false
none
none
viewTemplateId
integer(int32)
false
none
none
deliveryMethod
DeliveryMethod
false
none
none
Enumerated Values
Property
Value
format
PDF
format
EXCEL
format
XML
format
SWATDEMO
level
Detailed
level
Management
level
Summary
DeliveryMethod
{
"email" : {
"userIds" : [
0
],
"recipients" : {
"addresses" : [
"string"
],
"pgpKey" : "string"
}
},
"managedReport" : {
"name" : "string" ,
"tags" : "string"
}
}
Properties
DeliveryMethod.Email
{
"userIds" : [
0
],
"recipients" : {
"addresses" : [
"string"
],
"pgpKey" : "string"
}
}
Properties
Name
Type
Required
Restrictions
Description
userIds
[integer]
false
none
none
recipients
DeliveryMethod.Recipients
false
none
none
DeliveryMethod.ManagedReport
{
"name" : "string" ,
"tags" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
name
string
false
none
The name of the entry.
tags
string
false
none
none
DeliveryMethod.Recipients
{
"addresses" : [
"string"
],
"pgpKey" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
addresses
[string]
false
none
none
pgpKey
string
false
none
none
ConsumptionStats
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"customerName" : "string" ,
"organization" : "string" ,
"salesAccountId" : "string" ,
"periodStart" : "2019-08-24T14:15:22Z" ,
"periodEnd" : "2019-08-24T14:15:22Z" ,
"appliancePeriodEnd" : "2019-08-24T14:15:22Z" ,
"netsecAssets" : 0 ,
"netsecScans" : 0 ,
"netsecInternalAssets" : 0 ,
"netsecInternalScans" : 0 ,
"netsecApplianceAssets" : 0 ,
"netsecApplianceScans" : 0 ,
"netsecApplianceExternalAssets" : 0 ,
"netsecApplianceExternalScans" : 0 ,
"complianceAssets" : 0 ,
"complianceScans" : 0 ,
"complianceInternalAssets" : 0 ,
"complianceInternalScans" : 0 ,
"complianceApplianceAssets" : 0 ,
"complianceApplianceScans" : 0 ,
"complianceApplianceExternalAssets" : 0 ,
"complianceApplianceExternalScans" : 0 ,
"pciAssets" : 0 ,
"pciScans" : 0 ,
"scaleAssets" : 0 ,
"scaleScans" : 0 ,
"scaleInternalAssets" : 0 ,
"scaleApplianceAssets" : 0 ,
"scaleApplianceScans" : 0 ,
"scaleApplianceExternalScans" : 0 ,
"scaleApplianceExternalAssets" : 0 ,
"cloudsecAssets" : 0 ,
"cloudsecScans" : 0 ,
"networkDiscoveryScans" : 0 ,
"networkDiscoveryApplianceScans" : 0 ,
"cloudDiscoveryScans" : 0 ,
"cloudDiscoveryApplianceScans" : 0 ,
"networkAssets" : 0 ,
"networkScans" : 0 ,
"networkApplianceAssets" : 0 ,
"networkApplianceScans" : 0 ,
"dockerImageDiscoveryScans" : 0 ,
"dockerImageAssets" : 0 ,
"dockerImageScans" : 0 ,
"dockerImageDiscoveryApplianceScans" : 0 ,
"dockerImageApplianceAssets" : 0 ,
"dockerImageApplianceScans" : 0 ,
"outscanNXAssets" : 0 ,
"outscanNXApplianceAssets" : 0
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
read-only
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
customerName
string
false
read-only
none
organization
string
false
read-only
none
salesAccountId
string
false
read-only
none
periodStart
string(date-time)
false
none
The consumption period start date
periodEnd
string(date-time)
false
none
The consumption period end date
appliancePeriodEnd
string(date-time)
false
none
The appliance consumption period start date
netsecAssets
integer(int32)
false
none
The netsec assets
netsecScans
integer(int32)
false
none
The netsec scans
netsecInternalAssets
integer(int32)
false
none
The netsec internal assets
netsecInternalScans
integer(int32)
false
none
The netsec internal scans
netsecApplianceAssets
integer(int32)
false
none
The netsec appliance assets
netsecApplianceScans
integer(int32)
false
none
The netsec appliance scans
netsecApplianceExternalAssets
integer(int32)
false
none
The netsec appliance external assets
netsecApplianceExternalScans
integer(int32)
false
none
The netsec appliance external scans
complianceAssets
integer(int32)
false
none
The compliance assets
complianceScans
integer(int32)
false
none
The compliance scans
complianceInternalAssets
integer(int32)
false
none
The compliance internal assets
complianceInternalScans
integer(int32)
false
none
The compliance internal scans
complianceApplianceAssets
integer(int32)
false
none
The compliance appliance assets
complianceApplianceScans
integer(int32)
false
none
The compliance appliance scans
complianceApplianceExternalAssets
integer(int32)
false
none
The compliance appliance external assets
complianceApplianceExternalScans
integer(int32)
false
none
The compliance appliance external scans
pciAssets
integer(int32)
false
none
The pci assets
pciScans
integer(int32)
false
none
The pci scans
scaleAssets
integer(int32)
false
none
The scale assets
scaleScans
integer(int32)
false
none
The scale scans
scaleInternalAssets
integer(int32)
false
none
The scale internal assets
scaleApplianceAssets
integer(int32)
false
none
The scale appliance assets
scaleApplianceScans
integer(int32)
false
none
The scale appliance scans
scaleApplianceExternalScans
integer(int32)
false
none
The scale appliance external scans
scaleApplianceExternalAssets
integer(int32)
false
none
The scale appliance external assets
cloudsecAssets
integer(int32)
false
none
The cloudsec assets
cloudsecScans
integer(int32)
false
none
The cloudsec scans
networkDiscoveryScans
integer(int32)
false
none
The network discovery scans
networkDiscoveryApplianceScans
integer(int32)
false
none
The network discovery appliance scans
cloudDiscoveryScans
integer(int32)
false
none
The cloud discovery scans
cloudDiscoveryApplianceScans
integer(int32)
false
none
The cloud discovery appliance scans
networkAssets
integer(int32)
false
none
The network assets
networkScans
integer(int32)
false
none
The network scans
networkApplianceAssets
integer(int32)
false
none
The network appliance assets
networkApplianceScans
integer(int32)
false
none
The network appliance scans
dockerImageDiscoveryScans
integer(int32)
false
none
The docker image discovery scans
dockerImageAssets
integer(int32)
false
none
The docker image assets
dockerImageScans
integer(int32)
false
none
The docker image scans
dockerImageDiscoveryApplianceScans
integer(int32)
false
none
The docker image discovery appliance scans
dockerImageApplianceAssets
integer(int32)
false
none
The docker image appliance assets
dockerImageApplianceScans
integer(int32)
false
none
The docker image appliance scans
outscanNXAssets
integer(int32)
false
none
The outscan NX assets
outscanNXApplianceAssets
integer(int32)
false
none
The outscan NX appliance assets
CredentialClass
{
"id" : 0 ,
"name" : "string" ,
"hidden" : true
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
name
string
false
read-only
The name of the entry.
hidden
boolean
false
read-only
none
Customer
{
"id" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"country" : "string" ,
"active" : true ,
"features" : [
"string"
],
"awsExternalId" : "string" ,
"uuid" : "string" ,
"organization" : "string" ,
"organizationUuid" : "string" ,
"farsightProducts" : [
"string"
],
"salesAccountId" : "string" ,
"assetMigration" : "2019-08-24T14:15:22Z" ,
"customerSuccessManagerEmail" : "string" ,
"accountManagerEmail" : "string" ,
"migrationStatus" : "RUNNING" ,
"state" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"migration" : {
"queued" : "2019-08-24T14:15:22Z" ,
"started" : "2019-08-24T14:15:22Z" ,
"ended" : "2019-08-24T14:15:22Z" ,
"failed" : true ,
"targets" : 0 ,
"migratedTargets" : 0 ,
"targetGroups" : 0 ,
"migratedTargetGroups" : 0 ,
"reports" : 0 ,
"migratedReports" : 0 ,
"managedReports" : 0 ,
"migratedManagedReports" : 0
}
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
false
read-only
The name of the entry.
country
string
false
read-only
Country associated with the entry.
active
boolean
false
read-only
Determines if the entry is active or not.
features
[string]
false
none
none
awsExternalId
string
false
read-only
none
uuid
string
false
read-only
The UUID of the entry.
organization
string
false
read-only
none
organizationUuid
string
false
read-only
none
farsightProducts
[string]
false
read-only
none
salesAccountId
string
false
read-only
none
assetMigration
string(date-time)
false
none
none
customerSuccessManagerEmail
string
false
read-only
The email to the customer success manager responsible for this customer
accountManagerEmail
string
false
read-only
The email to the account manager responsible for this customer
migrationStatus
string
false
read-only
The migration status
state
string
false
read-only
none
tags
[Tag ]
false
read-only
The tags
migration
Customer.Migration
false
none
The migration status
Enumerated Values
Property
Value
migrationStatus
RUNNING
migrationStatus
FINISHED
migrationStatus
FAILED
Customer.Migration
{
"queued" : "2019-08-24T14:15:22Z" ,
"started" : "2019-08-24T14:15:22Z" ,
"ended" : "2019-08-24T14:15:22Z" ,
"failed" : true ,
"targets" : 0 ,
"migratedTargets" : 0 ,
"targetGroups" : 0 ,
"migratedTargetGroups" : 0 ,
"reports" : 0 ,
"migratedReports" : 0 ,
"managedReports" : 0 ,
"migratedManagedReports" : 0
}
The migration status
Properties
Name
Type
Required
Restrictions
Description
queued
string(date-time)
false
none
none
started
string(date-time)
false
none
none
ended
string(date-time)
false
none
none
failed
boolean
false
none
none
targets
integer(int32)
false
none
none
migratedTargets
integer(int32)
false
none
none
targetGroups
integer(int32)
false
none
none
migratedTargetGroups
integer(int32)
false
none
none
reports
integer(int32)
false
none
none
migratedReports
integer(int32)
false
none
none
managedReports
integer(int32)
false
none
none
migratedManagedReports
integer(int32)
false
none
none
UsageStats
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"customerName" : "string" ,
"organization" : "string" ,
"salesAccountId" : "string" ,
"statsUpdated" : "2019-08-24T14:15:22Z" ,
"applianceStatsUpdated" : "2019-08-24T14:15:22Z" ,
"scaleConfigurations" : 0 ,
"scoutConfigurations" : 0 ,
"cloudsecConfigurations" : 0 ,
"applianceScaleConfigurations" : 0 ,
"users" : 0 ,
"lastLogin" : "2019-08-24T14:15:22Z" ,
"applianceUsers" : 0 ,
"applianceLastLogin" : "2019-08-24T14:15:22Z" ,
"findingsCritical" : 0 ,
"findingsHigh" : 0 ,
"findingsMedium" : 0 ,
"findingsLow" : 0 ,
"findingsRecommendations" : 0 ,
"applianceFindingsCritical" : 0 ,
"applianceFindingsHigh" : 0 ,
"applianceFindingsMedium" : 0 ,
"applianceFindingsLow" : 0 ,
"applianceFindingsRecommendations" : 0 ,
"scans" : 0 ,
"lastScan" : "2019-08-24T14:15:22Z" ,
"applianceScans" : 0 ,
"applianceLastScan" : "2019-08-24T14:15:22Z" ,
"accountsAws" : 0 ,
"accountsGcp" : 0 ,
"accountsAzure" : 0 ,
"accountsVsphere" : 0 ,
"accountsBasic" : 0 ,
"accountsWeb" : 0 ,
"applianceAccountsAws" : 0 ,
"applianceAccountsGcp" : 0 ,
"applianceAccountsAzure" : 0 ,
"applianceAccountsVsphere" : 0 ,
"applianceAccountsBasic" : 0 ,
"applianceAccountsWeb" : 0 ,
"cyr3conAssets" : 0 ,
"cyr3conApplianceAssets" : 0 ,
"agents" : 0 ,
"agentsScanned" : 0 ,
"agentsOutdated" : 0 ,
"applianceAgents" : 0 ,
"applianceAgentsScanned" : 0 ,
"applianceAgentsOutdated" : 0
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
customerName
string
false
read-only
none
organization
string
false
read-only
none
salesAccountId
string
false
read-only
none
statsUpdated
string(date-time)
false
none
none
applianceStatsUpdated
string(date-time)
false
none
none
scaleConfigurations
integer(int32)
false
none
none
scoutConfigurations
integer(int32)
false
none
none
cloudsecConfigurations
integer(int32)
false
none
none
applianceScaleConfigurations
integer(int32)
false
none
none
users
integer(int32)
false
none
none
lastLogin
string(date-time)
false
none
none
applianceUsers
integer(int32)
false
none
none
applianceLastLogin
string(date-time)
false
none
none
findingsCritical
integer(int32)
false
none
none
findingsHigh
integer(int32)
false
none
none
findingsMedium
integer(int32)
false
none
none
findingsLow
integer(int32)
false
none
none
findingsRecommendations
integer(int32)
false
none
none
applianceFindingsCritical
integer(int32)
false
none
none
applianceFindingsHigh
integer(int32)
false
none
none
applianceFindingsMedium
integer(int32)
false
none
none
applianceFindingsLow
integer(int32)
false
none
none
applianceFindingsRecommendations
integer(int32)
false
none
none
scans
integer(int32)
false
none
none
lastScan
string(date-time)
false
none
none
applianceScans
integer(int32)
false
none
none
applianceLastScan
string(date-time)
false
none
none
accountsAws
integer(int32)
false
none
none
accountsGcp
integer(int32)
false
none
none
accountsAzure
integer(int32)
false
none
none
accountsVsphere
integer(int32)
false
none
none
accountsBasic
integer(int32)
false
none
none
accountsWeb
integer(int32)
false
none
none
applianceAccountsAws
integer(int32)
false
none
none
applianceAccountsGcp
integer(int32)
false
none
none
applianceAccountsAzure
integer(int32)
false
none
none
applianceAccountsVsphere
integer(int32)
false
none
none
applianceAccountsBasic
integer(int32)
false
none
none
applianceAccountsWeb
integer(int32)
false
none
none
cyr3conAssets
integer(int32)
false
none
none
cyr3conApplianceAssets
integer(int32)
false
none
none
agents
integer(int32)
false
none
none
agentsScanned
integer(int32)
false
none
none
agentsOutdated
integer(int32)
false
none
none
applianceAgents
integer(int32)
false
none
none
applianceAgentsScanned
integer(int32)
false
none
none
applianceAgentsOutdated
integer(int32)
false
none
none
Dashboard
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"cards" : [
{
"name" : "string" ,
"data" : "string" ,
"width" : 0 ,
"height" : 0 ,
"x" : 0 ,
"y" : 0
}
],
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
cards
[Dashboard.Card ]
false
none
none
tags
[Tag ]
false
read-only
[The tags]
Dashboard.Card
{
"name" : "string" ,
"data" : "string" ,
"width" : 0 ,
"height" : 0 ,
"x" : 0 ,
"y" : 0
}
Properties
Name
Type
Required
Restrictions
Description
name
string
false
none
The name of the entry.
data
string
false
none
none
width
integer(int32)
false
none
none
height
integer(int32)
false
none
none
x
integer(int32)
false
none
none
y
integer(int32)
false
none
none
FormDataContentDisposition
{
"type" : "string" ,
"parameters" : {
"property1" : "string" ,
"property2" : "string"
},
"fileName" : "string" ,
"creationDate" : "2019-08-24T14:15:22Z" ,
"modificationDate" : "2019-08-24T14:15:22Z" ,
"readDate" : "2019-08-24T14:15:22Z" ,
"size" : 0 ,
"name" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
type
string
false
none
none
parameters
object
false
none
none
» additionalProperties
string
false
none
none
fileName
string
false
none
none
creationDate
string(date-time)
false
none
none
modificationDate
string(date-time)
false
none
none
readDate
string(date-time)
false
none
none
size
integer(int64)
false
none
none
name
string
false
none
The name of the entry.
ObjectDecryptionRequest
{
"bucket" : "string" ,
"key" : "string" ,
"unsigned" : true ,
"auditComment" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
bucket
string
true
none
none
key
string
true
none
none
unsigned
boolean
false
none
none
auditComment
string
true
none
none
DownloadCacheEntry
{
"created" : "2019-08-24T14:15:22Z" ,
"name" : "string" ,
"key" : "string" ,
"status" : "string" ,
"size" : 0 ,
"token" : "string" ,
"tokenExpires" : "2019-08-24T14:15:22Z" ,
"type" : "ATTACHMENT"
}
Properties
Name
Type
Required
Restrictions
Description
created
string(date-time)
false
read-only
The timestamp when the entry was created.
name
string
false
read-only
The name of the entry.
key
string
false
read-only
none
status
string
false
read-only
none
size
integer(int64)
false
read-only
none
token
string
false
read-only
none
tokenExpires
string(date-time)
false
read-only
none
type
string
false
read-only
none
Enumerated Values
Property
Value
type
ATTACHMENT
type
REPORT
type
BLUEPRINT
type
INTERNAL_BLUEPRINT
type
MANAGED_REPORT
type
DECRYPTED_OBJECT
type
LOGS
type
AGENT_INSTALLER
type
UPDATE_PACKAGE
DatabaseSetting
{
"host" : "string" ,
"port" : 1 ,
"password" : "string" ,
"ssl" : true ,
"certificate" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
host
string
true
none
none
port
integer(int32)
false
none
none
password
string
false
none
none
ssl
boolean
false
none
none
certificate
string
false
none
none
BaseContentConfiguration
{
"integrationType" : "WEBHOOK"
}
Properties
Name
Type
Required
Restrictions
Description
integrationType
string
true
none
none
Enumerated Values
Property
Value
integrationType
WEBHOOK
integrationType
EMAIL
integrationType
LOG
integrationType
SYSLOG
integrationType
SNMP
integrationType
NOTIFICATION
EmailContentConfiguration
{
"integrationType" : "WEBHOOK" ,
"subject" : "string" ,
"userList" : [
0
],
"userEmailAddresses" : [
"string"
],
"content" : "string" ,
"htmlContent" : "string"
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» subject
string
false
none
none
» userList
[integer]
false
none
none
» userEmailAddresses
[string]
false
none
none
» content
string
false
none
none
» htmlContent
string
false
none
none
EventSubscription
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"trigger" : "SCHEDULE_CREATED" ,
"viewTemplateId" : 0 ,
"integrationId" : 0 ,
"integrationType" : "WEBHOOK" ,
"enabled" : true ,
"settings" : {
"timeBefore" : 0 ,
"timeSince" : 0 ,
"diskUsage" : 0 ,
"metric" : "NETSEC_ASSETS" ,
"limit" : 0 ,
"userId" : 0 ,
"from" : "to review" ,
"to" : "to review" ,
"entityType" : "FINDING"
},
"contentConfiguration" : {
"integrationType" : "WEBHOOK"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
trigger
string
true
none
none
viewTemplateId
integer(int32)
false
none
none
integrationId
integer(int32)
false
none
none
integrationType
string
false
read-only
none
enabled
boolean
false
none
Determines if the entry is enabled or not.
settings
EventSubscription.Settings
false
none
none
contentConfiguration
BaseContentConfiguration
false
none
none
tags
[Tag ]
false
read-only
The tags
Enumerated Values
Property
Value
trigger
SCHEDULE_CREATED
trigger
SCHEDULE_DELETED
trigger
SCHEDULE_MODIFIED
trigger
SCHEDULE_SCHEDULED
trigger
CONFIGURATION_CREATED
trigger
CONFIGURATION_DELETED
trigger
CONFIGURATION_MODIFIED
trigger
CONFIGURATION_STARTED
trigger
CONFIGURATION_DONE
trigger
SCAN_STARTED
trigger
SCAN_STOPPED
trigger
SCAN_DONE
trigger
ASSET_NOT_RECENTLY_SEEN
trigger
ASSET_SEEN
trigger
ASSET_CREATED
trigger
ASSET_DELETED
trigger
ASSET_MODIFIED
trigger
FINDING_SEEN
trigger
FINDING_CREATED
trigger
FINDING_MODIFIED
trigger
FINDING_STATUS_TRANSITIONED
trigger
FINDING_RISK_ACCEPTED_EXPIRATION
trigger
WATCHED_FINDING_UPDATED
trigger
USER_CREATED
trigger
USER_DELETED
trigger
USER_MODIFIED
trigger
USER_LOGIN_ATTEMPT
trigger
USER_PASSWORD_RESET
trigger
ROLE_CREATED
trigger
ROLE_DELETED
trigger
ROLE_MODIFIED
trigger
RESOURCE_GROUP_CREATED
trigger
RESOURCE_GROUP_DELETED
trigger
RESOURCE_GROUP_MODIFIED
trigger
NEW_RELEASE_NOTES
trigger
HIAB_SCANNER_MISSING
trigger
HIAB_UPDATE_DONE
trigger
HIAB_UPDATE_FAILED
trigger
HIAB_BACKUP_DONE
trigger
HIAB_BACKUP_FAILED
trigger
HIAB_MAINTENANCE_PLAN_DONE
trigger
HIAB_DISK_USAGE_HIGH
trigger
HIAB_REBOOTED
trigger
HIAB_REMOTE_SUPPORT
trigger
OUTSCAN_CONSULTANCY
trigger
CONSUMPTION_ABSOLUTE
trigger
CONSUMPTION_RELATIVE
trigger
WORKFLOW_CREATED
trigger
WORKFLOW_DELETED
trigger
WORKFLOW_MODIFIED
trigger
WORKFLOW_STARTED
trigger
WORKFLOW_DONE
trigger
COMPLIANCE_CREATED
trigger
COMPLIANCE_MODIFIED
trigger
COMPLIANCE_RISK_EXCEPTION
trigger
COMPLIANCE_RISK_EXCEPTION_EXPIRATION
trigger
COMMENT_CREATED
trigger
EXECUTIVE_SUMMARY_UPDATED
trigger
ACTIVITY_FEED_UPDATED
trigger
ASSET_GROUP_CREATED
trigger
ASSET_GROUP_DELETED
trigger
ASSET_GROUP_MODIFIED
integrationType
WEBHOOK
integrationType
EMAIL
integrationType
LOG
integrationType
SYSLOG
integrationType
SNMP
integrationType
NOTIFICATION
EventSubscription.Settings
{
"timeBefore" : 0 ,
"timeSince" : 0 ,
"diskUsage" : 0 ,
"metric" : "NETSEC_ASSETS" ,
"limit" : 0 ,
"userId" : 0 ,
"from" : "to review" ,
"to" : "to review" ,
"entityType" : "FINDING"
}
Properties
Name
Type
Required
Restrictions
Description
timeBefore
integer(int32)
false
none
none
timeSince
integer(int32)
false
none
none
diskUsage
integer(int32)
false
none
none
metric
string
false
none
none
limit
integer(int32)
false
none
none
userId
integer(int32)
false
none
none
from
string
false
none
none
to
string
false
none
none
entityType
string
false
none
none
Enumerated Values
Property
Value
metric
NETSEC_ASSETS
metric
NETSEC_SCANS
metric
NETSEC_INTERNAL_ASSETS
metric
NETSEC_INTERNAL_SCANS
metric
NETSEC_APPLIANCE_ASSETS
metric
NETSEC_APPLIANCE_SCANS
metric
NETSEC_APPLIANCE_EXTERNAL_ASSETS
metric
NETSEC_APPLIANCE_EXTERNAL_SCANS
metric
COMPLIANCE_ASSETS
metric
COMPLIANCE_SCANS
metric
COMPLIANCE_INTERNAL_ASSETS
metric
COMPLIANCE_INTERNAL_SCANS
metric
COMPLIANCE_APPLIANCE_ASSETS
metric
COMPLIANCE_APPLIANCE_SCANS
metric
COMPLIANCE_APPLIANCE_EXTERNAL_ASSETS
metric
COMPLIANCE_APPLIANCE_EXTERNAL_SCANS
metric
PCI_ASSETS
metric
PCI_SCANS
metric
SCALE_ASSETS
metric
SCALE_SCANS
metric
SCALE_INTERNAL_ASSETS
metric
SCALE_APPLIANCE_ASSETS
metric
SCALE_APPLIANCE_SCANS
metric
SCALE_APPLIANCE_EXTERNAL_ASSETS
metric
SCALE_APPLIANCE_EXTERNAL_SCANS
metric
CLOUDSEC_ASSETS
metric
CLOUDSEC_SCANS
metric
NETWORK_DISCOVERY_SCANS
metric
NETWORK_DISCOVERY_APPLIANCE_SCANS
metric
CLOUD_DISCOVERY_SCANS
metric
CLOUD_DISCOVERY_APPLIANCE_SCANS
metric
NETWORK_ASSETS
metric
NETWORK_SCANS
metric
NETWORK_APPLIANCE_ASSETS
metric
NETWORK_APPLIANCE_SCANS
metric
DOCKER_IMAGE_DISCOVERY_SCANS
metric
DOCKER_IMAGE_ASSETS
metric
DOCKER_IMAGE_SCANS
metric
DOCKER_IMAGE_DISCOVERY_APPLIANCE_SCANS
metric
DOCKER_IMAGE_APPLIANCE_ASSETS
metric
DOCKER_IMAGE_APPLIANCE_SCANS
metric
OUTSCAN_NX_ASSETS
metric
OUTSCAN_NX_APPLIANCE_ASSETS
from
to review
from
to verify
from
to QA
from
to publish
from
rejected
from
present
from
accepted
from
false positive
from
pending verification
from
fixed
from
irreproducible
to
to review
to
to verify
to
to QA
to
to publish
to
rejected
to
present
to
accepted
to
false positive
to
pending verification
to
fixed
to
irreproducible
entityType
FINDING
entityType
ASSET_GROUP
entityType
ASSET
entityType
SCAN_CONFIGURATION
entityType
SCHEDULE
entityType
SCAN
entityType
USER
entityType
ROLE
entityType
RESOURCE_GROUP
entityType
COMPLIANCE
entityType
WORKFLOW
entityType
CHECK
LogContentConfiguration
{
"integrationType" : "WEBHOOK" ,
"content" : "string"
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» content
string
false
none
none
NotificationContentConfiguration
{
"integrationType" : "WEBHOOK" ,
"userId" : 0 ,
"subject" : "string" ,
"message" : "string"
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» userId
integer(int32)
false
none
none
» subject
string
false
none
none
» message
string
false
none
none
SnmpContentConfiguration
{
"integrationType" : "WEBHOOK" ,
"objectId" : "string" ,
"content" : "string" ,
"maxRetries" : 10 ,
"retryInterval" : 1
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» objectId
string
false
none
none
» content
string
false
none
none
» maxRetries
integer(int32)
false
none
none
» retryInterval
integer(int32)
false
none
none
SyslogContentConfiguration
{
"integrationType" : "WEBHOOK" ,
"format" : "RFC5424" ,
"applicationName" : "string" ,
"processId" : "string" ,
"messageId" : "string" ,
"tag" : "string" ,
"facility" : 0 ,
"severity" : 0 ,
"structuredData" : "string" ,
"content" : "string" ,
"maxRetries" : 10 ,
"retryInterval" : 1
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» format
string
false
none
none
» applicationName
string
false
none
none
» processId
string
false
none
none
» messageId
string
false
none
none
» tag
string
false
none
none
» facility
integer(int32)
false
none
none
» severity
integer(int32)
false
none
none
» structuredData
string
false
none
none
» content
string
false
none
none
» maxRetries
integer(int32)
false
none
none
» retryInterval
integer(int32)
false
none
none
Enumerated Values
Property
Value
format
RFC5424
format
RFC3164
format
LEGACY
WebhookContentConfiguration
{
"integrationType" : "WEBHOOK" ,
"content" : "string" ,
"maxRetries" : 10 ,
"retryInterval" : 1 ,
"httpMethod" : "string" ,
"httpHeaders" : "string"
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» content
string
false
none
none
» maxRetries
integer(int32)
false
none
none
» retryInterval
integer(int32)
false
none
none
» httpMethod
string
false
none
none
» httpHeaders
string
false
none
none
EventTemplateVariable
{
"key" : "string" ,
"description" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
key
string
false
none
The event template variable name
description
string
false
none
Description of the entry.
FindingTemplateGroup
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"parentId" : 0
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
parentId
integer(int32)
false
none
The ID of the parent entry.
FindingTemplate
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"uuid" : "string" ,
"groupId" : 0 ,
"cvssV2Score" : 0 ,
"cvssV3Score" : 0 ,
"cvssV2Severity" : "RECOMMENDATION" ,
"cvssV3Severity" : "RECOMMENDATION" ,
"template" : {
"name" : "string" ,
"description" : "string" ,
"remediation" : "string" ,
"impact" : "string" ,
"recreation" : "string" ,
"cwe" : 0 ,
"cvssV2Vector" : "string" ,
"cvssV3Vector" : "string" ,
"owaspMobile2024" : 1 ,
"owaspApi2023" : 1
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
uuid
string
false
none
The UUID of the entry.
groupId
integer(int32)
false
none
none
cvssV2Score
number(float)
false
read-only
The CVSS V2 score
cvssV3Score
number(float)
false
read-only
The CVSS V3 score
cvssV2Severity
string
false
read-only
The CVSS V2 severity
cvssV3Severity
string
false
read-only
The CVSS V3 severity
template
FindingTemplate.Template
true
none
The finding template attributes
tags
[Tag ]
false
read-only
The tags
Enumerated Values
Property
Value
cvssV2Severity
RECOMMENDATION
cvssV2Severity
LOW
cvssV2Severity
MEDIUM
cvssV2Severity
HIGH
cvssV2Severity
CRITICAL
cvssV3Severity
RECOMMENDATION
cvssV3Severity
LOW
cvssV3Severity
MEDIUM
cvssV3Severity
HIGH
cvssV3Severity
CRITICAL
FindingTemplate.Template
{
"name" : "string" ,
"description" : "string" ,
"remediation" : "string" ,
"impact" : "string" ,
"recreation" : "string" ,
"cwe" : 0 ,
"cvssV2Vector" : "string" ,
"cvssV3Vector" : "string" ,
"owaspMobile2024" : 1 ,
"owaspApi2023" : 1
}
The finding template attributes
Properties
Name
Type
Required
Restrictions
Description
name
string
true
none
The name of the entry.
description
string
false
none
Description of the entry.
remediation
string
false
none
none
impact
string
false
none
none
recreation
string
false
none
none
cwe
integer(int32)
false
none
CWE classification of the entry.
cvssV2Vector
string
false
none
none
cvssV3Vector
string
false
none
none
owaspMobile2024
integer(int32)
false
none
none
owaspApi2023
integer(int32)
false
none
none
FindingExportAsEmail
{
"emailAddresses" : [
"string"
],
"comment" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
emailAddresses
[string]
true
none
none
comment
string
false
none
none
Attachment
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"findingId" : 0 ,
"type" : "OTHER" ,
"name" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
findingId
integer(int32)
false
read-only
none
type
string
false
read-only
none
name
string
false
read-only
The name of the entry.
Enumerated Values
Property
Value
type
OTHER
type
IMAGE
type
TEXT
type
VIDEO
type
ARCHIVE
AppCheckMatch
{
"type" : "WAS" ,
"service" : {
"name" : "string" ,
"scheme" : "string" ,
"port" : 0 ,
"protocol" : "TCP" ,
"virtualHost" : "string"
},
"patternUuid" : "string" ,
"checkId" : 0 ,
"vulnerabilityId" : "string" ,
"gatheredInformation" : "string"
}
Properties
allOf
Name
Type
Required
Restrictions
Description
anonymous
BaseMatch
false
none
The match list
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» checkId
integer(int32)
false
none
none
» vulnerabilityId
string
false
none
none
» gatheredInformation
string
false
none
none
BaseMatch
{
"type" : "WAS" ,
"service" : {
"name" : "string" ,
"scheme" : "string" ,
"port" : 0 ,
"protocol" : "TCP" ,
"virtualHost" : "string"
},
"patternUuid" : "string"
}
The match list
Properties
Name
Type
Required
Restrictions
Description
type
string
true
none
none
service
Service
false
none
none
patternUuid
string
false
none
none
Enumerated Values
Property
Value
type
WAS
type
GATHEREDINFORMATION
type
COMPONENT
type
COMPLIANCE
type
PAC
ComplianceMatch
{
"type" : "WAS" ,
"service" : {
"name" : "string" ,
"scheme" : "string" ,
"port" : 0 ,
"protocol" : "TCP" ,
"virtualHost" : "string"
},
"patternUuid" : "string" ,
"requirementId" : 0 ,
"compliant" : true ,
"message" : "string" ,
"error" : "string" ,
"humanCheck" : true ,
"faultyItems" : [
[
"string"
]
],
"checkedAssets" : [
[
"string"
]
]
}
Properties
allOf
Name
Type
Required
Restrictions
Description
anonymous
BaseMatch
false
none
The match list
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» requirementId
integer(int32)
false
none
none
» compliant
boolean
false
none
none
» message
string
false
none
none
» error
string
false
none
none
» humanCheck
boolean
false
none
none
» faultyItems
[array]
false
none
none
» checkedAssets
[array]
false
none
none
ComponentMatch
{
"type" : "WAS" ,
"service" : {
"name" : "string" ,
"scheme" : "string" ,
"port" : 0 ,
"protocol" : "TCP" ,
"virtualHost" : "string"
},
"patternUuid" : "string" ,
"name" : "string" ,
"presentableName" : "string" ,
"version" : "string"
}
Properties
allOf
Name
Type
Required
Restrictions
Description
anonymous
BaseMatch
false
none
The match list
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» name
string
false
none
none
» presentableName
string
false
none
none
» version
string
false
none
none
Finding
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"checkId" : 0 ,
"findingTemplateId" : 0 ,
"cvssScore" : 0 ,
"cvssSeverity" : "RECOMMENDATION" ,
"cvssV2Score" : 0 ,
"cvssV2BaseScore" : 0 ,
"cvssV2TemporalScore" : 0 ,
"cvssV2EnvironmentalScore" : 0 ,
"cvssV2Vector" : "string" ,
"cvssV2Severity" : "RECOMMENDATION" ,
"cvssV3Score" : 0 ,
"cvssV3BaseScore" : 0 ,
"cvssV3TemporalScore" : 0 ,
"cvssV3EnvironmentalScore" : 0 ,
"cvssV3Vector" : "string" ,
"cvssV3Severity" : "RECOMMENDATION" ,
"falsePositive" : "2019-08-24T14:15:22Z" ,
"falsePositiveComment" : "string" ,
"isAccepted" : true ,
"accepted" : "2019-08-24T14:15:22Z" ,
"acceptedComment" : "string" ,
"acceptedUntil" : "2019-08-24T14:15:22Z" ,
"fixed" : "2019-08-24T14:15:22Z" ,
"commentsCount" : 0 ,
"customName" : "string" ,
"customDescription" : "string" ,
"customCve" : "string" ,
"customCwe" : 0 ,
"customBugTraq" : "string" ,
"customSolution" : "string" ,
"customRecreation" : "string" ,
"customImpact" : "string" ,
"customOwaspMobile2024" : 1 ,
"customOwaspApi2023" : 1 ,
"solutionPatches" : [
"string"
],
"customCvssV2Vector" : "string" ,
"customCvssV2Severity" : "RECOMMENDATION" ,
"customCvssV3Vector" : "string" ,
"customCvssV3Severity" : "RECOMMENDATION" ,
"source" : [
"SCOUT"
],
"activeSubscriptionTypes" : [
"DAST"
],
"name" : "string" ,
"description" : "string" ,
"cve" : "string" ,
"cwe" : "string" ,
"solutionType" : "NOT_CLASSIFIED" ,
"solution" : "string" ,
"solutionProduct" : "string" ,
"solutionTitle" : "string" ,
"solutionUuid" : "string" ,
"exploitAvailable" : true ,
"matchIds" : [
0
],
"attachmentIds" : [
0
],
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"lastScanConfigurationId" : 0 ,
"status" : "to review" ,
"commentPendingSince" : "2019-08-24T14:15:22Z" ,
"reviewed" : "2019-08-24T14:15:22Z" ,
"reviewedBy" : "string" ,
"reviewedById" : 0 ,
"verified" : "2019-08-24T14:15:22Z" ,
"verifiedBy" : "string" ,
"verifiedById" : 0 ,
"qualityAssured" : "2019-08-24T14:15:22Z" ,
"qualityAssuredBy" : "string" ,
"qualityAssuredById" : 0 ,
"published" : "2019-08-24T14:15:22Z" ,
"publishedBy" : "string" ,
"publishedById" : 0 ,
"rejected" : "2019-08-24T14:15:22Z" ,
"rejectedBy" : "string" ,
"rejectedById" : 0 ,
"recreation" : "string" ,
"alternativeRecreation" : "string" ,
"impact" : "string" ,
"sans25" : 0 ,
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
],
"owaspMobile2024" : 1 ,
"owaspApi2023" : 1 ,
"capec" : [
0
],
"assetId" : 0 ,
"assetName" : "string" ,
"potential" : true ,
"softwareComponent" : "string" ,
"cyrating" : 0 ,
"cyratingDelta" : 0 ,
"exploitProbability" : 0 ,
"exploitProbabilityDelta" : 0 ,
"cyratingUpdated" : "2019-08-24T14:15:22Z" ,
"cyratingLastSeen" : "2019-08-24T14:15:22Z" ,
"seenLastScan" : true ,
"watching" : true ,
"age" : 0 ,
"assetGroupIds" : [
0
],
"sentTo" : [
"string"
],
"renderedName" : "string" ,
"renderedDescription" : "string" ,
"renderedCwe" : 0 ,
"renderedSolution" : "string" ,
"renderedRecreation" : "string" ,
"renderedImpact" : "string" ,
"renderedOwaspMobile2024" : 1 ,
"renderedOwaspApi2023" : 1 ,
"customerName" : "string" ,
"enabled" : true ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"bugTraq" : [
0
],
"secureCodeWarrior" : {
"name" : "string" ,
"description" : "string" ,
"url" : "string"
},
"farsight" : {
"risk" : {
"score" : 0 ,
"delta" : 0
},
"updated" : "2019-08-24T14:15:22Z" ,
"lastThreatActivity" : "2019-08-24T14:15:22Z"
},
"matches" : [
{
"type" : "WAS" ,
"service" : {
"name" : "string" ,
"scheme" : "string" ,
"port" : 0 ,
"protocol" : "TCP" ,
"virtualHost" : "string"
},
"patternUuid" : "string"
}
],
"classifications" : {
"sans25" : 0 ,
"capec" : [
0
],
"owasp2004" : [
0
],
"owasp2007" : [
0
],
"owasp2010" : [
0
],
"owasp2013" : [
0
],
"owasp2017" : [
0
],
"owasp2021" : [
0
]
},
"ports" : [
{
"name" : "string" ,
"port" : 0 ,
"protocol" : "TCP"
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
checkId
integer(int32)
false
none
The check id associated with the finding
findingTemplateId
integer(int32)
false
none
The finding template from which the finding was created
cvssScore
number(float)
false
read-only
The CVSS score, take CVSS V3 if available, otherwise CVSS V2
cvssSeverity
string
false
read-only
The CVSS severity, take CVSS V3 severity if available, otherwise CVSS V2
cvssV2Score
number(float)
false
read-only
The CVSS V2 score
cvssV2BaseScore
number(float)
false
read-only
The CVSS V2 base score
cvssV2TemporalScore
number(float)
false
read-only
The CVSS V2 temporal score
cvssV2EnvironmentalScore
number(float)
false
read-only
The CVSS V2 environmental score
cvssV2Vector
string
false
read-only
The CVSS V2 vector
cvssV2Severity
string
false
read-only
The CVSS V2 severity
cvssV3Score
number(float)
false
read-only
The CVSS V3 score
cvssV3BaseScore
number(float)
false
read-only
The CVSS V3 base score
cvssV3TemporalScore
number(float)
false
read-only
The CVSS V3 temporal score
cvssV3EnvironmentalScore
number(float)
false
read-only
The CVSS V3 environmental score
cvssV3Vector
string
false
read-only
The CVSS V3 vector
cvssV3Severity
string
false
read-only
The CVSS V3 severity
falsePositive
string(date-time)
false
read-only
The date when marked as false positive
falsePositiveComment
string
false
read-only
The false positive comment
isAccepted
boolean
false
read-only
Set to true when the risk is accepted
accepted
string(date-time)
false
read-only
The date when the finding was marked as accepted risk.
acceptedComment
string
false
read-only
The accepted comment
acceptedUntil
string(date-time)
false
read-only
The date when the risk acceptance will expire.
fixed
string(date-time)
false
read-only
The date when the risk was fixed
commentsCount
integer(int32)
false
read-only
The number of comments
customName
string
false
none
The custom name
customDescription
string
false
none
The custom description
customCve
string
false
none
The custom CVE
customCwe
integer(int32)
false
none
The custom CWE
customBugTraq
string
false
none
The custom bug track
customSolution
string
false
none
The custom solution
customRecreation
string
false
none
The custom recreation
customImpact
string
false
none
The custom impact
customOwaspMobile2024
integer(int32)
false
none
Custom OWASP Mobile 2024 score
customOwaspApi2023
integer(int32)
false
none
Custom OWASP API 2023 score
solutionPatches
[string]
false
none
The solution patches
customCvssV2Vector
string
false
none
The custom CVSS V2 vector
customCvssV2Severity
string
false
none
The custom CVSS V2 severity
customCvssV3Vector
string
false
none
The custom CVSS V3 vector
customCvssV3Severity
string
false
none
The custom CVSS V3 severity
source
[string]
false
read-only
The scan sources
activeSubscriptionTypes
[string]
false
read-only
The finding's active subscription types
name
string
false
read-only
The name of the entry.
description
string
false
read-only
Description of the entry.
cve
string
false
read-only
The finding CVE
cwe
string
false
read-only
CWE classification of the entry.
solutionType
string
false
read-only
The solution type
solution
string
false
read-only
The solution
solutionProduct
string
false
read-only
The solution product
solutionTitle
string
false
read-only
The solution title
solutionUuid
string
false
read-only
The solution uuid
exploitAvailable
boolean
false
read-only
Set to true when exploits are available
matchIds
[integer]
false
none
The match ids
attachmentIds
[integer]
false
read-only
The attachments ids
firstSeen
string(date-time)
false
read-only
Timestamp when the entry was seen for the first time.
lastSeen
string(date-time)
false
read-only
Timestamp when the entry was seen last time.
firstScanId
integer(int32)
false
read-only
The id of the first scan
lastScanId
integer(int32)
false
read-only
The id of the last scan
lastScanConfigurationId
integer(int32)
false
read-only
The id of the last scan configuration
status
string
false
read-only
The finding status
commentPendingSince
string(date-time)
false
read-only
The date since comment is pending
reviewed
string(date-time)
false
read-only
The finding reviewed date
reviewedBy
string
false
read-only
The username of the user that reviewed the finding
reviewedById
integer(int32)
false
read-only
The user ID of the user that reviewed the finding
verified
string(date-time)
false
read-only
The finding verified date
verifiedBy
string
false
read-only
The username of the user that verified the finding
verifiedById
integer(int32)
false
read-only
The user ID of the user that verified the finding
qualityAssured
string(date-time)
false
read-only
The finding quality assured date
qualityAssuredBy
string
false
read-only
The username of the user that quality assured the finding
qualityAssuredById
integer(int32)
false
read-only
The user ID of the user that quality assured the finding
published
string(date-time)
false
read-only
The finding published date
publishedBy
string
false
read-only
The username of the user that published the finding
publishedById
integer(int32)
false
read-only
The user ID of the user that published the finding
rejected
string(date-time)
false
read-only
The finding rejected date
rejectedBy
string
false
read-only
The username of the user that rejected the finding
rejectedById
integer(int32)
false
read-only
The user ID of the user that rejected the finding
recreation
string
false
read-only
The recreation
alternativeRecreation
string
false
none
The alternate recreation
impact
string
false
none
The impact
sans25
integer(int32)
false
read-only
SANS 25 classification of the entry.
owasp2004
[integer]
false
read-only
An array of OWASP Top 10 2004 classifications of the entry.
owasp2007
[integer]
false
read-only
An array of OWASP Top 10 2007 classifications of the entry.
owasp2010
[integer]
false
read-only
An array of OWASP Top 10 2010 classifications of the entry.
owasp2013
[integer]
false
read-only
An array of OWASP Top 10 2013 classifications of the entry.
owasp2017
[integer]
false
read-only
An array of OWASP Top 10 2017 classifications of the entry.
owasp2021
[integer]
false
read-only
The OWASP 2021 scores
owaspMobile2024
integer(int32)
false
none
The OWASP Mobile 2024 score
owaspApi2023
integer(int32)
false
none
The OWASP API 2023 score
capec
[integer]
false
read-only
CAPEC classification of the entry.
assetId
integer(int32)
true
none
The asset id
assetName
string
false
read-only
The asset name
potential
boolean
false
none
The finding potential. Set to true when potential false positive
softwareComponent
string
false
read-only
The software component
cyrating
number(double)
false
read-only
The cyrating
cyratingDelta
number(double)
false
read-only
The cyrating delta
exploitProbability
number(double)
false
read-only
The exploit probability
exploitProbabilityDelta
number(double)
false
read-only
The exploit probability delta
cyratingUpdated
string(date-time)
false
read-only
The cyrating updated date
cyratingLastSeen
string(date-time)
false
read-only
The cyrating last seen date
seenLastScan
boolean
false
read-only
Set to true if finding was seen in last scan
watching
boolean
false
read-only
Whether the current user is watching this finding
age
integer(int32)
false
read-only
The finding's age in days since creation
assetGroupIds
[integer]
false
none
The asset group ids
sentTo
[string]
false
read-only
A list of e-mail addresses that this finding has been sent to
renderedName
string
false
read-only
Finding name derived from finding template
renderedDescription
string
false
read-only
Finding description derived from finding template
renderedCwe
integer(int32)
false
read-only
Finding CWE derived from finding template
renderedSolution
string
false
read-only
Solution derived from finding template
renderedRecreation
string
false
read-only
Finding recreation derived from finding template
renderedImpact
string
false
read-only
Finding impact derived from finding template
renderedOwaspMobile2024
integer(int32)
false
none
Finding OWASP Mobile 2024 score derived from finding template
renderedOwaspApi2023
integer(int32)
false
none
Finding OWASP API 2023 score derived from finding template
customerName
string
false
none
The customer name
enabled
boolean
false
read-only
Determines if the entry is enabled or not.
tags
[Tag ]
false
read-only
The tags
bugTraq
[integer]
false
read-only
An array of Bugtraq reference IDs.
secureCodeWarrior
SecureCodeWarrior
false
none
The secure code warrior information on the vulnerability description and training
farsight
Farsight
false
none
The farsight concists in additional information on risk such as likelihood, threat activity
matches
[BaseMatch ]
false
read-only
The match list
classifications
Classification.Classifications
false
none
The classifications such as CAPEC, OWASP20XX
ports
[Port ]
false
read-only
Ports information on the vulnerability description
Enumerated Values
Property
Value
cvssSeverity
RECOMMENDATION
cvssSeverity
LOW
cvssSeverity
MEDIUM
cvssSeverity
HIGH
cvssSeverity
CRITICAL
cvssV2Severity
RECOMMENDATION
cvssV2Severity
LOW
cvssV2Severity
MEDIUM
cvssV2Severity
HIGH
cvssV2Severity
CRITICAL
cvssV3Severity
RECOMMENDATION
cvssV3Severity
LOW
cvssV3Severity
MEDIUM
cvssV3Severity
HIGH
cvssV3Severity
CRITICAL
customCvssV2Severity
RECOMMENDATION
customCvssV2Severity
LOW
customCvssV2Severity
MEDIUM
customCvssV2Severity
HIGH
customCvssV2Severity
CRITICAL
customCvssV3Severity
RECOMMENDATION
customCvssV3Severity
LOW
customCvssV3Severity
MEDIUM
customCvssV3Severity
HIGH
customCvssV3Severity
CRITICAL
solutionType
NOT_CLASSIFIED
solutionType
UNKNOWN
solutionType
RECONFIGURE
solutionType
WORKAROUND
solutionType
SOLUTION_IN_PROGRESS
solutionType
CONTACT_VENDOR
solutionType
UPDATE
solutionType
PATCH
solutionType
NOT_ACKNOWLEDGED
solutionType
NO_SOLUTION
solutionType
CONFIGURE_ACCOUNT
solutionType
DISABLE
solutionType
FILTER
solutionType
MALWARE
status
to review
status
to verify
status
to QA
status
to publish
status
rejected
status
present
status
accepted
status
false positive
status
pending verification
status
fixed
status
irreproducible
{
"type" : "WAS" ,
"service" : {
"name" : "string" ,
"scheme" : "string" ,
"port" : 0 ,
"protocol" : "TCP" ,
"virtualHost" : "string"
},
"patternUuid" : "string" ,
"checkId" : 0 ,
"gatheredInformation" : "string"
}
Properties
allOf
Name
Type
Required
Restrictions
Description
anonymous
BaseMatch
false
none
The match list
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» checkId
integer(int32)
false
none
none
» gatheredInformation
string
false
none
none
Port
{
"name" : "string" ,
"port" : 0 ,
"protocol" : "TCP"
}
Ports information on the vulnerability description
Properties
Name
Type
Required
Restrictions
Description
name
string
false
none
The name of the entry.
port
integer(int32)
false
none
none
protocol
string
false
none
none
Enumerated Values
Property
Value
protocol
TCP
protocol
UDP
Service
{
"name" : "string" ,
"scheme" : "string" ,
"port" : 0 ,
"protocol" : "TCP" ,
"virtualHost" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
name
string
true
none
The name of the entry.
scheme
string
false
none
none
port
integer(int32)
false
none
none
protocol
string
true
none
none
virtualHost
string
false
none
none
Enumerated Values
Property
Value
protocol
TCP
protocol
UDP
WasMatch
{
"type" : "WAS" ,
"service" : {
"name" : "string" ,
"scheme" : "string" ,
"port" : 0 ,
"protocol" : "TCP" ,
"virtualHost" : "string"
},
"patternUuid" : "string" ,
"checkId" : 0 ,
"url" : "string" ,
"method" : "string" ,
"body" : "string" ,
"auxData" : [
"string"
],
"context" : "string" ,
"contextStart" : 0 ,
"contextLength" : 0
}
Properties
allOf
Name
Type
Required
Restrictions
Description
anonymous
BaseMatch
false
none
The match list
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» checkId
integer(int32)
false
none
none
» url
string
false
none
none
» method
string
false
none
none
» body
string
false
none
none
» auxData
[string]
false
none
none
» context
string
false
none
none
» contextStart
integer(int32)
false
none
none
» contextLength
integer(int32)
false
none
none
FindingDelta
{
"firstSeen" : 0 ,
"lastSeen" : 0 ,
"unchanged" : 0 ,
"asset" : {
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"source" : [
"SCOUT"
],
"platform" : "string" ,
"assetIdentifierIds" : [
0
],
"assetIdentifierTypes" : [
"IP"
],
"activeSubscriptionTypes" : [
"DAST"
],
"uuid" : "string" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"compliant" : "COMPLIANT" ,
"cvssV2EnvironmentalVector" : "string" ,
"cvssV3EnvironmentalVector" : "string" ,
"customerName" : "string" ,
"enabled" : true ,
"active" : true ,
"dockerImageProperties" : {
"type" : "IP"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"assetIdentifiers" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"presentableName" : "string" ,
"type" : "IP" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"scannerId" : 0 ,
"scannerName" : "string" ,
"ownership" : 0 ,
"customOwnership" : 100 ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"source" : [
"SCOUT"
],
"links" : [
0
],
"assetIds" : [
0
],
"assetNames" : [
"string"
],
"accountIds" : [
0
],
"platform" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"properties" : {
"type" : "IP"
}
}
],
"assetGroups" : [
{
"id" : 0 ,
"name" : "string"
}
]
}
}
Properties
Name
Type
Required
Restrictions
Description
firstSeen
integer(int32)
false
read-only
Timestamp when the entry was seen for the first time.
lastSeen
integer(int32)
false
read-only
Timestamp when the entry was seen last time.
unchanged
integer(int32)
false
read-only
none
asset
Asset
false
none
none
FindingSolution
{
"solutionUuid" : "string" ,
"solutionType" : "NOT_CLASSIFIED" ,
"solution" : "string" ,
"solutionProduct" : "string" ,
"solutionTitle" : "string" ,
"riskCount" : 0 ,
"assetCount" : 0 ,
"severityCount" : {
"critical" : 0 ,
"high" : 0 ,
"medium" : 0 ,
"low" : 0 ,
"recommendation" : 0
}
}
Properties
Name
Type
Required
Restrictions
Description
solutionUuid
string
false
read-only
none
solutionType
string
false
read-only
none
solution
string
false
read-only
none
solutionProduct
string
false
read-only
none
solutionTitle
string
false
read-only
none
riskCount
integer(int32)
false
read-only
none
assetCount
integer(int32)
false
read-only
none
severityCount
FindingSolution.SeverityCount
false
none
none
Enumerated Values
Property
Value
solutionType
NOT_CLASSIFIED
solutionType
UNKNOWN
solutionType
RECONFIGURE
solutionType
WORKAROUND
solutionType
SOLUTION_IN_PROGRESS
solutionType
CONTACT_VENDOR
solutionType
UPDATE
solutionType
PATCH
solutionType
NOT_ACKNOWLEDGED
solutionType
NO_SOLUTION
solutionType
CONFIGURE_ACCOUNT
solutionType
DISABLE
solutionType
FILTER
solutionType
MALWARE
FindingSolution.SeverityCount
{
"critical" : 0 ,
"high" : 0 ,
"medium" : 0 ,
"low" : 0 ,
"recommendation" : 0
}
Properties
Name
Type
Required
Restrictions
Description
critical
integer(int32)
false
none
none
high
integer(int32)
false
none
none
medium
integer(int32)
false
none
none
low
integer(int32)
false
none
none
recommendation
integer(int32)
false
none
none
FindingFalsePositive
{
"falsePositiveComment" : "string" ,
"sendInfo" : true ,
"clarificationRequestComment" : "string" ,
"sendBlueprint" : true
}
Properties
Name
Type
Required
Restrictions
Description
falsePositiveComment
string
true
none
none
sendInfo
boolean
false
none
none
clarificationRequestComment
string
false
none
none
sendBlueprint
boolean
false
none
none
FindingClarificationRequest
{
"clarificationRequestComment" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
clarificationRequestComment
string
false
none
none
FindingVerificationRequest
{
"verificationRequestComment" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
verificationRequestComment
string
true
none
none
FindingAccept
{
"acceptedUntil" : "2019-08-24T14:15:22Z" ,
"acceptedComment" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
acceptedUntil
string(date-time)
true
none
The date when the risk acceptance will expire.
acceptedComment
string
false
none
none
Globals
{
"awsAccountId" : "string" ,
"appliance" : true ,
"awsAccessKeyAllowRemote" : true
}
Properties
Name
Type
Required
Restrictions
Description
awsAccountId
string
false
read-only
none
appliance
boolean
false
read-only
none
awsAccessKeyAllowRemote
boolean
false
read-only
none
Timezone
{
"name" : "string" ,
"gmtOffset" : 0
}
Properties
Name
Type
Required
Restrictions
Description
name
string
true
none
The name of the entry.
gmtOffset
number(double)
true
none
none
AgentIntegrationConfiguration
{
"type" : "OBJECT_STORAGE" ,
"agentServerUrl" : "string"
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» agentServerUrl
string
false
none
none
BaseAuthenticationConfiguration
{
"authenticationType" : "BASIC_AUTHENTICATION"
}
Properties
Name
Type
Required
Restrictions
Description
authenticationType
string
true
none
none
Enumerated Values
Property
Value
authenticationType
BASIC_AUTHENTICATION
authenticationType
OAUTH2_AUTHENTICATION
BaseIntegrationConfiguration
{
"type" : "OBJECT_STORAGE"
}
Properties
Name
Type
Required
Restrictions
Description
type
string
true
none
none
Enumerated Values
Property
Value
type
OBJECT_STORAGE
type
AGENT
type
ENCRYPTION_SERVICE
type
EMAIL
type
WEBHOOK
type
LOG
type
SYSLOG
type
SNMP
type
CYBERARK
type
DELINEA
type
NOTIFICATION
BasicAuthenticationConfiguration
{
"authenticationType" : "BASIC_AUTHENTICATION" ,
"username" : "string" ,
"password" : "string"
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» username
string
false
none
none
» password
string
false
none
none
CyberArkIntegrationConfiguration
{
"type" : "OBJECT_STORAGE" ,
"url" : "string" ,
"applicationId" : "string" ,
"certificate" : "string" ,
"defaultFolder" : "string" ,
"defaultSafe" : "string"
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» url
string
false
none
none
» applicationId
string
false
none
none
» certificate
string
false
none
none
» defaultFolder
string
false
none
none
» defaultSafe
string
false
none
none
DelineaIntegrationConfiguration
{
"type" : "OBJECT_STORAGE" ,
"url" : "string" ,
"username" : "string" ,
"password" : "string" ,
"certificate" : "string"
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» url
string
false
none
none
» username
string
false
none
none
» password
string
false
none
none
» certificate
string
false
none
none
EncryptionServiceIntegrationConfiguration
{
"type" : "OBJECT_STORAGE" ,
"encryptionServiceUrl" : "string"
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» encryptionServiceUrl
string
false
none
none
Integration
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"type" : "OBJECT_STORAGE" ,
"verified" : "2019-08-24T14:15:22Z" ,
"verifiedBy" : "string" ,
"verifiedById" : 0 ,
"verifyStatus" : true ,
"configuration" : {
"type" : "OBJECT_STORAGE"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
type
string
false
read-only
none
verified
string(date-time)
false
read-only
none
verifiedBy
string
false
read-only
none
verifiedById
integer(int32)
false
read-only
none
verifyStatus
boolean
false
read-only
none
configuration
BaseIntegrationConfiguration
true
none
none
tags
[Tag ]
false
read-only
[The tags]
Enumerated Values
Property
Value
type
OBJECT_STORAGE
type
AGENT
type
ENCRYPTION_SERVICE
type
EMAIL
type
WEBHOOK
type
LOG
type
SYSLOG
type
SNMP
type
CYBERARK
type
DELINEA
type
NOTIFICATION
OauthV2AuthenticationConfiguration
{
"authenticationType" : "BASIC_AUTHENTICATION" ,
"requiredOauthSetting" : {
"oauthApiType" : "JSON" ,
"authorizeUrl" : "string" ,
"tokenUrl" : "string" ,
"clientId" : "string" ,
"clientSecret" : "string"
},
"optionalOauthSetting" : {
"audience" : "string" ,
"scope" : [
"string"
]
},
"accessToken" : "string" ,
"accessTokenCreated" : "2019-08-24T14:15:22Z" ,
"accessTokenExpiresIn" : "2019-08-24T14:15:22Z" ,
"refreshToken" : "string" ,
"authorized" : true ,
"errorMessage" : "string"
}
Properties
allOf
and
OauthV2AuthenticationConfiguration.OptionalOauthSetting
{
"audience" : "string" ,
"scope" : [
"string"
]
}
Properties
Name
Type
Required
Restrictions
Description
audience
string
false
none
none
scope
[string]
false
none
none
OauthV2AuthenticationConfiguration.RequiredOauthSetting
{
"oauthApiType" : "JSON" ,
"authorizeUrl" : "string" ,
"tokenUrl" : "string" ,
"clientId" : "string" ,
"clientSecret" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
oauthApiType
string
true
none
none
authorizeUrl
string
true
none
none
tokenUrl
string
true
none
none
clientId
string
true
none
none
clientSecret
string
true
none
none
Enumerated Values
Property
Value
oauthApiType
JSON
oauthApiType
FORM_URL_ENCODED
ObjectStorageIntegrationConfiguration
{
"type" : "OBJECT_STORAGE" ,
"s3Uri" : "string" ,
"s3AccessKey" : "string" ,
"s3SecretKey" : "string" ,
"s3Certificate" : "string"
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» s3Uri
string
false
none
none
» s3AccessKey
string
false
none
none
» s3SecretKey
string
false
none
none
» s3Certificate
string
false
none
none
SnmpIntegrationConfiguration
{
"type" : "OBJECT_STORAGE" ,
"host" : "string" ,
"port" : 1 ,
"version" : 2 ,
"community" : "string" ,
"username" : "string" ,
"authPassword" : "string" ,
"privPassword" : "string" ,
"engineId" : "string" ,
"prefix" : "string"
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» host
string
false
none
none
» port
integer(int32)
false
none
none
» version
integer(int32)
false
none
none
» community
string
false
none
none
» username
string
false
none
none
» authPassword
string
false
none
none
» privPassword
string
false
none
none
» engineId
string
false
none
none
» prefix
string
false
none
none
SyslogIntegrationConfiguration
{
"type" : "OBJECT_STORAGE" ,
"host" : "string" ,
"format" : "RFC5424" ,
"facility" : 0 ,
"severity" : 0 ,
"port" : 0 ,
"transportType" : "TCP" ,
"prefix" : "string" ,
"certificate" : "string" ,
"audit" : true ,
"tls" : true ,
"arcsight" : true
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» host
string
false
none
none
» format
string
false
none
none
» facility
integer(int32)
false
none
none
» severity
integer(int32)
false
none
none
» port
integer(int32)
false
none
none
» transportType
string
false
none
none
» prefix
string
false
none
none
» certificate
string
false
none
none
» audit
boolean
false
none
none
» tls
boolean
false
none
none
» arcsight
boolean
false
none
none
Enumerated Values
Property
Value
format
RFC5424
format
RFC3164
format
LEGACY
transportType
TCP
transportType
UDP
WebhookIntegrationConfiguration
{
"type" : "OBJECT_STORAGE" ,
"webhookUrl" : "string" ,
"contentSample" : "string" ,
"serverCertificate" : "string" ,
"httpMethod" : "string" ,
"httpHeaders" : "string" ,
"authenticationConfiguration" : {
"authenticationType" : "BASIC_AUTHENTICATION"
}
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» webhookUrl
string
false
none
none
» contentSample
string
false
none
none
» serverCertificate
string
false
none
none
» httpMethod
string
false
none
none
» httpHeaders
string
false
none
none
» authenticationConfiguration
BaseAuthenticationConfiguration
false
none
none
ManagedReportGroup
{
"id" : 0 ,
"userId" : 0 ,
"name" : "string" ,
"parentId" : 0 ,
"updated" : "2019-08-24T14:15:22Z" ,
"created" : "2019-08-24T14:15:22Z" ,
"count" : 0
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int64)
false
read-only
The ID of the entry.
userId
integer(int64)
false
read-only
none
name
string
true
none
The name of the entry.
parentId
integer(int64)
false
none
The ID of the parent entry.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
count
integer(int64)
false
read-only
The total number of entries associated with this entry and its child entries.
ManagedReport
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"size" : 0 ,
"lastDownloaded" : "2019-08-24T14:15:22Z" ,
"lastDownloadedBy" : "string" ,
"uuid" : "string" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
size
integer(int32)
false
read-only
none
lastDownloaded
string(date-time)
false
read-only
none
lastDownloadedBy
string
false
read-only
none
uuid
string
false
read-only
The UUID of the entry.
tags
[Tag ]
false
read-only
[The tags]
Match
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"assetId" : 0 ,
"type" : "WAS" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"firstScanId" : 0 ,
"lastScanId" : 0 ,
"findingIds" : [
0
],
"source" : [
"SCOUT"
],
"subscriptionType" : "DAST" ,
"match" : {
"type" : "WAS" ,
"service" : {
"name" : "string" ,
"scheme" : "string" ,
"port" : 0 ,
"protocol" : "TCP" ,
"virtualHost" : "string"
},
"patternUuid" : "string"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
assetId
integer(int32)
true
none
none
type
string
true
none
none
firstSeen
string(date-time)
true
none
Timestamp when the entry was seen for the first time.
lastSeen
string(date-time)
true
none
Timestamp when the entry was seen last time.
firstScanId
integer(int32)
false
read-only
none
lastScanId
integer(int32)
false
read-only
none
findingIds
[integer]
false
read-only
none
source
[string]
true
none
none
subscriptionType
string
false
none
none
match
BaseMatch
false
none
The match list
tags
[Tag ]
false
read-only
[The tags]
Enumerated Values
Property
Value
type
WAS
type
GATHEREDINFORMATION
type
COMPONENT
type
COMPLIANCE
type
PAC
subscriptionType
DAST
subscriptionType
SCALE
subscriptionType
SCOUT
subscriptionType
SNAPSHOT
subscriptionType
ASSURE
subscriptionType
DAST_EXPERT
subscriptionType
VERIFY
subscriptionType
SWAT
subscriptionType
CLOUDSEC
subscriptionType
NETSEC
subscriptionType
CONSUMPTION
Notification
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"userId" : 0 ,
"subUserId" : 0 ,
"eventSubscriptionId" : 0 ,
"read" : "2019-08-24T14:15:22Z" ,
"content" : {
"subject" : "string" ,
"message" : "string" ,
"trigger" : "SCHEDULE_CREATED" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"subEntityType" : "COMMENT" ,
"subEntityId" : 0
}
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
userId
integer(int64)
false
none
none
subUserId
integer(int64)
false
none
none
eventSubscriptionId
integer(int32)
false
none
none
read
string(date-time)
false
none
none
content
Notification.Content
false
none
none
Notification.Content
{
"subject" : "string" ,
"message" : "string" ,
"trigger" : "SCHEDULE_CREATED" ,
"entityType" : "FINDING" ,
"entityId" : 0 ,
"subEntityType" : "COMMENT" ,
"subEntityId" : 0
}
Properties
Name
Type
Required
Restrictions
Description
subject
string
true
none
none
message
string
false
none
none
trigger
string
true
none
none
entityType
string
false
none
none
entityId
integer(int32)
false
none
none
subEntityType
string
false
none
none
subEntityId
integer(int32)
false
none
none
Enumerated Values
Property
Value
trigger
SCHEDULE_CREATED
trigger
SCHEDULE_DELETED
trigger
SCHEDULE_MODIFIED
trigger
SCHEDULE_SCHEDULED
trigger
CONFIGURATION_CREATED
trigger
CONFIGURATION_DELETED
trigger
CONFIGURATION_MODIFIED
trigger
CONFIGURATION_STARTED
trigger
CONFIGURATION_DONE
trigger
SCAN_STARTED
trigger
SCAN_STOPPED
trigger
SCAN_DONE
trigger
ASSET_NOT_RECENTLY_SEEN
trigger
ASSET_SEEN
trigger
ASSET_CREATED
trigger
ASSET_DELETED
trigger
ASSET_MODIFIED
trigger
FINDING_SEEN
trigger
FINDING_CREATED
trigger
FINDING_MODIFIED
trigger
FINDING_STATUS_TRANSITIONED
trigger
FINDING_RISK_ACCEPTED_EXPIRATION
trigger
WATCHED_FINDING_UPDATED
trigger
USER_CREATED
trigger
USER_DELETED
trigger
USER_MODIFIED
trigger
USER_LOGIN_ATTEMPT
trigger
USER_PASSWORD_RESET
trigger
ROLE_CREATED
trigger
ROLE_DELETED
trigger
ROLE_MODIFIED
trigger
RESOURCE_GROUP_CREATED
trigger
RESOURCE_GROUP_DELETED
trigger
RESOURCE_GROUP_MODIFIED
trigger
NEW_RELEASE_NOTES
trigger
HIAB_SCANNER_MISSING
trigger
HIAB_UPDATE_DONE
trigger
HIAB_UPDATE_FAILED
trigger
HIAB_BACKUP_DONE
trigger
HIAB_BACKUP_FAILED
trigger
HIAB_MAINTENANCE_PLAN_DONE
trigger
HIAB_DISK_USAGE_HIGH
trigger
HIAB_REBOOTED
trigger
HIAB_REMOTE_SUPPORT
trigger
OUTSCAN_CONSULTANCY
trigger
CONSUMPTION_ABSOLUTE
trigger
CONSUMPTION_RELATIVE
trigger
WORKFLOW_CREATED
trigger
WORKFLOW_DELETED
trigger
WORKFLOW_MODIFIED
trigger
WORKFLOW_STARTED
trigger
WORKFLOW_DONE
trigger
COMPLIANCE_CREATED
trigger
COMPLIANCE_MODIFIED
trigger
COMPLIANCE_RISK_EXCEPTION
trigger
COMPLIANCE_RISK_EXCEPTION_EXPIRATION
trigger
COMMENT_CREATED
trigger
EXECUTIVE_SUMMARY_UPDATED
trigger
ACTIVITY_FEED_UPDATED
trigger
ASSET_GROUP_CREATED
trigger
ASSET_GROUP_DELETED
trigger
ASSET_GROUP_MODIFIED
entityType
FINDING
entityType
ASSET_GROUP
entityType
ASSET
entityType
SCAN_CONFIGURATION
entityType
SCHEDULE
entityType
SCAN
entityType
USER
entityType
ROLE
entityType
RESOURCE_GROUP
entityType
COMPLIANCE
entityType
WORKFLOW
entityType
CHECK
subEntityType
COMMENT
subEntityType
ATTACHMENT
subEntityType
ACTIVITY
Organization
{
"id" : 0 ,
"uuid" : "string" ,
"name" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int64)
false
read-only
The ID of the entry.
uuid
string
false
read-only
The UUID of the entry.
name
string
false
read-only
The name of the entry.
OutscanFinding
{
"id" : 0 ,
"scanJobId" : 0 ,
"scanLogId" : 0 ,
"scheduleId" : 0 ,
"templateId" : 0 ,
"cvssScore" : 0 ,
"cvssV3Score" : 0 ,
"cvssV3Severity" : "RECOMMENDATION" ,
"cvssV3Vector" : "string" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"reportDate" : "2019-08-24T14:15:22Z" ,
"targetId" : 0 ,
"target" : "string" ,
"hostname" : "string" ,
"port" : 0 ,
"protocol" : 0 ,
"name" : "string" ,
"source" : [
"SCOUT"
],
"cve" : "string" ,
"vulnId" : 0 ,
"isNew" : true ,
"previouslyDetected" : true ,
"type" : "string" ,
"isPotentialFalsePositive" : true ,
"productName" : "string" ,
"productUrl" : "string" ,
"solutionProduct" : "string" ,
"checkCreated" : "2019-08-24T14:15:22Z" ,
"hasExploits" : true ,
"solution" : "string" ,
"businessCriticality" : "LOW" ,
"assetBusinessCriticality" : "LOW" ,
"solutionTitle" : "string" ,
"created" : "2019-08-24T14:15:22Z" ,
"cyrating" : 0 ,
"cyratingDelta" : 0 ,
"cyratingUpdated" : "2019-08-24T14:15:22Z" ,
"cyratingLastSeen" : "2019-08-24T14:15:22Z" ,
"exploitProbability" : 0 ,
"exploitProbabilityDelta" : 0 ,
"assetExposed" : true ,
"owasp2017" : [
0
],
"isAccepted" : true ,
"patchInformation" : "string" ,
"cvssVector" : "string" ,
"virtualHost" : "string" ,
"platform" : "string" ,
"bugTraq" : [
0
],
"serviceName" : "string" ,
"riskLevel" : "Initial" ,
"solutionType" : "Unspecified" ,
"age" : 0 ,
"data" : "string" ,
"description" : "string" ,
"farsight" : {
"risk" : {
"score" : 0 ,
"delta" : 0
},
"updated" : "2019-08-24T14:15:22Z" ,
"lastThreatActivity" : "2019-08-24T14:15:22Z"
},
"acceptExpires" : "2019-08-24T14:15:22Z" ,
"acceptedBy" : "string" ,
"acceptDate" : "2019-08-24T14:15:22Z" ,
"acceptComment" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int64)
false
read-only
The ID of the entry.
scanJobId
integer(int64)
false
read-only
none
scanLogId
integer(int64)
false
read-only
none
scheduleId
integer(int64)
false
read-only
none
templateId
integer(int64)
false
read-only
none
cvssScore
number(double)
false
read-only
none
cvssV3Score
number(double)
false
read-only
none
cvssV3Severity
string
false
read-only
none
cvssV3Vector
string
false
read-only
none
firstSeen
string(date-time)
false
read-only
Timestamp when the entry was seen for the first time.
lastSeen
string(date-time)
false
read-only
Timestamp when the entry was seen last time.
reportDate
string(date-time)
false
read-only
none
targetId
integer(int64)
false
read-only
none
target
string
false
read-only
none
hostname
string
false
read-only
none
port
integer(int64)
false
read-only
none
protocol
integer(int64)
false
read-only
none
name
string
false
read-only
The name of the entry.
source
[string]
false
read-only
none
cve
string
false
read-only
none
vulnId
integer(int64)
false
read-only
none
isNew
boolean
false
read-only
none
previouslyDetected
boolean
false
read-only
none
type
string
false
read-only
none
isPotentialFalsePositive
boolean
false
read-only
none
productName
string
false
read-only
none
productUrl
string
false
read-only
none
solutionProduct
string
false
read-only
none
checkCreated
string(date-time)
false
read-only
none
hasExploits
boolean
false
read-only
none
solution
string
false
read-only
none
businessCriticality
string
false
read-only
none
assetBusinessCriticality
string
false
read-only
none
solutionTitle
string
false
read-only
none
created
string(date-time)
false
read-only
The timestamp when the entry was created.
cyrating
number(double)
false
read-only
none
cyratingDelta
number(double)
false
read-only
none
cyratingUpdated
string(date-time)
false
read-only
none
cyratingLastSeen
string(date-time)
false
read-only
none
exploitProbability
number(double)
false
read-only
none
exploitProbabilityDelta
number(double)
false
read-only
none
assetExposed
boolean
false
read-only
none
owasp2017
[integer]
false
read-only
An array of OWASP Top 10 2017 classifications of the entry.
isAccepted
boolean
false
read-only
none
patchInformation
string
false
read-only
none
cvssVector
string
false
none
none
virtualHost
string
false
none
none
platform
string
false
none
none
bugTraq
[integer]
false
none
An array of Bugtraq reference IDs.
serviceName
string
false
none
none
riskLevel
string
false
none
none
solutionType
string
false
none
none
age
integer(int32)
false
none
none
data
string
false
none
none
description
string
false
read-only
Description of the entry.
farsight
Farsight
false
none
The farsight concists in additional information on risk such as likelihood, threat activity
acceptExpires
string(date-time)
false
read-only
none
acceptedBy
string
false
read-only
The name of the user who accepted the risk.
acceptDate
string(date-time)
false
read-only
none
acceptComment
string
false
read-only
none
Enumerated Values
Property
Value
cvssV3Severity
RECOMMENDATION
cvssV3Severity
LOW
cvssV3Severity
MEDIUM
cvssV3Severity
HIGH
cvssV3Severity
CRITICAL
businessCriticality
LOW
businessCriticality
MEDIUM
businessCriticality
HIGH
businessCriticality
CRITICAL
assetBusinessCriticality
LOW
assetBusinessCriticality
MEDIUM
assetBusinessCriticality
HIGH
assetBusinessCriticality
CRITICAL
riskLevel
Initial
riskLevel
Recommendation
riskLevel
Low
riskLevel
Medium
riskLevel
High
riskLevel
Critical
solutionType
Unspecified
solutionType
Unknown
solutionType
Reconfigure
solutionType
Workaround
solutionType
InProgress
solutionType
Contact
solutionType
Update
solutionType
Patch
solutionType
Unack
solutionType
NoSol
solutionType
Account
solutionType
Disable
solutionType
Filter
solutionType
Malware
OutscanScanLog
{
"id" : 0 ,
"startDate" : "2019-08-24T14:15:22Z" ,
"endDate" : "2019-08-24T14:15:22Z" ,
"target" : "string" ,
"targetId" : 0 ,
"schedule" : "string" ,
"scheduleId" : 0 ,
"scanJobId" : 0 ,
"status" : "Invalid"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int64)
false
read-only
The ID of the entry.
startDate
string(date-time)
false
read-only
none
endDate
string(date-time)
false
read-only
none
target
string
false
read-only
none
targetId
integer(int64)
false
read-only
none
schedule
string
false
read-only
none
scheduleId
integer(int64)
false
read-only
none
scanJobId
integer(int64)
false
read-only
none
status
string
false
none
none
Enumerated Values
Property
Value
status
Invalid
status
Ok
status
Forced
status
Timeout
status
Stopped
status
StoppedByUser
status
Large
status
KilledLarge
status
Failed
OutscanScan
{
"id" : 0 ,
"target" : "string" ,
"targetId" : 0 ,
"scheduleId" : 0 ,
"status" : "string" ,
"scanStarted" : "2019-08-24T14:15:22Z" ,
"scanJobId" : 0
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int64)
false
read-only
The ID of the entry.
target
string
false
read-only
none
targetId
integer(int64)
false
read-only
none
scheduleId
integer(int64)
false
read-only
none
status
string
false
read-only
none
scanStarted
string(date-time)
false
read-only
none
scanJobId
integer(int64)
false
read-only
none
OutscanSchedule
{
"id" : 0 ,
"nextScanDate" : "2019-08-24T14:15:22Z" ,
"template" : 0 ,
"name" : "string" ,
"targetList" : "string" ,
"recurrence" : "Now"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int64)
false
read-only
The ID of the entry.
nextScanDate
string(date-time)
false
none
none
template
integer(int64)
false
none
none
name
string
true
none
The name of the entry.
targetList
string
true
none
none
recurrence
string
false
none
none
Enumerated Values
Property
Value
recurrence
Now
recurrence
Once
recurrence
Weekly
recurrence
Monthly
recurrence
Bimonthly
recurrence
Quarterly
recurrence
Fortnightly
recurrence
Daily
OutscanTarget
{
"id" : 0 ,
"ip" : "string" ,
"hostname" : "string" ,
"businessCriticality" : "LOW" ,
"exposed" : true ,
"created" : "2019-08-24T14:15:22Z" ,
"firstSeen" : "2019-08-24T14:15:22Z" ,
"lastSeen" : "2019-08-24T14:15:22Z" ,
"source" : [
"SCOUT"
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int64)
false
read-only
The ID of the entry.
ip
string
false
read-only
none
hostname
string
false
read-only
none
businessCriticality
string
false
read-only
none
exposed
boolean
false
read-only
none
created
string(date-time)
false
read-only
The timestamp when the entry was created.
firstSeen
string(date-time)
false
read-only
Timestamp when the entry was seen for the first time.
lastSeen
string(date-time)
false
read-only
Timestamp when the entry was seen last time.
source
[string]
false
read-only
none
Enumerated Values
Property
Value
businessCriticality
LOW
businessCriticality
MEDIUM
businessCriticality
HIGH
businessCriticality
CRITICAL
PasswordRecoveryRequest
Properties
Name
Type
Required
Restrictions
Description
username
string
true
none
none
{
"product" : "string" ,
"name" : "string" ,
"url" : "string" ,
"updated" : "2019-08-24T14:15:22Z"
}
Properties
Name
Type
Required
Restrictions
Description
product
string
false
read-only
none
name
string
false
read-only
The name of the entry.
url
string
false
read-only
none
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
ReportSchedule
{
"id" : 0 ,
"userId" : 0 ,
"subUserId" : 0 ,
"frequency" : 0 ,
"nextDate" : "2019-08-24T14:15:22Z" ,
"latestDate" : "2019-08-24T14:15:22Z" ,
"lastDate" : "2019-08-24T14:15:22Z" ,
"dayWeekMonth" : 0 ,
"name" : "string" ,
"reportType" : 0 ,
"format" : 0 ,
"zip" : true ,
"recipient" : [
0
],
"recipientEmail" : "string" ,
"encryptionKey" : "string" ,
"managedReportTitle" : "string" ,
"managedReportGroup" : 0 ,
"managedReportToken" : "string" ,
"scanType" : 0 ,
"recipientType" : 0 ,
"reportPassword" : "string" ,
"reportLevel" : 0 ,
"customSubject" : "string" ,
"customText" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int64)
false
read-only
The ID of the entry.
userId
integer(int64)
false
read-only
none
subUserId
integer(int64)
false
read-only
none
frequency
integer(int32)
false
none
none
nextDate
string(date-time)
false
none
none
latestDate
string(date-time)
false
read-only
none
lastDate
string(date-time)
false
none
none
dayWeekMonth
integer(int32)
false
none
none
name
string
true
none
The name of the entry.
reportType
integer(int32)
false
none
none
format
integer(int32)
false
none
none
zip
boolean
false
none
none
recipient
[integer]
false
none
none
recipientEmail
string
false
none
none
encryptionKey
string
true
none
none
managedReportTitle
string
false
none
none
managedReportGroup
integer(int64)
false
none
none
managedReportToken
string
false
none
none
scanType
integer(int32)
false
none
none
recipientType
integer(int32)
false
none
none
reportPassword
string
false
none
none
reportLevel
integer(int32)
false
none
none
customSubject
string
false
none
none
customText
string
false
none
none
ReportCacheEntry
{
"created" : "2019-08-24T14:15:22Z" ,
"key" : "string" ,
"status" : "string" ,
"size" : 0 ,
"token" : "string" ,
"tokenExpires" : "2019-08-24T14:15:22Z" ,
"name" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
created
string(date-time)
false
read-only
The timestamp when the entry was created.
key
string
false
read-only
none
status
string
false
read-only
none
size
integer(int64)
false
read-only
none
token
string
false
read-only
none
tokenExpires
string(date-time)
false
read-only
none
name
string
false
read-only
The name of the entry.
Report
{
"name" : "string" ,
"executiveSummary" : true ,
"format" : "PDF" ,
"password" : "string" ,
"zip" : true ,
"type" : "Technical" ,
"level" : "Detailed" ,
"product" : "Normal" ,
"viewTemplateId" : 0 ,
"assetIds" : [
0
],
"assetGroupIds" : [
0
],
"findingIds" : [
0
],
"assetIdentifierIds" : [
0
],
"serviceIds" : [
0
],
"tagIds" : [
0
],
"startDate" : "2019-08-24T14:15:22Z" ,
"endDate" : "2019-08-24T14:15:22Z" ,
"filters" : "string" ,
"deliveryMethod" : {
"email" : {
"userIds" : [
0
],
"recipients" : {
"addresses" : [
"string"
],
"pgpKey" : "string"
}
},
"managedReport" : {
"name" : "string" ,
"tags" : "string"
}
}
}
Properties
Name
Type
Required
Restrictions
Description
name
string
true
none
The name of the entry.
executiveSummary
boolean
false
none
none
format
string
true
none
none
password
string
false
none
none
zip
boolean
false
none
none
type
string
true
none
none
level
string
false
none
none
product
string
false
none
none
viewTemplateId
integer(int32)
false
none
none
assetIds
[integer]
false
none
none
assetGroupIds
[integer]
false
none
none
findingIds
[integer]
false
none
none
assetIdentifierIds
[integer]
false
none
An array of asset identifier IDs associated with this entry
serviceIds
[integer]
false
none
none
tagIds
[integer]
false
none
none
startDate
string(date-time)
false
none
none
endDate
string(date-time)
false
none
none
filters
string
false
none
none
deliveryMethod
DeliveryMethod
false
none
none
Enumerated Values
Property
Value
format
PDF
format
EXCEL
format
XML
format
SWATDEMO
type
Technical
type
Trend
type
GroupVulnerability
type
Delta
type
Pci
type
WasDiscovery
type
Discovery
type
SolutionTaskReport
type
SolutionTargetReport
type
GroupTrending
type
GroupDelta
type
Compliance
type
Consumption
level
Detailed
level
Management
level
Summary
product
Normal
product
Pci
product
Was
product
SWAT
product
Compliance
product
Appsec Scale
product
APPSEC
product
CLOUDSEC
Resource
{
"type" : "SCANCONFIGURATION" ,
"tagIds" : [
0
]
}
The resource group resources
Properties
Name
Type
Required
Restrictions
Description
type
string
false
none
The resource type
tagIds
[integer]
false
none
The resource tag ids
Enumerated Values
Property
Value
type
SCANCONFIGURATION
type
ACCOUNT
type
SCHEDULEDREPORT
type
MANAGEDREPORT
type
DASHBOARD
type
INTEGRATION
type
ASSETGROUP
type
ASSET
type
APPSTAK
type
VIEWTEMPLATE
type
EVENTSUBSCRIPTION
type
SCANPOLICY
type
FINDINGTEMPLATE
ResourceGroup
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"system" : true ,
"resources" : [
{
"type" : "SCANCONFIGURATION" ,
"tagIds" : [
0
]
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
system
boolean
false
read-only
Set to true when resource group is system resource group
resources
[Resource ]
false
none
The resource group resources
PatternMatch
{
"request" : {
"method" : "string" ,
"url" : "string"
},
"match" : {
"name" : "string" ,
"version" : "string" ,
"context" : "string" ,
"patternUuid" : "string"
}
}
Properties
PatternMatch.Match
{
"name" : "string" ,
"version" : "string" ,
"context" : "string" ,
"patternUuid" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
name
string
true
none
The name of the entry.
version
string
false
none
none
context
string
false
none
none
patternUuid
string
false
none
none
PatternMatch.Request
{
"method" : "string" ,
"url" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
method
string
false
none
none
url
string
false
none
none
ScanConfigurationGroup
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"parentId" : 0 ,
"count" : 0
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
parentId
integer(int32)
false
none
The ID of the parent entry.
count
integer(int64)
false
read-only
The total number of entries associated with this entry and its child entries.
AgentScanConfigurationTemplate
{
"template" : "SCOUT" ,
"assetTagIds" : [
0
],
"scanRecurrence" : 24
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» assetTagIds
[integer]
false
none
none
» scanRecurrence
integer(int32)
false
none
none
BaseCloudConfigurationTemplate
{
"cloudDiscoveryType" : "AWS"
}
Properties
Name
Type
Required
Restrictions
Description
cloudDiscoveryType
string
false
none
none
Enumerated Values
Property
Value
cloudDiscoveryType
AWS
cloudDiscoveryType
AZURE
BaseScanConfigurationTemplate
The scan configuration
Properties
Name
Type
Required
Restrictions
Description
template
string
true
none
none
Enumerated Values
Property
Value
template
SCOUT
template
SCALE
template
SWAT
template
CLOUDSEC
template
NETWORK_SCAN
template
DOCKER_SCAN
template
DOCKER_DISCOVERY
template
NETWORK_DISCOVERY
template
CLOUD_DISCOVERY
template
AGENT_SCAN
template
WORKFLOW
CloudDiscoveryAwsConfigurationTemplate
{
"cloudDiscoveryType" : "AWS" ,
"regions" : "string"
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» regions
string
false
none
none
CloudDiscoveryAzureConfigurationTemplate
{
"cloudDiscoveryType" : "AWS" ,
"subscriptions" : "string"
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» subscriptions
string
false
none
none
CloudDiscoveryConfigurationTemplate
{
"template" : "SCOUT" ,
"timeout" : 600 ,
"accountId" : 0 ,
"updateAssets" : true ,
"importExternalTags" : true ,
"externalTagKeys" : [
"string"
],
"addTagIds" : [
0
],
"replaceTagIds" : [
0
],
"cloudConfiguration" : {
"cloudDiscoveryType" : "AWS"
}
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» timeout
integer(int32)
false
none
none
» accountId
integer(int32)
false
none
none
» updateAssets
boolean
false
none
none
» importExternalTags
boolean
false
none
none
» externalTagKeys
[string]
false
none
none
» addTagIds
[integer]
false
none
none
» replaceTagIds
[integer]
false
none
none
» cloudConfiguration
BaseCloudConfigurationTemplate
false
none
none
CloudsecScanConfigurationTemplate
{
"template" : "SCOUT" ,
"accountId" : 0 ,
"policyId" : 0 ,
"regions" : "string"
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» accountId
integer(int32)
false
none
none
» policyId
integer(int32)
false
none
none
» regions
string
false
none
none
DockerDiscoveryScanConfigurationTemplate
{
"template" : "SCOUT" ,
"accountId" : 0
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» accountId
integer(int32)
false
none
none
DockerScanConfigurationTemplate
Properties
None
NetworkDiscoveryConfigurationTemplate
{
"template" : "SCOUT" ,
"timeout" : 600 ,
"targetList" : "string" ,
"ignoreTargetList" : "string" ,
"protocols" : [
"TCP"
],
"tcpPorts" : "string" ,
"reportFilters" : "string" ,
"updateAssets" : true ,
"addTagIds" : [
0
],
"replaceTagIds" : [
0
]
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» timeout
integer(int32)
false
none
none
» targetList
string
false
none
none
» ignoreTargetList
string
false
none
none
» protocols
[string]
false
none
none
» tcpPorts
string
false
none
none
» reportFilters
string
false
none
none
» updateAssets
boolean
false
none
none
» addTagIds
[integer]
false
none
none
» replaceTagIds
[integer]
false
none
none
NetworkScanConfigurationTemplate
{
"template" : "SCOUT" ,
"scanPolicyId" : 0 ,
"overrideScanPolicyId" : 0 ,
"assetTagIds" : [
0
],
"timeout" : 7200 ,
"scanless" : true
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» scanPolicyId
integer(int32)
false
none
none
» overrideScanPolicyId
integer(int32)
false
none
none
» assetTagIds
[integer]
false
none
none
» timeout
integer(int32)
false
none
none
» scanless
boolean
false
none
none
ScaleScanConfigurationTemplate
{
"template" : "SCOUT" ,
"nseconds" : 600 ,
"fuzzing" : true ,
"sequential" : true ,
"seeds" : [
"string"
],
"clientCertificateAuth" : {
"client-certificate" : "string" ,
"private-key" : "string" ,
"passphrase" : "string"
},
"abortPattern" : "string" ,
"mustMatch" : [
{
"method" : "string" ,
"url" : "string" ,
"body" : "string" ,
"body-type" : "string"
}
],
"cannotMatch" : [
{
"method" : "string" ,
"url" : "string" ,
"body" : "string" ,
"body-type" : "string"
}
],
"allowedDomains" : [
{
"domain" : "string" ,
"allow-subdomains" : true
}
],
"addrBlacklist" : [
"string"
],
"setupProc" : "string" ,
"setupProcVariables" : {
"property1" : "string" ,
"property2" : "string"
},
"basicAuth" : [
{
"user" : "string" ,
"password" : "string" ,
"url-prefix" : "string"
}
],
"hostMap" : [
{
"from" : "string" ,
"to" : [
"string"
]
}
],
"userAgent" : "string" ,
"maxIvs" : 0 ,
"sideScript" : "string" ,
"infrastructureScan" : true ,
"spaCrawling" : true
}
Properties
allOf
and
ScaleScanConfigurationTemplate.AllowedDomain
{
"domain" : "string" ,
"allow-subdomains" : true
}
Properties
Name
Type
Required
Restrictions
Description
domain
string
true
none
none
allow-subdomains
boolean
false
none
none
ScaleScanConfigurationTemplate.BasicAuthCredentials
{
"user" : "string" ,
"password" : "string" ,
"url-prefix" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
user
string
true
none
none
password
string
true
none
none
url-prefix
string
false
none
none
ScaleScanConfigurationTemplate.ClientCertificate
{
"client-certificate" : "string" ,
"private-key" : "string" ,
"passphrase" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
client-certificate
string
false
none
none
private-key
string
false
none
none
passphrase
string
false
none
none
ScaleScanConfigurationTemplate.HostMap
{
"from" : "string" ,
"to" : [
"string"
]
}
Properties
Name
Type
Required
Restrictions
Description
from
string
true
none
none
to
[string]
true
none
none
ScaleScanConfigurationTemplate.RequestFilter
{
"method" : "string" ,
"url" : "string" ,
"body" : "string" ,
"body-type" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
method
string
false
none
none
url
string
false
none
none
body
string
false
none
none
body-type
string
false
none
none
ScanConfiguration
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"template" : "SCOUT" ,
"groupId" : 0 ,
"scheduleIds" : [
0
],
"assetIdentifierIds" : [
0
],
"assetIds" : [
0
],
"workflowId" : 0 ,
"enabled" : true ,
"scannerId" : 0 ,
"nextOccurrence" : "2019-08-24T14:15:22Z" ,
"lastScan" : "2019-08-24T14:15:22Z" ,
"configuration" : {
"template" : "SCOUT"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
template
string
false
read-only
The scan template
groupId
integer(int32)
false
none
The scan group id
scheduleIds
[integer]
false
read-only
The schedule ids associated with this scan configuration
assetIdentifierIds
[integer]
false
none
An array of asset identifier IDs associated with this entry
assetIds
[integer]
false
none
The asset IDs associated with this scan configuration
workflowId
integer(int32)
false
none
The workflow ID associated with this scan configuration
enabled
boolean
false
none
Determines if the entry is enabled or not.
scannerId
integer(int32)
false
none
The scanner id
nextOccurrence
string(date-time)
false
read-only
The scan next occurrence date
lastScan
string(date-time)
false
read-only
Last time a scan was performed using this configuration
configuration
BaseScanConfigurationTemplate
true
none
The scan configuration
tags
[Tag ]
false
read-only
The tags
Enumerated Values
Property
Value
template
SCOUT
template
SCALE
template
SWAT
template
CLOUDSEC
template
NETWORK_SCAN
template
DOCKER_SCAN
template
DOCKER_DISCOVERY
template
NETWORK_DISCOVERY
template
CLOUD_DISCOVERY
template
AGENT_SCAN
template
WORKFLOW
SwatScanConfigurationTemplate
{
"template" : "SCOUT" ,
"seedUrls" : [
"string"
],
"stopAfterSeconds" : 0 ,
"crawlScope" : {
"must-match" : [
{
"method" : "string" ,
"url" : "string" ,
"body" : "string" ,
"body-type" : "string"
}
],
"cannot-match" : [
{
"method" : "string" ,
"url" : "string" ,
"body" : "string" ,
"body-type" : "string"
}
],
"allowed-domains" : [
{
"domain" : "string" ,
"allow-subdomains" : true
}
],
"n-matches" : [
{
"pattern" : {
"method" : "string" ,
"url" : "string" ,
"body" : "string" ,
"body-type" : "string"
},
"limit" : 0
}
]
},
"httpScope" : {
"must-match" : [
{
"method" : "string" ,
"url" : "string" ,
"body" : "string" ,
"body-type" : "string"
}
],
"cannot-match" : [
{
"method" : "string" ,
"url" : "string" ,
"body" : "string" ,
"body-type" : "string"
}
],
"allowed-domains" : [
{
"domain" : "string" ,
"allow-subdomains" : true
}
],
"n-matches" : [
{
"pattern" : {
"method" : "string" ,
"url" : "string" ,
"body" : "string" ,
"body-type" : "string"
},
"limit" : 0
}
]
},
"nFetchers" : 0 ,
"cookiesTxt" : "string" ,
"httpBodyLimit" : 0 ,
"httpBlockedMimeBodies" : [
"string"
],
"depthLimit" : 0 ,
"abortPattern" : "string"
}
Properties
allOf
and
Name
Type
Required
Restrictions
Description
anonymous
object
false
none
none
» seedUrls
[string]
false
none
none
» stopAfterSeconds
integer(int32)
false
none
none
» crawlScope
SwatScanConfigurationTemplate.Scope
false
none
none
» httpScope
SwatScanConfigurationTemplate.Scope
false
none
none
» nFetchers
integer(int32)
false
none
none
» cookiesTxt
string
false
none
none
» httpBodyLimit
integer(int32)
false
none
none
» httpBlockedMimeBodies
[string]
false
none
none
» depthLimit
integer(int32)
false
none
none
» abortPattern
string
false
none
none
SwatScanConfigurationTemplate.AllowedDomain
{
"domain" : "string" ,
"allow-subdomains" : true
}
Properties
Name
Type
Required
Restrictions
Description
domain
string
false
none
none
allow-subdomains
boolean
false
none
none
SwatScanConfigurationTemplate.CountedRequestPattern
{
"pattern" : {
"method" : "string" ,
"url" : "string" ,
"body" : "string" ,
"body-type" : "string"
},
"limit" : 0
}
Properties
SwatScanConfigurationTemplate.RequestPattern
{
"method" : "string" ,
"url" : "string" ,
"body" : "string" ,
"body-type" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
method
string
false
none
none
url
string
false
none
none
body
string
false
none
none
body-type
string
false
none
none
SwatScanConfigurationTemplate.Scope
{
"must-match" : [
{
"method" : "string" ,
"url" : "string" ,
"body" : "string" ,
"body-type" : "string"
}
],
"cannot-match" : [
{
"method" : "string" ,
"url" : "string" ,
"body" : "string" ,
"body-type" : "string"
}
],
"allowed-domains" : [
{
"domain" : "string" ,
"allow-subdomains" : true
}
],
"n-matches" : [
{
"pattern" : {
"method" : "string" ,
"url" : "string" ,
"body" : "string" ,
"body-type" : "string"
},
"limit" : 0
}
]
}
Properties
TestSetupScript
{
"script" : "string" ,
"blacklist" : [
"string"
],
"hostmap" : [
{
"from" : "string" ,
"to" : [
"string"
]
}
]
}
Properties
ScanPolicySettings
{
"safeOnly" : true ,
"tryDefaultCredentials" : true ,
"ignoreFallbackKernels" : true ,
"useDiscoveredCredentials" : true ,
"virtualHostsIp" : true ,
"virtualHostsHostName" : true ,
"virtualHostsReverseDns" : true ,
"speed" : "string" ,
"portsTcp" : "string" ,
"portsUdp" : "string" ,
"netstatCheck" : "string" ,
"regularPortScanFallback" : true ,
"authenticatedScanSshPort" : 65535 ,
"trustedCasPem" : "string" ,
"useCustomCredentials" : true ,
"enableRemoteRegistry" : true
}
Properties
Name
Type
Required
Restrictions
Description
safeOnly
boolean
false
none
none
tryDefaultCredentials
boolean
false
none
none
ignoreFallbackKernels
boolean
false
none
none
useDiscoveredCredentials
boolean
false
none
none
virtualHostsIp
boolean
false
none
none
virtualHostsHostName
boolean
false
none
none
virtualHostsReverseDns
boolean
false
none
none
speed
string
false
none
none
portsTcp
string
false
none
none
portsUdp
string
false
none
none
netstatCheck
string
false
none
none
regularPortScanFallback
boolean
false
none
none
authenticatedScanSshPort
integer(int32)
false
none
none
trustedCasPem
string
false
none
none
useCustomCredentials
boolean
false
none
none
enableRemoteRegistry
boolean
false
none
none
ScanPolicy
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"system" : true ,
"accountIds" : [
0
],
"settings" : {
"safeOnly" : true ,
"tryDefaultCredentials" : true ,
"ignoreFallbackKernels" : true ,
"useDiscoveredCredentials" : true ,
"virtualHostsIp" : true ,
"virtualHostsHostName" : true ,
"virtualHostsReverseDns" : true ,
"speed" : "string" ,
"portsTcp" : "string" ,
"portsUdp" : "string" ,
"netstatCheck" : "string" ,
"regularPortScanFallback" : true ,
"authenticatedScanSshPort" : 65535 ,
"trustedCasPem" : "string" ,
"useCustomCredentials" : true ,
"enableRemoteRegistry" : true
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
system
boolean
false
read-only
none
accountIds
[integer]
false
none
none
settings
ScanPolicySettings
false
none
none
tags
[Tag ]
false
read-only
[The tags]
Scanner
{
"id" : 0 ,
"userId" : 0 ,
"name" : "string" ,
"ipaddress" : "string" ,
"mode" : 0 ,
"approved" : true ,
"inactive" : true ,
"useProxy" : true ,
"polling" : true ,
"serverStatus" : "string" ,
"lastConnection" : "2019-08-24T14:15:22Z" ,
"lastUpdate" : "2019-08-24T14:15:22Z" ,
"version" : "string" ,
"uiVersion" : "string" ,
"scannerVersion" : "string" ,
"appsecScaleScanner" : true ,
"groupId" : 0 ,
"groupName" : "string" ,
"isOutpost" : true ,
"isAwsScanner" : true ,
"scanningDisabled" : true ,
"isGroup" : true ,
"performUpdate" : true ,
"hwAddr" : "string" ,
"hmacKey" : "string" ,
"rulesVersion" : "2019-08-24T14:15:22Z"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int64)
false
read-only
The ID of the entry.
userId
integer(int64)
false
read-only
none
name
string
true
none
The name of the entry.
ipaddress
string
true
none
none
mode
integer(int32)
false
none
none
approved
boolean
false
none
none
inactive
boolean
false
none
none
useProxy
boolean
false
none
none
polling
boolean
false
read-only
none
serverStatus
string
false
read-only
none
lastConnection
string(date-time)
false
read-only
none
lastUpdate
string(date-time)
false
read-only
none
version
string
false
read-only
none
uiVersion
string
false
read-only
none
scannerVersion
string
false
read-only
none
appsecScaleScanner
boolean
false
read-only
none
groupId
integer(int64)
false
none
none
groupName
string
false
none
none
isOutpost
boolean
false
read-only
none
isAwsScanner
boolean
false
read-only
none
scanningDisabled
boolean
false
read-only
none
isGroup
boolean
false
none
none
performUpdate
boolean
false
read-only
none
hwAddr
string
false
read-only
none
hmacKey
string
false
read-only
none
rulesVersion
string(date-time)
false
read-only
none
ScanLog
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"jobId" : "string" ,
"status" : "QUEUED" ,
"statusDetails" : "string" ,
"source" : "SCOUT" ,
"scanConfigurationId" : 0 ,
"scanConfigurationName" : "string" ,
"workflowId" : 0 ,
"workflowName" : "string" ,
"started" : "2019-08-24T14:15:22Z" ,
"ended" : "2019-08-24T14:15:22Z" ,
"expectedStart" : "2019-08-24T14:15:22Z" ,
"expectedEnd" : "2019-08-24T14:15:22Z" ,
"blueprintAvailable" : true ,
"assetIdentifierId" : 0 ,
"assetIdentifierType" : "IP" ,
"assetIdentifierName" : "string" ,
"assetId" : 0 ,
"assetName" : "string" ,
"latestRuleDate" : "2019-08-24T14:15:22Z" ,
"scanless" : true ,
"parentId" : 0 ,
"scheduleId" : 0 ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
jobId
string
false
none
The id of the scan job
status
string
true
none
The scan status
statusDetails
string
false
none
The scan status details
source
string
true
none
The scan source
scanConfigurationId
integer(int32)
false
none
The id of the scan configuration
scanConfigurationName
string
false
read-only
The name of the scan configuration
workflowId
integer(int32)
false
none
The id of the workflow
workflowName
string
false
read-only
The name of the workflow
started
string(date-time)
false
none
The scan started date
ended
string(date-time)
false
none
The scan ended date
expectedStart
string(date-time)
false
read-only
The scan expected start date
expectedEnd
string(date-time)
false
read-only
The scan expected end date
blueprintAvailable
boolean
false
read-only
Set to true when scan blueprint is available
assetIdentifierId
integer(int32)
false
none
The ID of the asset identifier associated with this entry
assetIdentifierType
string
false
read-only
The type of asset on which the scan is performed
assetIdentifierName
string
false
read-only
The name of asset on which the scan is performed
assetId
integer(int32)
false
none
The id of asset on which the scan is performed
assetName
string
false
read-only
The name of asset on which the scan is performed
latestRuleDate
string(date-time)
false
none
The latest rule date taken into account to perform the scan
scanless
boolean
false
none
Set to true when scan is scanless (eg only detection performed)
parentId
integer(int32)
false
none
The ID of the parent entry.
scheduleId
integer(int32)
false
none
The schedule id when scan triggered by a schedule.
tags
[Tag ]
false
read-only
The tags
Enumerated Values
Property
Value
status
QUEUED
status
PENDING
status
STARTING
status
RUNNING
status
STOPPING
status
STOPPED
status
REPORTING
status
FINISHED
status
ISSUES
status
FAILED
source
SCOUT
source
SCALE
source
SWAT
source
CLOUDSEC
source
NETWORK_SCAN
source
DOCKER_SCAN
source
DOCKER_DISCOVERY
source
NETWORK_DISCOVERY
source
CLOUD_DISCOVERY
source
AGENT_SCAN
source
WORKFLOW
assetIdentifierType
IP
assetIdentifierType
HOSTNAME
assetIdentifierType
AWS_ACCOUNT_ID
assetIdentifierType
AWS_INSTANCE_ID
assetIdentifierType
AWS_REGION
assetIdentifierType
MAC
assetIdentifierType
NETBIOS
assetIdentifierType
GCP_PROJECT_ID
assetIdentifierType
MAZ_TENANT_ID
assetIdentifierType
MAZ_SUBSCRIPTION
assetIdentifierType
MAZ_RESOURCE_GROUP
assetIdentifierType
MAZ_RESOURCE
assetIdentifierType
DOCKER_REGISTRY
assetIdentifierType
DOCKER_IMAGE
assetIdentifierType
SEED_PATH
assetIdentifierType
AGENT
assetIdentifierType
SERIAL_MACHINE_ID
assetIdentifierType
SERIAL_PRODUCT_ID
assetIdentifierType
SERIAL_DISK_ID
{
"schema" : "string" ,
"attacker" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
schema
string
false
read-only
none
attacker
string
false
read-only
none
ScheduledReport
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"enabled" : true ,
"lastSent" : "2019-08-24T14:15:22Z" ,
"scheduleIds" : [
0
],
"nextOccurrence" : "2019-08-24T14:15:22Z" ,
"workflowId" : 0 ,
"deliveryMethod" : {
"email" : {
"userIds" : [
0
],
"recipients" : {
"addresses" : [
"string"
],
"pgpKey" : "string"
}
},
"managedReport" : {
"name" : "string" ,
"tags" : "string"
}
},
"scope" : {
"assetIds" : [
0
],
"assetGroupIds" : [
0
],
"tagIds" : [
0
]
},
"report" : {
"formats" : [
"PDF"
],
"type" : "Technical" ,
"viewTemplateId" : 0 ,
"viewTemplateName" : "string" ,
"level" : "Detailed" ,
"product" : "Normal" ,
"password" : "string" ,
"executiveSummary" : true ,
"zip" : true ,
"timeFrame" : "LAST_DAY" ,
"startDate" : "2019-08-24T14:15:22Z" ,
"endDate" : "2019-08-24T14:15:22Z"
},
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
enabled
boolean
false
none
Determines if the entry is enabled or not.
lastSent
string(date-time)
false
read-only
none
scheduleIds
[integer]
false
read-only
none
nextOccurrence
string(date-time)
false
read-only
none
workflowId
integer(int32)
false
none
The workflow ID associated with this report
deliveryMethod
DeliveryMethod
true
none
none
scope
ScheduledReport.Scope
true
none
none
report
ScheduledReport.Report
true
none
none
tags
[Tag ]
false
read-only
[The tags]
ScheduledReport.Report
{
"formats" : [
"PDF"
],
"type" : "Technical" ,
"viewTemplateId" : 0 ,
"viewTemplateName" : "string" ,
"level" : "Detailed" ,
"product" : "Normal" ,
"password" : "string" ,
"executiveSummary" : true ,
"zip" : true ,
"timeFrame" : "LAST_DAY" ,
"startDate" : "2019-08-24T14:15:22Z" ,
"endDate" : "2019-08-24T14:15:22Z"
}
Properties
Name
Type
Required
Restrictions
Description
formats
[string]
true
none
none
type
string
true
none
none
viewTemplateId
integer(int32)
false
none
none
viewTemplateName
string
false
none
none
level
string
false
none
none
product
string
false
none
none
password
string
false
none
none
executiveSummary
boolean
false
none
none
zip
boolean
false
none
none
timeFrame
string
false
none
none
startDate
string(date-time)
false
none
none
endDate
string(date-time)
false
none
none
Enumerated Values
Property
Value
type
Technical
type
Trend
type
GroupVulnerability
type
Delta
type
Pci
type
WasDiscovery
type
Discovery
type
SolutionTaskReport
type
SolutionTargetReport
type
GroupTrending
type
GroupDelta
type
Compliance
type
Consumption
level
Detailed
level
Management
level
Summary
product
Normal
product
Pci
product
Was
product
SWAT
product
Compliance
product
Appsec Scale
product
APPSEC
product
CLOUDSEC
timeFrame
LAST_DAY
timeFrame
LAST_WEEK
timeFrame
LAST_MONTH
timeFrame
LAST_QUARTER
timeFrame
LAST_YEAR
timeFrame
CUSTOM
timeFrame
ALL_TIME
ScheduledReport.Scope
{
"assetIds" : [
0
],
"assetGroupIds" : [
0
],
"tagIds" : [
0
]
}
Properties
Name
Type
Required
Restrictions
Description
assetIds
[integer]
false
none
none
assetGroupIds
[integer]
false
none
none
tagIds
[integer]
false
none
none
Schedule
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"enabled" : true ,
"frequency" : "NONE" ,
"interval" : 0 ,
"weekdays" : [
"MONDAY"
],
"days" : [
0
],
"nthDays" : [
0
],
"weeks" : [
0
],
"months" : [
"JANUARY"
],
"remainingOccurrences" : 0 ,
"scanConfigurationIds" : [
0
],
"workflowIds" : [
0
],
"scheduledReportIds" : [
0
],
"timezone" : "string" ,
"scanWindowDuration" : 12 ,
"startsFrom" : "2019-08-24T14:15:22Z" ,
"until" : "2019-08-24T14:15:22Z" ,
"nextOccurrence" : "2019-08-24T14:15:22Z" ,
"blockedTimeSlots" : {
"monday" : [
0
],
"tuesday" : [
0
],
"wednesday" : [
0
],
"thursday" : [
0
],
"friday" : [
0
],
"saturday" : [
0
],
"sunday" : [
0
]
}
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
enabled
boolean
false
none
Determines if the entry is enabled or not.
frequency
string
true
none
The schedule frequency
interval
integer(int32)
true
none
The schedule interval
weekdays
[string]
false
none
The schedule weekdays set what weekdays have been selected for recurrence
days
[integer]
false
none
The schedule days set what days have been selected for recurrence
nthDays
[integer]
false
none
The schedule nthDays set what ordinal days have been selected for recurrence
weeks
[integer]
false
none
The schedule weeks set what weeks have been selected for recurrence
months
[string]
false
none
The schedule months set what months have been selected for recurrence
remainingOccurrences
integer(int32)
false
none
The schedule remaining occurrences
scanConfigurationIds
[integer]
false
read-only
The scan configuration IDs associated with this schedule
workflowIds
[integer]
false
read-only
The workflow IDs associated with this schedule
scheduledReportIds
[integer]
false
read-only
The report IDs associated with this schedule
timezone
string
false
none
The schedule time zone
scanWindowDuration
integer(int32)
false
none
The schedule scan window duration.
startsFrom
string(date-time)
true
none
The schedule starts from date
until
string(date-time)
false
none
The schedule until date
nextOccurrence
string(date-time)
false
read-only
The schedule next occurrence date
blockedTimeSlots
Schedule.BlockedTimeSlots
false
none
The schedule blocked time slots
Enumerated Values
Property
Value
frequency
NONE
frequency
ONCE
frequency
HOURLY
frequency
DAILY
frequency
WEEKLY
frequency
MONTHLY
frequency
YEARLY
Schedule.BlockedTimeSlots
{
"monday" : [
0
],
"tuesday" : [
0
],
"wednesday" : [
0
],
"thursday" : [
0
],
"friday" : [
0
],
"saturday" : [
0
],
"sunday" : [
0
]
}
The schedule blocked time slots
Properties
Name
Type
Required
Restrictions
Description
monday
[integer]
false
none
none
tuesday
[integer]
false
none
none
wednesday
[integer]
false
none
none
thursday
[integer]
false
none
none
friday
[integer]
false
none
none
saturday
[integer]
false
none
none
sunday
[integer]
false
none
none
{
"targetSolution" : "Appsec SWAT" ,
"targetStartDate" : "2019-08-24T14:15:22Z" ,
"assetIdentifierIds" : [
0
],
"adminUrls" : [
"string"
],
"outOfScopeUrls" : [
"string"
],
"knownSensitiveFunctionality" : "string" ,
"rolesAndCredentials" : "string" ,
"componentsAndTechnologies" : "string" ,
"focusAreas" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
targetSolution
string
true
none
none
targetStartDate
string(date-time)
true
none
none
assetIdentifierIds
[integer]
true
none
An array of asset identifier IDs associated with this entry
adminUrls
[string]
false
none
none
outOfScopeUrls
[string]
false
none
none
knownSensitiveFunctionality
string
false
none
none
rolesAndCredentials
string
false
none
none
componentsAndTechnologies
string
false
none
none
focusAreas
string
false
none
none
Enumerated Values
Property
Value
targetSolution
Appsec SWAT
targetSolution
Appsec Snapshot
targetSolution
Appsec Assure
ChangePasswordRequest
{
"password" : "string" ,
"oldPassword" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
password
string
true
none
none
oldPassword
string
true
none
none
SubUser
{
"timezone" : "string" ,
"portalPreferences" : "string" ,
"customerId" : 0 ,
"id" : 0 ,
"subUser" : true ,
"username" : "string" ,
"firstName" : "string" ,
"lastName" : "string" ,
"email" : "string" ,
"emailEncryptionKey" : "string" ,
"countryCode" : "string" ,
"stateCode" : "string" ,
"parentId" : 0 ,
"mobilePhone" : "string" ,
"lastLogonIp" : "string" ,
"lastLogonDate" : "2019-08-24T14:15:22Z" ,
"logons" : 0 ,
"language" : "string" ,
"twoFactorCode" : "string" ,
"subParentId" : 0 ,
"superUser" : true ,
"snapshotSubscriptions" : 0 ,
"snapshotSubscriptionsRemaining" : 0 ,
"swatSubscriptions" : 0 ,
"swatSubscriptionsRemaining" : 0 ,
"userRoleIds" : [
0
],
"resourceGroupIds" : [
0
],
"userRolePermissions" : [
"ASSETS_VIEW"
],
"allowedCustomerTagIds" : [
0
],
"roles" : "string" ,
"pgpPublicKey" : "string" ,
"twoFactorType" : "ANY" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"allowedCustomerTags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"twoFactorSecret" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
timezone
string
false
none
The user time zone
portalPreferences
string
false
none
The user portal preferences
customerId
integer(int32)
false
read-only
The ID of the customer owning the entry.
id
integer(int64)
false
read-only
The ID of the entry.
subUser
boolean
false
read-only
none
username
string
true
none
none
firstName
string
true
none
none
lastName
string
true
none
none
email
string
true
none
none
emailEncryptionKey
string
false
none
none
countryCode
string
false
none
none
stateCode
string
false
none
none
parentId
integer(int64)
false
read-only
The ID of the parent entry.
mobilePhone
string
false
none
none
lastLogonIp
string
false
read-only
none
lastLogonDate
string(date-time)
false
read-only
none
logons
integer(int64)
false
read-only
none
language
string
false
none
none
twoFactorCode
string
false
none
none
subParentId
integer(int64)
false
none
none
superUser
boolean
false
none
none
snapshotSubscriptions
integer(int64)
false
read-only
none
snapshotSubscriptionsRemaining
integer(int64)
false
read-only
none
swatSubscriptions
integer(int64)
false
read-only
none
swatSubscriptionsRemaining
integer(int64)
false
read-only
none
userRoleIds
[integer]
false
none
none
resourceGroupIds
[integer]
false
none
none
userRolePermissions
[string]
false
read-only
none
allowedCustomerTagIds
[integer]
false
none
none
roles
string
false
read-only
The user's roles
pgpPublicKey
string
false
none
This user's PGP public key
twoFactorType
string
false
none
The sub-user's two-factor authentication type
tags
[Tag ]
false
read-only
[The tags]
allowedCustomerTags
[Tag ]
false
read-only
The allowed customer tags
twoFactorSecret
string
false
none
The sub-user's two-factor secret
Enumerated Values
Property
Value
twoFactorType
ANY
twoFactorType
NONE
twoFactorType
SMS
twoFactorType
TOTP
SubscriptionAudit
{
"id" : 0 ,
"action" : "string" ,
"time" : "2019-08-24T14:15:22Z" ,
"ip" : "string" ,
"comment" : "string" ,
"username" : "string" ,
"customerName" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int64)
false
read-only
The ID of the entry.
action
string
false
read-only
none
time
string(date-time)
false
read-only
none
ip
string
false
read-only
none
comment
string
false
read-only
none
username
string
false
read-only
none
customerName
string
false
read-only
none
SubscriptionTemplate
{
"uuid" : "string" ,
"name" : "string" ,
"organization" : {
"uuid" : "string"
},
"variables" : "string" ,
"template" : "string" ,
"created" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updated" : "2019-08-24T14:15:22Z" ,
"updatedBy" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
uuid
string
false
none
The UUID of the entry.
name
string
true
none
The name of the entry.
organization
SubscriptionTemplate.Organization
true
none
none
variables
string
false
none
none
template
string
true
none
none
created
string(date-time)
false
none
The timestamp when the entry was created.
createdBy
string
false
none
The name of the user who created the entry.
updated
string(date-time)
false
none
The timestamp when the entry was updated.
updatedBy
string
false
none
The name of the user who updated the entry.
SubscriptionTemplate.Organization
Properties
Name
Type
Required
Restrictions
Description
uuid
string
true
none
The UUID of the entry.
SubscriptionTemplateVariable
{
"key" : "string" ,
"description" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
key
string
false
none
The subscription template variable name
description
string
false
none
Description of the entry.
SubscriptionTemplatePreviewRequest
{
"variables" : "string" ,
"template" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
variables
string
false
none
none
template
string
true
none
none
SubscriptionReport
{
"customerIds" : [
0
],
"startDate" : "2019-08-24T14:15:22Z" ,
"endDate" : "2019-08-24T14:15:22Z"
}
Properties
Name
Type
Required
Restrictions
Description
customerIds
[integer]
true
none
none
startDate
string(date-time)
true
none
none
endDate
string(date-time)
true
none
none
Summary
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"content" : "string" ,
"assetGroupId" : 0 ,
"swatScheduleId" : 0 ,
"reviewed" : "2019-08-24T14:15:22Z" ,
"reviewedBy" : "string" ,
"reviewedById" : 0 ,
"qualityAssured" : "2019-08-24T14:15:22Z" ,
"qualityAssuredBy" : "string" ,
"qualityAssuredById" : 0 ,
"published" : "2019-08-24T14:15:22Z" ,
"publishedBy" : "string" ,
"publishedById" : 0 ,
"rejected" : "2019-08-24T14:15:22Z" ,
"rejectedBy" : "string" ,
"rejectedById" : 0 ,
"status" : "PENDING_REVIEW"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
content
string
false
none
none
assetGroupId
integer(int32)
true
none
none
swatScheduleId
integer(int64)
false
none
none
reviewed
string(date-time)
false
none
none
reviewedBy
string
false
none
none
reviewedById
integer(int32)
false
none
none
qualityAssured
string(date-time)
false
none
none
qualityAssuredBy
string
false
none
none
qualityAssuredById
integer(int32)
false
none
none
published
string(date-time)
false
none
none
publishedBy
string
false
none
none
publishedById
integer(int32)
false
none
none
rejected
string(date-time)
false
none
none
rejectedBy
string
false
none
none
rejectedById
integer(int32)
false
none
none
status
string
false
none
none
Enumerated Values
Property
Value
status
PENDING_REVIEW
status
PENDING_QA
status
PENDING_PUBLICATION
status
PUBLISHED
status
REJECTED
SummaryTransitionRequest
{
"transitionTo" : "PENDING_REVIEW" ,
"transitionBy" : "string" ,
"transitionById" : 0
}
Properties
Name
Type
Required
Restrictions
Description
transitionTo
string
true
none
none
transitionBy
string
false
none
none
transitionById
integer(int32)
false
none
none
Enumerated Values
Property
Value
transitionTo
PENDING_REVIEW
transitionTo
PENDING_QA
transitionTo
PENDING_PUBLICATION
transitionTo
PUBLISHED
transitionTo
REJECTED
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"statistics" : {
"accounts" : 0 ,
"assetGroups" : 0 ,
"assets" : 0 ,
"assetIdentifiers" : 0 ,
"eventSubscriptions" : 0 ,
"managedReports" : 0 ,
"scheduledReports" : 0 ,
"complianceFindings" : 0 ,
"findings" : 0 ,
"scanConfigurations" : 0 ,
"workflows" : 0 ,
"dashboards" : 0 ,
"integrations" : 0 ,
"scanPolicies" : 0 ,
"viewTemplates" : 0 ,
"users" : 0 ,
"scanConfigurationSettings" : 0 ,
"scheduledReportSettings" : 0 ,
"resourceGroupSettings" : 0
}
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
key
string
false
read-only
none
value
string
false
read-only
none
statistics
TagStatistic.Statistics
false
none
none
{
"accounts" : 0 ,
"assetGroups" : 0 ,
"assets" : 0 ,
"assetIdentifiers" : 0 ,
"eventSubscriptions" : 0 ,
"managedReports" : 0 ,
"scheduledReports" : 0 ,
"complianceFindings" : 0 ,
"findings" : 0 ,
"scanConfigurations" : 0 ,
"workflows" : 0 ,
"dashboards" : 0 ,
"integrations" : 0 ,
"scanPolicies" : 0 ,
"viewTemplates" : 0 ,
"users" : 0 ,
"scanConfigurationSettings" : 0 ,
"scheduledReportSettings" : 0 ,
"resourceGroupSettings" : 0
}
Properties
Name
Type
Required
Restrictions
Description
accounts
integer(int32)
false
none
none
assetGroups
integer(int32)
false
none
none
assets
integer(int32)
false
none
none
assetIdentifiers
integer(int32)
false
none
none
eventSubscriptions
integer(int32)
false
none
none
managedReports
integer(int32)
false
none
none
scheduledReports
integer(int32)
false
none
none
complianceFindings
integer(int32)
false
none
none
findings
integer(int32)
false
none
none
scanConfigurations
integer(int32)
false
none
none
workflows
integer(int32)
false
none
none
dashboards
integer(int32)
false
none
none
integrations
integer(int32)
false
none
none
scanPolicies
integer(int32)
false
none
none
viewTemplates
integer(int32)
false
none
none
users
integer(int32)
false
none
none
scanConfigurationSettings
integer(int32)
false
none
none
scheduledReportSettings
integer(int32)
false
none
none
resourceGroupSettings
integer(int32)
false
none
none
{
"objects" : {
"accounts" : true ,
"assetGroups" : true ,
"assets" : true ,
"assetIdentifiers" : true ,
"eventSubscriptions" : true ,
"managedReports" : true ,
"scheduledReports" : true ,
"complianceFindings" : true ,
"findings" : true ,
"scanConfigurations" : true ,
"dashboards" : true ,
"integrations" : true ,
"scanPolicies" : true ,
"viewTemplates" : true ,
"users" : true ,
"scanConfigurationSettings" : true ,
"scheduledReportSettings" : true ,
"resourceGroupSettings" : true ,
"workflows" : true
},
"from" : {
"key" : "string" ,
"allKeys" : true ,
"value" : "string" ,
"allValues" : true
},
"to" : {
"key" : "string" ,
"allKeys" : true ,
"value" : "string" ,
"allValues" : true
}
}
Properties
{
"accounts" : true ,
"assetGroups" : true ,
"assets" : true ,
"assetIdentifiers" : true ,
"eventSubscriptions" : true ,
"managedReports" : true ,
"scheduledReports" : true ,
"complianceFindings" : true ,
"findings" : true ,
"scanConfigurations" : true ,
"dashboards" : true ,
"integrations" : true ,
"scanPolicies" : true ,
"viewTemplates" : true ,
"users" : true ,
"scanConfigurationSettings" : true ,
"scheduledReportSettings" : true ,
"resourceGroupSettings" : true ,
"workflows" : true
}
Properties
Name
Type
Required
Restrictions
Description
accounts
boolean
false
none
none
assetGroups
boolean
false
none
none
assets
boolean
false
none
none
assetIdentifiers
boolean
false
none
none
eventSubscriptions
boolean
false
none
none
managedReports
boolean
false
none
none
scheduledReports
boolean
false
none
none
complianceFindings
boolean
false
none
none
findings
boolean
false
none
none
scanConfigurations
boolean
false
none
none
dashboards
boolean
false
none
none
integrations
boolean
false
none
none
scanPolicies
boolean
false
none
none
viewTemplates
boolean
false
none
none
users
boolean
false
none
none
scanConfigurationSettings
boolean
false
none
none
scheduledReportSettings
boolean
false
none
none
resourceGroupSettings
boolean
false
none
none
workflows
boolean
false
none
none
{
"key" : "string" ,
"allKeys" : true ,
"value" : "string" ,
"allValues" : true
}
Properties
Name
Type
Required
Restrictions
Description
key
string
false
none
none
allKeys
boolean
false
none
none
value
string
false
none
none
allValues
boolean
false
none
none
Terms
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"mainUserMustAccept" : true ,
"allUsersMustAccept" : true ,
"termsTemplateId" : 0 ,
"termsTemplateName" : "string" ,
"termsTemplateContent" : "string" ,
"customerName" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
mainUserMustAccept
boolean
true
none
none
allUsersMustAccept
boolean
true
none
none
termsTemplateId
integer(int32)
true
none
none
termsTemplateName
string
false
read-only
none
termsTemplateContent
string
false
read-only
none
customerName
string
false
read-only
none
TermsAcceptance
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"termsId" : 0
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
termsId
integer(int32)
true
none
none
TermsTemplate
{
"name" : "string" ,
"content" : "string" ,
"id" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0
}
Properties
Name
Type
Required
Restrictions
Description
name
string
true
none
The name of the entry.
content
string
true
none
none
id
integer(int32)
false
read-only
The ID of the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
UserRolePermission
{
"id" : 0 ,
"name" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
name
string
false
read-only
The name of the entry.
UserRole
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"system" : true ,
"permissionIds" : [
0
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
system
boolean
false
read-only
Set to true when system role
permissionIds
[integer]
false
none
The user role permission ids
User
{
"timezone" : "string" ,
"portalPreferences" : "string" ,
"customerId" : 0 ,
"id" : 0 ,
"company" : "string" ,
"firstName" : "string" ,
"lastName" : "string" ,
"email" : "string" ,
"username" : "string" ,
"emailEncryptionKey" : "string" ,
"sshPublicKey" : "string" ,
"mobilePhone" : "string" ,
"countryCode" : "string" ,
"stateCode" : "string" ,
"lastLogonIp" : "string" ,
"lastLogonDate" : "2019-08-24T14:15:22Z" ,
"logons" : 0 ,
"language" : "string" ,
"remoteSupport" : true ,
"twoFactorCode" : "string" ,
"roles" : "string" ,
"snapshotSubscriptions" : 0 ,
"snapshotSubscriptionsRemaining" : 0 ,
"swatSubscriptions" : 0 ,
"swatSubscriptionsRemaining" : 0 ,
"customerSuccessManagerEmail" : "string" ,
"accountManagerEmail" : "string" ,
"pgpPublicKey" : "string" ,
"twoFactorType" : "ANY" ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"twoFactorSecret" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
timezone
string
false
none
The user time zone
portalPreferences
string
false
none
The user portal preferences
customerId
integer(int32)
false
read-only
The ID of the customer owning the entry.
id
integer(int64)
false
read-only
The ID of the entry.
company
string
false
read-only
The user company name
firstName
string
true
none
The user first name
lastName
string
true
none
The user last name
email
string
true
none
The user email address
username
string
true
none
The user name
emailEncryptionKey
string
false
none
The user public key for email encryption
sshPublicKey
string
false
none
The user ssh public key
mobilePhone
string
false
none
The user mobile phone number
countryCode
string
false
none
The user country code
stateCode
string
false
none
The user state code
lastLogonIp
string
false
read-only
The user last logon ip address
lastLogonDate
string(date-time)
false
read-only
The user last logon date
logons
integer(int64)
false
read-only
The user logon numbers
language
string
false
none
The user language
remoteSupport
boolean
false
read-only
The user remote support status
twoFactorCode
string
false
none
none
roles
string
false
read-only
The user's roles
snapshotSubscriptions
integer(int64)
false
none
The snapshot subscriptions
snapshotSubscriptionsRemaining
integer(int64)
false
none
The remaining snapshot subscriptions
swatSubscriptions
integer(int64)
false
none
The SWAT subscriptions
swatSubscriptionsRemaining
integer(int64)
false
none
The remaining SWAT subscriptions
customerSuccessManagerEmail
string
false
none
The email to the customer success manager responsible for this customer
accountManagerEmail
string
false
none
The email to the account manager responsible for this customer
pgpPublicKey
string
false
none
This user's PGP public key
twoFactorType
string
false
none
The user's two-factor authentication type
tags
[Tag ]
false
read-only
The tags
twoFactorSecret
string
false
none
The user's two-factor secret
Enumerated Values
Property
Value
twoFactorType
ANY
twoFactorType
NONE
twoFactorType
SMS
twoFactorType
TOTP
ViewTemplateGroup
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"parentId" : 0 ,
"type" : "ASSET_GROUPS"
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
parentId
integer(int32)
false
none
The ID of the parent entry.
type
string
true
none
none
Enumerated Values
Property
Value
type
ASSET_GROUPS
type
ASSETS
type
SCAN_CONFIGURATIONS
type
SCHEDULES
type
SCANS
type
FINDINGS
type
REPORTS
type
USERS
type
ACCOUNTS
type
AUDITS
type
SCHEDULED_REPORTS
type
MANAGED_REPORTS
type
INTEGRATIONS
type
COMPLIANCE
type
TAGS
type
VIEW_TEMPLATES
type
SCAN_POLICIES
type
AGENTS
type
CONSUMPTION
type
WORKFLOWS
type
CHECKS
type
FINDING_TEMPLATES
type
MATCHES
ViewTemplate
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"type" : "ASSET_GROUPS" ,
"sorting" : "string" ,
"fields" : "string" ,
"columnsWidth" : "string" ,
"system" : true ,
"isDefault" : true ,
"groupId" : 0 ,
"filters" : [
{
"field" : "string" ,
"comparison" : "string" ,
"value" : "string"
}
],
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
type
string
true
none
none
sorting
string
false
none
none
fields
string
false
none
none
columnsWidth
string
false
none
none
system
boolean
false
read-only
none
isDefault
boolean
false
none
none
groupId
integer(int32)
false
none
The view template group id
filters
[ViewTemplate.Filter ]
false
none
none
tags
[Tag ]
false
none
[The tags]
Enumerated Values
Property
Value
type
ASSET_GROUPS
type
ASSETS
type
SCAN_CONFIGURATIONS
type
SCHEDULES
type
SCANS
type
FINDINGS
type
REPORTS
type
USERS
type
ACCOUNTS
type
AUDITS
type
SCHEDULED_REPORTS
type
MANAGED_REPORTS
type
INTEGRATIONS
type
COMPLIANCE
type
TAGS
type
VIEW_TEMPLATES
type
SCAN_POLICIES
type
AGENTS
type
CONSUMPTION
type
WORKFLOWS
type
CHECKS
type
FINDING_TEMPLATES
type
MATCHES
ViewTemplate.Filter
{
"field" : "string" ,
"comparison" : "string" ,
"value" : "string"
}
Properties
Name
Type
Required
Restrictions
Description
field
string
true
none
none
comparison
string
true
none
none
value
string
true
none
none
Workflow
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"name" : "string" ,
"enabled" : true ,
"nextOccurrence" : "2019-08-24T14:15:22Z" ,
"lastScan" : "2019-08-24T14:15:22Z" ,
"scheduleIds" : [
0
],
"scannerId" : 0 ,
"tags" : [
{
"id" : 0 ,
"customerId" : 0 ,
"created" : "2019-08-24T14:15:22Z" ,
"updated" : "2019-08-24T14:15:22Z" ,
"createdBy" : "string" ,
"updatedBy" : "string" ,
"createdById" : 0 ,
"updatedById" : 0 ,
"key" : "string" ,
"value" : "string" ,
"inherited" : true ,
"count" : 0
}
],
"configurations" : [
{
"id" : 0 ,
"type" : "SCAN_CONFIGURATION"
}
]
}
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
false
read-only
The ID of the entry.
customerId
integer(int32)
false
none
The ID of the customer owning the entry.
created
string(date-time)
false
read-only
The timestamp when the entry was created.
updated
string(date-time)
false
read-only
The timestamp when the entry was updated.
createdBy
string
false
read-only
The name of the user who created the entry.
updatedBy
string
false
read-only
The name of the user who updated the entry.
createdById
integer(int32)
false
read-only
The ID of the user who created the entry.
updatedById
integer(int32)
false
read-only
The ID of the user who updated the entry.
name
string
true
none
The name of the entry.
enabled
boolean
false
none
Determines if the entry is enabled or not.
nextOccurrence
string(date-time)
false
read-only
The scan next occurrence date
lastScan
string(date-time)
false
read-only
Last time a scan was performed using this workflow
scheduleIds
[integer]
false
read-only
The schedule ids associated with this workflow
scannerId
integer(int32)
false
none
The scanner id
tags
[Tag ]
false
read-only
The tags
configurations
[Workflow.Configuration ]
true
none
The workflow configurations
Workflow.Configuration
{
"id" : 0 ,
"type" : "SCAN_CONFIGURATION"
}
The workflow configurations
Properties
Name
Type
Required
Restrictions
Description
id
integer(int32)
true
none
The ID of the entry.
type
string
true
none
none
Enumerated Values
Property
Value
type
SCAN_CONFIGURATION
type
SCHEDULED_REPORT