openapi: 3.1.0 info: title: Zesty Accounts Apps Bins API description: The Zesty.io Accounts API is used to manage users, roles, instances, teams, tokens, ecosystems, webhooks, and apps. It provides administrative control over the organizational structure of a Zesty.io account. All endpoints require authentication via a session token obtained from the Auth API. version: 1.0.0 contact: name: Zesty.io url: https://www.zesty.io/ license: name: Proprietary url: https://www.zesty.io/ servers: - url: https://accounts.api.zesty.io/v1 description: Zesty Accounts API Production Server tags: - name: Bins description: Manage media bins (top-level containers). paths: /bins: get: operationId: getBins summary: Zesty List all media bins description: Returns a list of all media bins accessible to the authenticated user. Bins are top-level containers for organizing media files. tags: - Bins security: - sessionToken: [] responses: '200': description: A list of media bins. content: application/json: schema: type: object properties: code: type: integer data: type: array items: $ref: '#/components/schemas/Bin' '401': description: Unauthorized. post: operationId: createBin summary: Zesty Create a media bin description: Creates a new media bin for organizing files. tags: - Bins security: - sessionToken: [] requestBody: required: true content: application/json: schema: type: object required: - name properties: name: type: string description: The name of the media bin. responses: '201': description: Bin created successfully. content: application/json: schema: type: object properties: code: type: integer data: $ref: '#/components/schemas/Bin' '400': description: Invalid request. '401': description: Unauthorized. /bins/{binZUID}: get: operationId: getBin summary: Zesty Get a media bin description: Returns details for a specific media bin. tags: - Bins security: - sessionToken: [] parameters: - name: binZUID in: path required: true schema: type: string description: The ZUID of the media bin. responses: '200': description: Bin details. content: application/json: schema: type: object properties: code: type: integer data: $ref: '#/components/schemas/Bin' '401': description: Unauthorized. '404': description: Bin not found. put: operationId: updateBin summary: Zesty Update a media bin description: Updates the details of a specific media bin. tags: - Bins security: - sessionToken: [] parameters: - name: binZUID in: path required: true schema: type: string description: The ZUID of the media bin. requestBody: required: true content: application/json: schema: type: object properties: name: type: string responses: '200': description: Bin updated successfully. '401': description: Unauthorized. '404': description: Bin not found. delete: operationId: deleteBin summary: Zesty Delete a media bin description: Deletes a specific media bin and all its contents. tags: - Bins security: - sessionToken: [] parameters: - name: binZUID in: path required: true schema: type: string description: The ZUID of the media bin. responses: '200': description: Bin deleted successfully. '401': description: Unauthorized. '404': description: Bin not found. components: schemas: Bin: type: object properties: ZUID: type: string description: The Zesty Universal Identifier for the bin. name: type: string description: The name of the bin. createdAt: type: string format: date-time updatedAt: type: string format: date-time securitySchemes: sessionToken: type: apiKey in: header name: Authorization description: A session token obtained from the Auth API login endpoint. externalDocs: description: Zesty Accounts API Documentation url: https://docs.zesty.io/docs/accounts