Chick-fil-A Compliance API

Compliance rules and audit report operations.

OpenAPI Specification

chickfila-compliance-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Chick-fil-A BOVINE Accounts Compliance API
  description: BOVI(n)E — Building Operational Visibility Into (n) Environments — is a serverless, single-page application open-sourced by Chick-fil-A (github.com/chick-fil-a/bovine) that provides a "10,000 foot view" across all of an enterprise's AWS accounts in a multi-account strategy. The backend runs on AWS Lambda behind AWS API Gateway, with data stored in DynamoDB and audit reports in S3. The API surfaces account inventory, IAM users and roles, EC2 instances, public IPs, security groups, load balancers, RDS/DynamoDB/ Redshift databases, S3 buckets, and compliance audit reports for security and governance teams. This specification was generated from the project's serverless.yml route definitions and Python Lambda handlers.
  version: '1.0'
  x-generated-from: documentation
  x-source-url: https://github.com/chick-fil-a/bovine
  x-last-validated: '2026-06-02'
  contact:
    name: Kin Lane
    email: kin@apievangelist.com
  license:
    name: See repository
    url: https://github.com/chick-fil-a/bovine
servers:
- url: https://api.example.com
  description: Deployment-specific AWS API Gateway endpoint. BOVINE is self-hosted; the host is configured per-deployment via the serverless domainName setting.
tags:
- name: Compliance
  description: Compliance rules and audit report operations.
paths:
  /api/rules:
    get:
      operationId: getComplianceRules
      summary: Chick-fil-A List Compliance Rules
      description: Lists all enabled compliance rules grouped by AWS service, sourced from the rules S3 bucket.
      tags:
      - Compliance
      responses:
        '200':
          description: Compliance rules returned.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ComplianceRule'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /api/reports:
    get:
      operationId: getReports
      summary: Chick-fil-A List Compliance Reports
      description: Lists available compliance audit reports stored in the reports S3 bucket.
      tags:
      - Compliance
      responses:
        '200':
          description: Reports returned.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Report'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /api/reports/run:
    get:
      operationId: runReport
      summary: Chick-fil-A Run Compliance Audit Report
      description: Triggers an asynchronous compliance audit Lambda that generates a new compliance report.
      tags:
      - Compliance
      responses:
        '200':
          description: Audit report run invoked.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunReportResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    Report:
      type: object
      description: A compliance audit report stored in S3.
      properties:
        Report:
          type: string
          description: The report identifier (S3 key prefix).
          example: 2026-06-01
        LastModified:
          type: string
          description: The last-modified timestamp of the report object.
          example: '2026-06-01 14:30:00+00:00'
    ComplianceRule:
      type: object
      description: An enabled compliance rule grouped by AWS service.
      properties:
        Service:
          type: string
          description: The AWS service the rule applies to.
          example: s3
        Rule:
          type: object
          description: The compliance rule definition.
          properties:
            name:
              type: string
              description: Rule name.
              example: s3-public-read-prohibited
            description:
              type: string
              description: Rule description.
              example: Checks that S3 buckets do not allow public read access.
            priority:
              type: integer
              description: Rule priority.
              example: 1
    RunReportResponse:
      type: object
      description: Response indicating an audit report run was invoked.
      properties:
        Response:
          type: integer
          description: The Lambda invocation status code.
          example: 202