@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Billbee API
@base https://app.billbee.io
@version V1
@auth basic | ApiKey X-Billbee-Api-Key in header
@endpoints 87
@hint download_for_search
@toc api(87)

@endpoint GET /api/v1/apiusage
@optional {request.date: any}
@returns(200)

@endpoint GET /api/v1/apiusage/detail
@optional {request.date: any}
@returns(200)

@endpoint GET /api/v1/cloudstorages
@returns(200)

@endpoint GET /api/v1/customer-addresses
@optional {page: any, pageSize: any}
@returns(200)

@endpoint POST /api/v1/customer-addresses
@required {model: map}
@returns(200)

@endpoint GET /api/v1/customer-addresses/{id}
@required {id: any}
@returns(200)

@endpoint PUT /api/v1/customer-addresses/{id}
@required {model: map, id: any}
@returns(200)

@endpoint GET /api/v1/customers
@optional {page: any, pageSize: any}
@returns(200)

@endpoint POST /api/v1/customers
@required {model: map}
@returns(200)

@endpoint GET /api/v1/customers/{id}
@required {id: any}
@returns(200)

@endpoint PUT /api/v1/customers/{id}
@required {model: map, id: any}
@returns(200)

@endpoint GET /api/v1/customers/{id}/orders
@required {id: any}
@optional {page: any, pageSize: any}
@returns(200)

@endpoint GET /api/v1/customers/{id}/addresses
@required {id: any}
@optional {page: any, pageSize: any}
@returns(200)

@endpoint POST /api/v1/customers/{id}/addresses
@required {id: any, model: map}
@returns(200)

@endpoint GET /api/v1/customers/addresses/{id}
@required {id: any}
@returns(200)

@endpoint PUT /api/v1/customers/addresses/{id}
@required {model: map, id: any}
@returns(200)

@endpoint PATCH /api/v1/customers/addresses/{id}
@required {id: any, model: map}
@returns(200)

@endpoint GET /api/v1/enums/paymenttypes
@returns(200)

@endpoint GET /api/v1/enums/shippingcarriers
@returns(200)

@endpoint GET /api/v1/enums/accountsyncstate
@returns(200)

@endpoint GET /api/v1/enums/shopaccounttype
@returns(200)

@endpoint GET /api/v1/enums/shipmenttypes
@returns(200)

@endpoint GET /api/v1/enums/orderstates
@returns(200)

@endpoint GET /api/v1/events
@optional {minDate: any, maxDate: any, page: any, pageSize: any, typeId: any, orderId: any}
@returns(200)

@endpoint POST /api/v1/orders/createmultiple
@required {models: [map]}
@returns(200)

@endpoint GET /api/v1/orders
@optional {minOrderDate: any, maxOrderDate: any, page: any, pageSize: any, shopId: any, orderStateId: any, tag: any, minimumBillBeeOrderId: any, modifiedAtMin: any, modifiedAtMax: any, articleTitleSource: any, excludeTags: any}
@returns(200)

@endpoint POST /api/v1/orders
@required {orderData: map}
@optional {shopId: any}
@returns(200)

@endpoint PUT /api/v1/orders/{id}/tags
@required {tagData: map, id: any}
@returns(200)

@endpoint POST /api/v1/orders/{id}/tags
@required {tagData: map, id: any}
@returns(200)

@endpoint POST /api/v1/orders/tags
@required {model: map}
@returns(200)

@endpoint GET /api/v1/orders/{id}
@required {id: any}
@optional {articleTitleSource: any}
@returns(200)

@endpoint PATCH /api/v1/orders/{id}
@required {id: any, model: map}
@returns(200)

@endpoint GET /api/v1/orders/findbyextref/{extRef}
@required {extRef: any}
@returns(200)

@endpoint PUT /api/v1/orders/{id}/orderstate
@required {id: any, model: map}
@returns(200)

@endpoint POST /api/v1/orders/{id}/shipment
@required {id: any, model: map}
@returns(200)

@endpoint GET /api/v1/orders/invoices
@optional {minInvoiceDate: any, maxInvoiceDate: any, page: any, pageSize: any, shopId: any, orderStateId: any, tag: any, minPayDate: any, maxPayDate: any, includePositions: any, excludeTags: any}
@returns(200)

@endpoint GET /api/v1/orders/find/{id}/{partner}
@required {id: any, partner: any}
@returns(200)

@endpoint POST /api/v1/orders/CreateDeliveryNote/{id}
@required {id: any}
@optional {includePdf: any, sendToCloudId: any}
@returns(200)

@endpoint POST /api/v1/orders/CreateInvoice/{id}
@required {id: any}
@optional {includeInvoicePdf: any, templateId: any, sendToCloudId: any}
@returns(200)

@endpoint GET /api/v1/orders/PatchableFields
@returns(200)

