StackRox DeploymentService API
The DeploymentService API from StackRox — 6 operation(s) for deploymentservice.
The DeploymentService API from StackRox — 6 operation(s) for deploymentservice.
openapi: 3.0.0
info:
title: API Reference AlertService DeploymentService API
version: '1'
description: API reference for the StackRox Kubernetes Security Platform (upstream of Red Hat Advanced Cluster Security). Provides risk analysis, visibility, runtime alerts, policy management, compliance checking, and vulnerability management for containerized workloads. Authentication uses API tokens generated via /v1/apitokens/generate and passed as Bearer tokens.
contact:
email: support@stackrox.com
url: https://www.stackrox.io/
license:
name: All Rights Reserved
url: https://www.stackrox.com/
servers:
- url: https://{central-host}
description: StackRox Central API server
variables:
central-host:
default: stackrox.localhost
description: StackRox Central hostname or IP
security:
- ApiToken: []
tags:
- name: DeploymentService
paths:
/v1/deployments:
get:
summary: ListDeployments returns the list of deployments.
operationId: ListDeployments
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/v1ListDeploymentsResponse'
parameters:
- name: query
in: query
required: false
schema:
type: string
- name: pagination.limit
in: query
required: false
schema:
type: integer
format: int32
- name: pagination.offset
in: query
required: false
schema:
type: integer
format: int32
- name: pagination.sort_option.field
in: query
required: false
schema:
type: string
- name: pagination.sort_option.reversed
in: query
required: false
schema:
type: boolean
format: boolean
tags:
- DeploymentService
/v1/deployments/metadata/labels:
get:
summary: GetLabels returns the labels used by deployments.
operationId: GetLabels
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/v1DeploymentLabelsResponse'
tags:
- DeploymentService
/v1/deployments/{id}:
get:
summary: GetDeployment returns a deployment given its ID.
operationId: GetDeployment
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/storageDeployment'
parameters:
- name: id
in: path
required: true
schema:
type: string
tags:
- DeploymentService
/v1/deploymentscount:
get:
summary: CountDeployments returns the list of deployments.
operationId: CountDeployments
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/v1CountDeploymentsResponse'
parameters:
- name: query
in: query
required: false
schema:
type: string
- name: pagination.limit
in: query
required: false
schema:
type: integer
format: int32
- name: pagination.offset
in: query
required: false
schema:
type: integer
format: int32
- name: pagination.sort_option.field
in: query
required: false
schema:
type: string
- name: pagination.sort_option.reversed
in: query
required: false
schema:
type: boolean
format: boolean
tags:
- DeploymentService
/v1/deploymentswithprocessinfo:
get:
summary: ListDeploymentsWithProcessInfo returns the list of deployments with process information.
operationId: ListDeploymentsWithProcessInfo
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/v1ListDeploymentsWithProcessInfoResponse'
parameters:
- name: query
in: query
required: false
schema:
type: string
- name: pagination.limit
in: query
required: false
schema:
type: integer
format: int32
- name: pagination.offset
in: query
required: false
schema:
type: integer
format: int32
- name: pagination.sort_option.field
in: query
required: false
schema:
type: string
- name: pagination.sort_option.reversed
in: query
required: false
schema:
type: boolean
format: boolean
tags:
- DeploymentService
/v1/deploymentswithrisk/{id}:
get:
summary: GetDeploymentWithRisk returns a deployment and its risk given its ID.
operationId: GetDeploymentWithRisk
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/v1GetDeploymentWithRiskResponse'
parameters:
- name: id
in: path
required: true
schema:
type: string
tags:
- DeploymentService
components:
schemas:
ListDeploymentsWithProcessInfoResponseDeploymentWithProcessInfo:
type: object
properties:
deployment:
$ref: '#/components/schemas/storageListDeployment'
whitelistStatuses:
type: array
items:
$ref: '#/components/schemas/storageContainerNameAndWhitelistStatus'
SecurityContextSELinux:
type: object
properties:
user:
type: string
role:
type: string
type:
type: string
level:
type: string
v1ListDeploymentsResponse:
type: object
properties:
deployments:
type: array
items:
$ref: '#/components/schemas/storageListDeployment'
storageImageName:
type: object
properties:
registry:
type: string
remote:
type: string
tag:
type: string
fullName:
type: string
DeploymentLabelsResponseLabelValues:
type: object
properties:
values:
type: array
items:
type: string
storageEmbeddedSecret:
type: object
properties:
name:
type: string
path:
type: string
v1DeploymentLabelsResponse:
type: object
properties:
labels:
type: object
additionalProperties:
$ref: '#/components/schemas/DeploymentLabelsResponseLabelValues'
values:
type: array
items:
type: string
storagePortConfig:
type: object
properties:
name:
type: string
containerPort:
type: integer
format: int32
protocol:
type: string
exposure:
$ref: '#/components/schemas/PortConfigExposureLevel'
exposedPort:
type: integer
format: int32
exposureInfos:
type: array
items:
$ref: '#/components/schemas/PortConfigExposureInfo'
title: 'Next Available Tag: 6'
storageContainerInstance:
type: object
properties:
instanceId:
$ref: '#/components/schemas/storageContainerInstanceID'
containingPodId:
type: string
description: The pod containing this container instance (kubernetes only).
containerIps:
type: array
items:
type: string
description: The IP addresses of this container.
started:
type: string
format: date-time
title: The start time of the container
description: ContainerInstanceID allows to uniquely identify a container within a cluster.
EnvironmentConfigEnvVarSource:
type: string
enum:
- UNSET
- RAW
- SECRET_KEY
- CONFIG_MAP_KEY
- FIELD
- RESOURCE_FIELD
- UNKNOWN
default: UNSET
title: For any update to EnvVarSource, please also update 'ui/src/messages/common.js'
storageRiskResult:
type: object
properties:
name:
type: string
factors:
type: array
items:
$ref: '#/components/schemas/ResultFactor'
score:
type: number
format: float
storageRiskSubject:
type: object
properties:
id:
type: string
namespace:
type: string
clusterId:
type: string
type:
$ref: '#/components/schemas/storageRiskSubjectType'
storageTolerationOperator:
type: string
enum:
- TOLERATION_OPERATION_UNKNOWN
- TOLERATION_OPERATOR_EXISTS
- TOLERATION_OPERATOR_EQUAL
default: TOLERATION_OPERATION_UNKNOWN
storageContainerInstanceID:
type: object
properties:
containerRuntime:
$ref: '#/components/schemas/storageContainerRuntime'
id:
type: string
description: The ID of the container, specific to the given runtime.
node:
type: string
description: The node on which this container runs.
storageContainerNameAndWhitelistStatus:
type: object
properties:
containerName:
type: string
whitelistStatus:
$ref: '#/components/schemas/ContainerNameAndWhitelistStatusWhitelistStatus'
anomalousProcessesExecuted:
type: boolean
format: boolean
description: ContainerNameAndWhitelistStatus represents a cached result of process evaluation on a specific container name.
PortConfigExposureInfo:
type: object
properties:
level:
$ref: '#/components/schemas/PortConfigExposureLevel'
serviceName:
type: string
title: only set if level is not HOST
serviceId:
type: string
serviceClusterIp:
type: string
servicePort:
type: integer
format: int32
nodePort:
type: integer
format: int32
title: only set if level is HOST, NODE, or EXTERNAL
externalIps:
type: array
items:
type: string
title: only set if level is EXTERNAL
externalHostnames:
type: array
items:
type: string
storageContainer:
type: object
properties:
id:
type: string
config:
$ref: '#/components/schemas/storageContainerConfig'
image:
$ref: '#/components/schemas/storageContainerImage'
securityContext:
$ref: '#/components/schemas/storageSecurityContext'
volumes:
type: array
items:
$ref: '#/components/schemas/storageVolume'
ports:
type: array
items:
$ref: '#/components/schemas/storagePortConfig'
secrets:
type: array
items:
$ref: '#/components/schemas/storageEmbeddedSecret'
resources:
$ref: '#/components/schemas/storageResources'
instances:
type: array
items:
$ref: '#/components/schemas/storageContainerInstance'
name:
type: string
storageResources:
type: object
properties:
cpuCoresRequest:
type: number
format: float
cpuCoresLimit:
type: number
format: float
memoryMbRequest:
type: number
format: float
memoryMbLimit:
type: number
format: float
LabelSelectorRequirement:
type: object
properties:
key:
type: string
op:
$ref: '#/components/schemas/storageLabelSelectorOperator'
values:
type: array
items:
type: string
title: 'Next available tag: 4'
storageSecurityContext:
type: object
properties:
privileged:
type: boolean
format: boolean
selinux:
$ref: '#/components/schemas/SecurityContextSELinux'
dropCapabilities:
type: array
items:
type: string
addCapabilities:
type: array
items:
type: string
readOnlyRootFilesystem:
type: boolean
format: boolean
storageVolume:
type: object
properties:
name:
type: string
source:
type: string
destination:
type: string
readOnly:
type: boolean
format: boolean
type:
type: string
storageContainerRuntime:
type: string
enum:
- UNKNOWN_CONTAINER_RUNTIME
- DOCKER_CONTAINER_RUNTIME
- CRIO_CONTAINER_RUNTIME
default: UNKNOWN_CONTAINER_RUNTIME
PortConfigExposureLevel:
type: string
enum:
- UNSET
- EXTERNAL
- NODE
- INTERNAL
- HOST
default: UNSET
ResultFactor:
type: object
properties:
message:
type: string
url:
type: string
v1ListDeploymentsWithProcessInfoResponse:
type: object
properties:
deployments:
type: array
items:
$ref: '#/components/schemas/ListDeploymentsWithProcessInfoResponseDeploymentWithProcessInfo'
ContainerConfigEnvironmentConfig:
type: object
properties:
key:
type: string
value:
type: string
envVarSource:
$ref: '#/components/schemas/EnvironmentConfigEnvVarSource'
ContainerNameAndWhitelistStatusWhitelistStatus:
type: string
enum:
- INVALID
- NOT_GENERATED
- UNLOCKED
- LOCKED
default: INVALID
storageContainerConfig:
type: object
properties:
env:
type: array
items:
$ref: '#/components/schemas/ContainerConfigEnvironmentConfig'
command:
type: array
items:
type: string
args:
type: array
items:
type: string
directory:
type: string
user:
type: string
uid:
type: string
format: int64
storageListDeployment:
type: object
properties:
id:
type: string
hash:
type: string
format: uint64
name:
type: string
cluster:
type: string
clusterId:
type: string
namespace:
type: string
created:
type: string
format: date-time
priority:
type: string
format: int64
title: 'Next available tag: 9'
storageToleration:
type: object
properties:
key:
type: string
operator:
$ref: '#/components/schemas/storageTolerationOperator'
value:
type: string
taintEffect:
$ref: '#/components/schemas/storageTaintEffect'
v1GetDeploymentWithRiskResponse:
type: object
properties:
deployment:
$ref: '#/components/schemas/storageDeployment'
risk:
$ref: '#/components/schemas/storageRisk'
storageRisk:
type: object
properties:
id:
type: string
subject:
$ref: '#/components/schemas/storageRiskSubject'
score:
type: number
format: float
results:
type: array
items:
$ref: '#/components/schemas/storageRiskResult'
storageRiskSubjectType:
type: string
enum:
- UNKNOWN
- DEPLOYMENT
- NAMESPACE
- CLUSTER
- IMAGE
- IMAGE_COMPONENT
- SERVICEACCOUNT
default: UNKNOWN
v1CountDeploymentsResponse:
type: object
properties:
count:
type: integer
format: int32
storageLabelSelectorOperator:
type: string
enum:
- UNKNOWN
- IN
- NOT_IN
- EXISTS
- NOT_EXISTS
default: UNKNOWN
storageTaintEffect:
type: string
enum:
- UNKNOWN_TAINT_EFFECT
- NO_SCHEDULE_TAINT_EFFECT
- PREFER_NO_SCHEDULE_TAINT_EFFECT
- NO_EXECUTE_TAINT_EFFECT
default: UNKNOWN_TAINT_EFFECT
storageLabelSelector:
type: object
properties:
matchLabels:
type: object
additionalProperties:
type: string
description: This is actually a oneof, but we can't make it one due to backwards compatibility constraints.
requirements:
type: array
items:
$ref: '#/components/schemas/LabelSelectorRequirement'
title: 'Next available tag: 3'
storageContainerImage:
type: object
properties:
id:
type: string
title: These tags maintain backwards compatibiltiy with the previously embedded storage.Image
name:
$ref: '#/components/schemas/storageImageName'
notPullable:
type: boolean
format: boolean
storageDeployment:
type: object
properties:
id:
type: string
name:
type: string
hash:
type: string
format: uint64
type:
type: string
namespace:
type: string
namespaceId:
type: string
replicas:
type: string
format: int64
labels:
type: object
additionalProperties:
type: string
podLabels:
type: object
additionalProperties:
type: string
labelSelector:
$ref: '#/components/schemas/storageLabelSelector'
created:
type: string
format: date-time
clusterId:
type: string
clusterName:
type: string
containers:
type: array
items:
$ref: '#/components/schemas/storageContainer'
annotations:
type: object
additionalProperties:
type: string
priority:
type: string
format: int64
inactive:
type: boolean
format: boolean
imagePullSecrets:
type: array
items:
type: string
serviceAccount:
type: string
automountServiceAccountToken:
type: boolean
format: boolean
hostNetwork:
type: boolean
format: boolean
tolerations:
type: array
items:
$ref: '#/components/schemas/storageToleration'
ports:
type: array
items:
$ref: '#/components/schemas/storagePortConfig'
stateTimestamp:
type: string
format: int64
title: 'Next available tag: 28'
securitySchemes:
ApiToken:
type: apiKey
in: header
name: Authorization
description: 'StackRox API token. Format: Bearer {token}'