openapi: 3.2.0 info: title: Vencart Orders API version: 0.1.0 tags: - name: Orders paths: /users/{user_id}/orders: get: tags: - Orders summary: List User Orders operationId: list_user_orders_users__user_id__orders_get parameters: - name: user_id in: path required: true schema: type: integer title: User Id - name: order_processing_statuses in: query required: false schema: type: array items: $ref: '#/components/schemas/OrderProcessingStatus' title: Order Processing Statuses - name: order_by in: query required: false schema: $ref: '#/components/schemas/OrderOrderingField' default: created_at - name: is_desc in: query required: false schema: type: boolean default: false title: Is Desc - name: page in: query required: false schema: type: integer minimum: 1 default: 1 title: Page - name: size in: query required: false schema: type: integer maximum: 100 minimum: 1 default: 50 title: Size responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' post: tags: - Orders summary: Create User Order operationId: create_user_order_users__user_id__orders_post parameters: - name: user_id in: path required: true schema: type: integer title: User Id - name: hub_id in: query required: true schema: type: integer title: Hub Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /users/{user_id}/orders/{order_id}: get: tags: - Orders summary: Get User Order By Id operationId: get_user_order_by_id_users__user_id__orders__order_id__get parameters: - name: user_id in: path required: true schema: type: integer title: User Id - name: order_id in: path required: true schema: type: integer title: Order Id - name: hub_id in: query required: true schema: type: integer title: Hub Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' delete: tags: - Orders summary: Delete User Order By Id operationId: delete_user_order_by_id_users__user_id__orders__order_id__delete parameters: - name: user_id in: path required: true schema: type: integer title: User Id - name: order_id in: path required: true schema: type: integer title: Order Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /users/{user_id}/orders/{order_id}/open-delivery: post: tags: - Orders summary: Order Bin For Order operationId: order_bin_for_order_users__user_id__orders__order_id__open_delivery_post parameters: - name: user_id in: path required: true schema: type: integer title: User Id - name: order_id in: path required: true schema: type: integer title: Order Id - name: hub_id in: query required: true schema: type: integer title: Hub Id - name: bin_nums in: query required: false schema: anyOf: - type: string - type: 'null' title: Bin Nums - name: bin_num in: query required: false schema: anyOf: - type: integer - type: 'null' title: Bin Num responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /users/{user_id}/orders/order-items/count: get: tags: - Orders summary: Get User Order Item Count operationId: get_user_order_item_count_users__user_id__orders_order_items_count_get parameters: - name: user_id in: path required: true schema: type: integer title: User Id - name: hub_id in: query required: true schema: type: integer title: Hub Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /users/{user_id}/orders/{order_id}/order_item: put: tags: - Orders summary: Update User Order Item operationId: update_user_order_item_users__user_id__orders__order_id__order_item_put parameters: - name: order_id in: path required: true schema: type: integer title: Order Id - name: user_id in: path required: true schema: type: integer title: User Id - name: hub_id in: query required: true schema: type: integer title: Hub Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateOrderItemSchema' responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /users/{user_id}/orders/{order_id}/checkout-available: get: tags: - Orders summary: Check User Order Available To Checkout operationId: check_user_order_available_to_checkout_users__user_id__orders__order_id__checkout_available_get parameters: - name: user_id in: path required: true schema: type: integer title: User Id - name: order_id in: path required: true schema: type: integer title: Order Id - name: hub_id in: query required: true schema: type: integer title: Hub Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /users/{user_id}/orders/{source_order_id}/reorder: post: tags: - Orders summary: Reorder operationId: reorder_users__user_id__orders__source_order_id__reorder_post parameters: - name: user_id in: path required: true schema: type: integer title: User Id - name: source_order_id in: path required: true schema: type: integer title: Source Order Id - name: target_hub_id in: query required: true schema: type: integer title: Target Hub Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /users/{user_id}/orders/{order_id}/queue-position: get: tags: - Orders summary: Get Order Queue Position View operationId: get_order_queue_position_view_users__user_id__orders__order_id__queue_position_get parameters: - name: user_id in: path required: true schema: type: integer title: User Id - name: order_id in: path required: true schema: type: integer title: Order Id - name: hub_id in: query required: true schema: type: integer title: Hub Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' components: schemas: HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type input: title: Input ctx: type: object title: Context type: object required: - loc - msg - type title: ValidationError OrderOrderingField: type: string enum: - created_at - price - status title: OrderOrderingField OrderProcessingStatus: type: integer enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 title: OrderProcessingStatus description: 'Enumeration of the various stages an Order can be in, from creation through payment and fulfillment.' UpdateOrderItemSchema: properties: product_id: type: integer title: Product Id quantity: type: integer minimum: 0.0 title: Quantity type: object required: - product_id - quantity title: UpdateOrderItemSchema