openapi: 3.0.3 info: title: Chick-fil-A BOVINE Accounts Storage 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: Storage description: S3 bucket inventory and object listing. paths: /api/s3: get: operationId: getS3Buckets summary: Chick-fil-A List S3 Buckets description: Lists S3 buckets for a given account, flagging globally accessible buckets. tags: - Storage parameters: - $ref: '#/components/parameters/AccountParam' - $ref: '#/components/parameters/RegionParam' responses: '200': description: S3 buckets returned. content: application/json: schema: type: array items: $ref: '#/components/schemas/S3Bucket' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/bucket: get: operationId: getS3Bucket summary: Chick-fil-A Get S3 Bucket description: Returns detailed information and object listing for a single S3 bucket. tags: - Storage parameters: - $ref: '#/components/parameters/AccountParam' - name: bucket in: query required: true description: The S3 bucket name to look up. schema: type: string example: my-app-logs-bucket - $ref: '#/components/parameters/RegionParam' responses: '200': description: S3 bucket detail returned. content: application/json: schema: $ref: '#/components/schemas/S3BucketDetail' '404': description: Bucket or account not found. content: application/json: schema: $ref: '#/components/schemas/MessageResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: parameters: AccountParam: name: account in: query required: true description: The AWS account number (12-digit) or account alias to scope the request to. schema: type: string example: '123456789012' RegionParam: name: region in: query required: false description: The AWS region to scope the request to. schema: type: string default: us-east-1 example: us-east-1 schemas: MessageResponse: type: object description: Generic message wrapper used for not-found and informational responses. properties: Message: type: string description: A human-readable message. example: Account not found. S3Bucket: type: object description: An S3 bucket record, flagged if globally accessible. properties: BucketName: type: string example: my-app-logs-bucket Global: type: boolean description: Whether the bucket is globally (publicly) accessible. example: false AccountAlias: type: string example: prod-platform S3BucketDetail: type: object description: Detailed S3 bucket information including object listing. properties: Bucket: type: object properties: BucketName: type: string example: my-app-logs-bucket Objects: type: array items: type: object properties: Key: type: string example: logs/2026-06-01.json Encryption: type: string example: AES256 StorageType: type: string example: STANDARD