Amigo Compliance API
The Compliance API from Amigo — 3 operation(s) for compliance.
The Compliance API from Amigo — 3 operation(s) for compliance.
openapi: 3.1.0
info:
title: Amigo Account Compliance API
version: 0.1.0
servers:
- url: https://api.amigo.ai
- url: https://internal-api.amigo.ai
- url: https://api-eu-central-1.amigo.ai
- url: https://api-ap-southeast-2.amigo.ai
- url: https://api-ca-central-1.amigo.ai
security:
- Bearer-Authorization: []
Bearer-Authorization-Organization: []
Basic: []
tags:
- name: Compliance
paths:
/v1/{workspace_id}/compliance/dashboard:
get:
tags:
- Compliance
summary: Compliance dashboard composite
description: 'Composite compliance dashboard — HIPAA status, retention, credentials summary.
Aggregates compliance signals into a single dashboard view.
Permissions: admin, owner.'
operationId: get-compliance-dashboard
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ComplianceDashboardResponse'
'429':
description: Rate limited
parameters:
- name: workspace_id
in: path
required: true
schema:
type: string
format: uuid
title: Workspace Id
/v1/{workspace_id}/compliance/hipaa:
get:
tags:
- Compliance
summary: HIPAA compliance evidence report
description: 'HIPAA compliance evidence report.
Aggregates audit statistics, retention policy, encryption status,
and API key summary for the specified period. Identity-specific
fields (MFA, SSO, lockout) return null pending integration.
Permissions: admin, owner.'
operationId: get-hipaa-report
parameters:
- name: workspace_id
in: path
required: true
schema:
type: string
format: uuid
title: Workspace Id
- name: report_period_days
in: query
required: false
schema:
type: integer
maximum: 365
minimum: 1
description: Report period in days
default: 90
title: Report Period Days
description: Report period in days
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/HipaaReportResponse'
'429':
description: Rate limited
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/{workspace_id}/compliance/access-review:
get:
tags:
- Compliance
summary: Access review export
description: 'Access review export for SOC2 attestation.
Lists all API key credentials with role, status, and activity dates.
Download, review, and upload signed attestation for SOC2 compliance.
Permissions: admin, owner.'
operationId: get-access-review
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/AccessReviewResponse'
'429':
description: Rate limited
parameters:
- name: workspace_id
in: path
required: true
schema:
type: string
format: uuid
title: Workspace Id
components:
schemas:
HipaaReportResponse:
properties:
generated_at:
type: string
title: Generated At
report_period_days:
type: integer
title: Report Period Days
workspace_id:
type: string
format: uuid
title: Workspace Id
audit_summary:
additionalProperties: true
type: object
title: Audit Summary
retention_policy:
additionalProperties: true
type: object
title: Retention Policy
encryption:
additionalProperties:
type: boolean
type: object
title: Encryption
access_controls:
additionalProperties: true
type: object
title: Access Controls
api_key_summary:
additionalProperties:
type: integer
type: object
title: Api Key Summary
compliance_status:
type: string
title: Compliance Status
type: object
required:
- generated_at
- report_period_days
- workspace_id
- audit_summary
- retention_policy
- encryption
- access_controls
- api_key_summary
- compliance_status
title: HipaaReportResponse
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
AccessReviewResponse:
properties:
generated_at:
type: string
title: Generated At
workspace_id:
type: string
format: uuid
title: Workspace Id
credentials:
items:
additionalProperties: true
type: object
type: array
title: Credentials
total_credentials:
type: integer
title: Total Credentials
jwt_credentials_note:
type: string
title: Jwt Credentials Note
type: object
required:
- generated_at
- workspace_id
- credentials
- total_credentials
- jwt_credentials_note
title: AccessReviewResponse
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
ComplianceDashboardResponse:
properties:
hipaa_status:
type: string
title: Hipaa Status
retention_days:
anyOf:
- type: integer
- type: 'null'
title: Retention Days
legal_hold:
type: boolean
title: Legal Hold
total_credentials:
type: integer
title: Total Credentials
active_credentials:
type: integer
title: Active Credentials
last_audit_export:
anyOf:
- type: string
- type: 'null'
title: Last Audit Export
generated_at:
type: string
title: Generated At
type: object
required:
- hipaa_status
- retention_days
- legal_hold
- total_credentials
- active_credentials
- last_audit_export
- generated_at
title: ComplianceDashboardResponse
description: Composite compliance health overview.
securitySchemes:
Bearer-Authorization:
type: http
scheme: bearer
bearerFormat: JWT
description: Amigo issued JWT token that identifies an user. It's issued either after logging in through the frontend, or manually through the [`SignInWithAPIKey`](sign-in-with-api-key) endpoint.
Bearer-Authorization-Organization:
type: apiKey
in: header
name: X-ORG-ID
description: An optional organization identifier that indicates from which organization the token is issued. This is used in rare cases where the user to authenticate is making a request for resources in another organization.
Basic:
type: http
scheme: basic
description: The username should be set to {org_id}_{user_id}, and the password should be the Amigo issued JWT token that identifies the user.