Aqua Security · Capability

Aqua Security REST API

The Aqua Security REST API provides programmatic access to manage images, containers, policies, users, registries, and runtime security configurations for the Aqua Cloud Native Security Platform.

Run with Naftiko AquaSecurityAPI

What You Can Do

POST
Login — Aqua Security Authenticate User
/v1/login
GET
Listimages — Aqua Security List Images
/v1/images
POST
Registerimage — Aqua Security Register Image
/v1/images
GET
Getimage — Aqua Security Get Image Details
/v1/images/{registry}/{image_name}/{image_tag}
DELETE
Deleteimage — Aqua Security Delete Image
/v1/images/{registry}/{image_name}/{image_tag}
GET
Listcontainers — Aqua Security List Containers
/v1/containers
GET
Listpolicies — Aqua Security List Security Policies
/v1/securitypolicies
POST
Createpolicy — Aqua Security Create Security Policy
/v1/securitypolicies
GET
Listregistries — Aqua Security List Registries
/v1/registries
GET
Listusers — Aqua Security List Users
/v1/users

MCP Tools

login

Aqua Security Authenticate User

listimages

Aqua Security List Images

read-only idempotent
registerimage

Aqua Security Register Image

getimage

Aqua Security Get Image Details

read-only idempotent
deleteimage

Aqua Security Delete Image

idempotent
listcontainers

Aqua Security List Containers

read-only idempotent
listpolicies

Aqua Security List Security Policies

read-only idempotent
createpolicy

Aqua Security Create Security Policy

listregistries

Aqua Security List Registries

read-only idempotent
listusers

Aqua Security List Users

read-only idempotent

Capability Spec