@endpoint POST /api/v1/orders/{id}/send-message
@required {id: any, model: map}
@returns(200)

@endpoint POST /api/v1/orders/{id}/trigger-event
@required {id: any, model: map}
@returns(200)

@endpoint POST /api/v1/orders/{id}/parse-placeholders
@required {id: any, container: map}
@returns(200)

@endpoint POST /api/v1/orders/{id}/message
@required {id: any, orderMessage: map}
@returns(200)

@endpoint GET /api/v1/layouts
@returns(200)

@endpoint POST /api/v1/search
@required {model: map}
@returns(200)

@endpoint GET /api/v1/products
@optional {page: any, pageSize: any, minCreatedAt: any, minimumBillBeeArticleId: any, maximumBillBeeArticleId: any}
@returns(200)

@endpoint POST /api/v1/products
@required {model: map}
@returns(200)

@endpoint GET /api/v1/products/{id}
@required {id: any}
@optional {lookupBy: any}
@returns(200)

@endpoint DELETE /api/v1/products/{id}
@required {id: any}
@returns(200)

@endpoint PATCH /api/v1/products/{id}
@required {id: any, model: map}
@returns(200)

@endpoint GET /api/v1/products/stocks
@returns(200)

@endpoint GET /api/v1/products/PatchableFields
@returns(200)

@endpoint GET /api/v1/products/category
@returns(200)

@endpoint POST /api/v1/products/updatestock
@required {model: map}
@returns(200)

@endpoint POST /api/v1/products/stockmultiple
@required {request: map}
@optional {modifiedSince: any, page: any, pageSize: any}
@returns(200)

@endpoint POST /api/v1/products/updatestockmultiple
@required {models: [map]}
@returns(200)

@endpoint GET /api/v1/products/reservedamount
@required {id: any}
@optional {lookupBy: any, stockId: any}
@returns(200)

@endpoint POST /api/v1/products/updatestockcode
@required {model: map}
@returns(200)

@endpoint GET /api/v1/products/custom-fields
@optional {page: any, pageSize: any}
@returns(200)

@endpoint GET /api/v1/products/custom-fields/{id}
@required {id: any}
@returns(200)

@endpoint GET /api/v1/products/{productId}/images
@required {productId: any}
@returns(200)

@endpoint PUT /api/v1/products/{productId}/images
@required {productId: any, models: [map]}
@optional {replace: any}
@returns(200)

@endpoint GET /api/v1/products/{productId}/images/{imageId}
@required {productId: any, imageId: any}
@returns(200)

@endpoint PUT /api/v1/products/{productId}/images/{imageId}
@required {productId: any, imageId: any, model: map}
@returns(200)

@endpoint DELETE /api/v1/products/{productId}/images/{imageId}
@required {productId: any, imageId: any}
@returns(200)

@endpoint GET /api/v1/products/images/{imageId}
@required {imageId: any}
@returns(200)

@endpoint DELETE /api/v1/products/images/{imageId}
@required {imageId: any}
@returns(200)

@endpoint POST /api/v1/products/images/delete
@required {imageIds: [int(int64)]}
@returns(200)

@endpoint POST /api/v1/automaticprovision/createaccount
@required {model: map}
@returns(200)

@endpoint GET /api/v1/automaticprovision/termsinfo
@returns(200)

@endpoint POST /api/v1/shipment/shipmentmultiple
@required {models: [map]}
@returns(200)

@endpoint POST /api/v1/shipment/shipment
@required {model: map}
@returns(200)

@endpoint GET /api/v1/shipment/shippingproviders
@returns(200)

@endpoint POST /api/v1/shipment/shipwithlabel
@required {shipmentInformation: map}
@returns(200)

@endpoint POST /api/v1/shipment/shipwithlabelmultiple
@required {models: [map]}
@returns(200)

@endpoint GET /api/v1/shipment/shippingcarriers
@returns(200)

@endpoint GET /api/v1/shipment/ping
@returns(200)

@endpoint GET /api/v1/shipment/shipments
@optional {page: any, pageSize: any, createdAtMin: any, createdAtMax: any, orderId: any, minimumShipmentId: any, shippingProviderId: any}
@returns(200)

@endpoint GET /api/v1/shopaccounts
@optional {page: any, pageSize: any}
@returns(200)

@endpoint GET /api/v1/webhooks
@returns(200)

@endpoint POST /api/v1/webhooks
@required {webHook: map}
@returns(200)

@endpoint DELETE /api/v1/webhooks
@returns(200)

@endpoint GET /api/v1/webhooks/{id}
@required {id: any}
@returns(200)

@endpoint PUT /api/v1/webhooks/{id}
@required {id: any, webHook: map}
@returns(200)

@endpoint DELETE /api/v1/webhooks/{id}
@required {id: any}
@returns(200)

@endpoint GET /api/v1/webhooks/filters
@returns(200)

@end
