Scanners Configuration Service API

0.0.1

Overview

Statistics
16 Operations
2 Skills
Platform Category
REST API for Scanners Configuration Service

Servers

  • US https://anypoint.mulesoft.com/agent-scanner
  • EU https://eu1.anypoint.mulesoft.com/agent-scanner
  • CA https://ca1.platform.mulesoft.com/agent-scanner
  • JP https://jp1.platform.mulesoft.com/agent-scanner
  • IN https://in1.platform.mulesoft.com/agent-scanner
  • AU https://au1.platform.mulesoft.com/agent-scanner

Authentication & Security

  • bearerAuth http

    Bearer token authentication. Login endpoint: https://anypoint.mulesoft.com/accounts/api/login

  • clientAuth oauth2

    OAuth2 client credentials. Token endpoint: https://anypoint.mulesoft.com/accounts/api/v2/oauth2/token

Update Scanner Configurations updateScanConfiguration

PUT

Try it out

Path Parameters
Custom Query Parameters
Custom Headers
Request Body application/json
Scanner Configuration
Returns an updated scanner configuration

Path Parameters

scannerConfigurationId *: string(uuid)

Request Body *

json
name *: string
id: string(uuid)
schedule *: string
description: string
parameters: string
state: string
runPolicy *: string
lastRunAt: string(date-time)
lastSuccessfulRunAt: string(date-time)
lastRunStatus: string
nextRunAt: string(date-time)
lastSuccessfulRunSummary: string
updatedAt: string(date-time)
rootOrgId: string(uuid)
createdAt: string(date-time)
orgId: string(uuid)
lastRunStatusDetail: string
connection: object
ownerId: string(uuid)
emails: string
notificationEnabled: boolean
scannerConfigurationFromDTO: object
Represents a scanner configuration for scanning operations
deleted: boolean

Response

Successfully updated Scanner Configurations

Delete Scanner Configuration by id deleteScannerConfiguration

DELETE

Try it out

Path Parameters
Header Parameters
Custom Query Parameters
Custom Headers
Scanner Configuration
Starts an asynchronous workflow to delete the scanner configuration. Returns 200 OK when the deletion workflow is started successfully.

Path Parameters

scannerConfigurationId *: string(uuid)

Header Parameters

X-Delete-Agents: boolean

Response

