This section of the user guide describes how you can programmatically interact with the MetaDefender Software Supply Chain REST API. Below are some common tasks that can be done using the available REST APIs:
- Authenticate to obtain a JSON Web Token(JWT)
- Start or stop a process(scan)
- Add / remove service units
About this REST API
The exposed endpoint is located by default at http(s)://mdssc-server/api/ (for example, the authentication endpoint is available at http(s)://mdssc-server/api/user/authenticate). All requests are handled by the NGINX web server before being proxied to the backend API Gateway service.
All endpoints perform authentication and authorization checks. For these checks to succeed, a valid token should be presented in the Authorization header in the form of Bearer
Please note that all issued tokens have a timestamp and signature associated in order to prevent long-term usage without re - authentication. The lifespan of the token is currently set to 60 minutes, meaning you will have to request a new token before it expires in order to avoid error responses.
Useful links
Audit
Audit Management
List audit events
| Start | string | pattern: | |
| Count | string | pattern: | |
| LogType | string | Enum: | |
| CategoryType | string | Enum: | |
| LogLevel | string | Enum: | |
| SearchText | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/audit' \ --header 'Authorization: Bearer {token}' \ --data Start={Start} \ --data Count={Count} \ --data LogType={LogType} \ --data CategoryType={CategoryType} \ --data LogLevel={LogLevel} \ --data SearchText={SearchText}Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string | ||
| Entries | array[object] | Because it belongs to a response, if RetrieveLogs breaks, we won't have Entries and TotalCount. | |
| Id | string | ||
| Level | string | Enum: | |
| Properties | object | ||
| LogType | string | Enum: | |
| Category | string | Enum: | |
| EventTimestamp | date-time | ||
| UserId | string | ||
| UserName | string | ||
| RenderedMessage | string | ||
| TotalCount | int64 |
Bad Request
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}, "Entries": [ { "Id": "{string}", "Level": "{string}", "Properties": { "LogType": "{string}", "Category": "{string}", "EventTimestamp": "{date-time}", "UserId": "{string}", "UserName": "{string}" }, "RenderedMessage": "{string}" } ], "TotalCount": "{int64}"}Export
Export scan results
Export a CycloneDX report for repository
| repoId | string |
| Reference | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/export/cyclonedx/%7BrepoId%7D' \ --header 'Authorization: Bearer {token}' \ --data Reference={Reference}Success
| file | file |
Bad Request
Not Found
xxxxxxxxxx{ "schema": "{file}"}Export a PDF report for all scans
| ProductAddress | string | ||
| Type | array | Enum: | |
| TimeFrame | string | Enum: | |
| Vulnerabilities | array | Enum: | |
| LicenseRisks | array | ||
| Status | array | Enum: | |
| TriggerEvent | array | ||
| Workflow | string | ||
| Connection | string | ||
| Secrets | boolean | ||
| Threats | boolean | ||
| Search | string | ||
| ConnectionType | string | Enum: |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/export/pdf/all-scans' \ --header 'Authorization: Bearer {token}' \ --data ProductAddress={ProductAddress} \ --data Type={Type} \ --data TimeFrame={TimeFrame} \ --data Vulnerabilities={Vulnerabilities} \ --data LicenseRisks={LicenseRisks} \ --data Status={Status} \ --data TriggerEvent={TriggerEvent} \ --data Workflow={Workflow} \ --data Connection={Connection} \ --data Secrets={Secrets} \ --data Threats={Threats} \ --data Search={Search} \ --data ConnectionType={ConnectionType}Success
| file | file |
Bad Request
Not Found
xxxxxxxxxx{ "schema": "{file}"}Export a PDF Overview report for repository
| scanId | string |
| ProductAddress | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/export/pdf/overview/%7BscanId%7D' \ --header 'Authorization: Bearer {token}' \ --data ProductAddress={ProductAddress}Success
| file | file |
Bad Request
Not Found
xxxxxxxxxx{ "schema": "{file}"}Export a PDF SBOM report for repository
| scanId | string |
| ProductAddress | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/export/pdf/sbom/%7BscanId%7D' \ --header 'Authorization: Bearer {token}' \ --data ProductAddress={ProductAddress}Success
| file | file |
Bad Request
Not Found
xxxxxxxxxx{ "schema": "{file}"}External Logger
Manage your External Loggers
Get all configured External Loggers
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/externallogger' \ --header 'Authorization: Bearer {token}'Success
| No response body |
xxxxxxxxxxNo responseAdd a new External Logger
| object | object | ||
| ConnectionSettings | object | ||
| ServerAddress | string | ||
| Port | int32 | ||
| Facility | string | Enum: | |
| Format | string | Enum: |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/externallogger' \ --header 'Authorization: Bearer {token}' \ --data '{ "ConnectionSettings": { "ServerAddress": "{string}", "Port": "{int32}", "Facility": "{string}", "Format": "{string}" }}'Success
| No response body |
xxxxxxxxxxNo responseUpdate an existing External Logger
| id | string |
| object | object | ||
| ConnectionSettings | object | ||
| ServerAddress | string | ||
| Port | int32 | ||
| Facility | string | Enum: | |
| Format | string | Enum: |
xxxxxxxxxxcurl --request PUT \ --url 'https://opswat.developerhub.io/api/v1/externallogger/%7Bid%7D' \ --header 'Authorization: Bearer {token}' \ --data '{ "ConnectionSettings": { "ServerAddress": "{string}", "Port": "{int32}", "Facility": "{string}", "Format": "{string}" }}'Success
| No response body |
xxxxxxxxxxNo responseDelete an External Logger
| id | string |
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/externallogger/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| No response body |
xxxxxxxxxxNo responseGlobal Label Keys
Global label keys management
Returns all global label keys
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/global-label-keys' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| GlobalKeys | array[object] | ||
| Id | string | ||
| Name | string | ||
| Description | string | ||
| ValueType | string | ||
| Options | array[string] | ||
| Created | date-time | ||
| Updated | date-time | ||
| TenantId | string | ||
| CreatedAt | date-time | ||
| LastUpdated | date-time |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "GlobalKeys": [ { "Id": "{string}", "Name": "{string}", "Description": "{string}", "ValueType": "{string}", "Options": [ "{array[string]...}" ], "Created": "{date-time}", "Updated": "{date-time}", "TenantId": "{string}", "CreatedAt": "{date-time}", "LastUpdated": "{date-time}" } ]}Adds a new global label key
| object | object | ||
| Name | string | ||
| Description | string | ||
| ValueType | string | ||
| Options | array[string] |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/global-label-keys' \ --header 'Authorization: Bearer {token}' \ --data '{ "Name": "{string}", "Description": "{string}", "ValueType": "{string}", "Options": [ "{array[string]...}" ]}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| GlobalKey | object | ||
| Id | string | ||
| Name | string | ||
| Description | string | ||
| ValueType | string | ||
| Options | array[string] | ||
| Created | date-time | ||
| Updated | date-time | ||
| TenantId | string | ||
| CreatedAt | date-time | ||
| LastUpdated | date-time |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "GlobalKey": { "Id": "{string}", "Name": "{string}", "Description": "{string}", "ValueType": "{string}", "Options": [ "{array[string]...}" ], "Created": "{date-time}", "Updated": "{date-time}", "TenantId": "{string}", "CreatedAt": "{date-time}", "LastUpdated": "{date-time}" }}Updates an existing global label key
| id | string |
| object | object | ||
| Name | string | ||
| Description | string | ||
| ValueType | string | ||
| Options | array[string] |
xxxxxxxxxxcurl --request PUT \ --url 'https://opswat.developerhub.io/api/v1/global-label-keys/%7Bid%7D' \ --header 'Authorization: Bearer {token}' \ --data '{ "Name": "{string}", "Description": "{string}", "ValueType": "{string}", "Options": [ "{array[string]...}" ]}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| GlobalKey | object | ||
| Id | string | ||
| Name | string | ||
| Description | string | ||
| ValueType | string | ||
| Options | array[string] | ||
| Created | date-time | ||
| Updated | date-time | ||
| TenantId | string | ||
| CreatedAt | date-time | ||
| LastUpdated | date-time |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "GlobalKey": { "Id": "{string}", "Name": "{string}", "Description": "{string}", "ValueType": "{string}", "Options": [ "{array[string]...}" ], "Created": "{date-time}", "Updated": "{date-time}", "TenantId": "{string}", "CreatedAt": "{date-time}", "LastUpdated": "{date-time}" }}Deletes a global label key
| id | string |
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/global-label-keys/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}"}Packages
Package management
Retrieves a list of packages based on search criteria
| Name | string | ||
| Ecosystem | string | ||
| Version | string | ||
| Vulnerabilities | array | ||
| LicenseRisks | array | ||
| Connection | string | ||
| Repository | string | ||
| Reference | string | ||
| ScanId | string | ||
| StepSha256 | string | ||
| Search | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/packages' \ --header 'Authorization: Bearer {token}' \ --data Name={Name} \ --data Ecosystem={Ecosystem} \ --data Version={Version} \ --data Vulnerabilities={Vulnerabilities} \ --data LicenseRisks={LicenseRisks} \ --data Connection={Connection} \ --data Repository={Repository} \ --data Reference={Reference} \ --data ScanId={ScanId} \ --data StepSha256={StepSha256} \ --data Search={Search}Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Packages | array[object] | ||
| Id | string | ||
| Name | string | ||
| Version | string | ||
| Ecosystem | string | ||
| Archive | boolean | ||
| Executable | boolean | ||
| Uid | string | ||
| Licenses | object | ||
| Allowed | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Blocked | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Repositories | array[object] | ||
| Connection | string | ||
| Repository | string | ||
| RepositoryId | string | ||
| Reference | string | ||
| Scanned | date-time | ||
| ScanIds | array[string] | ||
| StepSha256s | array[string] | ||
| Hashes | array[object] | ||
| Sha256 | string | ||
| FileName | string | ||
| Vulnerabilities | array[object] | ||
| Id | string | ||
| FixedVersions | array[string] | ||
| Severity | string | Enum: | |
| Source | string | ||
| Cwes | array[string] | ||
| Dependencies | array[object] | ||
| Ecosystem | string | ||
| Group | string | ||
| PackageName | string | ||
| PackageVersion | string | ||
| Vulnerabilities | array[object] | ||
| Id | string | ||
| Severity | string | ||
| Source | string | ||
| FixedVersions | array[string] | ||
| Cwes | array[string] | ||
| Type | string | ||
| VulnerabilityCounts | object | ||
| Critical | int32 | ||
| High | int32 | ||
| Medium | int32 | ||
| Low | int32 | ||
| Unknown | int32 | ||
| SupplierName | string | ||
| ReleaseDate | date-time | ||
| Labels | array[object] | ||
| Key | string | ||
| Value | string | ||
| ValueType | string | ||
| Created | date-time | ||
| Updated | date-time | ||
| Latest | object | ||
| Version | string | ||
| ReleaseDate | string | ||
| CreatedAt | date-time | ||
| LastUpdated | date-time |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Packages": [...]}Retrieves all versions of a specific package by its name and ecosystem
| ecosystem | string | ||
| packageName | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/packages/versions' \ --header 'Authorization: Bearer {token}' \ --data ecosystem={ecosystem} \ --data packageName={packageName}Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| PackageName | string | ||
| Ecosystem | string | ||
| Versions | array[object] | ||
| Version | string | ||
| Vulnerabilities | array[object] | ||
| Id | string | ||
| FixedVersions | array[string] | ||
| Severity | string | Enum: | |
| Source | string | ||
| Cwes | array[string] | ||
| SupplierName | string | ||
| ReleaseDate | date-time | ||
| Dependencies | array[object] | ||
| Ecosystem | string | ||
| Group | string | ||
| PackageName | string | ||
| PackageVersion | string | ||
| Vulnerabilities | array[object] | ||
| Id | string | ||
| Severity | string | ||
| Source | string | ||
| FixedVersions | array[string] | ||
| Cwes | array[string] | ||
| Type | string | ||
| VulnerabilityCounts | object | ||
| Critical | int32 | ||
| High | int32 | ||
| Medium | int32 | ||
| Low | int32 | ||
| Unknown | int32 | ||
| Licenses | object | ||
| Allowed | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Blocked | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "PackageName": "{string}", "Ecosystem": "{string}", "Versions": [ { "Version": "{string}", "Vulnerabilities": [ { "Id": "{string}", "FixedVersions": [ "{array[string]...}" ], "Severity": "{string}", "Source": "{string}", "Cwes": [ "{array[string]...}" ] } ], "SupplierName": "{string}", "ReleaseDate": "{date-time}", "Dependencies": [ { "Ecosystem": "{string}", "Group": "{string}", "PackageName": "{string}", "PackageVersion": "{string}", "Vulnerabilities": [ { "Id": "{string}", "Severity": "{string}", "Source": "{string}", "FixedVersions": [ "{array[string]...}" ], "Cwes": [ "{array[string]...}" ], "Type": "{string}" } ], "VulnerabilityCounts": { "Critical": "{int32}", "High": "{int32}", "Medium": "{int32}", "Low": "{int32}", "Unknown": "{int32}" } } ], "Licenses": { "Allowed": [ { "Id": "{string}", "Url": "{string}", "Category": "{string}", "UsageRestriction": { "Permissions": [ "{array[string]...}" ], "Conditions": [ "{array[string]...}" ], "Limitations": [ "{array[string]...}" ] } } ], "Blocked": [ { "Id": "{string}", "Url": "{string}", "Category": "{string}", "UsageRestriction": { "Permissions": [ "{array[string]...}" ], "Conditions": [ "{array[string]...}" ], "Limitations": [ "{array[string]...}" ] } } ] } } ]}Retrieves a package by its unique identifier
| id | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/packages/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Package | object | ||
| Id | string | ||
| Name | string | ||
| Version | string | ||
| Ecosystem | string | ||
| Archive | boolean | ||
| Executable | boolean | ||
| Uid | string | ||
| Licenses | object | ||
| Allowed | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Blocked | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Repositories | array[object] | ||
| Connection | string | ||
| Repository | string | ||
| RepositoryId | string | ||
| Reference | string | ||
| Scanned | date-time | ||
| ScanIds | array[string] | ||
| StepSha256s | array[string] | ||
| Hashes | array[object] | ||
| Sha256 | string | ||
| FileName | string | ||
| Vulnerabilities | array[object] | ||
| Id | string | ||
| FixedVersions | array[string] | ||
| Severity | string | Enum: | |
| Source | string | ||
| Cwes | array[string] | ||
| Dependencies | array[object] | ||
| Ecosystem | string | ||
| Group | string | ||
| PackageName | string | ||
| PackageVersion | string | ||
| Vulnerabilities | array[object] | ||
| Id | string | ||
| Severity | string | ||
| Source | string | ||
| FixedVersions | array[string] | ||
| Cwes | array[string] | ||
| Type | string | ||
| VulnerabilityCounts | object | ||
| Critical | int32 | ||
| High | int32 | ||
| Medium | int32 | ||
| Low | int32 | ||
| Unknown | int32 | ||
| SupplierName | string | ||
| ReleaseDate | date-time | ||
| Labels | array[object] | ||
| Key | string | ||
| Value | string | ||
| ValueType | string | ||
| Created | date-time | ||
| Updated | date-time | ||
| Latest | object | ||
| Version | string | ||
| ReleaseDate | string | ||
| CreatedAt | date-time | ||
| LastUpdated | date-time |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Package": {...}}Retrieves CVEs associated with a specific package
| id | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/packages/%7Bid%7D/cves' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Cves | array[object] | ||
| Id | string | ||
| FixedVersions | array[string] | ||
| Severity | string | Enum: | |
| Source | string | ||
| Cwes | array[string] |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Cves": [ { "Id": "{string}", "FixedVersions": [ "{array[string]...}" ], "Severity": "{string}", "Source": "{string}", "Cwes": [ "{array[string]...}" ] } ]}Retrieves all labels for a specific package
| id | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/packages/%7Bid%7D/labels' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Labels | array[object] | ||
| Key | string | ||
| Value | string | ||
| ValueType | string | ||
| Created | date-time | ||
| Updated | date-time |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Labels": [ { "Key": "{string}", "Value": "{string}", "ValueType": "{string}", "Created": "{date-time}", "Updated": "{date-time}" } ]}Adds a label to a package
| id | string |
| object | object | ||
| Key | string | ||
| Value | string | ||
| ValueType | string | ||
| Created | date-time | ||
| Updated | date-time |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/packages/%7Bid%7D/labels' \ --header 'Authorization: Bearer {token}' \ --data '{ "Key": "{string}", "Value": "{string}", "ValueType": "{string}", "Created": "{date-time}", "Updated": "{date-time}"}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Label | object | ||
| Key | string | ||
| Value | string | ||
| ValueType | string | ||
| Created | date-time | ||
| Updated | date-time |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Label": { "Key": "{string}", "Value": "{string}", "ValueType": "{string}", "Created": "{date-time}", "Updated": "{date-time}" }}Updates an existing label in a package
| id | string | ||
| key | string |
| object | object | ||
| value | string | ||
| valueType | string |
xxxxxxxxxxcurl --request PUT \ --url 'https://opswat.developerhub.io/api/v1/packages/%7Bid%7D/labels/%7Bkey%7D' \ --header 'Authorization: Bearer {token}' \ --data '{ "value": "{string}", "valueType": "{string}"}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}"}Deletes a label from a package
| id | string | ||
| key | string |
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/packages/%7Bid%7D/labels/%7Bkey%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}"}Searches for packages by label key and optionally value
| key | string | ||
| value | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/packages/search/labels' \ --header 'Authorization: Bearer {token}' \ --data key={key} \ --data value={value}Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Packages | array[object] | ||
| Id | string | ||
| Name | string | ||
| Version | string | ||
| Ecosystem | string | ||
| Archive | boolean | ||
| Executable | boolean | ||
| Uid | string | ||
| Licenses | object | ||
| Allowed | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Blocked | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Repositories | array[object] | ||
| Connection | string | ||
| Repository | string | ||
| RepositoryId | string | ||
| Reference | string | ||
| Scanned | date-time | ||
| ScanIds | array[string] | ||
| StepSha256s | array[string] | ||
| Hashes | array[object] | ||
| Sha256 | string | ||
| FileName | string | ||
| Vulnerabilities | array[object] | ||
| Id | string | ||
| FixedVersions | array[string] | ||
| Severity | string | Enum: | |
| Source | string | ||
| Cwes | array[string] | ||
| Dependencies | array[object] | ||
| Ecosystem | string | ||
| Group | string | ||
| PackageName | string | ||
| PackageVersion | string | ||
| Vulnerabilities | array[object] | ||
| Id | string | ||
| Severity | string | ||
| Source | string | ||
| FixedVersions | array[string] | ||
| Cwes | array[string] | ||
| Type | string | ||
| VulnerabilityCounts | object | ||
| Critical | int32 | ||
| High | int32 | ||
| Medium | int32 | ||
| Low | int32 | ||
| Unknown | int32 | ||
| SupplierName | string | ||
| ReleaseDate | date-time | ||
| Labels | array[object] | ||
| Key | string | ||
| Value | string | ||
| ValueType | string | ||
| Created | date-time | ||
| Updated | date-time | ||
| Latest | object | ||
| Version | string | ||
| ReleaseDate | string | ||
| CreatedAt | date-time | ||
| LastUpdated | date-time |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Packages": [...]}Projects
Manage projects
List Projects
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/projects' \ --header 'Authorization: Bearer {token}'Success
| array | array[object] | ||
| Id | string | ||
| Name | string | ||
| WorkflowIds | array[string] | ||
| StorageIds | array[string] |
xxxxxxxxxx[ { "Id": "{string}", "Name": "{string}", "WorkflowIds": [ "{array[string]...}" ], "StorageIds": [ "{array[string]...}" ] }]Create Project
| object | object | ||
| Name | string | maxLength: 50 minLength: 1 | |
| WorkflowIds | array[string] | ||
| StorageIds | array[string] |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/projects' \ --header 'Authorization: Bearer {token}' \ --data '{ "Name": "{string}", "WorkflowIds": [ "{array[string]...}" ], "StorageIds": [ "{array[string]...}" ]}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Project | object | ||
| Id | string | ||
| Name | string | ||
| WorkflowIds | array[string] | ||
| StorageIds | array[string] |
Bad Request
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Project": { "Id": "{string}", "Name": "{string}", "WorkflowIds": [ "{array[string]...}" ], "StorageIds": [ "{array[string]...}" ] }}Get Project By Id
| id | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/projects/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Id | string | ||
| Name | string | ||
| WorkflowIds | array[string] | ||
| StorageIds | array[string] |
Not Found
xxxxxxxxxx{ "Id": "{string}", "Name": "{string}", "WorkflowIds": [ "{array[string]...}" ], "StorageIds": [ "{array[string]...}" ]}Update Project
| id | string |
| object | object | ||
| Name | string | maxLength: 50 |
xxxxxxxxxxcurl --request PUT \ --url 'https://opswat.developerhub.io/api/v1/projects/%7Bid%7D' \ --header 'Authorization: Bearer {token}' \ --data '{ "Name": "{string}"}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Project | object | ||
| Id | string | ||
| Name | string | ||
| WorkflowIds | array[string] | ||
| StorageIds | array[string] |
Not Found
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Project": { "Id": "{string}", "Name": "{string}", "WorkflowIds": [ "{array[string]...}" ], "StorageIds": [ "{array[string]...}" ] }}Delete Project
| id | string |
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/projects/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Project | object | ||
| Id | string | ||
| Name | string | ||
| WorkflowIds | array[string] | ||
| StorageIds | array[string] |
Not Found
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Project": { "Id": "{string}", "Name": "{string}", "WorkflowIds": [ "{array[string]...}" ], "StorageIds": [ "{array[string]...}" ] }}Attach workflows to project
| id | string |
| object | object | ||
| Ids | array[string] |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/projects/%7Bid%7D/workflows/attach' \ --header 'Authorization: Bearer {token}' \ --data '{ "Ids": [ "{array[string]...}" ]}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Project | object | ||
| Id | string | ||
| Name | string | ||
| WorkflowIds | array[string] | ||
| StorageIds | array[string] |
Not Found
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Project": { "Id": "{string}", "Name": "{string}", "WorkflowIds": [ "{array[string]...}" ], "StorageIds": [ "{array[string]...}" ] }}Detach workflows from project
| id | string |
| object | object | ||
| Ids | array[string] |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/projects/%7Bid%7D/workflows/detach' \ --header 'Authorization: Bearer {token}' \ --data '{ "Ids": [ "{array[string]...}" ]}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Project | object | ||
| Id | string | ||
| Name | string | ||
| WorkflowIds | array[string] | ||
| StorageIds | array[string] |
Not Found
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Project": { "Id": "{string}", "Name": "{string}", "WorkflowIds": [ "{array[string]...}" ], "StorageIds": [ "{array[string]...}" ] }}Attach storages to project
| id | string |
| object | object | ||
| Ids | array[string] |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/projects/%7Bid%7D/storages/attach' \ --header 'Authorization: Bearer {token}' \ --data '{ "Ids": [ "{array[string]...}" ]}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Project | object | ||
| Id | string | ||
| Name | string | ||
| WorkflowIds | array[string] | ||
| StorageIds | array[string] |
Not Found
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Project": { "Id": "{string}", "Name": "{string}", "WorkflowIds": [ "{array[string]...}" ], "StorageIds": [ "{array[string]...}" ] }}Detach storages from project
| id | string |
| object | object | ||
| Ids | array[string] |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/projects/%7Bid%7D/storages/detach' \ --header 'Authorization: Bearer {token}' \ --data '{ "Ids": [ "{array[string]...}" ]}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Project | object | ||
| Id | string | ||
| Name | string | ||
| WorkflowIds | array[string] | ||
| StorageIds | array[string] |
Not Found
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Project": { "Id": "{string}", "Name": "{string}", "WorkflowIds": [ "{array[string]...}" ], "StorageIds": [ "{array[string]...}" ] }}Real Time
Manage real-time protection
Enable real-time protection for multiple repositories
| storageId | string |
| object | object | ||
| Repositories | array[object] | ||
| RepositoryId | string | ||
| RepositoryName | string | ||
| Connection | string | ||
| WorkflowId | string |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/realtime/%7BstorageId%7D/enable' \ --header 'Authorization: Bearer {token}' \ --data '{ "Repositories": [ { "RepositoryId": "{string}", "RepositoryName": "{string}" } ], "Connection": "{string}", "WorkflowId": "{string}"}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string |
Bad Request
Conflict
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}}Disable real-time protection for storage
| storageId | string |
xxxxxxxxxxcurl --request PATCH \ --url 'https://opswat.developerhub.io/api/v1/realtime/%7BstorageId%7D/disable' \ --header 'Authorization: Bearer {token}'Success
| No response body |
xxxxxxxxxxNo responseDisable real-time protection for repository
| storageId | string | ||
| repositoryId | string |
xxxxxxxxxxcurl --request PATCH \ --url 'https://opswat.developerhub.io/api/v1/realtime/%7BstorageId%7D/%7BrepositoryId%7D/disable' \ --header 'Authorization: Bearer {token}'Success
| No response body |
xxxxxxxxxxNo responseList storages with real-time protection enabled
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/realtime' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Storages | array[object] | ||
| Id | string | ||
| Name | string | ||
| StorageType | object | ||
| Name | string | ||
| CategoryType | string | Enum: | |
| ProtocolType | string | Enum: | |
| VendorType | string | Enum: | |
| StorageStatus | object | ||
| Message | string | ||
| StatusType | string | Enum: |
xxxxxxxxxx{ "Storages": [ { "Id": "{string}", "Name": "{string}", "StorageType": { "Name": "{string}", "CategoryType": "{string}", "ProtocolType": "{string}", "VendorType": "{string}" }, "StorageStatus": { "Message": "{string}", "StatusType": "{string}" } } ]}List ongoing real-time scans for storage
| storageId | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/realtime/%7BstorageId%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| StorageId | string | ||
| RealTimeScans | array[object] | ||
| ScanId | string | ||
| RepositoryId | string | ||
| RepositoryName | string | ||
| ScanningState | string | Enum: | |
| WorkflowId | string | ||
| ScanInformation | object | ||
| TotalFiles | int32 | ||
| Malware | int32 | ||
| Secret | int32 | ||
| BlockedFiles | int32 | ||
| VulnerabilityIssues | object | ||
| Critical | int32 | ||
| High | int32 | ||
| Medium | int32 | ||
| Low | int32 | ||
| Unknown | int32 | ||
| Licenses | object | ||
| BlockedLicensesCount | int32 | ||
| Allowed | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Blocked | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Package | object | ||
| TotalPackages | int32 | ||
| VulnerablePackages | int32 |
xxxxxxxxxx{ "StorageId": "{string}", "RealTimeScans": [ { "ScanId": "{string}", "RepositoryId": "{string}", "RepositoryName": "{string}", "ScanningState": "{string}", "WorkflowId": "{string}" } ], "ScanInformation": { "TotalFiles": "{int32}", "Malware": "{int32}", "Secret": "{int32}", "BlockedFiles": "{int32}", "VulnerabilityIssues": { "Critical": "{int32}", "High": "{int32}", "Medium": "{int32}", "Low": "{int32}", "Unknown": "{int32}" }, "Licenses": { "BlockedLicensesCount": "{int32}", "Allowed": [ { "Id": "{string}", "Url": "{string}", "Category": "{string}", "UsageRestriction": { "Permissions": [ "{array[string]...}" ], "Conditions": [ "{array[string]...}" ], "Limitations": [ "{array[string]...}" ] } } ], "Blocked": [ { "Id": "{string}", "Url": "{string}", "Category": "{string}", "UsageRestriction": { "Permissions": [ "{array[string]...}" ], "Conditions": [ "{array[string]...}" ], "Limitations": [ "{array[string]...}" ] } } ] }, "Package": { "TotalPackages": "{int32}", "VulnerablePackages": "{int32}" } }}Delete real-time scan data for storage
| storageId | string |
| forceDelete | boolean |
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/realtime/%7BstorageId%7D' \ --header 'Authorization: Bearer {token}' \ --data forceDelete={forceDelete}Success
| No response body |
xxxxxxxxxxNo responseDelete real-time scan data for repository
| storageId | string | ||
| repositoryId | string |
| forceDelete | boolean |
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/realtime/%7BstorageId%7D/%7BrepositoryId%7D' \ --header 'Authorization: Bearer {token}' \ --data forceDelete={forceDelete}Success
| No response body |
xxxxxxxxxxNo responseScan Configurations
List, add, update and delete Scan Configurations
Get Scan Configuration by ID
| id | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scan-configurations/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string | ||
| Workflow | object | ||
| Id | string | ||
| ScanPoolId | string | ||
| Rules | array[string] | ||
| Type | string | Enum: | |
| Name | string | ||
| ScanPool | object | ||
| Id | string | ||
| Name | string | ||
| ScanPoolType | string | Enum: | |
| IsDefault | boolean | ||
| ScanInstances | array[object] | ||
| Id | string | ||
| ScanPoolId | string | ||
| Url | string | ||
| ApiKey | string | ||
| Timeout | object | ||
| Ticks | int64 | ||
| Days | int32 | ||
| Hours | int32 | ||
| Milliseconds | int32 | ||
| Microseconds | int32 | ||
| Nanoseconds | int32 | ||
| Minutes | int32 | ||
| Seconds | int32 | ||
| TotalDays | number | ||
| TotalHours | number | ||
| TotalMilliseconds | number | ||
| TotalMicroseconds | number | ||
| TotalNanoseconds | number | ||
| TotalMinutes | number | ||
| TotalSeconds | number | ||
| UserAgent | string | ||
| Filters | object | ||
| Id | string | ||
| MinimumSize | int64 | ||
| MaximumSize | int64 | ||
| MinimumDateTime | date-time | ||
| MaximumDateTime | date-time |
Bad Request
Not Found
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}, "Workflow": { "Id": "{string}", "ScanPoolId": "{string}", "Rules": [ "{array[string]...}" ], "Type": "{string}", "Name": "{string}", "ScanPool": { "Id": "{string}", "Name": "{string}", "ScanPoolType": "{string}", "IsDefault": "{boolean}", "ScanInstances": [ { "Id": "{string}", "ScanPoolId": "{string}", "Url": "{string}", "ApiKey": "{string}", "Timeout": { "Ticks": "{int64}", "Days": "{int32}", "Hours": "{int32}", "Milliseconds": "{int32}", "Microseconds": "{int32}", "Nanoseconds": "{int32}", "Minutes": "{int32}", "Seconds": "{int32}", "TotalDays": "{number}", "TotalHours": "{number}", "TotalMilliseconds": "{number}", "TotalMicroseconds": "{number}", "TotalNanoseconds": "{number}", "TotalMinutes": "{number}", "TotalSeconds": "{number}" } } ] }, "UserAgent": "{string}", "Filters": { "Id": "{string}", "MinimumSize": "{int64}", "MaximumSize": "{int64}", "MinimumDateTime": "{date-time}", "MaximumDateTime": "{date-time}" } }}Update an existing Scan Configuration
| id | string |
| object | object | ||
| Name | string | maxLength: 50 minLength: 3 | |
| ScanPoolId | string | ||
| Rules | array[string] | ||
| UserAgent | string |
xxxxxxxxxxcurl --request PUT \ --url 'https://opswat.developerhub.io/api/v1/scan-configurations/%7Bid%7D' \ --header 'Authorization: Bearer {token}' \ --data '{ "Name": "{string}", "ScanPoolId": "{string}", "Rules": [ "{array[string]...}" ], "UserAgent": "{string}"}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string |
Bad Request
Not Found
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}}Delete a Scan Configuration
| id | string |
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/scan-configurations/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string |
Bad Request
Not Found
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}}Get all Scan Configurations by ScanPool ID
| id | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scan-configurations/scan-pools/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string | ||
| Workflows | array[object] | Because it belongs to a response, if GetMultipleScanConfiguration breaks, we won't have ScanConfigurations. | |
| Id | string | ||
| ScanPoolId | string | ||
| Rules | array[string] | ||
| Type | string | Enum: | |
| Name | string | ||
| ScanPool | object | ||
| Id | string | ||
| Name | string | ||
| ScanPoolType | string | Enum: | |
| IsDefault | boolean | ||
| ScanInstances | array[object] | ||
| Id | string | ||
| ScanPoolId | string | ||
| Url | string | ||
| ApiKey | string | ||
| Timeout | object | ||
| Ticks | int64 | ||
| Days | int32 | ||
| Hours | int32 | ||
| Milliseconds | int32 | ||
| Microseconds | int32 | ||
| Nanoseconds | int32 | ||
| Minutes | int32 | ||
| Seconds | int32 | ||
| TotalDays | number | ||
| TotalHours | number | ||
| TotalMilliseconds | number | ||
| TotalMicroseconds | number | ||
| TotalNanoseconds | number | ||
| TotalMinutes | number | ||
| TotalSeconds | number | ||
| UserAgent | string | ||
| Filters | object | ||
| Id | string | ||
| MinimumSize | int64 | ||
| MaximumSize | int64 | ||
| MinimumDateTime | date-time | ||
| MaximumDateTime | date-time |
Bad Request
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}, "Workflows": [ { "Id": "{string}", "ScanPoolId": "{string}", "Rules": [ "{array[string]...}" ], "Type": "{string}", "Name": "{string}", "ScanPool": { "Id": "{string}", "Name": "{string}", "ScanPoolType": "{string}", "IsDefault": "{boolean}", "ScanInstances": [ { "Id": "{string}", "ScanPoolId": "{string}", "Url": "{string}", "ApiKey": "{string}", "Timeout": { "Ticks": "{int64}", "Days": "{int32}", "Hours": "{int32}", "Milliseconds": "{int32}", "Microseconds": "{int32}", "Nanoseconds": "{int32}", "Minutes": "{int32}", "Seconds": "{int32}", "TotalDays": "{number}", "TotalHours": "{number}", "TotalMilliseconds": "{number}", "TotalMicroseconds": "{number}", "TotalNanoseconds": "{number}", "TotalMinutes": "{number}", "TotalSeconds": "{number}" } } ] }, "UserAgent": "{string}", "Filters": { "Id": "{string}", "MinimumSize": "{int64}", "MaximumSize": "{int64}", "MinimumDateTime": "{date-time}", "MaximumDateTime": "{date-time}" } } ]}Get Scan Configurations
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scan-configurations' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string | ||
| Workflows | array[object] | Because it belongs to a response, if GetMultipleScanConfiguration breaks, we won't have ScanConfigurations. | |
| Id | string | ||
| ScanPoolId | string | ||
| Rules | array[string] | ||
| Type | string | Enum: | |
| Name | string | ||
| ScanPool | object | ||
| Id | string | ||
| Name | string | ||
| ScanPoolType | string | Enum: | |
| IsDefault | boolean | ||
| ScanInstances | array[object] | ||
| Id | string | ||
| ScanPoolId | string | ||
| Url | string | ||
| ApiKey | string | ||
| Timeout | object | ||
| Ticks | int64 | ||
| Days | int32 | ||
| Hours | int32 | ||
| Milliseconds | int32 | ||
| Microseconds | int32 | ||
| Nanoseconds | int32 | ||
| Minutes | int32 | ||
| Seconds | int32 | ||
| TotalDays | number | ||
| TotalHours | number | ||
| TotalMilliseconds | number | ||
| TotalMicroseconds | number | ||
| TotalNanoseconds | number | ||
| TotalMinutes | number | ||
| TotalSeconds | number | ||
| UserAgent | string | ||
| Filters | object | ||
| Id | string | ||
| MinimumSize | int64 | ||
| MaximumSize | int64 | ||
| MinimumDateTime | date-time | ||
| MaximumDateTime | date-time |
Bad Request
Not Found
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}, "Workflows": [ { "Id": "{string}", "ScanPoolId": "{string}", "Rules": [ "{array[string]...}" ], "Type": "{string}", "Name": "{string}", "ScanPool": { "Id": "{string}", "Name": "{string}", "ScanPoolType": "{string}", "IsDefault": "{boolean}", "ScanInstances": [ { "Id": "{string}", "ScanPoolId": "{string}", "Url": "{string}", "ApiKey": "{string}", "Timeout": { "Ticks": "{int64}", "Days": "{int32}", "Hours": "{int32}", "Milliseconds": "{int32}", "Microseconds": "{int32}", "Nanoseconds": "{int32}", "Minutes": "{int32}", "Seconds": "{int32}", "TotalDays": "{number}", "TotalHours": "{number}", "TotalMilliseconds": "{number}", "TotalMicroseconds": "{number}", "TotalNanoseconds": "{number}", "TotalMinutes": "{number}", "TotalSeconds": "{number}" } } ] }, "UserAgent": "{string}", "Filters": { "Id": "{string}", "MinimumSize": "{int64}", "MaximumSize": "{int64}", "MinimumDateTime": "{date-time}", "MaximumDateTime": "{date-time}" } } ]}Add Scan Configurations
| object | object | ||
| Name | string | maxLength: 50 minLength: 3 | |
| ScanPoolId | string | ||
| Rules | array[string] | ||
| UserAgent | string |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/scan-configurations' \ --header 'Authorization: Bearer {token}' \ --data '{ "Name": "{string}", "ScanPoolId": "{string}", "Rules": [ "{array[string]...}" ], "UserAgent": "{string}"}'Success
| object | object | ||
| Id | string | ||
| ScanPoolId | string | ||
| Rules | array[string] | ||
| Type | string | Enum: | |
| Name | string | ||
| ScanPool | object | ||
| Id | string | ||
| Name | string | ||
| ScanPoolType | string | Enum: | |
| IsDefault | boolean | ||
| ScanInstances | array[object] | ||
| Id | string | ||
| ScanPoolId | string | ||
| Url | string | ||
| ApiKey | string | ||
| Timeout | object | ||
| Ticks | int64 | ||
| Days | int32 | ||
| Hours | int32 | ||
| Milliseconds | int32 | ||
| Microseconds | int32 | ||
| Nanoseconds | int32 | ||
| Minutes | int32 | ||
| Seconds | int32 | ||
| TotalDays | number | ||
| TotalHours | number | ||
| TotalMilliseconds | number | ||
| TotalMicroseconds | number | ||
| TotalNanoseconds | number | ||
| TotalMinutes | number | ||
| TotalSeconds | number | ||
| UserAgent | string | ||
| Filters | object | ||
| Id | string | ||
| MinimumSize | int64 | ||
| MaximumSize | int64 | ||
| MinimumDateTime | date-time | ||
| MaximumDateTime | date-time |
Bad Request
Server Error
xxxxxxxxxx{ "Id": "{string}", "ScanPoolId": "{string}", "Rules": [ "{array[string]...}" ], "Type": "{string}", "Name": "{string}", "ScanPool": { "Id": "{string}", "Name": "{string}", "ScanPoolType": "{string}", "IsDefault": "{boolean}", "ScanInstances": [ { "Id": "{string}", "ScanPoolId": "{string}", "Url": "{string}", "ApiKey": "{string}", "Timeout": { "Ticks": "{int64}", "Days": "{int32}", "Hours": "{int32}", "Milliseconds": "{int32}", "Microseconds": "{int32}", "Nanoseconds": "{int32}", "Minutes": "{int32}", "Seconds": "{int32}", "TotalDays": "{number}", "TotalHours": "{number}", "TotalMilliseconds": "{number}", "TotalMicroseconds": "{number}", "TotalNanoseconds": "{number}", "TotalMinutes": "{number}", "TotalSeconds": "{number}" } } ] }, "UserAgent": "{string}", "Filters": { "Id": "{string}", "MinimumSize": "{int64}", "MaximumSize": "{int64}", "MinimumDateTime": "{date-time}", "MaximumDateTime": "{date-time}" }}Scan Instances
Manage your scan instances
Add a new scan instance
| object | object | ||
| ScanPoolId | string | ||
| Url | string | ||
| ApiKey | string | ||
| Timeout | object | ||
| Ticks | int64 | ||
| ScanInstanceType | string | Enum: |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/scan-instances' \ --header 'Authorization: Bearer {token}' \ --data '{ "ScanPoolId": "{string}", "Url": "{string}", "ApiKey": "{string}", "Timeout": { "Ticks": "{int64}" }, "ScanInstanceType": "{string}"}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string | ||
| ScanInstanceId | string | Because it belongs to a response, if AddScanInstance breaks, we won't have ScanInstanceId. |
Bad Request
Not Found
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}, "ScanInstanceId": "{string}"}Get a scan instance by ID
| id | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scan-instances/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string | ||
| ScanInstance | object | ||
| Id | string | ||
| ScanPoolId | string | ||
| Url | string | ||
| ApiKey | string | ||
| Timeout | object | ||
| Ticks | int64 | ||
| Days | int32 | ||
| Hours | int32 | ||
| Milliseconds | int32 | ||
| Microseconds | int32 | ||
| Nanoseconds | int32 | ||
| Minutes | int32 | ||
| Seconds | int32 | ||
| TotalDays | number | ||
| TotalHours | number | ||
| TotalMilliseconds | number | ||
| TotalMicroseconds | number | ||
| TotalNanoseconds | number | ||
| TotalMinutes | number | ||
| TotalSeconds | number |
Bad Request
Not Found
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}, "ScanInstance": { "Id": "{string}", "ScanPoolId": "{string}", "Url": "{string}", "ApiKey": "{string}", "Timeout": { "Ticks": "{int64}", "Days": "{int32}", "Hours": "{int32}", "Milliseconds": "{int32}", "Microseconds": "{int32}", "Nanoseconds": "{int32}", "Minutes": "{int32}", "Seconds": "{int32}", "TotalDays": "{number}", "TotalHours": "{number}", "TotalMilliseconds": "{number}", "TotalMicroseconds": "{number}", "TotalNanoseconds": "{number}", "TotalMinutes": "{number}", "TotalSeconds": "{number}" } }}Update a scan instance
| id | string |
| object | object | ||
| Url | string | ||
| ApiKey | string | ||
| Timeout | object | ||
| Ticks | int64 |
xxxxxxxxxxcurl --request PUT \ --url 'https://opswat.developerhub.io/api/v1/scan-instances/%7Bid%7D' \ --header 'Authorization: Bearer {token}' \ --data '{ "Url": "{string}", "ApiKey": "{string}", "Timeout": { "Ticks": "{int64}" }}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string |
Bad Request
Not Found
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}}Delete scan instance
| id | string |
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/scan-instances/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string |
Bad Request
Not Found
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}}Scan Pools
Manage your scan pools
Get Scan Pools
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scan-pools' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string | ||
| ScanPools | array[object] | ||
| Id | string | ||
| Name | string | ||
| ScanPoolType | string | Enum: | |
| IsDefault | boolean | ||
| ScanInstances | array[object] | ||
| Id | string | ||
| ScanPoolId | string | ||
| Url | string | ||
| ApiKey | string | ||
| Timeout | object | ||
| Ticks | int64 | ||
| Days | int32 | ||
| Hours | int32 | ||
| Milliseconds | int32 | ||
| Microseconds | int32 | ||
| Nanoseconds | int32 | ||
| Minutes | int32 | ||
| Seconds | int32 | ||
| TotalDays | number | ||
| TotalHours | number | ||
| TotalMilliseconds | number | ||
| TotalMicroseconds | number | ||
| TotalNanoseconds | number | ||
| TotalMinutes | number | ||
| TotalSeconds | number |
Bad Request
Not Found
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}, "ScanPools": [ { "Id": "{string}", "Name": "{string}", "ScanPoolType": "{string}", "IsDefault": "{boolean}", "ScanInstances": [ { "Id": "{string}", "ScanPoolId": "{string}", "Url": "{string}", "ApiKey": "{string}", "Timeout": { "Ticks": "{int64}", "Days": "{int32}", "Hours": "{int32}", "Milliseconds": "{int32}", "Microseconds": "{int32}", "Nanoseconds": "{int32}", "Minutes": "{int32}", "Seconds": "{int32}", "TotalDays": "{number}", "TotalHours": "{number}", "TotalMilliseconds": "{number}", "TotalMicroseconds": "{number}", "TotalNanoseconds": "{number}", "TotalMinutes": "{number}", "TotalSeconds": "{number}" } } ] } ]}Add a new Scan Pool
| object | object | ||
| Name | string | ||
| ScanPoolType | string | Enum: |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/scan-pools' \ --header 'Authorization: Bearer {token}' \ --data '{ "Name": "{string}", "ScanPoolType": "{string}"}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string | ||
| ScanPoolId | string |
Bad Request
Not Found
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}, "ScanPoolId": "{string}"}Get Scan Pool by ID
| id | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scan-pools/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string | ||
| ScanPool | object | ||
| Id | string | ||
| Name | string | ||
| ScanPoolType | string | Enum: | |
| IsDefault | boolean | ||
| ScanInstances | array[object] | ||
| Id | string | ||
| ScanPoolId | string | ||
| Url | string | ||
| ApiKey | string | ||
| Timeout | object | ||
| Ticks | int64 | ||
| Days | int32 | ||
| Hours | int32 | ||
| Milliseconds | int32 | ||
| Microseconds | int32 | ||
| Nanoseconds | int32 | ||
| Minutes | int32 | ||
| Seconds | int32 | ||
| TotalDays | number | ||
| TotalHours | number | ||
| TotalMilliseconds | number | ||
| TotalMicroseconds | number | ||
| TotalNanoseconds | number | ||
| TotalMinutes | number | ||
| TotalSeconds | number |
Bad Request
Not Found
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}, "ScanPool": { "Id": "{string}", "Name": "{string}", "ScanPoolType": "{string}", "IsDefault": "{boolean}", "ScanInstances": [ { "Id": "{string}", "ScanPoolId": "{string}", "Url": "{string}", "ApiKey": "{string}", "Timeout": { "Ticks": "{int64}", "Days": "{int32}", "Hours": "{int32}", "Milliseconds": "{int32}", "Microseconds": "{int32}", "Nanoseconds": "{int32}", "Minutes": "{int32}", "Seconds": "{int32}", "TotalDays": "{number}", "TotalHours": "{number}", "TotalMilliseconds": "{number}", "TotalMicroseconds": "{number}", "TotalNanoseconds": "{number}", "TotalMinutes": "{number}", "TotalSeconds": "{number}" } } ] }}Update an existing Scan Pool. It's type can't be changed, it is not supported yet.
| id | string |
| object | object | ||
| Name | string |
xxxxxxxxxxcurl --request PUT \ --url 'https://opswat.developerhub.io/api/v1/scan-pools/%7Bid%7D' \ --header 'Authorization: Bearer {token}' \ --data '{ "Name": "{string}"}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string |
Bad Request
Not Found
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}}Delete a Scan Pool
| id | string |
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/scan-pools/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string |
Bad Request
Not Found
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}}rules
| id | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scan-pools/%7Bid%7D/rules' \ --header 'Authorization: Bearer {token}'Success
| array | array[object] | ||
| name | string | ||
| user | array[string] |
Bad Request
xxxxxxxxxx[ { "name": "{string}", "user_agents": [ "{array[string]...}" ] }]Scans
Manage your scans
Enumerate scan results
| Type | array | Enum: | |
| TimeFrame | string | Enum: | |
| Vulnerabilities | array | Enum: | |
| LicenseRisks | array | ||
| Status | array | Enum: | |
| TriggerEvent | array | ||
| Workflow | string | ||
| Connection | string | ||
| Secrets | boolean | ||
| Threats | boolean | ||
| Search | string | ||
| ConnectionType | string | Enum: |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scans' \ --header 'Authorization: Bearer {token}' \ --data Type={Type} \ --data TimeFrame={TimeFrame} \ --data Vulnerabilities={Vulnerabilities} \ --data LicenseRisks={LicenseRisks} \ --data Status={Status} \ --data TriggerEvent={TriggerEvent} \ --data Workflow={Workflow} \ --data Connection={Connection} \ --data Secrets={Secrets} \ --data Threats={Threats} \ --data Search={Search} \ --data ConnectionType={ConnectionType}Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}"}Add or start a scan
| object | object | ||
| StorageId | string | ||
| StorageName | string | ||
| ScanType | string | Enum: | |
| WorkflowId | string | ||
| RepositoryId | string | ||
| RepositoryName | string | ||
| ProtocolType | string | Enum: | |
| RepositoryReferences | array[string] | ||
| Organization | string | ||
| Connection | string | ||
| PackageType | string | ||
| RepositoryType | string |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/scans' \ --header 'Authorization: Bearer {token}' \ --data '{ "StorageId": "{string}", "StorageName": "{string}", "ScanType": "{string}", "WorkflowId": "{string}", "RepositoryId": "{string}", "RepositoryName": "{string}", "ProtocolType": "{string}", "RepositoryReferences": [ "{array[string]...}" ], "Organization": "{string}", "Connection": "{string}", "PackageType": "{string}", "RepositoryType": "{string}"}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ScanIds | array[string] | ||
| ReferencesUsedForScanning | array[string] | ||
| ProtocolType | string | Enum: | |
| RepositoryId | string | ||
| RepositoryName | string | ||
| ServiceId | string | ||
| StorageName | string | ||
| WorkflowId | string | ||
| WorkflowName | string | ||
| TriggerEvent | string | ||
| TriggerBy | string |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "ScanIds": [ "{array[string]...}" ], "ReferencesUsedForScanning": [ "{array[string]...}" ], "ProtocolType": "{string}", "RepositoryId": "{string}", "RepositoryName": "{string}", "ServiceId": "{string}", "StorageName": "{string}", "WorkflowId": "{string}", "WorkflowName": "{string}", "TriggerEvent": "{string}", "TriggerBy": "{string}"}Delete multiple scans by their scan IDs
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/scans' \ --header 'Authorization: Bearer {token}'Success
| No response body |
Bad Request
Server Error
xxxxxxxxxxNo responseGet scan results by scan ID
| id | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scans/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ServiceId | string | ||
| RepositoryId | string | ||
| RepositoryName | string | ||
| RepositoryType | string | ||
| ReferenceUsedForScanning | string | ||
| ScanId | string | ||
| ProtocolType | string | Enum: | |
| Connection | string | ||
| PackageType | string | ||
| Organization | string | ||
| StartTime | date-time | ||
| StopTime | date-time | ||
| Duration | object | ||
| Ticks | int64 | ||
| Days | int32 | ||
| Hours | int32 | ||
| Milliseconds | int32 | ||
| Microseconds | int32 | ||
| Nanoseconds | int32 | ||
| Minutes | int32 | ||
| Seconds | int32 | ||
| TotalDays | number | ||
| TotalHours | number | ||
| TotalMilliseconds | number | ||
| TotalMicroseconds | number | ||
| TotalNanoseconds | number | ||
| TotalMinutes | number | ||
| TotalSeconds | number | ||
| VulnerabilityIssues | object | ||
| critical | int32 | ||
| high | int32 | ||
| medium | int32 | ||
| low | int32 | ||
| unknown | int32 | ||
| ScanStatus | string | Enum: | |
| DiscoveryStatus | string | Enum: | |
| Errors | array[string] | ||
| BlockedLicensesCount | int32 | ||
| InfectedFiles | int32 | ||
| FilesWithSecrets | int32 |
Not Found
xxxxxxxxxx{ "ServiceId": "{string}", "RepositoryId": "{string}", "RepositoryName": "{string}", "RepositoryType": "{string}", "ReferenceUsedForScanning": "{string}", "ScanId": "{string}", "ProtocolType": "{string}", "Connection": "{string}", "PackageType": "{string}", "Organization": "{string}", "StartTime": "{date-time}", "StopTime": "{date-time}", "Duration": { "Ticks": "{int64}", "Days": "{int32}", "Hours": "{int32}", "Milliseconds": "{int32}", "Microseconds": "{int32}", "Nanoseconds": "{int32}", "Minutes": "{int32}", "Seconds": "{int32}", "TotalDays": "{number}", "TotalHours": "{number}", "TotalMilliseconds": "{number}", "TotalMicroseconds": "{number}", "TotalNanoseconds": "{number}", "TotalMinutes": "{number}", "TotalSeconds": "{number}" }, "VulnerabilityIssues": { "critical": "{int32}", "high": "{int32}", "medium": "{int32}", "low": "{int32}", "unknown": "{int32}" }, "ScanStatus": "{string}", "DiscoveryStatus": "{string}", "Errors": [ "{array[string]...}" ], "BlockedLicensesCount": "{int32}", "InfectedFiles": "{int32}", "FilesWithSecrets": "{int32}"}Stop a scan
| id | string |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/scans/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| StatusCode | int32 |
xxxxxxxxxx{ "StatusCode": "{int32}"}Enumerate all latest scan results
| Type | array | Enum: | |
| TimeFrame | string | Enum: | |
| Vulnerabilities | array | Enum: | |
| LicenseRisks | array | ||
| Status | array | Enum: | |
| TriggerEvent | array | ||
| Workflow | string | ||
| Connection | string | ||
| Secrets | boolean | ||
| Threats | boolean | ||
| Search | string | ||
| ConnectionType | string | Enum: |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scans/latest' \ --header 'Authorization: Bearer {token}' \ --data Type={Type} \ --data TimeFrame={TimeFrame} \ --data Vulnerabilities={Vulnerabilities} \ --data LicenseRisks={LicenseRisks} \ --data Status={Status} \ --data TriggerEvent={TriggerEvent} \ --data Workflow={Workflow} \ --data Connection={Connection} \ --data Secrets={Secrets} \ --data Threats={Threats} \ --data Search={Search} \ --data ConnectionType={ConnectionType}Success
| array | array[object] | ||
| ScanId | string | ||
| Repository | object | ||
| ConnectionId | string | ||
| ConnectionName | string | ||
| RepositoryId | string | ||
| RepositoryName | string | ||
| RepositoryReference | string | ||
| RepositoryMetadata | string | ||
| ScanInformation | object | ||
| Malware | boolean | ||
| Secret | boolean | ||
| VulnerabilityIssues | object | ||
| critical | int32 | ||
| high | int32 | ||
| medium | int32 | ||
| low | int32 | ||
| unknown | int32 | ||
| Licenses | object | ||
| BlockedLicensesCount | int32 | ||
| Allowed | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Blocked | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Workflow | object | ||
| WorkflowId | string | ||
| WorkflowName | string | ||
| WorkflowType | string | ||
| WorkflowIsDeleted | boolean | ||
| Remediations | array[object] | ||
| IsEnabled | boolean | ||
| Type | string | ||
| Package | object | ||
| TotalPackages | int32 | ||
| VulnerablePackages | int32 | ||
| ScannedOn | date-time | ||
| StopTime | date-time | ||
| TriggerEvent | string | ||
| Errors | array[string] | ||
| ScanStatus | object | ||
| ScanningState | string | ||
| UploadProgress | int32 | ||
| ScanProgress | int32 |
Not Found
xxxxxxxxxx[ { "ScanId": "{string}", "Repository": { "ConnectionId": "{string}", "ConnectionName": "{string}", "RepositoryId": "{string}", "RepositoryName": "{string}", "RepositoryReference": "{string}", "RepositoryMetadata": "{string}" }, "ScanInformation": { "Malware": "{boolean}", "Secret": "{boolean}", "VulnerabilityIssues": { "critical": "{int32}", "high": "{int32}", "medium": "{int32}", "low": "{int32}", "unknown": "{int32}" }, "Licenses": { "BlockedLicensesCount": "{int32}", "Allowed": [ { "Id": "{string}", "Url": "{string}", "Category": "{string}", "UsageRestriction": { "Permissions": [ "{array[string]...}" ], "Conditions": [ "{array[string]...}" ], "Limitations": [ "{array[string]...}" ] } } ], "Blocked": [ { "Id": "{string}", "Url": "{string}", "Category": "{string}", "UsageRestriction": { "Permissions": [ "{array[string]...}" ], "Conditions": [ "{array[string]...}" ], "Limitations": [ "{array[string]...}" ] } } ] }, "Workflow": { "WorkflowId": "{string}", "WorkflowName": "{string}", "WorkflowType": "{string}", "WorkflowIsDeleted": "{boolean}", "Remediations": [ { "IsEnabled": "{boolean}", "Type": "{string}" } ] }, "Package": { "TotalPackages": "{int32}", "VulnerablePackages": "{int32}" }, "ScannedOn": "{date-time}", "StopTime": "{date-time}", "TriggerEvent": "{string}", "Errors": [ "{array[string]...}" ] }, "ScanStatus": { "ScanningState": "{string}", "UploadProgress": "{int32}", "ScanProgress": "{int32}" } }]Enumerate all latest scan results by service ID
| serviceId | string |
| Type | array | Enum: | |
| TimeFrame | string | Enum: | |
| Vulnerabilities | array | Enum: | |
| LicenseRisks | array | ||
| Status | array | Enum: | |
| TriggerEvent | array | ||
| Workflow | string | ||
| Connection | string | ||
| Secrets | boolean | ||
| Threats | boolean | ||
| Search | string | ||
| ConnectionType | string | Enum: |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scans/%7BserviceId%7D/latest' \ --header 'Authorization: Bearer {token}' \ --data Type={Type} \ --data TimeFrame={TimeFrame} \ --data Vulnerabilities={Vulnerabilities} \ --data LicenseRisks={LicenseRisks} \ --data Status={Status} \ --data TriggerEvent={TriggerEvent} \ --data Workflow={Workflow} \ --data Connection={Connection} \ --data Secrets={Secrets} \ --data Threats={Threats} \ --data Search={Search} \ --data ConnectionType={ConnectionType}Success
| object | object | ||
| ScanId | string | ||
| Repository | object | ||
| ConnectionId | string | ||
| ConnectionName | string | ||
| RepositoryId | string | ||
| RepositoryName | string | ||
| RepositoryReference | string | ||
| RepositoryMetadata | string | ||
| ScanInformation | object | ||
| Malware | boolean | ||
| Secret | boolean | ||
| VulnerabilityIssues | object | ||
| critical | int32 | ||
| high | int32 | ||
| medium | int32 | ||
| low | int32 | ||
| unknown | int32 | ||
| Licenses | object | ||
| BlockedLicensesCount | int32 | ||
| Allowed | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Blocked | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Workflow | object | ||
| WorkflowId | string | ||
| WorkflowName | string | ||
| WorkflowType | string | ||
| WorkflowIsDeleted | boolean | ||
| Remediations | array[object] | ||
| IsEnabled | boolean | ||
| Type | string | ||
| Package | object | ||
| TotalPackages | int32 | ||
| VulnerablePackages | int32 | ||
| ScannedOn | date-time | ||
| StopTime | date-time | ||
| TriggerEvent | string | ||
| Errors | array[string] | ||
| ScanStatus | object | ||
| ScanningState | string | ||
| UploadProgress | int32 | ||
| ScanProgress | int32 |
xxxxxxxxxx{ "ScanId": "{string}", "Repository": { "ConnectionId": "{string}", "ConnectionName": "{string}", "RepositoryId": "{string}", "RepositoryName": "{string}", "RepositoryReference": "{string}", "RepositoryMetadata": "{string}" }, "ScanInformation": { "Malware": "{boolean}", "Secret": "{boolean}", "VulnerabilityIssues": { "critical": "{int32}", "high": "{int32}", "medium": "{int32}", "low": "{int32}", "unknown": "{int32}" }, "Licenses": { "BlockedLicensesCount": "{int32}", "Allowed": [ { "Id": "{string}", "Url": "{string}", "Category": "{string}", "UsageRestriction": { "Permissions": [ "{array[string]...}" ], "Conditions": [ "{array[string]...}" ], "Limitations": [ "{array[string]...}" ] } } ], "Blocked": [ { "Id": "{string}", "Url": "{string}", "Category": "{string}", "UsageRestriction": { "Permissions": [ "{array[string]...}" ], "Conditions": [ "{array[string]...}" ], "Limitations": [ "{array[string]...}" ] } } ] }, "Workflow": { "WorkflowId": "{string}", "WorkflowName": "{string}", "WorkflowType": "{string}", "WorkflowIsDeleted": "{boolean}", "Remediations": [ { "IsEnabled": "{boolean}", "Type": "{string}" } ] }, "Package": { "TotalPackages": "{int32}", "VulnerablePackages": "{int32}" }, "ScannedOn": "{date-time}", "StopTime": "{date-time}", "TriggerEvent": "{string}", "Errors": [ "{array[string]...}" ] }, "ScanStatus": { "ScanningState": "{string}", "UploadProgress": "{int32}", "ScanProgress": "{int32}" }}Get scan overview by scan ID
| id | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scans/%7Bid%7D/overview' \ --header 'Authorization: Bearer {token}'Success
| array | array[object] | ||
| ScanId | string | ||
| Repository | object | ||
| ConnectionId | string | ||
| ConnectionName | string | ||
| RepositoryId | string | ||
| RepositoryName | string | ||
| RepositoryReference | string | ||
| RepositoryMetadata | string | ||
| ScanInformation | object | ||
| Malware | boolean | ||
| Secret | boolean | ||
| VulnerabilityIssues | object | ||
| critical | int32 | ||
| high | int32 | ||
| medium | int32 | ||
| low | int32 | ||
| unknown | int32 | ||
| Licenses | object | ||
| BlockedLicensesCount | int32 | ||
| Allowed | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Blocked | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Workflow | object | ||
| WorkflowId | string | ||
| WorkflowName | string | ||
| WorkflowType | string | ||
| WorkflowIsDeleted | boolean | ||
| Remediations | array[object] | ||
| IsEnabled | boolean | ||
| Type | string | ||
| Package | object | ||
| TotalPackages | int32 | ||
| VulnerablePackages | int32 | ||
| ScannedOn | date-time | ||
| StopTime | date-time | ||
| TriggerEvent | string | ||
| Errors | array[string] | ||
| ScanStatus | object | ||
| ScanningState | string | ||
| UploadProgress | int32 | ||
| ScanProgress | int32 |
xxxxxxxxxx[ { "ScanId": "{string}", "Repository": { "ConnectionId": "{string}", "ConnectionName": "{string}", "RepositoryId": "{string}", "RepositoryName": "{string}", "RepositoryReference": "{string}", "RepositoryMetadata": "{string}" }, "ScanInformation": { "Malware": "{boolean}", "Secret": "{boolean}", "VulnerabilityIssues": { "critical": "{int32}", "high": "{int32}", "medium": "{int32}", "low": "{int32}", "unknown": "{int32}" }, "Licenses": { "BlockedLicensesCount": "{int32}", "Allowed": [ { "Id": "{string}", "Url": "{string}", "Category": "{string}", "UsageRestriction": { "Permissions": [ "{array[string]...}" ], "Conditions": [ "{array[string]...}" ], "Limitations": [ "{array[string]...}" ] } } ], "Blocked": [ { "Id": "{string}", "Url": "{string}", "Category": "{string}", "UsageRestriction": { "Permissions": [ "{array[string]...}" ], "Conditions": [ "{array[string]...}" ], "Limitations": [ "{array[string]...}" ] } } ] }, "Workflow": { "WorkflowId": "{string}", "WorkflowName": "{string}", "WorkflowType": "{string}", "WorkflowIsDeleted": "{boolean}", "Remediations": [ { "IsEnabled": "{boolean}", "Type": "{string}" } ] }, "Package": { "TotalPackages": "{int32}", "VulnerablePackages": "{int32}" }, "ScannedOn": "{date-time}", "StopTime": "{date-time}", "TriggerEvent": "{string}", "Errors": [ "{array[string]...}" ] }, "ScanStatus": { "ScanningState": "{string}", "UploadProgress": "{int32}", "ScanProgress": "{int32}" } }]Enumerate all scan results by repository ID
| serviceId | string | ||
| repositoryId | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scans/%7BserviceId%7D/%7BrepositoryId%7D' \ --header 'Authorization: Bearer {token}'Success
| array | array[object] | ||
| ScanId | string | ||
| Repository | object | ||
| ConnectionId | string | ||
| ConnectionName | string | ||
| RepositoryId | string | ||
| RepositoryName | string | ||
| RepositoryReference | string | ||
| RepositoryMetadata | string | ||
| ScanInformation | object | ||
| Malware | boolean | ||
| Secret | boolean | ||
| VulnerabilityIssues | object | ||
| critical | int32 | ||
| high | int32 | ||
| medium | int32 | ||
| low | int32 | ||
| unknown | int32 | ||
| Licenses | object | ||
| BlockedLicensesCount | int32 | ||
| Allowed | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Blocked | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Workflow | object | ||
| WorkflowId | string | ||
| WorkflowName | string | ||
| WorkflowType | string | ||
| WorkflowIsDeleted | boolean | ||
| Remediations | array[object] | ||
| IsEnabled | boolean | ||
| Type | string | ||
| Package | object | ||
| TotalPackages | int32 | ||
| VulnerablePackages | int32 | ||
| ScannedOn | date-time | ||
| StopTime | date-time | ||
| TriggerEvent | string | ||
| Errors | array[string] | ||
| ScanStatus | object | ||
| ScanningState | string | ||
| UploadProgress | int32 | ||
| ScanProgress | int32 |
xxxxxxxxxx[ { "ScanId": "{string}", "Repository": { "ConnectionId": "{string}", "ConnectionName": "{string}", "RepositoryId": "{string}", "RepositoryName": "{string}", "RepositoryReference": "{string}", "RepositoryMetadata": "{string}" }, "ScanInformation": { "Malware": "{boolean}", "Secret": "{boolean}", "VulnerabilityIssues": { "critical": "{int32}", "high": "{int32}", "medium": "{int32}", "low": "{int32}", "unknown": "{int32}" }, "Licenses": { "BlockedLicensesCount": "{int32}", "Allowed": [ { "Id": "{string}", "Url": "{string}", "Category": "{string}", "UsageRestriction": { "Permissions": [ "{array[string]...}" ], "Conditions": [ "{array[string]...}" ], "Limitations": [ "{array[string]...}" ] } } ], "Blocked": [ { "Id": "{string}", "Url": "{string}", "Category": "{string}", "UsageRestriction": { "Permissions": [ "{array[string]...}" ], "Conditions": [ "{array[string]...}" ], "Limitations": [ "{array[string]...}" ] } } ] }, "Workflow": { "WorkflowId": "{string}", "WorkflowName": "{string}", "WorkflowType": "{string}", "WorkflowIsDeleted": "{boolean}", "Remediations": [ { "IsEnabled": "{boolean}", "Type": "{string}" } ] }, "Package": { "TotalPackages": "{int32}", "VulnerablePackages": "{int32}" }, "ScannedOn": "{date-time}", "StopTime": "{date-time}", "TriggerEvent": "{string}", "Errors": [ "{array[string]...}" ] }, "ScanStatus": { "ScanningState": "{string}", "UploadProgress": "{int32}", "ScanProgress": "{int32}" } }]Enumerate all scan schedules
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scans/schedules' \ --header 'Authorization: Bearer {token}'Success
| array | array[object] | ||
| Id | string | ||
| WorkflowId | string | ||
| StorageId | string | ||
| UserId | string | ||
| Name | string | ||
| Priority | string | Enum: | |
| CreatedAt | date-time | ||
| LastUpdated | date-time | ||
| LastScanTime | date-time | ||
| NextScanTime | date-time | ||
| RecurrenceType | string | Enum: | |
| StartDate | date-time | ||
| TimeToStart | date-time | ||
| EveryNumberOfHours | int32 | ||
| EveryNumberOfDays | int32 | ||
| EveryNumberOfWeeks | int32 | ||
| EveryNumberOfMonths | int32 | ||
| DaysOfWeek | array[string] | Enum: | |
| DayOfMonth | int32 |
xxxxxxxxxx[ { "Id": "{string}", "WorkflowId": "{string}", "StorageId": "{string}", "UserId": "{string}", "Name": "{string}", "Priority": "{string}", "CreatedAt": "{date-time}", "LastUpdated": "{date-time}", "LastScanTime": "{date-time}", "NextScanTime": "{date-time}", "RecurrenceType": "{string}", "StartDate": "{date-time}", "TimeToStart": "{date-time}", "EveryNumberOfHours": "{int32}", "EveryNumberOfDays": "{int32}", "EveryNumberOfWeeks": "{int32}", "EveryNumberOfMonths": "{int32}", "DaysOfWeek": [ "{array[string]...}" ], "DayOfMonth": "{int32}" }]Enumerate files by scan ID
| scanId | string |
| page | integer | ||
| pageSize | integer | ||
| search | string | ||
| includeArchives | boolean |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scans/%7BscanId%7D/files' \ --header 'Authorization: Bearer {token}' \ --data page={page} \ --data pageSize={pageSize} \ --data search={search} \ --data includeArchives={includeArchives}Success
| array | array[object] | ||
| Id | string | ||
| ScanId | string | ||
| StorageId | string | ||
| ScanWorkflowSnapshotId | string | ||
| MetaDefenderCoreUrl | string | ||
| Name | string | ||
| Path | string | ||
| Hash | string | ||
| ObjectStorageMetadata | string | ||
| Size | int64 | ||
| LastModified | date-time | ||
| StorageLocation | string | ||
| PathForDisplay | string | ||
| ObjectIdentityId | string | ||
| ObjectIdentityHash | string | ||
| ScanResultId | string | ||
| ProgressUpload | int32 | ||
| ProgressScan | int32 | ||
| ProcessingState | string | Enum: | |
| ExceptionDetails | string | ||
| Created | date-time | ||
| DiscoveryStarted | date-time | ||
| DiscoveryStartedDaySec | int64 | ||
| StreamingStartedTime | date-time | ||
| StreamingCompletedTime | date-time | ||
| StreamingTimeSpanMs | int64 | ||
| ScanCompletedTime | date-time | ||
| ProcessingTimeSpanMs | int64 | ||
| ProcessingFailedTime | date-time | ||
| ProcessingRetryCount | int32 | ||
| CreatedAt | date-time | ||
| LastUpdated | date-time | ||
| TenantId | string |
Not Found
xxxxxxxxxx[ { "Id": "{string}", "ScanId": "{string}", "StorageId": "{string}", "ScanWorkflowSnapshotId": "{string}", "MetaDefenderCoreUrl": "{string}", "Name": "{string}", "Path": "{string}", "Hash": "{string}", "ObjectStorageMetadata": "{string}", "Size": "{int64}", "LastModified": "{date-time}", "StorageLocation": "{string}", "PathForDisplay": "{string}", "ObjectIdentityId": "{string}", "ObjectIdentityHash": "{string}", "ScanResultId": "{string}", "ProgressUpload": "{int32}", "ProgressScan": "{int32}", "ProcessingState": "{string}", "ExceptionDetails": "{string}", "Created": "{date-time}", "DiscoveryStarted": "{date-time}", "DiscoveryStartedDaySec": "{int64}", "StreamingStartedTime": "{date-time}", "StreamingCompletedTime": "{date-time}", "StreamingTimeSpanMs": "{int64}", "ScanCompletedTime": "{date-time}", "ProcessingTimeSpanMs": "{int64}", "ProcessingFailedTime": "{date-time}", "ProcessingRetryCount": "{int32}", "CreatedAt": "{date-time}", "LastUpdated": "{date-time}", "TenantId": "{string}" }]Get the core result of a file by its scan result ID
| scanResultId | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scans/%7BscanResultId%7D/core-result' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| extracted | object | ||
| data | string | ||
| scan | int32 | ||
| detected | int32 | ||
| files | array[object] | ||
| display | string | ||
| data | string | ||
| file | string | ||
| file | string | ||
| scan | int32 | ||
| scan | int32 | ||
| detected | int32 | ||
| scanned | int32 | ||
| progress | int32 | ||
| file | int64 | ||
| process | object | ||
| post | object | ||
| actions | string | ||
| actions | string | ||
| converted | string | ||
| copy | string | ||
| converted | string | ||
| sanitization | object | ||
| failure | string | ||
| progress | int32 | ||
| user | string | ||
| profile | string | ||
| result | string | ||
| blocked | string | ||
| file | boolean | ||
| processing | number | ||
| queue | number | ||
| files | int32 | ||
| scan | object | ||
| scan | object | ||
| * | object | ||
| threat | string | ||
| scan | int32 | ||
| def | string | ||
| scan | number | ||
| wait | number | ||
| eng | string | ||
| data | string | ||
| scan | int32 | ||
| start | string | ||
| total | number | ||
| total | int32 | ||
| progress | int32 | ||
| scan | string | ||
| file | object | ||
| file | int64 | ||
| upload | string | ||
| md5 | string | ||
| sha1 | string | ||
| sha256 | string | ||
| file | string | ||
| file | string | ||
| file | string | ||
| file | string | ||
| file | string | ||
| display | string | ||
| original | string | ||
| process | object | ||
| post | object | ||
| actions | string | ||
| actions | string | ||
| converted | string | ||
| copy | string | ||
| converted | string | ||
| sanitization | object | ||
| failure | string | ||
| progress | int32 | ||
| user | string | ||
| profile | string | ||
| result | string | ||
| blocked | string | ||
| file | boolean | ||
| processing | number | ||
| queue | number | ||
| data | string | ||
| source | string | ||
| scanned | string | ||
| dlp | object | ||
| hits | integer | ||
| verdict | int64 | ||
| sbom | object | ||
| final | object | ||
| blocked | boolean | ||
| licensing | object | ||
| allowed | int32 | ||
| blocked | int32 | ||
| unknown | int32 | ||
| unsupported | int32 | ||
| severity | string | Enum: | |
| total | int32 | ||
| verdict | string | ||
| verdict | array[string] | ||
| vulnerability | object | ||
| critical | int32 | ||
| high | int32 | ||
| medium | int32 | ||
| low | int32 | ||
| unknown | int32 | ||
| vulnerable | int32 | ||
| overview | object | ||
| is | boolean | ||
| os | object | ||
| os | string | ||
| os | string | ||
| scan | string | ||
| steps | array[object] | ||
| command | string | ||
| license | string | ||
| licensing | object | ||
| allowed | int32 | ||
| blocked | int32 | ||
| unknown | int32 | ||
| unsupported | int32 | ||
| packages | array[object] | ||
| authors | string | ||
| release | string | ||
| arch | string | ||
| ecosystem | string | ||
| group | string | ||
| archive | boolean | ||
| executable | boolean | ||
| uid | string | ||
| os | string | ||
| os | string | ||
| package | string | ||
| package | string | ||
| package | string | ||
| up | boolean | ||
| step | int32 | ||
| vulnerability | int32 | ||
| vulnerability | object | ||
| critical | int32 | ||
| high | int32 | ||
| medium | int32 | ||
| low | int32 | ||
| unknown | int32 | ||
| dependencies | int32 | ||
| dependencies | object | ||
| critical | int32 | ||
| high | int32 | ||
| medium | int32 | ||
| low | int32 | ||
| unknown | int32 | ||
| sha256 | string | ||
| severity | string | Enum: | |
| package | int32 | ||
| vulnerable | int32 | ||
| vulnerable | int32 | ||
| packages | array[object] | ||
| authors | string | ||
| release | string | ||
| ecosystem | string | ||
| group | string | ||
| archive | boolean | ||
| executable | boolean | ||
| uid | string | ||
| licenses | object | ||
| allowed | array[object] | ||
| id | string | ||
| url | string | ||
| category | string | ||
| usage | object | ||
| permissions | array[string] | ||
| conditions | array[string] | ||
| limitations | array[string] | ||
| blocked | array[object] | ||
| id | string | ||
| url | string | ||
| category | string | ||
| usage | object | ||
| permissions | array[string] | ||
| conditions | array[string] | ||
| limitations | array[string] | ||
| package | string | ||
| package | string | ||
| target | string | ||
| latest | object | ||
| version | string | ||
| release | string | ||
| hashes | array[object] | ||
| sha256 | string | ||
| file | string | ||
| vulnerabilities | array[object] | ||
| id | string | ||
| severity | string | Enum: | |
| source | string | ||
| fixed | string | ||
| cwes | array[string] | ||
| type | string | ||
| vulnerability | object | ||
| critical | int32 | ||
| high | int32 | ||
| medium | int32 | ||
| low | int32 | ||
| unknown | int32 | ||
| dependencies | array[object] | ||
| ecosystem | string | ||
| group | string | ||
| package | string | ||
| package | string | ||
| vulnerabilities | array[object] | ||
| id | string | ||
| severity | string | Enum: | |
| source | string | ||
| fixed | string | ||
| cwes | array[string] | ||
| type | string | ||
| vulnerability | object | ||
| critical | int32 | ||
| high | int32 | ||
| medium | int32 | ||
| low | int32 | ||
| unknown | int32 | ||
| package | string | ||
| up | boolean | ||
| dependencies | int32 | ||
| dependencies | int32 | ||
| dependencies | object | ||
| critical | int32 | ||
| high | int32 | ||
| medium | int32 | ||
| low | int32 | ||
| unknown | int32 | ||
| vulnerability | int32 | ||
| vulnerability | object | ||
| critical | int32 | ||
| high | int32 | ||
| medium | int32 | ||
| low | int32 | ||
| unknown | int32 | ||
| has | boolean | ||
| package | int32 | ||
| timestamp | string | ||
| vulnerable | int32 | ||
| vulnerable | int32 | ||
| result | string | ||
| vulnerability | object | ||
| result | object | ||
| code | int64 | ||
| hash | string | ||
| method | int64 | ||
| timestamp | string | ||
| timing | int64 | ||
| detected | object | ||
| has | boolean | ||
| is | boolean | ||
| product | object | ||
| id | int64 | ||
| name | string | ||
| remediation | string | ||
| severity | string | ||
| sig | string | ||
| signature | int64 | ||
| vendor | object | ||
| id | int64 | ||
| name | string | ||
| version | string | ||
| version | object | ||
| count | int64 | ||
| feed | int64 | ||
| version | string | ||
| vulnerabilities | array[object] | ||
| description | string | ||
| details | object | ||
| cpe | string | ||
| cve | string | ||
| cvss | object | ||
| access | string | ||
| access | string | ||
| authentication | string | ||
| availability | string | ||
| confidentiality | string | ||
| generated | string | ||
| integrity | string | ||
| score | string | ||
| source | string | ||
| cvss | object | ||
| attack | string | ||
| attack | string | ||
| availability | string | ||
| base | string | ||
| base | string | ||
| confidentiality | string | ||
| exploitability | string | ||
| impact | string | ||
| integrity | string | ||
| privileges | string | ||
| scope | string | ||
| user | string | ||
| vector | string | ||
| cwe | string | ||
| last | string | ||
| published | string | ||
| references | array[string] | ||
| severity | string | ||
| severity | int32 | ||
| static | int64 | ||
| engine | object | ||
| * | array[object] | ||
| abandoned | boolean | ||
| active | boolean | ||
| def | string | ||
| download | int32 | ||
| download | date-time | ||
| eng | string | ||
| eng | string | ||
| eng | string | ||
| eng | string | ||
| engine | string | ||
| pinned | boolean | ||
| state | string | ||
| type | string | ||
| db | string | ||
| SessionCookie | string | ||
| IsFailed | boolean |
xxxxxxxxxx{ "extracted_files": {...}, "scan_results": {...}, "file_info": {...}, "process_info": {...}, "data_id": "{string}", "source": "{string}", "scanned_on": "{string}", "dlp_info": {...}, "sbom_info": {...}, "vulnerability_info": {...}, "engine_stat": {}, "SessionCookie": "{string}", "IsFailed": "{boolean}"}Get the core results of files in an archive by their scan result ID
| scanResultId | string |
| count | integer | ||
| offset | integer |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/scans/%7BscanResultId%7D/archive' \ --header 'Authorization: Bearer {token}' \ --data count={count} \ --data offset={offset}Success
| object | object | ||
| CoreScanResults | array[object] | ||
| ExtractedFiles | object | ||
| DataId | string | ||
| ScanResultI | int32 | ||
| DetectedBy | int32 | ||
| FilesInArchive | array[object] | ||
| DisplayName | string | ||
| DataId | string | ||
| FileType | string | ||
| FileTypeDescription | string | ||
| ScanResultI | int32 | ||
| ScanAllResultI | int32 | ||
| DetectedBy | int32 | ||
| ScannedWith | int32 | ||
| ProgressPercentage | int32 | ||
| FileSize | int64 | ||
| ProcessInfo | object | ||
| PostProcessing | object | ||
| ActionsRan | string | ||
| ActionsFailed | string | ||
| ConvertedTo | string | ||
| CopyMoveDestination | string | ||
| ConvertedDestination | string | ||
| SanitizationDetails | object | ||
| FailureCategory | string | ||
| ProgressPercentage | int32 | ||
| UserAgent | string | ||
| Profile | string | ||
| Result | string | ||
| BlockedReason | string | ||
| FileTypeSkippedScan | boolean | ||
| ProcessingTime | number | ||
| QueueTime | number | ||
| FilesExtractedCount | int32 | ||
| ScanResults | object | ||
| ScanDetails | object | ||
| * | object | ||
| ThreatFound | string | ||
| ScanResultI | int32 | ||
| DefTime | string | ||
| ScanTime | number | ||
| WaitTime | number | ||
| EngId | string | ||
| DataId | string | ||
| ScanAllResultI | int32 | ||
| StartTime | string | ||
| TotalTime | number | ||
| TotalAvs | int32 | ||
| ProgressPercentage | int32 | ||
| ScanAllResultA | string | ||
| FileInfo | object | ||
| FileSize | int64 | ||
| UploadTimestamp | string | ||
| Md5 | string | ||
| Sha1 | string | ||
| Sha256 | string | ||
| FileTypeCategory | string | ||
| FileTypeCategoryCloud | string | ||
| FileTypeDescription | string | ||
| FileTypeExtension | string | ||
| FileTypeExtensionCloud | string | ||
| DisplayName | string | ||
| OriginalFilePath | string | ||
| ProcessInfo | object | ||
| PostProcessing | object | ||
| ActionsRan | string | ||
| ActionsFailed | string | ||
| ConvertedTo | string | ||
| CopyMoveDestination | string | ||
| ConvertedDestination | string | ||
| SanitizationDetails | object | ||
| FailureCategory | string | ||
| ProgressPercentage | int32 | ||
| UserAgent | string | ||
| Profile | string | ||
| Result | string | ||
| BlockedReason | string | ||
| FileTypeSkippedScan | boolean | ||
| ProcessingTime | number | ||
| QueueTime | number | ||
| DataId | string | ||
| Source | string | ||
| ScannedOn | string | ||
| DlpInfo | object | ||
| Hits | object | ||
| DisplayName | string | ||
| Hits | array[object] | ||
| After | string | ||
| Before | string | ||
| Hit | string | ||
| Certainty | string | ||
| CertaintyScore | int64 | ||
| Severity | string | Enum: | |
| Verdict | int64 | ||
| SbomInfo | object | ||
| FinalVerdict | object | ||
| Blocked | boolean | ||
| Severity | string | Enum: | |
| Verdict | string | ||
| OverviewReport | object | ||
| Steps | array[object] | ||
| Command | string | ||
| Packages | array[object] | ||
| Authors | string | ||
| Arch | string | ||
| Ecosystem | string | ||
| Group | string | ||
| Archive | boolean | ||
| Executable | boolean | ||
| Uid | string | ||
| Licenses | object | ||
| Allowed | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Blocked | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| OsName | string | ||
| Latest | object | ||
| Version | string | ||
| Hashes | array[object] | ||
| Sha256 | string | ||
| Vulnerabilities | array[object] | ||
| Id | string | ||
| Source | string | ||
| Cwes | array[string] | ||
| Type | string | ||
| VulnerabilityCounts | object | ||
| Critical | int32 | ||
| High | int32 | ||
| Medium | int32 | ||
| Low | int32 | ||
| Unknown | int32 | ||
| Dependencies | array[object] | ||
| Ecosystem | string | ||
| Group | string | ||
| VulnerabilityCounts | object | ||
| Critical | int32 | ||
| High | int32 | ||
| Medium | int32 | ||
| Low | int32 | ||
| Unknown | int32 | ||
| UpToDate | boolean | ||
| Step | int32 | ||
| Sha256 | string | ||
| Severity | string | Enum: | |
| Packages | array[object] | ||
| Authors | string | ||
| Ecosystem | string | ||
| Group | string | ||
| Archive | boolean | ||
| Executable | boolean | ||
| Uid | string | ||
| Licenses | object | ||
| Allowed | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Blocked | array[object] | ||
| Id | string | ||
| Url | string | ||
| Category | string | ||
| UsageRestriction | object | ||
| Permissions | array[string] | ||
| Conditions | array[string] | ||
| Limitations | array[string] | ||
| Target | string | ||
| Latest | object | ||
| Version | string | ||
| Hashes | array[object] | ||
| Sha256 | string | ||
| Vulnerabilities | array[object] | ||
| Id | string | ||
| Source | string | ||
| Cwes | array[string] | ||
| Type | string | ||
| VulnerabilityCounts | object | ||
| Critical | int32 | ||
| High | int32 | ||
| Medium | int32 | ||
| Low | int32 | ||
| Unknown | int32 | ||
| Dependencies | array[object] | ||
| Ecosystem | string | ||
| Group | string | ||
| VulnerabilityCounts | object | ||
| Critical | int32 | ||
| High | int32 | ||
| Medium | int32 | ||
| Low | int32 | ||
| Unknown | int32 | ||
| UpToDate | boolean | ||
| VulnerabilityCount | int32 | ||
| VulnerabilityCounts | object | ||
| Critical | int32 | ||
| High | int32 | ||
| Medium | int32 | ||
| Low | int32 | ||
| Unknown | int32 | ||
| HasPeInfo | boolean | ||
| Timestamp | string | ||
| VulnerabilityInfo | object | ||
| VulnerabilityInfoResult | object | ||
| Code | int64 | ||
| Hash | string | ||
| Method | int64 | ||
| TimeStamp | string | ||
| Timing | int64 | ||
| DetectedProduct | object | ||
| HasVulnerability | boolean | ||
| IsCurrent | boolean | ||
| Product | object | ||
| Id | int64 | ||
| Name | string | ||
| RemediationLink | string | ||
| Severity | string | ||
| SigName | string | ||
| Signature | int64 | ||
| Vendor | object | ||
| Id | int64 | ||
| Name | string | ||
| Version | string | ||
| VersionData | object | ||
| CountBehind | int64 | ||
| FeedId | int64 | ||
| Version | string | ||
| Vulnerabilities | array[object] | ||
| Description | string | ||
| Details | object | ||
| Cpe | string | ||
| Cve | string | ||
| Cvss | object | ||
| AccessComplexity | string | ||
| AccessVector | string | ||
| Authentication | string | ||
| AvailabilityImpact | string | ||
| ConfidentialityImpact | string | ||
| GeneratedOnEpoch | string | ||
| IntegrityImpact | string | ||
| Score | string | ||
| Source | string | ||
| Cvss3 | object | ||
| AttackComplexity | string | ||
| AttackVector | string | ||
| AvailabilityImpact | string | ||
| BaseScore | string | ||
| BaseSeverity | string | ||
| ConfidentialityImpact | string | ||
| ExploitabilityScore | string | ||
| ImpactScore | string | ||
| IntegrityImpact | string | ||
| PrivilegesRequired | string | ||
| Scope | string | ||
| UserInteraction | string | ||
| VectorString | string | ||
| Cwe | string | ||
| LastModifiedEpoch | string | ||
| PublishedEpoch | string | ||
| References | array[string] | ||
| Severity | string | ||
| SeverityIndex | int32 | ||
| StaticId | int64 | ||
| Engines | object | ||
| * | array[object] | ||
| Abandoned | boolean | ||
| Active | boolean | ||
| DefTime | string | ||
| DownloadProgress | int32 | ||
| EngId | string | ||
| EngName | string | ||
| EngType | string | ||
| EngineVersion | string | ||
| EngineType | string | ||
| Pinned | boolean | ||
| State | string | ||
| Type | string | ||
| DbVer | string | ||
| SessionCookie | string | ||
| IsFailed | boolean | ||
| HasMore | boolean |
xxxxxxxxxx{ "CoreScanResults": [...], "HasMore": "{boolean}"}Get the SMTP configuration
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/smtp' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Smtp | object | ||
| Id | string | ||
| Host | string | ||
| Port | int32 | ||
| SenderAddress | string | ||
| SenderName | string | ||
| Domain | string | ||
| BaseUrl | string | ||
| UserName | string | ||
| Password | string | ||
| SecureSocketOption | string | Enum: | |
| IgnoreCertWarnings | boolean | ||
| IsEnabled | boolean | ||
| TenantId | string | ||
| CreatedAt | date-time | ||
| LastUpdated | date-time |
Bad Request
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Smtp": { "Id": "{string}", "Host": "{string}", "Port": "{int32}", "SenderAddress": "{string}", "SenderName": "{string}", "Domain": "{string}", "BaseUrl": "{string}", "UserName": "{string}", "Password": "{string}", "SecureSocketOption": "{string}", "IgnoreCertWarnings": "{boolean}", "IsEnabled": "{boolean}", "TenantId": "{string}", "CreatedAt": "{date-time}", "LastUpdated": "{date-time}" }}Update the SMTP configuration
| object | object | ||
| Host | string | ||
| BaseUrl | string | ||
| Port | int32 | ||
| SenderAddress | string | ||
| SenderName | string | ||
| Domain | string | ||
| Username | string | ||
| Password | string | ||
| SecureSocketOption | string | Enum: | |
| IgnoreCertWarnings | boolean | ||
| IsEnabled | boolean |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/smtp' \ --header 'Authorization: Bearer {token}' \ --data '{ "Host": "{string}", "BaseUrl": "{string}", "Port": "{int32}", "SenderAddress": "{string}", "SenderName": "{string}", "Domain": "{string}", "Username": "{string}", "Password": "{string}", "SecureSocketOption": "{string}", "IgnoreCertWarnings": "{boolean}", "IsEnabled": "{boolean}"}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string |
Bad Request
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}"}Get All Jira Configurations
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/jira' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| JiraEntries | array[object] | ||
| Id | string | ||
| Name | string | ||
| ApiKey | string | ||
| BaseAddress | string | ||
| ProductAddress | string | ||
| Username | string | ||
| TenantId | string | ||
| CreatedAt | date-time | ||
| LastUpdated | date-time |
Bad Request
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "JiraEntries": [ { "Id": "{string}", "Name": "{string}", "ApiKey": "{string}", "BaseAddress": "{string}", "ProductAddress": "{string}", "Username": "{string}", "TenantId": "{string}", "CreatedAt": "{date-time}", "LastUpdated": "{date-time}" } ]}Add Jira Configuration
| object | object | ||
| Name | string | ||
| ApiKey | string | ||
| BaseAddress | string | ||
| ProductAddress | string | ||
| Username | string |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/jira' \ --header 'Authorization: Bearer {token}' \ --data '{ "Name": "{string}", "ApiKey": "{string}", "BaseAddress": "{string}", "ProductAddress": "{string}", "Username": "{string}"}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string |
Bad Request
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}"}Get Jira Configuration by ID
| id | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/jira/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Jira | object | ||
| Id | string | ||
| Name | string | ||
| ApiKey | string | ||
| BaseAddress | string | ||
| ProductAddress | string | ||
| Username | string | ||
| TenantId | string | ||
| CreatedAt | date-time | ||
| LastUpdated | date-time |
Not Found
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Jira": { "Id": "{string}", "Name": "{string}", "ApiKey": "{string}", "BaseAddress": "{string}", "ProductAddress": "{string}", "Username": "{string}", "TenantId": "{string}", "CreatedAt": "{date-time}", "LastUpdated": "{date-time}" }}Update Jira Configuration by ID
| id | string |
| object | object | ||
| Name | string | ||
| ApiKey | string | ||
| BaseAddress | string | ||
| ProductAddress | string | ||
| Username | string |
xxxxxxxxxxcurl --request PUT \ --url 'https://opswat.developerhub.io/api/v1/jira/%7Bid%7D' \ --header 'Authorization: Bearer {token}' \ --data '{ "Name": "{string}", "ApiKey": "{string}", "BaseAddress": "{string}", "ProductAddress": "{string}", "Username": "{string}"}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string |
Not Found
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}"}Delete Jira Configuration by ID
| id | string |
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/jira/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| JiraId | string |
Not Found
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "JiraId": "{string}"}Get Jira Projects by Connection ID
| id | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/jira/%7Bid%7D/projects' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Projects | array[object] | ||
| Id | string | ||
| Name | string |
Not Found
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Projects": [ { "Id": "{string}", "Name": "{string}" } ]}Get users
| Type | string | Enum: | |
| StartIndex | integer | ||
| Count | integer | ||
| SearchTerm | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/users' \ --header 'Authorization: Bearer {token}' \ --data Type={Type} \ --data StartIndex={StartIndex} \ --data Count={Count} \ --data SearchTerm={SearchTerm}Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| EnumerateUsersDto | object | ||
| Entries | array[object] | ||
| UserId | string | ||
| Username | string | ||
| FullName | string | ||
| string | |||
| Role | string | Enum: | |
| ShowTutorial | boolean | ||
| TotalCount | int64 |
Bad Request
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "EnumerateUsersDto": { "Entries": [ { "UserId": "{string}", "Username": "{string}", "FullName": "{string}", "Email": "{string}", "Role": "{string}", "ShowTutorial": "{boolean}" } ], "TotalCount": "{int64}" }}Update a user
| object | object | ||
| UserId | string | ||
| Role | string | Enum: | |
| UserName | string | ||
| FullName | string | ||
| string | |||
| CurrentPassword | string | ||
| NewPassword | string | ||
| ShowTutorial | boolean |
xxxxxxxxxxcurl --request PUT \ --url 'https://opswat.developerhub.io/api/v1/users' \ --header 'Authorization: Bearer {token}' \ --data '{ "UserId": "{string}", "Role": "{string}", "UserName": "{string}", "FullName": "{string}", "Email": "{string}", "CurrentPassword": "{string}", "NewPassword": "{string}", "ShowTutorial": "{boolean}"}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string |
Bad Request
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}"}Add a new user
| object | object | ||
| FullName | string | ||
| UserName | string | ||
| Password | string | ||
| string | |||
| Role | string | Enum: |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/users' \ --header 'Authorization: Bearer {token}' \ --data '{ "FullName": "{string}", "UserName": "{string}", "Password": "{string}", "Email": "{string}", "Role": "{string}"}'Success
| object | object | ||
| CreateUserParameters | object | ||
| FullName | string | ||
| UserName | string | ||
| Password | string | ||
| string | |||
| Role | string | Enum: | |
| CurrentUserId | string |
Bad Request
xxxxxxxxxx{ "CreateUserParameters": { "FullName": "{string}", "UserName": "{string}", "Password": "{string}", "Email": "{string}", "Role": "{string}" }, "CurrentUserId": "{string}"}Get current user
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/user' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| UserDto | object | ||
| UserId | string | ||
| Username | string | ||
| FullName | string | ||
| string | |||
| Role | string | Enum: | |
| ShowTutorial | boolean |
Bad Request
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "UserDto": { "UserId": "{string}", "Username": "{string}", "FullName": "{string}", "Email": "{string}", "Role": "{string}", "ShowTutorial": "{boolean}" }}Delete a user
| userId | string |
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/users/%7BuserId%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string |
Bad Request
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}"}Login user
| object | object | ||
| Username | string | ||
| Password | string |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/user/login' \ --header 'Authorization: Bearer {token}' \ --data '{ "Username": "{string}", "Password": "{string}"}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| JwtToken | object | ||
| Token | string |
Bad Request
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "JwtToken": { "Token": "{string}" }}It will remove all tokens of this user
| userId | string |
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/user/login/%7BuserId%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string |
Bad Request
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}"}Get new Access Token
| object | object | ||
| AccessToken | string |
xxxxxxxxxxcurl --request PUT \ --url 'https://opswat.developerhub.io/api/v1/user/token' \ --header 'Authorization: Bearer {token}' \ --data '{ "AccessToken": "{string}"}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| JwtToken | object | ||
| Token | string |
Bad Request
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "JwtToken": { "Token": "{string}" }}Request password reset
| object | object | ||
| EmailInput | string | minLength: 1 |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/user/password/request-reset' \ --header 'Authorization: Bearer {token}' \ --data '{ "EmailInput": "{string}"}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}"}Reset user password
| object | object | ||
| NewPassword | string | minLength: 12 | |
| NewPasswordConfirmation | string | minLength: 12 | |
| SecureToken | string | ||
| UserId | string |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/user/password/new-password' \ --header 'Authorization: Bearer {token}' \ --data '{ "NewPassword": "{string}", "NewPasswordConfirmation": "{string}", "SecureToken": "{string}", "UserId": "{string}"}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| User | object | ||
| UserId | string | ||
| Username | string | ||
| FullName | string | ||
| string | |||
| Role | string | Enum: | |
| ShowTutorial | boolean |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "User": { "UserId": "{string}", "Username": "{string}", "FullName": "{string}", "Email": "{string}", "Role": "{string}", "ShowTutorial": "{boolean}" }}Version
Manage versions
Get application version
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/version' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| Version | string | ||
| LastSupportedConfigVersion | string |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "Version": "{string}", "LastSupportedConfigVersion": "{string}"}Webhook
Manage your scans
Handle No-Auth Scan Event
Handles a scan event triggered by a webhook. Requires a custom header and a body.
| routeParameter | string |
| No request body |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/webhook/hmac/%7BrouteParameter%7D' \ --header 'X-Hub-Signature: {X-Hub-Signature}'Success
| No response body |
Bad Request
Server Error
xxxxxxxxxxNo responseHandle Scan Event
Handles a scan event triggered by a webhook. Requires a custom body.
| routeParameter | string |
| No request body |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/webhook/%7BrouteParameter%7D' \ --header 'API Key: {API Key}'Success
| No response body |
Bad Request
Server Error
xxxxxxxxxxNo responseList all workflows
| includeDeleted | boolean |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/workflows' \ --header 'Authorization: Bearer {token}' \ --data includeDeleted={includeDeleted}Success
| array | array[object] | ||
| Id | string | ||
| Name | string | ||
| Description | string | ||
| UserId | string | ||
| ScanConfigurationId | string | ||
| Deleted | boolean | ||
| Type | string | Enum: | |
| RecurrencePattern | object | ||
| Type | string | Enum: | |
| HourlyRecurrence | object | ||
| EveryNumberOfHours | int32 | ||
| DailyRecurrence | object | ||
| EveryNumberOfDays | int32 | ||
| WeeklyRecurrence | object | ||
| DaysOfWeek | array[string] | Enum: | |
| EveryNumberOfWeeks | int32 | ||
| MonthlyRecurrence | object | ||
| EveryNumberOfMonths | int32 | ||
| DayOfMonth | int32 | ||
| ScanSources | array[object] | ||
| ServiceId | string | ||
| ServiceName | string | ||
| Repositories | array[object] | ||
| RepositoryId | string | ||
| RepositoryName | string | ||
| Type | string | ||
| Connection | string | ||
| PackageType | string | ||
| Organization | string | ||
| Registry | string | ||
| ReferencesToScan | array[string] | ||
| Remediations | array[object] | ||
| IsEnabled | boolean | ||
| Type | string | ||
| FileDiscoveryFilterConfiguration | object | ||
| IsEnabled | boolean | ||
| DaysBeforeRescan | int32 | ||
| FilterStrategy | string | Enum: |
xxxxxxxxxx[ { "Id": "{string}", "Name": "{string}", "Description": "{string}", "UserId": "{string}", "ScanConfigurationId": "{string}", "Deleted": "{boolean}", "Type": "{string}", "RecurrencePattern": { "Type": "{string}", "HourlyRecurrence": { "EveryNumberOfHours": "{int32}" }, "DailyRecurrence": { "EveryNumberOfDays": "{int32}" }, "WeeklyRecurrence": { "DaysOfWeek": [ "{array[string]...}" ], "EveryNumberOfWeeks": "{int32}" }, "MonthlyRecurrence": { "EveryNumberOfMonths": "{int32}", "DayOfMonth": "{int32}" } }, "ScanSources": [ { "ServiceId": "{string}", "ServiceName": "{string}", "Repositories": [ { "RepositoryId": "{string}", "RepositoryName": "{string}", "Type": "{string}", "Connection": "{string}", "PackageType": "{string}", "Organization": "{string}", "Registry": "{string}", "ReferencesToScan": [ "{array[string]...}" ] } ] } ], "Remediations": [ { "IsEnabled": "{boolean}", "Type": "{string}" } ], "FileDiscoveryFilterConfiguration": { "IsEnabled": "{boolean}", "DaysBeforeRescan": "{int32}", "FilterStrategy": "{string}" } }]Create a workflow
| object | object | ||
| Name | string | ||
| Description | string | ||
| ScanConfigurationId | string | ||
| Type | string | Enum: | |
| RecurrencePattern | object | ||
| Type | string | Enum: | |
| HourlyRecurrence | object | ||
| EveryNumberOfHours | int32 | ||
| DailyRecurrence | object | ||
| EveryNumberOfDays | int32 | ||
| WeeklyRecurrence | object | ||
| DaysOfWeek | array[string] | Enum: | |
| EveryNumberOfWeeks | int32 | ||
| MonthlyRecurrence | object | ||
| EveryNumberOfMonths | int32 | ||
| DayOfMonth | int32 | ||
| ScanSources | array[object] | ||
| ServiceId | string | ||
| ServiceName | string | ||
| Repositories | array[object] | ||
| RepositoryId | string | ||
| RepositoryName | string | ||
| Type | string | ||
| Connection | string | ||
| PackageType | string | ||
| Organization | string | ||
| Registry | string | ||
| ReferencesToScan | array[string] | ||
| Remediations | array[object] | ||
| IsEnabled | boolean | ||
| Type | string | ||
| FileDiscoveryFilterConfiguration | object | ||
| IsEnabled | boolean | ||
| DaysBeforeRescan | int32 | ||
| FilterStrategy | string | Enum: |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/workflows' \ --header 'Authorization: Bearer {token}' \ --data '{ "Name": "{string}", "Description": "{string}", "ScanConfigurationId": "{string}", "Type": "{string}", "RecurrencePattern": { "Type": "{string}", "HourlyRecurrence": { "EveryNumberOfHours": "{int32}" }, "DailyRecurrence": { "EveryNumberOfDays": "{int32}" }, "WeeklyRecurrence": { "DaysOfWeek": [ "{array[string]...}" ], "EveryNumberOfWeeks": "{int32}" }, "MonthlyRecurrence": { "EveryNumberOfMonths": "{int32}", "DayOfMonth": "{int32}" } }, "ScanSources": [ { "ServiceId": "{string}", "ServiceName": "{string}", "Repositories": [ { "RepositoryId": "{string}", "RepositoryName": "{string}", "Type": "{string}", "Connection": "{string}", "PackageType": "{string}", "Organization": "{string}", "Registry": "{string}", "ReferencesToScan": [ "{array[string]...}" ] } ] } ], "Remediations": [ { "IsEnabled": "{boolean}", "Type": "{string}" } ], "FileDiscoveryFilterConfiguration": { "IsEnabled": "{boolean}", "DaysBeforeRescan": "{int32}", "FilterStrategy": "{string}" }}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string |
Bad Request
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}}Get workflow by Id
| id | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/workflows/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Id | string | ||
| Name | string | ||
| Description | string | ||
| UserId | string | ||
| ScanConfigurationId | string | ||
| Deleted | boolean | ||
| Type | string | Enum: | |
| RecurrencePattern | object | ||
| Type | string | Enum: | |
| HourlyRecurrence | object | ||
| EveryNumberOfHours | int32 | ||
| DailyRecurrence | object | ||
| EveryNumberOfDays | int32 | ||
| WeeklyRecurrence | object | ||
| DaysOfWeek | array[string] | Enum: | |
| EveryNumberOfWeeks | int32 | ||
| MonthlyRecurrence | object | ||
| EveryNumberOfMonths | int32 | ||
| DayOfMonth | int32 | ||
| ScanSources | array[object] | ||
| ServiceId | string | ||
| ServiceName | string | ||
| Repositories | array[object] | ||
| RepositoryId | string | ||
| RepositoryName | string | ||
| Type | string | ||
| Connection | string | ||
| PackageType | string | ||
| Organization | string | ||
| Registry | string | ||
| ReferencesToScan | array[string] | ||
| Remediations | array[object] | ||
| IsEnabled | boolean | ||
| Type | string | ||
| FileDiscoveryFilterConfiguration | object | ||
| IsEnabled | boolean | ||
| DaysBeforeRescan | int32 | ||
| FilterStrategy | string | Enum: |
xxxxxxxxxx{ "Id": "{string}", "Name": "{string}", "Description": "{string}", "UserId": "{string}", "ScanConfigurationId": "{string}", "Deleted": "{boolean}", "Type": "{string}", "RecurrencePattern": { "Type": "{string}", "HourlyRecurrence": { "EveryNumberOfHours": "{int32}" }, "DailyRecurrence": { "EveryNumberOfDays": "{int32}" }, "WeeklyRecurrence": { "DaysOfWeek": [ "{array[string]...}" ], "EveryNumberOfWeeks": "{int32}" }, "MonthlyRecurrence": { "EveryNumberOfMonths": "{int32}", "DayOfMonth": "{int32}" } }, "ScanSources": [ { "ServiceId": "{string}", "ServiceName": "{string}", "Repositories": [ { "RepositoryId": "{string}", "RepositoryName": "{string}", "Type": "{string}", "Connection": "{string}", "PackageType": "{string}", "Organization": "{string}", "Registry": "{string}", "ReferencesToScan": [ "{array[string]...}" ] } ] } ], "Remediations": [ { "IsEnabled": "{boolean}", "Type": "{string}" } ], "FileDiscoveryFilterConfiguration": { "IsEnabled": "{boolean}", "DaysBeforeRescan": "{int32}", "FilterStrategy": "{string}" }}Update a workflow
| id | string |
| object | object | ||
| Name | string | ||
| Description | string | ||
| ScanConfigurationId | string | ||
| RecurrencePattern | object | ||
| Type | string | Enum: | |
| HourlyRecurrence | object | ||
| EveryNumberOfHours | int32 | ||
| DailyRecurrence | object | ||
| EveryNumberOfDays | int32 | ||
| WeeklyRecurrence | object | ||
| DaysOfWeek | array[string] | Enum: | |
| EveryNumberOfWeeks | int32 | ||
| MonthlyRecurrence | object | ||
| EveryNumberOfMonths | int32 | ||
| DayOfMonth | int32 | ||
| ScanSources | array[object] | ||
| ServiceId | string | ||
| ServiceName | string | ||
| Repositories | array[object] | ||
| RepositoryId | string | ||
| RepositoryName | string | ||
| Type | string | ||
| Connection | string | ||
| PackageType | string | ||
| Organization | string | ||
| Registry | string | ||
| ReferencesToScan | array[string] | ||
| Remediations | array[object] | ||
| IsEnabled | boolean | ||
| Type | string | ||
| FileDiscoveryFilterConfiguration | object | ||
| IsEnabled | boolean | ||
| DaysBeforeRescan | int32 | ||
| FilterStrategy | string | Enum: |
xxxxxxxxxxcurl --request PUT \ --url 'https://opswat.developerhub.io/api/v1/workflows/%7Bid%7D' \ --header 'Authorization: Bearer {token}' \ --data '{ "Name": "{string}", "Description": "{string}", "ScanConfigurationId": "{string}", "RecurrencePattern": { "Type": "{string}", "HourlyRecurrence": { "EveryNumberOfHours": "{int32}" }, "DailyRecurrence": { "EveryNumberOfDays": "{int32}" }, "WeeklyRecurrence": { "DaysOfWeek": [ "{array[string]...}" ], "EveryNumberOfWeeks": "{int32}" }, "MonthlyRecurrence": { "EveryNumberOfMonths": "{int32}", "DayOfMonth": "{int32}" } }, "ScanSources": [ { "ServiceId": "{string}", "ServiceName": "{string}", "Repositories": [ { "RepositoryId": "{string}", "RepositoryName": "{string}", "Type": "{string}", "Connection": "{string}", "PackageType": "{string}", "Organization": "{string}", "Registry": "{string}", "ReferencesToScan": [ "{array[string]...}" ] } ] } ], "Remediations": [ { "IsEnabled": "{boolean}", "Type": "{string}" } ], "FileDiscoveryFilterConfiguration": { "IsEnabled": "{boolean}", "DaysBeforeRescan": "{int32}", "FilterStrategy": "{string}" }}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string |
Bad Request
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}}Delete Workflow by id
| id | string |
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/workflows/%7Bid%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string |
Bad Request
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}}Update workflow scan source
| id | string |
| object | object | ||
| ServiceId | string | ||
| ServiceName | string | ||
| Repositories | array[object] | ||
| RepositoryId | string | ||
| RepositoryName | string | ||
| Type | string | ||
| Connection | string | ||
| PackageType | string | ||
| Organization | string | ||
| Registry | string | ||
| ReferencesToScan | array[string] |
xxxxxxxxxxcurl --request PUT \ --url 'https://opswat.developerhub.io/api/v1/workflows/%7Bid%7D/scan-source' \ --header 'Authorization: Bearer {token}' \ --data '{ "ServiceId": "{string}", "ServiceName": "{string}", "Repositories": [ { "RepositoryId": "{string}", "RepositoryName": "{string}", "Type": "{string}", "Connection": "{string}", "PackageType": "{string}", "Organization": "{string}", "Registry": "{string}", "ReferencesToScan": [ "{array[string]...}" ] } ]}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string |
Bad Request
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}}List all workflows by repositoryId
| repositoryId | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/workflows/repositories/%7BrepositoryId%7D' \ --header 'Authorization: Bearer {token}'Success
| array | array[object] | ||
| Id | string | ||
| Name | string | ||
| Description | string | ||
| UserId | string | ||
| ScanConfigurationId | string | ||
| Deleted | boolean | ||
| Type | string | Enum: | |
| RecurrencePattern | object | ||
| Type | string | Enum: | |
| HourlyRecurrence | object | ||
| EveryNumberOfHours | int32 | ||
| DailyRecurrence | object | ||
| EveryNumberOfDays | int32 | ||
| WeeklyRecurrence | object | ||
| DaysOfWeek | array[string] | Enum: | |
| EveryNumberOfWeeks | int32 | ||
| MonthlyRecurrence | object | ||
| EveryNumberOfMonths | int32 | ||
| DayOfMonth | int32 | ||
| ScanSources | array[object] | ||
| ServiceId | string | ||
| ServiceName | string | ||
| Repositories | array[object] | ||
| RepositoryId | string | ||
| RepositoryName | string | ||
| Type | string | ||
| Connection | string | ||
| PackageType | string | ||
| Organization | string | ||
| Registry | string | ||
| ReferencesToScan | array[string] | ||
| Remediations | array[object] | ||
| IsEnabled | boolean | ||
| Type | string | ||
| FileDiscoveryFilterConfiguration | object | ||
| IsEnabled | boolean | ||
| DaysBeforeRescan | int32 | ||
| FilterStrategy | string | Enum: |
xxxxxxxxxx[ { "Id": "{string}", "Name": "{string}", "Description": "{string}", "UserId": "{string}", "ScanConfigurationId": "{string}", "Deleted": "{boolean}", "Type": "{string}", "RecurrencePattern": { "Type": "{string}", "HourlyRecurrence": { "EveryNumberOfHours": "{int32}" }, "DailyRecurrence": { "EveryNumberOfDays": "{int32}" }, "WeeklyRecurrence": { "DaysOfWeek": [ "{array[string]...}" ], "EveryNumberOfWeeks": "{int32}" }, "MonthlyRecurrence": { "EveryNumberOfMonths": "{int32}", "DayOfMonth": "{int32}" } }, "ScanSources": [ { "ServiceId": "{string}", "ServiceName": "{string}", "Repositories": [ { "RepositoryId": "{string}", "RepositoryName": "{string}", "Type": "{string}", "Connection": "{string}", "PackageType": "{string}", "Organization": "{string}", "Registry": "{string}", "ReferencesToScan": [ "{array[string]...}" ] } ] } ], "Remediations": [ { "IsEnabled": "{boolean}", "Type": "{string}" } ], "FileDiscoveryFilterConfiguration": { "IsEnabled": "{boolean}", "DaysBeforeRescan": "{int32}", "FilterStrategy": "{string}" } }]Licenses
Get licenses
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/licenses' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Result | string | Enum: | |
| License | object | ||
| ProductId | string | ||
| ProductName | string | ||
| Expiration | int64 | ||
| DeploymentId | string | ||
| ActivationKey | string | ||
| LicenseContent | string | ||
| MaxDevelopers | int32 | ||
| ResponseMessage | string |
Bad Request
Not Found
xxxxxxxxxx{ "Result": "{string}", "License": { "ProductId": "{string}", "ProductName": "{string}", "Expiration": "{int64}", "DeploymentId": "{string}", "ActivationKey": "{string}", "LicenseContent": "{string}", "MaxDevelopers": "{int32}" }, "ResponseMessage": "{string}"}Remove licenses
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/licenses' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseMessage | string |
Bad Request
Not Found
xxxxxxxxxx{ "Result": "{string}", "ResponseMessage": "{string}"}Activate a online license
| object | object | ||
| Key | string | minLength: 1 |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/licenses/online' \ --header 'Authorization: Bearer {token}' \ --data '{ "Key": "{string}"}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseMessage | string |
Bad Request
xxxxxxxxxx{ "Result": "{string}", "ResponseMessage": "{string}"}Ocm
Get OCM
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/ocm' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| OcmInformation | object | ||
| Id | string | ||
| ApiKey | string | ||
| ServerApi | string | ||
| RegistrationCode | string | ||
| DeploymentId | string | ||
| CmVersion | string | ||
| ScanConfigurationHash | string | ||
| StorageConfigurationHash | string | ||
| RetentionConfigurationHash | string | ||
| ExternalLoggerConfigurationHash | string | ||
| UserConfigurationHash | string | ||
| LicenseConfigurationHash | string | ||
| SmtpConfigurationHash | string | ||
| NotificationConfigurationHash | string | ||
| EnrollStatus | string | Enum: | |
| LastServerConnection | int64 | ||
| LastConfigurationSync | int64 | ||
| ConnectionStatus | string | Enum: | |
| CreatedAt | date-time | ||
| LastUpdated | date-time | ||
| TenantId | string |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "OcmInformation": { "Id": "{string}", "ApiKey": "{string}", "ServerApi": "{string}", "RegistrationCode": "{string}", "DeploymentId": "{string}", "CmVersion": "{string}", "ScanConfigurationHash": "{string}", "StorageConfigurationHash": "{string}", "RetentionConfigurationHash": "{string}", "ExternalLoggerConfigurationHash": "{string}", "UserConfigurationHash": "{string}", "LicenseConfigurationHash": "{string}", "SmtpConfigurationHash": "{string}", "NotificationConfigurationHash": "{string}", "EnrollStatus": "{string}", "LastServerConnection": "{int64}", "LastConfigurationSync": "{int64}", "ConnectionStatus": "{string}", "CreatedAt": "{date-time}", "LastUpdated": "{date-time}", "TenantId": "{string}" }}Update OCM
| object | object | ||
| ServerApi | string | ||
| RegCode | string |
xxxxxxxxxxcurl --request PUT \ --url 'https://opswat.developerhub.io/api/v1/ocm' \ --header 'Authorization: Bearer {token}' \ --data '{ "ServerApi": "{string}", "RegCode": "{string}"}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}"}Delete OCM
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/ocm' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string |
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}"}Services
Get all services
| content | boolean | ||
| type | array | Enum: |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/services' \ --header 'Authorization: Bearer {token}' \ --data content={content} \ --data type={type}Success
| object | object | ||
| ServiceDtos | array[object] | ||
| Name | string | ||
| Id | string | ||
| CredentialsType | int32 | ||
| ScanWorkflowId | string | ||
| Domain | string | ||
| StatusMessage | string |
Success
Bad Request
xxxxxxxxxx{ "ServiceDtos": [ { "Name": "{string}", "Id": "{string}", "CredentialsType": "{int32}", "ScanWorkflowId": "{string}", "Domain": "{string}" } ], "StatusMessage": "{string}"}Add a service
| object | object | ||
| Name | string | ||
| Credentials | string |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/services' \ --header 'Authorization: Bearer {token}' \ --data '{ "Name": "{string}", "Credentials": "{string}"}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string | ||
| Id | string | ||
| Name | string |
Bad Request
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}, "Id": "{string}", "Name": "{string}"}Get a service by id
| serviceId | string |
| content | boolean | ||
| Search | string | ||
| Page | integer | ||
| PageSize | integer | ||
| FilterValue | string | ||
| Cursor | string | ||
| PrioritizedRepositoriesReference | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/services/%7BserviceId%7D' \ --header 'Authorization: Bearer {token}' \ --data content={content} \ --data Search={Search} \ --data Page={Page} \ --data PageSize={PageSize} \ --data FilterValue={FilterValue} \ --data Cursor={Cursor} \ --data PrioritizedRepositoriesReference={PrioritizedRepositoriesReference}Success
| object | object | ||
| Name | string | ||
| Id | string | ||
| CredentialsType | int32 | ||
| ScanWorkflowId | string | ||
| Domain | string |
Bad Request
Not Found
xxxxxxxxxx{ "Name": "{string}", "Id": "{string}", "CredentialsType": "{int32}", "ScanWorkflowId": "{string}", "Domain": "{string}"}Update a service by id
| serviceId | string |
| object | object | ||
| Name | string | ||
| Credentials | string | ||
| HasNewCredentials | boolean |
xxxxxxxxxxcurl --request PUT \ --url 'https://opswat.developerhub.io/api/v1/services/%7BserviceId%7D' \ --header 'Authorization: Bearer {token}' \ --data '{ "Name": "{string}", "Credentials": "{string}", "HasNewCredentials": "{boolean}"}'Success
| object | object | ||
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string | ||
| Id | string | ||
| Name | string |
Bad Request
xxxxxxxxxx{ "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}, "Id": "{string}", "Name": "{string}"}Delete a service by id
| serviceId | string |
xxxxxxxxxxcurl --request DELETE \ --url 'https://opswat.developerhub.io/api/v1/services/%7BserviceId%7D' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Result | string | Enum: | |
| ResponseKey | string | ||
| ResponseMessage | string | ||
| ResponseMessageParams | object | ||
| * | string |
Not Found
xxxxxxxxxx{ "Result": "{string}", "ResponseKey": "{string}", "ResponseMessage": "{string}", "ResponseMessageParams": {}}Get service references by serviceId and repositoryId
| serviceId | string | ||
| repositoryId | string |
| Page | integer | ||
| PageSize | integer | ||
| FilterValue | string | ||
| Cursor | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/services/%7BserviceId%7D/%7BrepositoryId%7D/references' \ --header 'Authorization: Bearer {token}' \ --data Page={Page} \ --data PageSize={PageSize} \ --data FilterValue={FilterValue} \ --data Cursor={Cursor}Success
| object | object | ||
| References | array[string] | ||
| TotalReferences | int32 |
Not Found
xxxxxxxxxx{ "References": [ "{array[string]...}" ], "TotalReferences": "{int32}"}Get service references by serviceId
| serviceId | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/services/%7BserviceId%7D/references' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| ServiceId | string | ||
| ServiceName | string |
Not Found
xxxxxxxxxx{ "ServiceId": "{string}", "ServiceName": "{string}"}Get service resources by serviceId
| serviceId | string |
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/services/%7BserviceId%7D/resources' \ --header 'Authorization: Bearer {token}'Success
| object | object | ||
| Resources | array[string] |
Not Found
xxxxxxxxxx{ "Resources": [ "{array[string]...}" ]}Add services references
| array | array[object] | ||
| ServiceId | string | ||
| RepositoryIds | array[string] |
xxxxxxxxxxcurl --request POST \ --url 'https://opswat.developerhub.io/api/v1/services/references' \ --header 'Authorization: Bearer {token}' \ --data '[ { "ServiceId": "{string}", "RepositoryIds": [ "{array[string]...}" ] }]'Success
| array | array[object] | ||
| ServiceId | string | ||
| ServiceName | string |
No Content
Not Found
xxxxxxxxxx[ { "ServiceId": "{string}", "ServiceName": "{string}" }]Startup
Get startup status
xxxxxxxxxxcurl --get \ --url 'https://opswat.developerhub.io/api/v1/startup' \ --header 'Authorization: Bearer {token}'Success
| No response body |
Server Error
xxxxxxxxxxNo response