aqua-security-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Aqua Security REST API
  description: The Aqua Security REST API provides programmatic access to manage images, containers, policies, users, registries,
    and runtime security configurations for the Aqua Cloud Native Security Platform.
  tags:
  - Aqua
  - Security
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: aqua-security
    baseUri: https://your-tenant.cloud.aquasec.com/api
    description: Aqua Security REST API HTTP API.
    authentication:
      type: bearer
      token: '{{AQUA_SECURITY_TOKEN}}'
    resources:
    - name: v1-login
      path: /v1/login
      operations:
      - name: login
        method: POST
        description: Aqua Security Authenticate User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-images
      path: /v1/images
      operations:
      - name: listimages
        method: GET
        description: Aqua Security List Images
        inputParameters:
        - name: registry
          in: query
          type: string
          description: Filter images by registry name
        - name: repository
          in: query
          type: string
          description: Filter images by repository name
        - name: tag
          in: query
          type: string
          description: Filter images by tag
        - name: page
          in: query
          type: integer
          description: Page number for pagination
        - name: pagesize
          in: query
          type: integer
          description: Number of results per page
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: registerimage
        method: POST
        description: Aqua Security Register Image
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-images-registry-image-name-image-tag
      path: /v1/images/{registry}/{image_name}/{image_tag}
      operations:
      - name: getimage
        method: GET
        description: Aqua Security Get Image Details
        inputParameters:
        - name: registry
          in: path
          type: string
          required: true
          description: Registry name
        - name: image_name
          in: path
          type: string
          required: true
          description: Image repository name
        - name: image_tag
          in: path
          type: string
          required: true
          description: Image tag
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deleteimage
        method: DELETE
        description: Aqua Security Delete Image
        inputParameters:
        - name: registry
          in: path
          type: string
          required: true
          description: Registry name
        - name: image_name
          in: path
          type: string
          required: true
          description: Image repository name
        - name: image_tag
          in: path
          type: string
          required: true
          description: Image tag
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-containers
      path: /v1/containers
      operations:
      - name: listcontainers
        method: GET
        description: Aqua Security List Containers
        inputParameters:
        - name: status
          in: query
          type: string
          description: Filter by container status
        - name: page
          in: query
          type: integer
          description: Page number for pagination
        - name: pagesize
          in: query
          type: integer
          description: Number of results per page
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-securitypolicies
      path: /v1/securitypolicies
      operations:
      - name: listpolicies
        method: GET
        description: Aqua Security List Security Policies
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createpolicy
        method: POST
        description: Aqua Security Create Security Policy
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-registries
      path: /v1/registries
      operations:
      - name: listregistries
        method: GET
        description: Aqua Security List Registries
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-users
      path: /v1/users
      operations:
      - name: listusers
        method: GET
        description: Aqua Security List Users
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    port: 8080
    namespace: aqua-security-rest
    description: REST adapter for Aqua Security REST API.
    resources:
    - path: /v1/login
      name: login
      operations:
      - method: POST
        name: login
        description: Aqua Security Authenticate User
        call: aqua-security.login
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/images
      name: listimages
      operations:
      - method: GET
        name: listimages
        description: Aqua Security List Images
        call: aqua-security.listimages
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/images
      name: registerimage
      operations:
      - method: POST
        name: registerimage
        description: Aqua Security Register Image
        call: aqua-security.registerimage
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/images/{registry}/{image_name}/{image_tag}
      name: getimage
      operations:
      - method: GET
        name: getimage
        description: Aqua Security Get Image Details
        call: aqua-security.getimage
        with:
          registry: rest.registry
          image_name: rest.image_name
          image_tag: rest.image_tag
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/images/{registry}/{image_name}/{image_tag}
      name: deleteimage
      operations:
      - method: DELETE
        name: deleteimage
        description: Aqua Security Delete Image
        call: aqua-security.deleteimage
        with:
          registry: rest.registry
          image_name: rest.image_name
          image_tag: rest.image_tag
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/containers
      name: listcontainers
      operations:
      - method: GET
        name: listcontainers
        description: Aqua Security List Containers
        call: aqua-security.listcontainers
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/securitypolicies
      name: listpolicies
      operations:
      - method: GET
        name: listpolicies
        description: Aqua Security List Security Policies
        call: aqua-security.listpolicies
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/securitypolicies
      name: createpolicy
      operations:
      - method: POST
        name: createpolicy
        description: Aqua Security Create Security Policy
        call: aqua-security.createpolicy
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/registries
      name: listregistries
      operations:
      - method: GET
        name: listregistries
        description: Aqua Security List Registries
        call: aqua-security.listregistries
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users
      name: listusers
      operations:
      - method: GET
        name: listusers
        description: Aqua Security List Users
        call: aqua-security.listusers
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    port: 9090
    namespace: aqua-security-mcp
    transport: http
    description: MCP adapter for Aqua Security REST API for AI agent use.
    tools:
    - name: login
      description: Aqua Security Authenticate User
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: aqua-security.login
      outputParameters:
      - type: object
        mapping: $.
    - name: listimages
      description: Aqua Security List Images
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: aqua-security.listimages
      with:
        registry: tools.registry
        repository: tools.repository
        tag: tools.tag
        page: tools.page
        pagesize: tools.pagesize
      inputParameters:
      - name: registry
        type: string
        description: Filter images by registry name
      - name: repository
        type: string
        description: Filter images by repository name
      - name: tag
        type: string
        description: Filter images by tag
      - name: page
        type: integer
        description: Page number for pagination
      - name: pagesize
        type: integer
        description: Number of results per page
      outputParameters:
      - type: object
        mapping: $.
    - name: registerimage
      description: Aqua Security Register Image
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: aqua-security.registerimage
      outputParameters:
      - type: object
        mapping: $.
    - name: getimage
      description: Aqua Security Get Image Details
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: aqua-security.getimage
      with:
        registry: tools.registry
        image_name: tools.image_name
        image_tag: tools.image_tag
      inputParameters:
      - name: registry
        type: string
        description: Registry name
        required: true
      - name: image_name
        type: string
        description: Image repository name
        required: true
      - name: image_tag
        type: string
        description: Image tag
        required: true
      outputParameters:
      - type: object
        mapping: $.
    - name: deleteimage
      description: Aqua Security Delete Image
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: aqua-security.deleteimage
      with:
        registry: tools.registry
        image_name: tools.image_name
        image_tag: tools.image_tag
      inputParameters:
      - name: registry
        type: string
        description: Registry name
        required: true
      - name: image_name
        type: string
        description: Image repository name
        required: true
      - name: image_tag
        type: string
        description: Image tag
        required: true
      outputParameters:
      - type: object
        mapping: $.
    - name: listcontainers
      description: Aqua Security List Containers
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: aqua-security.listcontainers
      with:
        status: tools.status
        page: tools.page
        pagesize: tools.pagesize
      inputParameters:
      - name: status
        type: string
        description: Filter by container status
      - name: page
        type: integer
        description: Page number for pagination
      - name: pagesize
        type: integer
        description: Number of results per page
      outputParameters:
      - type: object
        mapping: $.
    - name: listpolicies
      description: Aqua Security List Security Policies
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: aqua-security.listpolicies
      outputParameters:
      - type: object
        mapping: $.
    - name: createpolicy
      description: Aqua Security Create Security Policy
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: aqua-security.createpolicy
      outputParameters:
      - type: object
        mapping: $.
    - name: listregistries
      description: Aqua Security List Registries
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: aqua-security.listregistries
      outputParameters:
      - type: object
        mapping: $.
    - name: listusers
      description: Aqua Security List Users
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: aqua-security.listusers
      outputParameters:
      - type: object
        mapping: $.
binds:
- namespace: env
  keys:
    AQUA_SECURITY_TOKEN: AQUA_SECURITY_TOKEN