Delete workflow started successfully
Examples
*/*
{}

Get Scanner Configurations of a specific organization getScanConfigurations

GET

Try it out

Path Parameters
Query Parameters
Custom Query Parameters
Custom Headers
Scanner Configuration
Returns a list of scanner configuration for a specific organization

Path Parameters

Query Parameters

page: integer(int32)
size: integer(int32)

Response

Successfully retrieved Scanner Configurations

Create Scanner Configurations createScanConfigurations

POST

Try it out

Path Parameters
Custom Query Parameters
Custom Headers
Request Body application/json
Scanner Configuration
Returns the scanner configuration created

Path Parameters

Request Body *

json
name *: string
id: string(uuid)
schedule *: string
description: string
parameters: string
state: string
runPolicy *: string
lastRunAt: string(date-time)
lastSuccessfulRunAt: string(date-time)
lastRunStatus: string
nextRunAt: string(date-time)
lastSuccessfulRunSummary: string
updatedAt: string(date-time)
rootOrgId: string(uuid)
createdAt: string(date-time)
orgId: string(uuid)
lastRunStatusDetail: string
connection: object
ownerId: string(uuid)
emails: string
notificationEnabled: boolean
scannerConfigurationFromDTO: object
Represents a scanner configuration for scanning operations
deleted: boolean

Response

Successfully created Scanner Configurations

Execute workflow from scanner configuration executeWorkflowFromConfiguration

POST

Try it out

Path Parameters
Custom Query Parameters
Custom Headers
Scanner Configuration
Starts a scan workflow based on the specified scanner configuration ID

Path Parameters

scannerConfigurationId *: string(uuid)

Response

Workflow started successfully

Abort workflow from scanner configuration abortWorkflowFromConfiguration

POST

Try it out

Path Parameters
Custom Query Parameters
Custom Headers
Scanner Configuration
Cancels a running scan based on the specified scanner configuration ID

Path Parameters

scannerConfigurationId *: string(uuid)

Response

Workflow aborted successfully

Publish services after manual review publishAssetsAfterReview

POST

Try it out

Path Parameters
Custom Query Parameters
Custom Headers
Request Body application/json
Scanner Configuration
Updates ignored status for staged services and signals the workflow to proceed with publication.

Path Parameters

scannerConfigurationId *: string(uuid)
scanRunId *: string(uuid)

Request Body *

json
content *: array

Response

Successfully updated services and triggered publication

Test connection testConnection

POST

Try it out

Path Parameters
Custom Query Parameters
Custom Headers
Request Body application/json
Connectivity
Tests connectivity to a target system type using provided connection parameters. Requires authentication.

Path Parameters

targetSystemType *: string

Request Body *

json

Response

Connection successful

Get scanner run history getScannerRunHistory

GET

Try it out

Path Parameters
Query Parameters
Custom Query Parameters
Custom Headers
Scanner Runs
Returns a paginated list of scanner runs for a specific scanner

Path Parameters

scannerId *: string(uuid)

Query Parameters

page: integer(int32)
size: integer(int32)

Response

json
Successfully retrieved scanner runs
totalElements: integer(int64)
totalPages: integer(int32)
first: boolean
last: boolean
size: integer(int32)
content: array
number: integer(int32)
sort: object
numberOfElements: integer(int32)
pageable: object
empty: boolean
Examples
application/json
{ "totalElements": 1, "totalPages": 1, "first": true, "last": true, "size": 20, "number": 0, "content": [ { "id": "123e4567-e89b-12d3-a456-426614174000", "status": "COMPLETED", "summary": "{\"scanned\": 10, \"found\": 5}" } ], "numberOfElements": 1, "empty": false }

Get staging assets for a scan run getStagingAssetsByScanRunId

GET

Try it out

Path Parameters
Query Parameters
Custom Query Parameters
Custom Headers
Scanner Runs
Returns a paginated list of staging assets for a specific scan run. Use size=0 to get all results without pagination.

Path Parameters

scannerId *: string(uuid)
scanRunId *: string(uuid)

Query Parameters

page: integer(int32)
size: integer(int32)

Response

json
Successfully retrieved staging assets
totalElements: integer(int64)
totalPages: integer(int32)
first: boolean
last: boolean
size: integer(int32)
content: array
number: integer(int32)
sort: object
numberOfElements: integer(int32)
pageable: object
empty: boolean
Examples
application/json
{ "totalElements": 1, "totalPages": 1, "first": true, "last": true, "size": 20, "number": 0, "content": [ { "id": "123e4567-e89b-12d3-a456-426614174000", "name": "My Agent", "status": "NEW" } ], "numberOfElements": 1, "empty": false }

Get organization information getOrganizationInfo

GET

Try it out

Path Parameters
Custom Query Parameters
Custom Headers
Organization
Returns organization information including total managed agents and capacity limit

Path Parameters

Response

json
Successfully retrieved organization information
totalManagedAgents: integer(int64)
capacityAgentsLimit: integer(int64)
Examples
application/json
{ "totalManagedAgents": 150, "capacityAgentsLimit": 10000 }

Get target systems getTargetSystems

GET

Try it out

Path Parameters
Custom Query Parameters
Custom Headers
Connectivity
Returns a list of available target systems for connections. Requires authentication.

Path Parameters

Response

json
Successfully retrieved target systems
id: string(uuid)
Unique identifier of the target system
name: string
Name of the target system
description: string
Description of the target system
type: string
Scanner type of the target system
provider: string
Cloud provider
platform: string
Platform within the provider
assetType: string
Type of asset scanned
authSchemeFormFields: array
Auth Scheme Form Fields
Examples
application/json
{ "id": "550e8400-e29b-41d4-a716-446655440000", "name": "AWS Bedrock", "description": "Amazon Bedrock AI service", "type": "bedrock", "provider": "aws", "platform": "bedrock_agents", "assetType": "agent" }

Get current push workspace state getPushWorkspace

GET

Try it out

Path Parameters
Custom Query Parameters
Custom Headers
Push Workspace
Returns the current intake run for a self-managed scanner configuration, including workspaceRunId, staged asset count, and remaining capacity.

Path Parameters

scannerConfigurationId *: string(uuid)

Response

json
Current push workspace state
workspaceRunId: string(uuid)
Current workspace run identifier
generation: integer(int64)
Deprecated compatibility field; always 0
stagedAssetCount: integer(int64)
Distinct staged assets in the current intake run
assetCap: integer(int32)
Intake cap for this run
remainingCapacity: integer(int64)
Slots remaining before a net-new upload is refused
hitAssetCap: boolean
Whether this intake run has recorded hitting the asset cap
commitAcceptedNotStarted: boolean
Deprecated compatibility field; always false
scanRunId: string(uuid)
Current RUNNING scan run identifier; equals workspaceRunId
Examples
application/json
{ "workspaceRunId": "123e4567-e89b-12d3-a456-426614174000", "generation": 0, "stagedAssetCount": 2, "assetCap": 500, "remainingCapacity": 498, "hitAssetCap": false, "commitAcceptedNotStarted": false, "scanRunId": "123e4567-e89b-12d3-a456-426614174000" }

Upload one asset archive into the push workspace pushWorkspaceAsset

POST

Try it out

Path Parameters
Custom Query Parameters
Custom Headers
Request Body multipart/form-data
Push Workspace
Upload one ZIP as multipart part file. The ZIP has one top-level directory named by the asset external id, containing specification/config.json and the type artifact. Returns 202 with assetId, action, and workspaceRunId. Do not send JSON.

Path Parameters

scannerConfigurationId *: string(uuid)

Request Body *

multipart/form-data
file *: string(binary)
ZIP archive for one asset. Filename {externalId}.zip.

Response

json
Archive staged into the workspace
assetId *: string
Stable asset id. The ZIP top-level directory name.
action *: string
created for a new identifier; replaced on last-write-wins upsert
workspaceRunId *: string(uuid)
Current workspace run identifier
Examples
application/json
{ "assetId": "orders-agent", "action": "created", "workspaceRunId": "123e4567-e89b-12d3-a456-426614174000" }

Remove one staged asset from the push workspace unstagePushWorkspaceAsset

DELETE

Try it out

Path Parameters
Custom Query Parameters
Custom Headers
Push Workspace
Unstages one asset from the current intake run before commit. Idempotent if the identifier is already absent.

Path Parameters

scannerConfigurationId *: string(uuid)
externalId *: string

Response

json
Asset unstaged, or already absent
workspaceRunId: string(uuid)
Current workspace run identifier
Examples
application/json
{ "workspaceRunId": "123e4567-e89b-12d3-a456-426614174000" }

Commit the current push workspace snapshot commitPushWorkspace

POST

Try it out

Path Parameters
Custom Query Parameters
Custom Headers
Request Body application/json
Push Workspace
Starts publishing from the current workspace snapshot. Both workspaceRunId and complete are required. complete true asserts a full inventory so missing assets may be retired. complete false is upsert only. Returns 202 with scanRunId equal to the committed workspaceRunId.

Path Parameters

scannerConfigurationId *: string(uuid)

Request Body *

json
workspaceRunId *: string(uuid)
Current workspace run identifier from POST /push. Required.
complete *: boolean
true asserts a full inventory; false is upsert-only. Required. No default.
Examples
application/json
{ "workspaceRunId": "123e4567-e89b-12d3-a456-426614174000", "complete": true }

Response

json
Commit accepted and publishing started
scanRunId *: string(uuid)
Scan run id; equals the committed workspaceRunId
Examples
application/json
{ "scanRunId": "123e4567-e89b-12d3-a456-426614174000" }