> ## Documentation Index
> Fetch the complete documentation index at: https://www.trycomp.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Record vendor risk-owner acceptance | Comp AI API

> Records an immutable, timestamped acceptance of a vendor's current residual risk by the vendor owner (or a chosen member). Re-record after the residual.



## OpenAPI

````yaml /openapi.json post /v1/vendors/{id}/acceptances
openapi: 3.0.0
info:
  title: Comp AI 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
security: []
tags:
  - name: Attachments
    description: >-
      Generate signed download links for files attached to compliance tasks,
      comments, evidence records, and workflow reviews.
  - name: Audit Logs
    description: >-
      Retrieve audit trails for compliance activity, evidence changes, access
      decisions, and customer-facing security review workflows.
  - name: CloudSecurity
    description: >-
      Run AWS, Azure, and GCP cloud security scans, detect enabled services,
      review findings, and connect cloud posture results to compliance work.
    x-group: Cloud Security
  - name: Comments
    description: >-
      Create and manage collaboration comments on compliance entities such as
      tasks, policies, risks, vendors, and findings.
  - name: Context
    description: >-
      Manage organization context that helps Comp AI tailor policies,
      assessments, and compliance automation to the business.
  - name: Controls
    description: >-
      Manage controls, map them to policies, tasks, framework requirements, and
      evidence document types, and track implementation progress.
  - name: Device Agent
    description: >-
      Register employee devices, submit device compliance check-ins, download
      agent builds, and manage endpoint security status.
  - name: Devices
    description: >-
      Read and manage employee device inventory and Fleet compliance data used
      for endpoint security controls.
  - name: Evidence Export
    description: >-
      Export task evidence, automation evidence, and reviewer-ready evidence
      bundles as PDF or ZIP files.
  - name: Evidence Export (Auditor)
    description: Export all organization evidence for an auditor review package.
  - name: Evidence Forms
    description: >-
      Collect, review, upload, and export structured evidence submissions for
      compliance tasks and document requirements.
  - name: Findings
    description: >-
      Create, review, update, and track audit findings, remediation activity,
      and finding history for an organization.
  - name: Frameworks
    description: >-
      Manage SOC 2, ISO 27001, HIPAA, GDPR, and custom framework instances,
      requirements, scores, and sync history.
  - name: ISMS
    description: >-
      Build and maintain the ISO 27001 ISMS document set — scope, leadership
      commitment, context, interested parties, objectives, roles, monitoring,
      internal audit, and management review.
  - name: Integrations
    description: >-
      Connect vendor systems, configure OAuth apps, run compliance checks, sync
      employees, manage variables, and collect automated evidence.
  - name: Knowledge Base
    description: >-
      Upload source documents, process them for retrieval, and manage reusable
      manual answers that power questionnaires and AI policy workflows.
  - name: Offboarding Checklist
  - name: Org Chart
    description: >-
      Manage organization chart metadata and evidence used for governance,
      accountability, and audit readiness.
  - name: Organization
    description: >-
      Manage organization profile data, API keys, logos, ownership, role
      notifications, and access approval settings.
  - name: People
    description: >-
      Invite and manage workforce members, training status, device compliance,
      email preferences, and employee evidence records.
  - name: Policies
    description: >-
      Create, version, publish, export, map, and improve compliance policies
      with AI-assisted drafting and approval workflows.
  - name: Questionnaire
    description: >-
      Parse security questionnaires, generate answers from approved evidence,
      save reviewer edits, stream progress, and export completed files.
  - name: Risks
    description: >-
      Create, update, and report on organizational risks with ownership,
      departments, and compliance remediation status.
  - name: Roles
    description: >-
      Create custom roles and resolve permission sets for organization-level
      access control.
  - name: SOA
    description: >-
      Create, auto-fill, review, approve, and export ISO 27001 Statement of
      Applicability documents.
    x-group: Statement of Applicability
  - name: Security Penetration Tests
    description: >-
      Create AI-powered penetration test runs, track progress, inspect findings
      and events, and download markdown or PDF reports.
  - name: Task Automations
    description: >-
      Create, version, run, and inspect automated evidence collection workflows
      attached to compliance tasks.
  - name: Task Management
    description: >-
      Manage task items and attachments linked to operational entities such as
      risks and vendors.
  - name: Tasks
    description: >-
      Manage compliance task lifecycle, assignments, review approvals, evidence
      uploads, policy links, and activity history.
  - name: Timelines
    description: >-
      Track audit and compliance readiness timelines, phases, and review
      milestones for an organization.
  - name: Training
    description: >-
      Record security awareness and HIPAA training completion status and
      generate completion certificates.
  - name: Trust Access
    description: >-
      Manage external Trust Center access requests, NDA signing, grants,
      tokenized document downloads, public FAQs, and reviewer access.
  - name: Trust Portal
    description: >-
      Configure the live Trust Center, custom domain, public overview, FAQs,
      compliance resources, documents, links, and vendor disclosures.
  - name: Uploads
  - name: Vendors
    description: >-
      Manage third-party vendors, global vendor search, risk assessment
      triggers, and Trust Center vendor visibility.
