Comp AI Controls API

Manage controls, map them to policies, tasks, framework requirements, and evidence document types, and track implementation progress.

Operations 10

GET /v1/controls List compliance controls #
POST /v1/controls Create compliance control #
GET /v1/controls/options Get dropdown options for creating controls #
GET /v1/controls/{id} Get control detail with progress #
DELETE /v1/controls/{id} Delete a control #
POST /v1/controls/{id}/policies/link Link policies to control #
POST /v1/controls/{id}/tasks/link Link tasks to control #
POST /v1/controls/{id}/requirements/link Link existing requirements to a control #
POST /v1/controls/{id}/document-types/link Link required document types to a control #
DELETE /v1/controls/{id}/document-types/{formType} Remove a required document type from a control #

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/comp-ai:comp-ai-controls-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

comp-ai-controls-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Comp AI Controls API
  description: Compliance automation API for SOC 2, ISO 27001, HIPAA, GDPR, evidence collection, policy workflows, Trust Access, security questionnaires, integrations, cloud checks, and device compliance.
  version: '1.0'
  contact: {}
servers:
- url: https://api.trycomp.ai
  description: Production API Server
tags:
- name: Controls
  description: Manage controls, map them to policies, tasks, framework requirements, and evidence document types, and track implementation progress.
paths:
  /v1/controls:
    get:
      operationId: ControlsController_findAll_v1
      parameters:
      - name: page
        required: false
        in: query
        schema:
          type: string
      - name: perPage
        required: false
        in: query
        schema:
          type: string
      - name: name
        required: false
        in: query
        description: Filter by name (case-insensitive contains)
        schema:
          type: string
      - name: sortBy
        required: false
        in: query
        description: 'Field to sort by (default: name)'
        schema:
          type: string
      - name: sortDesc
        required: false
        in: query
        description: Sort descending (true/false)
        schema:
          type: string
      responses:
        '200':
          description: ''
      security:
      - bearer: []
      summary: List compliance controls
      tags:
      - Controls
      description: List controls with linked policies, tasks, requirements, and document types for SOC 2, ISO 27001, HIPAA, and GDPR programs.
      x-mint:
        metadata:
          title: List compliance controls | Comp AI API
          sidebarTitle: List compliance controls
          description: List controls with linked policies, tasks, requirements, and document types for SOC 2, ISO 27001, HIPAA, and GDPR programs.
          og:title: List compliance controls | Comp AI API
          og:description: List controls with linked policies, tasks, requirements, and document types for SOC 2, ISO 27001, HIPAA, and GDPR programs.
      x-speakeasy-mcp:
        name: controls-find-all
    post:
      operationId: ControlsController_create_v1
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateControlDto'
      responses:
        '201':
          description: ''
      security:
      - bearer: []
      summary: Create compliance control
      tags:
      - Controls
      description: Create a custom compliance control and connect it to framework requirements, policies, tasks, and evidence expectations.
      x-mint:
        metadata:
          title: Create compliance control | Comp AI API
          sidebarTitle: Create compliance control
          description: Create a custom compliance control and connect it to framework requirements, policies, tasks, and evidence expectations.
          og:title: Create compliance control | Comp AI API
          og:description: Create a custom compliance control and connect it to framework requirements, policies, tasks, and evidence expectations.
      x-speakeasy-mcp:
        name: create
  /v1/controls/options:
    get:
      operationId: ControlsController_getOptions_v1
      parameters: []
      responses:
        '200':
          description: ''
      security:
      - bearer: []
      summary: Get dropdown options for creating controls
      tags:
      - Controls
      description: Get dropdown options for creating controls in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types, and track implementation progress.
      x-mint:
        metadata:
          title: Get dropdown options for creating controls | Comp AI API
          sidebarTitle: Get dropdown options for creating controls
          description: Get dropdown options for creating controls in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types.
          og:title: Get dropdown options for creating controls | Comp AI API
          og:description: Get dropdown options for creating controls in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types.
      x-speakeasy-mcp:
        name: get-options
  /v1/controls/{id}:
    get:
      operationId: ControlsController_findOne_v1
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: frameworkInstanceId
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
      security:
      - bearer: []
      summary: Get control detail with progress
      tags:
      - Controls
      description: Get control detail with progress in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types, and track implementation progress.
      x-mint:
        metadata:
          title: Get control detail with progress | Comp AI API
          sidebarTitle: Get control detail with progress
          description: Get control detail with progress in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types, and track.
          og:title: Get control detail with progress | Comp AI API
          og:description: Get control detail with progress in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types, and track.
      x-speakeasy-mcp:
        name: controls-find-one
    delete:
      operationId: ControlsController_delete_v1
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
      security:
      - bearer: []
      summary: Delete a control
      tags:
      - Controls
      description: Delete a control in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types, and track implementation progress.
      x-mint:
        metadata:
          title: Delete a control | Comp AI API
          sidebarTitle: Delete a control
          description: Delete a control in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types, and track implementation.
          og:title: Delete a control | Comp AI API
          og:description: Delete a control in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types, and track implementation.
      x-speakeasy-mcp:
        name: controls-delete
  /v1/controls/{id}/policies/link:
    post:
      operationId: ControlsController_linkPolicies_v1
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: frameworkInstanceId
        required: true
        in: query
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LinkPoliciesDto'
      responses:
        '201':
          description: ''
      security:
      - bearer: []
      summary: Link policies to control
      tags:
      - Controls
      description: Link policies to a control so auditors and reviewers can trace control implementation back to approved policy evidence.
      x-mint:
        metadata:
          title: Link policies to control | Comp AI API
          sidebarTitle: Link policies to control
          description: Link policies to a control so auditors and reviewers can trace control implementation back to approved policy evidence.
          og:title: Link policies to control | Comp AI API
          og:description: Link policies to a control so auditors and reviewers can trace control implementation back to approved policy evidence.
      x-speakeasy-mcp:
        name: link-policies
  /v1/controls/{id}/tasks/link:
    post:
      operationId: ControlsController_linkTasks_v1
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: frameworkInstanceId
        required: true
        in: query
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LinkTasksDto'
      responses:
        '201':
          description: ''
      security:
      - bearer: []
      summary: Link tasks to control
      tags:
      - Controls
      description: Link compliance tasks to a control so implementation work, evidence collection, and review status stay connected.
      x-mint:
        metadata:
          title: Link tasks to control | Comp AI API
          sidebarTitle: Link tasks to control
          description: Link compliance tasks to a control so implementation work, evidence collection, and review status stay connected.
          og:title: Link tasks to control | Comp AI API
          og:description: Link compliance tasks to a control so implementation work, evidence collection, and review status stay connected.
      x-speakeasy-mcp:
        name: link-tasks
  /v1/controls/{id}/requirements/link:
    post:
      operationId: ControlsController_linkRequirements_v1
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LinkRequirementsToControlDto'
      responses:
        '201':
          description: ''
      security:
      - bearer: []
      summary: Link existing requirements to a control
      tags:
      - Controls
      description: Link existing requirements to a control in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types, and track implementation progress.
      x-mint:
        metadata:
          title: Link existing requirements to a control | Comp AI API
          sidebarTitle: Link existing requirements to a control
          description: Link existing requirements to a control in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types.
          og:title: Link existing requirements to a control | Comp AI API
          og:description: Link existing requirements to a control in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types.
      x-speakeasy-mcp:
        name: controls-link-requirements
  /v1/controls/{id}/document-types/link:
    post:
      operationId: ControlsController_linkDocumentTypes_v1
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: frameworkInstanceId
        required: true
        in: query
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LinkDocumentTypesDto'
      responses:
        '201':
          description: ''
      security:
      - bearer: []
      summary: Link required document types to a control
      tags:
      - Controls
      description: Link required document types to a control in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types, and track implementation progress.
      x-mint:
        metadata:
          title: Link required document types to a control | Comp AI API
          sidebarTitle: Link required document types to a control
          description: Link required document types to a control in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types.
          og:title: Link required document types to a control | Comp AI API
          og:description: Link required document types to a control in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types.
      x-speakeasy-mcp:
        name: link-document-types
  /v1/controls/{id}/document-types/{formType}:
    delete:
      operationId: ControlsController_unlinkDocumentType_v1
      parameters:
      - name: id
        required: true
        in: path
        description: Unique control identifier
        schema:
          example: ctl_abc123def456
          type: string
      - name: formType
        required: true
        in: path
        description: Evidence form type to unlink from the control
        schema:
          enum:
          - board_meeting
          - it_leadership_meeting
          - risk_committee_meeting
          - meeting
          - access_request
          - whistleblower_report
          - penetration_test
          - rbac_matrix
          - infrastructure_inventory
          - employee_performance_evaluation
          - network_diagram
          - tabletop_exercise
          - account_types
          type: string
      - name: frameworkInstanceId
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
      security:
      - bearer: []
      summary: Remove a required document type from a control
      tags:
      - Controls
      description: Remove a required document type from a control in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document types, and track implementation progress.
      x-mint:
        metadata:
          title: Remove a required document type from a control | Comp AI API
          sidebarTitle: Remove a required document type from a control
          description: Remove a required document type from a control in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document.
          og:title: Remove a required document type from a control | Comp AI API
          og:description: Remove a required document type from a control in Comp AI. Manage controls, map them to policies, tasks, framework requirements, and evidence document.
      x-speakeasy-mcp:
        name: unlink-document-type
