# Billbee API API

> Billbee API API on Apizie: 75 endpoints (Creates a new Billbee user account with the data passed, Returns infos about Billbee terms and conditions, Gets a list of all connected cloud storage devices, Get a list of all customer addresses, …) returned as clean JSON through one API key. Send your own provider key in the x-upstream-key header. Call it over REST at https://zieapi.vercel.app/v1/ecommerce:billbee/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `ecommerce:billbee`
- Category: E-commerce
- Status: byok
- Source: https://www.billbee.io
- Page: https://zieapi.vercel.app/api/ecommerce/billbee
- OpenAPI: https://zieapi.vercel.app/api/ecommerce/billbee/openapi.json

Documentation of the Billbee REST API to connect a Billbee account to external aplications. ## Endpoint The Billbee API endpoint base url is https://api.billbee.io/api/v1 ## Activation You have to enable the API in the…

## Endpoints

### Creates a new Billbee user account with the data passed
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/automatic-provisioning-create-account` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Returns infos about Billbee terms and conditions
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/automatic-provisioning-terms-info` (byok)

### Gets a list of all connected cloud storage devices
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/cloud-storage-api-get-list` (byok)

### Get a list of all customer addresses
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/customer-addresses-get-all` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| page | integer | no | The current page to request starting with 1 (default is 1) |
| pageSize | integer | no | The page size for the result list. Values between 1 and 250 are allowed. (default is 50) |

### Creates a new customer address
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/customer-addresses-create` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Queries a single customer address by id
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/customer-addresses-get-one` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The id of the address to query |

### Updates a customer address by id
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/customer-addresses-update` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The id of the address |
| body | object | yes | JSON request body |

### Get a list of all customers
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/customer-get-all` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| page | integer | no | The current page to request starting with 1 |
| pageSize | integer | no | The pagesize for the result list. Values between 1 and 250 are allowed |

### Creates a new customer
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/customer-create` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Queries a single address from a customer
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/customer-get-customer-address` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The id of the address |

### Updates all fields of an address
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/customer-update-address` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The id of the address |
| body | object | yes | JSON request body |

### Updates one or more fields of an address
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/customer-patch-address` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The id of the address |
| body | object | yes | JSON request body |

### Queries a single customer by id
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/customer-get-one` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The id of the customer to query |

### Updates a customer by id
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/customer-update` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The id of the customer |
| body | object | yes | JSON request body |

### Queries a list of addresses from a customer
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/customer-get-customer-addresses` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The id of the customer |
| page | integer | no | The current page to request starting with 1 |
| pageSize | integer | no | The pagesize for the result list. Values between 1 and 250 are allowed |

### Adds a new address to a customer
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/customer-add-customer-address` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | CustomerId to attach the new address to. |
| body | object | yes | JSON request body |

### Queries a list of orders from a customer
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/customer-get-customer-orders` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The id of the customer |
| page | integer | no | The current page to request starting with 1 |
| pageSize | integer | no | The pagesize for the result list. Values between 1 and 250 are allowed |

### Returns a list with all defined orderstates
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/enum-api-get-order-states` (byok)

### Returns a list with all defined paymenttypes
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/enum-api-get-payment-types` (byok)

### Returns a list with all defined shipmenttypes
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/enum-api-get-shipment-types` (byok)

### Returns a list with all defined shippingcarriers
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/enum-api-get-shipping-carriers` (byok)

### Get a list of all events optionally filtered by date. This request is extra throttled to 2 calls per page…
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/event-api-get-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| minDate | string | no | Specifies the oldest date to include in the response |
| maxDate | string | no | Specifies the newest date to include in the response |
| page | integer | no | Specifies the page to request |
| pageSize | integer | no | Specifies the pagesize. Defaults to 50, max value is 250 |
| typeId | array | no | Filter for specific event types |
| orderId | integer | no | Filter for specific order id |

### GET /api/v1/layouts
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/layout-api-get-list` (byok)

### Get a list of all orders optionally filtered by date
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-get-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| minOrderDate | string | no | Specifies the oldest order date to include in the response |
| maxOrderDate | string | no | Specifies the newest order date to include in the response |
| page | integer | no | Specifies the page to request |
| pageSize | integer | no | Specifies the pagesize. Defaults to 50, max value is 250 |
| shopId | array | no | Specifies a list of shop ids for which invoices should be included |
| orderStateId | array | no | Specifies a list of state ids to include in the response |
| tag | array | no | Specifies a list of tags the order must have attached to be included in the response |
| minimumBillBeeOrderId | integer | no | If given, all delivered orders have an Id greater than or equal to the given minimumOrderId |
| modifiedAtMin | string | no | If given, the last modification has to be newer than the given date |
| modifiedAtMax | string | no | If given, the last modification has to be older or equal than the given date. |
| articleTitleSource | integer | no | The source field for the article title. 0 = Order Position (default), 1 = Article Title, 2 = Article Invoice Text |
| excludeTags | boolean | no | If true the list of tags passed to the call are used to filter orders to not include these tags |