paths:
  /v1/vendors/{id}/acceptances:
    post:
      tags:
        - Vendors
      summary: Record vendor risk-owner acceptance
      description: >-
        Records an immutable, timestamped acceptance of a vendor's current
        residual risk by the vendor owner (or a chosen member). Re-record after
        the residual rating changes; prior events remain in the history.
      operationId: VendorAcceptancesController_recordVendorAcceptance_v1
      parameters:
        - name: id
          required: true
          in: path
          description: Vendor ID
          schema:
            example: vnd_abc123def456
            type: string
      requestBody:
        required: true
        description: Acceptance data (acceptor defaults to the vendor owner)
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRiskAcceptanceDto'
      responses:
        '201':
          description: Acceptance recorded successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: Acceptance event ID
                    example: rska_abc123def456
                  acceptedById:
                    type: string
                    nullable: true
                    description: Member ID of the acceptor (null if since removed)
                    example: mem_abc123def456
                  acceptedByName:
                    type: string
                    description: Acceptor display name, frozen at acceptance
                    example: Jane Doe
                  notes:
                    type: string
                    nullable: true
                    example: Residual risk reviewed at the Q2 risk review.
                  residualLikelihood:
                    type: string
                    enum:
                      - very_unlikely
                      - unlikely
                      - possible
                      - likely
                      - very_likely
                    description: Residual likelihood frozen at acceptance
                    example: unlikely
                  residualImpact:
                    type: string
                    enum:
                      - insignificant
                      - minor
                      - moderate
                      - major
                      - severe
                    description: Residual impact frozen at acceptance
                    example: minor
                  level:
                    type: string
                    enum:
                      - very-low
                      - low
                      - medium
                      - high
                      - very-high
                    description: Risk level of the accepted residual rating
                    example: low
                  levelLabel:
                    type: string
                    description: Human-readable level label
                    example: Low
                  stale:
                    type: boolean
                    description: >-
                      True when the residual rating changed after this
                      acceptance was recorded — re-acceptance is required
                    example: false
                  createdAt:
                    type: string
                    format: date-time
                    description: When the acceptance was recorded (server-set, immutable)
                  authType:
                    type: string
                    enum:
                      - api-key
                      - session
                      - service
                    description: How the request was authenticated
                  authenticatedUser:
                    type: object
                    description: User information (only for session auth)
                    properties:
                      id:
                        type: string
                        example: usr_def456ghi789
                      email:
                        type: string
                        example: user@example.com
        '400':
          description: No owner assigned, or the acceptor is not a valid member
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: >-
                      No owner is assigned. Assign an owner or choose an
                      acceptor.
        '401':
          description: Unauthorized - Invalid authentication
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Invalid or expired API key
        '403':
          description: Forbidden - User does not have permission to access vendor risks
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Forbidden
        '404':
          description: Vendor not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: >-
                      Vendor with ID vnd_abc123def456 not found in organization
                      org_abc123def456
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Internal server error
      security:
        - apikey: []
components:
  schemas:
    CreateRiskAcceptanceDto:
      type: object
      properties:
        acceptedById:
          type: string
          description: >-
            Member ID of the acceptor. Defaults to the risk owner (assignee)
            when omitted.
          example: mem_abc123def456
        notes:
          type: string
          description: Optional notes recorded with the acceptance.
          example: Residual risk reviewed at the Q2 risk review.
  securitySchemes:
    apikey:
      type: apiKey
      in: header
      name: X-API-Key
      description: API key for authentication

````