openapi: 3.2.0 info: title: Gumlet Recycle Bin 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: Recycle Bin description: Endpoints to list deleted assets and restore them. paths: /video/asset/recover: post: summary: Recover Deleted Asset description: Recovers a deleted asset from the recycle bin. operationId: recover responses: '200': description: '' content: application/json: examples: New Example: summary: New Example value: '' New Example 1: summary: New Example 1 value: success: true '400': description: Bad Request — invalid or missing asset ID content: application/json: examples: Result: value: error: code: asset_id_not_valid message: The asset ID is not valid. schema: type: object properties: error: type: object properties: code: type: string example: asset_id_not_valid message: type: string example: The asset ID is not valid. required: - code - message required: - error '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': description: Not Found — asset missing or deleted more than 30 days ago content: application/json: examples: Result: value: error: code: asset_created_before_last_30_days message: It's been more than 30 days since the asset was deleted. Please contact support for further assistance. schema: type: object properties: error: type: object properties: code: type: string example: asset_created_before_last_30_days message: type: string example: It's been more than 30 days since the asset was deleted. Please contact support for further assistance. required: - code - message required: - error parameters: [] requestBody: content: application/json: schema: properties: asset_id: type: string description: Gumlet Video Asset Id which needs to be recovered. type: object required: - asset_id x-internal: false tags: - Recycle Bin x-stoplight: id: kgpjwyo6i822v 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\nawait client.recycleBin.recover({\n asset_id: '',\n});" - 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\nclient.recycle_bin.recover(\n asset_id=\"\",\n)" /video/asset/recoverable/list: get: responses: '200': description: Successful response content: application/json: schema: type: object properties: total_asset_count: type: integer description: Number of total assets in recycle bin. current_offset: type: integer description: Number of total assets in current offset. all_assets: type: array items: type: object properties: asset_id: type: string description: Asset ID of the deleted asset. workspace_id: type: string description: Workspace ID for the asset. title: type: string description: Title of the asset. description: type: - string - 'null' description: Description of the video. tags: type: array items: type: string description: Tags associated with the asset. duration: type: number description: Duration of the asset in seconds. deleted_at: type: number description: Deleted timestamp of asset in milliseconds since epoch. deleted_by: type: string description: User ID of the user who deleted the asset. x-apidog-orders: - asset_id - workspace_id - title - description - tags - duration - deleted_at - deleted_by required: - asset_id - workspace_id - title - description - tags - duration - deleted_at - deleted_by x-apidog-orders: - total_asset_count - current_offset - all_assets required: - total_asset_count - current_offset - all_assets '400': description: Bad Request content: application/json: examples: Result: value: error: code: page_size_more_than_max message: Value for the page size (size) parameter is more than permissible value (100) schema: type: object properties: error: type: object properties: code: type: string example: page_size_more_than_max message: type: string example: Value for the page size (size) parameter is more than permissible value (100) required: - code - message required: - error '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' summary: List Recycle Bin tags: - Recycle Bin operationId: list-recycle-bin description: List all assets in a recycle bin for a given workspace. The deleted assets are available for 30 days. After that, assets are permanently deleted. parameters: - in: query name: offset schema: type: integer minimum: 0 description: Number of items to skip from start of page response. - in: query name: size schema: type: integer default: 20 minimum: 10 description: Number of items to return for a single page. - in: query name: workspace_id schema: type: string description: ID of workspace for which you want to list the recycle bin items. required: true 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 recycleBin = await client.recycleBin.list({\n size: 20,\n workspace_id: 'workspaceId',\n});\n\nconsole.log(recycleBin);" - 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\nrecycle_bin = client.recycle_bin.list(\n size=20,\n workspace_id=\"workspace_id\",\n)\n\nprint(recycle_bin)" 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' 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: {}