openapi: 3.2.0 info: title: Ubicloud Audit Log API version: 0.1.0 contact: url: https://www.ubicloud.com/ email: support@ubicloud.com license: name: GNU Affero General Public License v3.0 (AGPL-3.0) url: https://www.gnu.org/licenses/agpl-3.0.en.html description: 'Operations tagged Audit Log across 2 of this provider''s published API definitions: ubicloud-openapi.yml, ubicloud-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - url: https://api.ubicloud.com security: - BearerAuth: [] tags: - description: Audit Log Operations name: Audit Log paths: /project/{project_id}/audit-log: parameters: - $ref: '#/components/parameters/project_id' get: operationId: searchProjectAuditLog summary: Search project audit log entries parameters: - name: action in: query description: Filter by action type required: false schema: type: string example: vm, create, vm/create - name: end in: query description: Filter by end_date (shows 3 months prior) required: false schema: type: string - name: limit in: query description: Limit the number of returned records (1-1000) required: false schema: type: number - name: subject in: query description: Filter by account name/email/ID required: false schema: type: string - name: object in: query description: Filter by object ID required: false schema: type: string - name: pagination_key in: query description: Key for paginating results required: false schema: type: string responses: '200': $ref: '#/components/responses/AuditLogs' default: $ref: '#/components/responses/Error' tags: - Audit Log servers: - url: https://api.ubicloud.com components: schemas: Error: type: object properties: error: type: object additionalProperties: false properties: code: type: integer example: 401 message: type: string example: There was an error logging in type: type: string example: InvalidCredentials details: type: - object - 'null' required: - code - message - type additionalProperties: false required: - error AuditLog: type: object properties: at: description: Timestamp of the action type: string format: date-time action: description: Action performed type: string subject_id: description: ID of the account that performed the action type: string subject_name: description: Name of the account that performed the action (if still member of project) type: string object_ids: description: IDs of the objects affected by the action type: array items: type: string additionalProperties: false required: - at - action - subject_id - object_ids responses: AuditLogs: description: A list of audit log entries content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/AuditLog' pagination_key: description: Key to pass to get next page (only present if additional pages) type: string additionalProperties: false required: - items Error: description: An error response content: application/json: schema: $ref: '#/components/schemas/Error' parameters: project_id: description: ID of the project in: path name: project_id required: true schema: type: string example: pjkkmx0f2vke4h36nk9cm8v8q0 pattern: ^pj[0-9a-hj-km-np-tv-z]{24}$ securitySchemes: BearerAuth: bearerFormat: JWT scheme: bearer type: http x-refined-from: - ubicloud-openapi.yml - ubicloud-openapi.yml