### Creates a new order in the Billbee account
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-post-new-order` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| shopId | integer | no | Deprecated, if orderData.ApiAccountId is set, it will be used instead of 'shopId' |
| body | object | yes | JSON request body |

### Create an delivery note for an existing order. This request is extra throttled by order and api key to a…
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-create-delivery-note` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The internal billbee id of the order |
| includePdf | boolean | no | If true, the PDF is included in the response as base64 encoded string |
| sendToCloudId | integer | no | Optionally specify the id of a billbee connected cloud device to send the pdf to |

### Create an invoice for an existing order. This request is extra throttled by order and api key to a maximum…
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-create-invoice` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The internal billbee id of the order |
| includeInvoicePdf | boolean | no | If true, the PDF is included in the response as base64 encoded string |
| templateId | integer | no | You can pass the id of an invoice template to overwrite the assigned template for invoice creation |
| sendToCloudId | integer | no | You can pass the id of a connected cloud printer/storage to send the invoice to it |

### Returns a list of fields which can be updated with the orders/{id} patch call
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-get-patchable-fields` (byok)

### Get a single order by its external order number
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-get-by-ext-ref` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| extRef | string | yes | The extern order number of the order |

### Get a list of all invoices optionally filtered by date. This request ist throttled to 1 per 1 minute for…
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-get-invoice-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| minInvoiceDate | string | no | Specifies the oldest invoice date to include |
| maxInvoiceDate | string | no | Specifies the newest invoice date to include |
| page | integer | no | Specifies the page to request |
| pageSize | integer | no | Specifies the pagesize. Defaults to 50, max value is 250 |
| shopId | array | no | Specifies a list of shop ids for which invoices should be included |
| orderStateId | array | no | Specifies a list of state ids to include in the response |
| tag | array | no |  |
| minPayDate | string | no |  |
| maxPayDate | string | no |  |
| includePositions | boolean | no |  |
| excludeTags | boolean | no | If true the list of tags passed to the call are used to filter orders to not include these tags |

### Get a single order by its internal billbee id. This request is throttled to 6 calls per order in one minute
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-get` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The internal billbee id of the order |
| articleTitleSource | integer | no | The source field for the article title. 0 = Order Position (default), 1 = Article Title, 2 = Article Invoice Text |

### Updates one or more fields of an order
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-patch-order` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes |  |
| body | object | yes | JSON request body |

### Changes the main state of a single order
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-update-state` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The internal id of the order |
| body | object | yes | JSON request body |

### Parses a text and replaces all placeholders
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-parse-placeholders` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The id of the order |
| body | object | yes | JSON request body |

### Sends a message to the buyer
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-send-message` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The id of the order |
| body | object | yes | JSON request body |

### Add a shipment to a given order
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-add-shipment` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The internal billbee id of the order |
| body | object | yes | JSON request body |

### Attach one or more tags to an order
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-tags-create` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The internal id of the order |
| body | object | yes | JSON request body |

### Sets the tags attached to an order
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-tags-update` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The internal id of the order |
| body | object | yes | JSON request body |

### Triggers a rule event
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/order-api-trigger-event` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The id of the order |
| body | object | yes | JSON request body |

### Get a list of all products
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/article-get-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| page | integer | no | The current page to request starting with 1 |
| pageSize | integer | no | The pagesize for the result list. Values between 1 and 250 are allowed |
| minCreatedAt | string | no | Optional the oldest create date of the articles to be returned |
| minimumBillBeeArticleId | integer | no |  |
| maximumBillBeeArticleId | integer | no |  |

### Creates a new product
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/article-create-article` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Returns a list of fields which can be updated with the patch call
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/article-get-patchable-fields` (byok)

### GEts a list of all defined categories
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/article-get-category` (byok)

### Queries a list of all custom fields
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/article-get-custom-fields` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| page | integer | no |  |
| pageSize | integer | no |  |

### Queries a single custom field
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/article-get-custom-field` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The id of the custom field to query |

### Delete multiple images by id
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/article-delete-images` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Returns a single image by id
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/article-get-image` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| imageId | integer | yes | The Id of the image |

### Deletes a single image by id
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/article-delete-image` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| imageId | integer | yes | The image id |

