openapi: 3.2.0 info: title: Gumlet Audit Logs API description: Gumlet helps developers deliver online video and images. This API encompasses Gumlet Video, Image and Video Analytics functionality to help you build your products better and faster than ever before. version: '1.4' contact: name: Gumlet Support Team url: https://www.gumlet.com/contact/ email: support@gumlet.com termsOfService: https://www.gumlet.com/terms/ license: name: Apache 2.0 url: https://opensource.org/license/apache-2.0 x-scalar-sdk-installation: - lang: TypeScript description: '```sh npm install @gumlet/nodejs-sdk ```' - lang: Python description: '```sh pip install gumlet ```' servers: - url: https://api.gumlet.com/v1 security: - API_KEY: [] tags: - name: Audit Logs description: Get detailed user activity logs for the entire organisation. paths: /user/audit-log: post: responses: '200': description: Successful response content: application/json: schema: type: object properties: pagination: type: object properties: page: type: integer description: Current page. page_size: type: integer description: Items returned in current page total_pages: type: integer description: Total available pages. total: type: integer description: Total available audit log items. x-apidog-orders: - page - page_size - total_pages - total required: - page - page_size - total_pages - total description: Details about pagination of the audit logs. data: type: array items: type: object properties: activity: type: string description: User friendly name of the activity ip: type: string description: IP address from where the activity happened. action_user: type: string description: Email id of the user who performed the activity. status_code: type: integer description: API status code for the event response_time: type: number description: Total response time in milliseconds for the event. timestamp: type: number description: Milliseconds since epoch marking the exact timestamp for the activity. source: type: object properties: id: type: string description: ID of the resource. type: type: string description: What kind of ID is there? For example, if the activity happened on a video workspace, the type would be `workspace` x-apidog-orders: - id - type description: Details about affected resource required: - id - type x-apidog-orders: - activity - ip - action_user - status_code - response_time - timestamp - source required: - activity - ip - action_user - status_code - response_time - timestamp - source x-apidog-orders: - pagination - data required: - pagination - data '400': description: Bad Request content: application/json: examples: Result: value: error: code: user_not_found message: User not found. schema: type: object properties: error: type: object properties: code: type: string example: user_not_found message: type: string example: User not found. required: - code - message required: - error '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '422': $ref: '#/components/responses/ValidationError' summary: Fetch Audit Logs tags: - Audit Logs operationId: fetch-audit-logs requestBody: content: application/json: schema: type: object properties: date_range: type: object properties: start_at: type: string description: Starting date for audit logs. It's a string in YYYY-MM-DD format. end_at: type: string description: Ending date for audit logs. It's a string in YYYY-MM-DD format. x-apidog-orders: - start_at - end_at required: - start_at - end_at page_number: type: integer description: Page number of results. minimum: 1 multipleOf: 1 default: 1 page_size: type: integer default: 100 minimum: 10 maximum: 500 user_email: type: array items: type: string format: email description: Array of user emails to filter the activity logs. activity_type: type: array items: type: string enum: - workspace_created - video_uploaded - video_details_updated - video_deleted - thumbnail_updated - subtitles_updated - audio_updated - processing_settings_updated - player_settings_updated - workspace_updated - team_member_invited - team_member_removed - import_started - playlist_created - playlist_updated - playlist_asset_changed - security_settings_updated - channel_updated - video_alert_changed - video_report_changed - live_stream_created - live_stream_started - live_stream_thumbnail_updated - live_stream_completed - live_stream_collection_created - live_stream_collection_updated - live_stream_deleted - image_source_created - image_source_updated - image_report_changed - image_alert_changed - user_profile_updated - api_key_changed - webhook_created - webhook_updated - webhook_deleted - drm_credentials_changed - plan_changed - billing_details_updated - playlist_deleted - payment_method_added - billing_alert_changed x-apidog-enum: - value: workspace_created name: '' description: '' - value: video_uploaded name: '' description: '' description: Array of activity types to filter the audit logs x-apidog-orders: - date_range - page_number - page_size - user_email - activity_type required: - date_range examples: Example 1: value: date_range: start_at: '2026-08-25' end_at: '2026-08-29' description: Get audit logs for the user activity in your organisation. Please note that this endpoint can only be accessed by `owner` and `admin` role users. x-codeSamples: - label: TypeScript lang: TypeScript source: "import Gumlet from '@gumlet/nodejs-sdk';\n\nconst client = new Gumlet({\n apiKey: process.env['API_KEY'], // defaults to the API_KEY env var\n});\n\nconst auditLog = await client.auditLogs.fetch({\n date_range: { start_at: '2026-08-25', end_at: '2026-08-29' },\n});\n\nconsole.log(auditLog);" - label: Python lang: Python source: "import os\n\nfrom gumlet import Gumlet\n\nclient = Gumlet(\n api_key=os.environ.get(\"API_KEY\"),\n)\n\naudit_log = client.audit_logs.fetch(\n date_range={\"start_at\": \"2026-08-25\", \"end_at\": \"2026-08-29\"},\n page_number=1,\n page_size=100,\n)\n\nprint(audit_log)" components: schemas: Error: type: object required: - error properties: error: type: object required: - code - message properties: code: type: string description: Machine-readable error code message: type: string description: Human-readable error message param: type: string description: Optional parameter name related to the error responses: Unauthorized: description: Unauthorized — missing or invalid API key / bearer token content: application/json: examples: Result: value: error: code: invalid_api_key message: API key supplied with request is invalid schema: $ref: '#/components/schemas/Error' Forbidden: description: Forbidden — unpaid account or insufficient role permissions content: application/json: examples: Result: value: error: code: unauthorized message: You don't have access to this feature. Please contact your organization owner. schema: $ref: '#/components/schemas/Error' ValidationError: description: Unprocessable Entity — request validation failed content: application/json: examples: Result: value: error: code: invalid_parameter message: body must have required property '' schema: $ref: '#/components/schemas/Error' securitySchemes: API_KEY: type: http scheme: bearer x-tagGroups: - name: Video on Demand tags: - Video Assets - Global Search - Multipart Upload - Audio Upload - Subtitle Upload - Recycle Bin - Video Workspaces - Folders - Video Playlists - Channel Viewers - Video Usage Analytics - Video Profiles - Webhooks - name: Live Streams tags: - Live Stream Workspaces - Live Stream Assets - Live Stream Analytics - name: Image APIs tags: - Image Sources - Image Usage Analytics - name: Video Analytics tags: - Video Analytics - name: Webhooks tags: - Webhooks - name: Account Endpoints tags: - User Data - Billing - Organization Data - Audit Logs x-ext-urls: {}