openapi: 3.1.0 info: title: AFM Access Profiles Automated Reports API version: 0.1.0 tags: - name: Automated Reports paths: /app/v1/arcee-admin/automated-reports/config: get: tags: - Automated Reports summary: Get Config operationId: get_config_app_v1_arcee_admin_automated_reports_config_get responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/AutomatedReportsConfig' security: - HTTPBearer: [] put: tags: - Automated Reports summary: Update Config operationId: update_config_app_v1_arcee_admin_automated_reports_config_put requestBody: content: application/json: schema: $ref: '#/components/schemas/AutomatedReportsConfigPatch' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/AutomatedReportsConfig' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] /app/v1/arcee-admin/automated-reports/schedules: get: tags: - Automated Reports summary: List Schedules operationId: list_schedules_app_v1_arcee_admin_automated_reports_schedules_get responses: '200': description: Successful Response content: application/json: schema: items: $ref: '#/components/schemas/ScheduleItem' type: array title: Response List Schedules App V1 Arcee Admin Automated Reports Schedules Get security: - HTTPBearer: [] post: tags: - Automated Reports summary: Create Schedule operationId: create_schedule_app_v1_arcee_admin_automated_reports_schedules_post requestBody: content: application/json: schema: $ref: '#/components/schemas/ScheduleCreate' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ScheduleItem' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] /app/v1/arcee-admin/automated-reports/schedules/{schedule_id}: put: tags: - Automated Reports summary: Update Schedule operationId: update_schedule_app_v1_arcee_admin_automated_reports_schedules__schedule_id__put security: - HTTPBearer: [] parameters: - name: schedule_id in: path required: true schema: type: string format: uuid title: Schedule Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ScheduleUpdate' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ScheduleItem' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' delete: tags: - Automated Reports summary: Delete Schedule operationId: delete_schedule_app_v1_arcee_admin_automated_reports_schedules__schedule_id__delete security: - HTTPBearer: [] parameters: - name: schedule_id in: path required: true schema: type: string format: uuid title: Schedule Id responses: '204': description: Successful Response '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /app/v1/arcee-admin/automated-reports/runs: get: tags: - Automated Reports summary: List Runs operationId: list_runs_app_v1_arcee_admin_automated_reports_runs_get security: - HTTPBearer: [] parameters: - name: limit in: query required: false schema: type: integer maximum: 200 minimum: 1 default: 50 title: Limit responses: '200': description: Successful Response content: application/json: schema: type: array items: $ref: '#/components/schemas/AutomatedReportRunResponse' title: Response List Runs App V1 Arcee Admin Automated Reports Runs Get '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /app/v1/arcee-admin/automated-reports/runs/{run_id}: get: tags: - Automated Reports summary: Get Run operationId: get_run_app_v1_arcee_admin_automated_reports_runs__run_id__get security: - HTTPBearer: [] parameters: - name: run_id in: path required: true schema: type: string format: uuid title: Run Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/AutomatedReportRunResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /app/v1/arcee-admin/automated-reports/run: post: tags: - Automated Reports summary: Trigger Run operationId: trigger_run_app_v1_arcee_admin_automated_reports_run_post requestBody: content: application/json: schema: $ref: '#/components/schemas/TriggerRunRequest' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/TriggerRunResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] /app/v1/arcee-admin/automated-reports/api-keys: get: tags: - Automated Reports summary: List Api Keys For Picker description: 'All API keys across orgs, lightweight payload for the per-key picker. Returns id, name, label, organization, owner email, status — sorted by name.' operationId: list_api_keys_for_picker_app_v1_arcee_admin_automated_reports_api_keys_get responses: '200': description: Successful Response content: application/json: schema: items: $ref: '#/components/schemas/ApiKeyPickerItem' type: array title: Response List Api Keys For Picker App V1 Arcee Admin Automated Reports Api Keys Get security: - HTTPBearer: [] components: schemas: AutomatedReportRunResponse: properties: id: type: string format: uuid title: Id report_type: type: string title: Report Type triggered_by: type: string title: Triggered By iso_week: type: string title: Iso Week target_api_key_id: anyOf: - type: string format: uuid - type: 'null' title: Target Api Key Id started_at: type: string title: Started At completed_at: anyOf: - type: string - type: 'null' title: Completed At status: type: string title: Status files_uploaded: anyOf: - items: type: string type: array - type: 'null' title: Files Uploaded drive_folder_id: anyOf: - type: string - type: 'null' title: Drive Folder Id drive_subfolder_url: anyOf: - type: string - type: 'null' title: Drive Subfolder Url error_message: anyOf: - type: string - type: 'null' title: Error Message type: object required: - id - report_type - triggered_by - iso_week - started_at - status title: AutomatedReportRunResponse ScheduleCreate: properties: name: anyOf: - type: string maxLength: 200 - type: 'null' title: Name enabled: type: boolean title: Enabled default: true schedule_cron: type: string maxLength: 200 title: Schedule Cron report_type: type: string title: Report Type default: usage time_frame: type: string title: Time Frame usage_scope: type: string title: Usage Scope default: both type: object required: - schedule_cron - time_frame title: ScheduleCreate HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError ScheduleUpdate: properties: name: anyOf: - type: string maxLength: 200 - type: 'null' title: Name enabled: anyOf: - type: boolean - type: 'null' title: Enabled schedule_cron: anyOf: - type: string maxLength: 200 - type: 'null' title: Schedule Cron report_type: anyOf: - type: string - type: 'null' title: Report Type time_frame: anyOf: - type: string - type: 'null' title: Time Frame usage_scope: anyOf: - type: string - type: 'null' title: Usage Scope type: object title: ScheduleUpdate ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type type: object required: - loc - msg - type title: ValidationError ApiKeyPickerItem: properties: id: type: string format: uuid title: Id name: type: string title: Name label_key: anyOf: - type: string - type: 'null' title: Label Key organization_id: type: string format: uuid title: Organization Id owner_email: anyOf: - type: string - type: 'null' title: Owner Email status: type: string title: Status type: object required: - id - name - organization_id - status title: ApiKeyPickerItem AutomatedReportsConfigPatch: properties: enabled: anyOf: - type: boolean - type: 'null' title: Enabled type: object title: AutomatedReportsConfigPatch TriggerRunRequest: properties: report_type: type: string title: Report Type iso_week: anyOf: - type: string - type: 'null' title: Iso Week time_frame: anyOf: - type: string - type: 'null' title: Time Frame start_date: anyOf: - type: string - type: 'null' title: Start Date end_date: anyOf: - type: string - type: 'null' title: End Date usage_scope: anyOf: - type: string - type: 'null' title: Usage Scope api_key_id: anyOf: - type: string format: uuid - type: 'null' title: Api Key Id type: object required: - report_type title: TriggerRunRequest ScheduleItem: properties: id: type: string format: uuid title: Id name: anyOf: - type: string - type: 'null' title: Name enabled: type: boolean title: Enabled schedule_cron: type: string title: Schedule Cron schedule_description: type: string title: Schedule Description report_type: type: string title: Report Type time_frame: type: string title: Time Frame usage_scope: type: string title: Usage Scope type: object required: - id - enabled - schedule_cron - schedule_description - report_type - time_frame - usage_scope title: ScheduleItem AutomatedReportsConfig: properties: enabled: type: boolean title: Enabled schedules: items: $ref: '#/components/schemas/ScheduleItem' type: array title: Schedules type: object required: - enabled - schedules title: AutomatedReportsConfig TriggerRunResponse: properties: run_id: type: string format: uuid title: Run Id report_type: type: string title: Report Type iso_week: type: string title: Iso Week status: type: string title: Status default: running type: object required: - run_id - report_type - iso_week title: TriggerRunResponse securitySchemes: HTTPBearer: type: http scheme: bearer