components:
  schemas:
    LinkRequirementMappingDto:
      type: object
      properties:
        requirementId:
          type: string
          description: Platform requirement ID
        customRequirementId:
          type: string
          description: Org-custom requirement ID
        frameworkInstanceId:
          type: string
          description: Framework instance ID
      required:
      - frameworkInstanceId
    RequirementMappingDto:
      type: object
      properties:
        requirementId:
          type: string
          description: Platform requirement ID (exactly one of requirementId / customRequirementId must be set)
        customRequirementId:
          type: string
          description: Org-custom requirement ID (exactly one of requirementId / customRequirementId must be set)
        frameworkInstanceId:
          type: string
          description: Framework instance ID
      required:
      - frameworkInstanceId
    LinkTasksDto:
      type: object
      properties:
        taskIds:
          description: Task IDs to link to the control
          type: array
          items:
            type: string
      required:
      - taskIds
    LinkPoliciesDto:
      type: object
      properties:
        policyIds:
          description: Policy IDs to link to the control
          type: array
          items:
            type: string
      required:
      - policyIds
    LinkDocumentTypesDto:
      type: object
      properties:
        formTypes:
          type: array
          description: Evidence form types to require for this control
          items:
            type: string
            enum:
            - board_meeting
            - it_leadership_meeting
            - risk_committee_meeting
            - meeting
            - access_request
            - whistleblower_report
            - penetration_test
            - rbac_matrix
            - infrastructure_inventory
            - employee_performance_evaluation
            - network_diagram
            - tabletop_exercise
            - account_types
      required:
      - formTypes
    LinkRequirementsToControlDto:
      type: object
      properties:
        requirements:
          description: Requirement + framework instance pairs to link
          type: array
          items:
            $ref: '#/components/schemas/LinkRequirementMappingDto'
      required:
      - requirements
    CreateControlDto:
      type: object
      properties:
        name:
          type: string
          description: Control name
          example: Access Control
        description:
          type: string
          description: Control description
          example: Manages user access to systems
        policyIds:
          description: Policy IDs to connect
          type: array
          items:
            type: string
        taskIds:
          description: Task IDs to connect
          type: array
          items:
            type: string
        requirementMappings:
          description: Requirement mappings
          type: array
          items:
            $ref: '#/components/schemas/RequirementMappingDto'
        documentTypes:
          type: array
          description: Evidence form types to require on this control
          items:
            type: string
            enum:
            - board_meeting
            - it_leadership_meeting
            - risk_committee_meeting
            - meeting
            - access_request
            - whistleblower_report
            - penetration_test
            - rbac_matrix
            - infrastructure_inventory
            - employee_performance_evaluation
            - network_diagram
            - tabletop_exercise
            - account_types
      required:
      - name
      - description
  securitySchemes:
    apikey:
      type: apiKey
      in: header
      name: X-API-Key
      description: API key for authentication
x-speakeasy-timeout: 120000