ARMO Posture API

KSPM posture and compliance framework results.

Business capability
Security Strategy & Governance Management BC-620.10

Operations 10

POST /posture/frameworks Get posture scan summary per framework #
POST /posture/controls Get posture control results #
POST /posture/controls/sections Get framework sections #
POST /posture/resources Get resources affected by posture issues #
GET /posture/exception List posture exceptions #
POST /posture/exception Create a posture exception #
PUT /posture/exception Update a posture exception #
DELETE /posture/exception Delete a posture exception #
POST /repositoryPosture/repositories Get repository (IaC) posture summary by repository #
POST /repositoryPosture/failedControls Get failed controls summary for repository posture #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/armosec-posture-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

armosec-posture-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ARMO Platform Posture API
  description: The ARMO Platform API exposes ARMO's cloud-native and Kubernetes security data over REST.
  version: '1.0'
  contact:
    name: ARMO
    url: https://www.armosec.io
  license:
    name: ARMO Platform Terms
    url: https://www.armosec.io/terms-of-service/
servers:
- url: https://api.armosec.io/api/v1
  description: EU region
- url: https://api.us.armosec.io/api/v1
  description: US region
security:
- apiKeyAuth: []
tags:
- name: Posture
  description: KSPM posture and compliance framework results.
paths:
  /posture/frameworks:
    post:
      operationId: getPostureFrameworks
      tags:
      - Posture
      summary: Get posture scan summary per framework
      description: Returns the scan summary for each compliance framework.
      requestBody:
        $ref: '#/components/requestBodies/ListQuery'
      responses:
        '200':
          description: Per-framework summaries.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /posture/controls:
    post:
      operationId: getPostureControls
      tags:
      - Posture
      summary: Get posture control results
      description: Returns the list of posture controls and their run results.
      requestBody:
        $ref: '#/components/requestBodies/ListQuery'
      responses:
        '200':
          description: Control results.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /posture/controls/sections:
    post:
      operationId: getPostureControlSections
      tags:
      - Posture
      summary: Get framework sections
      requestBody:
        $ref: '#/components/requestBodies/ListQuery'
      responses:
        '200':
          description: Framework sections.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /posture/resources:
    post:
      operationId: getPostureResources
      tags:
      - Posture
      summary: Get resources affected by posture issues
      requestBody:
        $ref: '#/components/requestBodies/ListQuery'
      responses:
        '200':
          description: Affected resources.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /posture/exception:
    get:
      operationId: listPostureExceptions
      tags:
      - Posture
      summary: List posture exceptions
      responses:
        '200':
          description: Posture exceptions.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      operationId: createPostureException
      tags:
      - Posture
      summary: Create a posture exception
      requestBody:
        $ref: '#/components/requestBodies/GenericBody'
      responses:
        '200':
          description: Created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
    put:
      operationId: updatePostureException
      tags:
      - Posture
      summary: Update a posture exception
      requestBody:
        $ref: '#/components/requestBodies/GenericBody'
      responses:
        '200':
          description: Updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
    delete:
      operationId: deletePostureException
      tags:
      - Posture
      summary: Delete a posture exception
      responses:
        '200':
          description: Deleted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /repositoryPosture/repositories:
    post:
      operationId: getRepositoryPostureRepositories
      tags:
      - Posture
      summary: Get repository (IaC) posture summary by repository
      requestBody:
        $ref: '#/components/requestBodies/ListQuery'
      responses:
        '200':
          description: Repository posture summary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /repositoryPosture/failedControls:
    post:
      operationId: getRepositoryPostureFailedControls
      tags:
      - Posture
      summary: Get failed controls summary for repository posture
      requestBody:
        $ref: '#/components/requestBodies/ListQuery'
      responses:
        '200':
          description: Failed controls summary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  requestBodies:
    GenericBody:
      required: true
      content:
        application/json:
          schema:
            type: object
            additionalProperties: true
    ListQuery:
      required: false
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ListQuery'
  schemas:
    Error:
      type: object
      properties:
        error:
          type: string
        message:
          type: string
    ListQuery:
      type: object
      description: ARMO's list endpoints accept a common query body with pagination, sorting, and field filters. Exact filter keys vary per resource.
      properties:
        pageSize:
          type: integer
          default: 50
        pageNum:
          type: integer
          default: 1
        orderBy:
          type: string
        innerFilters:
          type: array
          items:
            type: object
            additionalProperties: true
        since:
          type: string
          format: date-time
    ListResponse:
      type: object
      properties:
        total:
          type: object
          properties:
            value:
              type: integer
        response:
          type: array
          items:
            type: object
            additionalProperties: true
      additionalProperties: true
    GenericResponse:
      type: object
      additionalProperties: true
  responses:
    Unauthorized:
      description: Missing or invalid X-API-KEY.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: X-API-KEY
      description: Account access key (Agent Access Key) generated in ARMO Platform under Settings, sent in the X-API-KEY header.