### Queries the reserved amount for a single article by id or by sku
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/article-get-reserved-amount` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | yes | The id or the sku of the article to query |
| lookupBy | string | no | Either the value id or the value sku to specify the meaning of the id parameter |
| stockId | integer | no | Optional the stock id if the multi stock feature is enabled |

### Query all defined stock locations
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/article-get-stocks` (byok)

### Update the stock qty of an article
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/article-update-stock` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Update the stock code of an article
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/article-update-stock-code` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Update the stock qty for multiple articles at once
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/article-update-stock-multiple` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Queries a single article by id or by sku
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/article-get-article` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | yes | The id or the sku of the article to query |
| lookupBy | string | no | Either the value id, ean or the value sku to specify the meaning of the id parameter. |

### Updates one or more fields of a product
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/article-patch-article` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The id of the Product |
| body | object | yes | JSON request body |

### Deletes a product
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/article-delete-article` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | yes | The id of the Product |

### Returns a list of all images of the product
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/article-get-images` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| productId | integer | yes | The Id of the product |

### Add multiple images to a product or replace the product images by the given images
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/article-put-images` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| productId | integer | yes | The id of the product |
| replace | boolean | no | If you pass true, the images will be replaced by the passed images. Otherwise the passed images will be appended to the product. |
| body | object | yes | JSON request body |

### Returns a single image by id
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/article-get-image-from-product` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| productId | integer | yes | The Id of the product |
| imageId | integer | yes | The Id of the image |

### Add or update an existing image of a product
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/article-put-image` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| productId | integer | yes | The product id |
| imageId | integer | yes | The image id. If you pass 0, the image will be added |
| body | object | yes | JSON request body |

### Deletes a single image from a product
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/article-delete-image-from-product` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| productId | integer | yes | The product id |
| imageId | integer | yes | The image id |

### Search for products, customers and orders. Type can be "order", "product" and / or "customer" Term can…
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/search-search` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### GET /api/v1/shipment/ping
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/shipment-get-ping` (byok)

### Creates a new shipment with the selected Shippingprovider
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/shipment-post-shipment` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Get a list of all shipments optionally filtered by date. All parameters are optional.
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/shipment-get-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| page | integer | no | Specifies the page to request. |
| pageSize | integer | no | Specifies the pagesize. Defaults to 50, max value is 250 |
| createdAtMin | string | no | Specifies the oldest shipment date to include in the response |
| createdAtMax | string | no | Specifies the newest shipment date to include in the response |
| orderId | integer | no | Get shipments for this order only. |
| minimumShipmentId | integer | no | Get Shipments with a shipment greater or equal than this id. New shipments have a greater id than older shipments. |
| shippingProviderId | integer | no | Get Shippings for the specified shipping provider only. |

### Queries the currently available shipping carriers.
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/shipment-get-shipping-carrier` (byok)

### Query all defined shipping providers
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/shipment-get-shippingproviders` (byok)

### Creates a shipment for an order in billbee
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/shipment-ship-with-label` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Gets all registered WebHooks for a given user.
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/web-hook-management-get` (byok)

### Registers a new WebHook for a given user.
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/web-hook-management-post` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Deletes all existing WebHook registrations.
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/web-hook-management-delete-all` (byok)

### Returns a list of all known filters you can use to register webhooks
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/web-hook-management-get-filters` (byok)

### Looks up a registered WebHook with the given {id} for a given user.
`GET https://zieapi.vercel.app/v1/ecommerce:billbee/web-hook-management-lookup` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | yes |  |

### Updates an existing WebHook registration.
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/web-hook-management-put` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | yes | The WebHook ID. |
| body | object | yes | JSON request body |

### Deletes an existing WebHook registration.
`POST https://zieapi.vercel.app/v1/ecommerce:billbee/web-hook-management-delete` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | yes | The WebHook ID. |

## Example
```
curl "https://zieapi.vercel.app/v1/ecommerce:billbee/automatic-provisioning-create-account" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the Billbee API API?
Create a free Apizie key, then send POST https://zieapi.vercel.app/v1/ecommerce:billbee/automatic-provisioning-create-account with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the Billbee API API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card. Billbee API itself also needs your own key from billbee.io.

### Can AI agents use the Billbee API API?
Yes. Add the Apizie MCP server (https://zieapi.vercel.app/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key ecommerce:billbee.

### What is the status of the Billbee API API?
Needs your own provider key (bring your own key)
