2026-08-10 20:10:49 -04:00
openapi : 3.1 .0
info :
title : Sea Haven AP API
version : 1.0 .0
2026-09-25 22:43:44 +00:00
description : "Accounts payable HTTP API for Sea Haven Industries. Liveness, cookie session, and authenticated session smoke under local and AWS runtimes."
2026-08-10 20:10:49 -04:00
license :
name : Proprietary
servers :
2026-09-25 22:43:44 +00:00
- url : http://127.0.0.1:8787
description : Local API process used by Vite proxy and unit tests.
2026-08-10 20:10:49 -04:00
tags :
- name : Health
2026-09-25 22:43:44 +00:00
description : Liveness and readiness checks for the API process.
2026-08-10 20:10:49 -04:00
- name : Session
2026-09-25 22:43:44 +00:00
description : Cookie session via Cognito hosted UI, plus caller identity after upsert.
- name : Master data
description : Vendors, GL accounts, departments, and user role updates.
- name : Invoices
description : Invoice headers, coding lines, and uniqueness rules.
- name : Documents
description : Presigned document upload, confirm, and download against MinIO or S3.
- name : Approvals
description : Approval policies, step decisions, inbox, comments, and activity.
2026-08-10 20:10:49 -04:00
paths :
2026-09-25 22:43:44 +00:00
/api/health :
2026-08-10 20:10:49 -04:00
$ref : ./paths/health.yaml
2026-09-25 22:43:44 +00:00
/api/ready :
$ref : ./paths/ready.yaml
/api/auth/login :
$ref : ./paths/auth-login.yaml
/api/auth/callback :
$ref : ./paths/auth-callback.yaml
/api/auth/refresh :
$ref : ./paths/auth-refresh.yaml
/api/auth/logout :
$ref : ./paths/auth-logout.yaml
2026-08-10 20:10:49 -04:00
/api/me :
$ref : ./paths/me.yaml
2026-09-25 22:43:44 +00:00
/api/vendors :
$ref : ./paths/vendors.yaml
/api/vendors/{id}:
$ref : ./paths/vendors-id.yaml
/api/gl-accounts :
$ref : ./paths/gl-accounts.yaml
/api/gl-accounts/{id}:
$ref : ./paths/gl-accounts-id.yaml
/api/departments :
$ref : ./paths/departments.yaml
/api/departments/{id}:
$ref : ./paths/departments-id.yaml
/api/users :
$ref : ./paths/users.yaml
/api/users/{id}:
$ref : ./paths/users-id.yaml
/api/invoices :
$ref : ./paths/invoices.yaml
/api/invoices/{id}:
$ref : ./paths/invoices-id.yaml
/api/invoices/{id}/lines:
$ref : ./paths/invoices-id-lines.yaml
/api/invoices/{id}/documents:
$ref : ./paths/invoices-id-documents.yaml
/api/documents/{id}:
$ref : ./paths/documents-id.yaml
/api/documents/{id}/confirmations:
$ref : ./paths/documents-id-confirmations.yaml
/api/approval-policies :
$ref : ./paths/approval-policies.yaml
/api/approval-policies/{id}:
$ref : ./paths/approval-policies-id.yaml
/api/approval-steps/{id}/decisions:
$ref : ./paths/approval-steps-id-decisions.yaml
/api/inbox :
$ref : ./paths/inbox.yaml
/api/invoices/{id}/comments:
$ref : ./paths/invoices-id-comments.yaml
/api/invoices/{id}/activity-logs:
$ref : ./paths/invoices-id-activity-logs.yaml
2026-08-10 20:10:49 -04:00
components :
securitySchemes :
2026-09-25 22:43:44 +00:00
cookieAuth :
$ref : ./components/security.yaml#/cookieAuth
2026-08-10 20:10:49 -04:00
schemas :
Error :
$ref : ./components/schemas.yaml#/Error
HealthResponse :
$ref : ./components/schemas.yaml#/HealthResponse
2026-09-25 22:43:44 +00:00
ReadyResponse :
$ref : ./components/schemas.yaml#/ReadyResponse
2026-08-10 20:10:49 -04:00
MeResponse :
$ref : ./components/schemas.yaml#/MeResponse
2026-09-25 22:43:44 +00:00
Vendor :
$ref : ./components/schemas.yaml#/Vendor
GlAccount :
$ref : ./components/schemas.yaml#/GlAccount
Department :
$ref : ./components/schemas.yaml#/Department
User :
$ref : ./components/schemas.yaml#/User
Invoice :
$ref : ./components/schemas.yaml#/Invoice
InvoiceLine :
$ref : ./components/schemas.yaml#/InvoiceLine
Document :
$ref : ./components/schemas.yaml#/Document
ApprovalPolicy :
$ref : ./components/schemas.yaml#/ApprovalPolicy
ApprovalStep :
$ref : ./components/schemas.yaml#/ApprovalStep
InvoiceComment :
$ref : ./components/schemas.yaml#/InvoiceComment
ActivityLog :
$ref : ./components/schemas.yaml#/ActivityLog
security :
- cookieAuth : [ ]