Price Books API
4 PracBill API endpoints for price books. Base URL https://billing.pracbill.com.au/api.
List price books (page 1).
GET /{api_key}/priceBooks/get/page
Responses
200— Request received successfully. Failures (invalid key, validation, not found) are also returned with HTTP 200 and `success: false` + `description`.
List price books for the given page.
GET /{api_key}/priceBooks/get/page/{page_number}
Responses
200— Request received successfully. Failures (invalid key, validation, not found) are also returned with HTTP 200 and `success: false` + `description`.
Get a price book with its service and product lines. All values are run through JSON_NUMERIC_CHECK.
GET /{api_key}/priceBooks/get/{id}
Responses
200— Success. Failures (invalid key, validation, not found) are also returned with HTTP 200 and `success: false` + `description`.
Create or update a price book and sync its related lines. The request body is read as raw JSON (`explode('=')` + `urldecode` + `json_decode`); because of a `$data_pats` typo in the handler the `data=` form is NOT effectively supported - send the raw JSON document (a body containing a literal '=' is truncated at the first '=').
POST /{api_key}/priceBooks/post
Request body
| Field | Type | Description |
|---|---|---|
id | integer | Existing price book ID to update. When omitted/empty a new price book is created. |
name | string | Price book name |
items | array of object | Related items. IMPORTANT: lines already stored on the price book that are NOT in this array are deleted; omitting `items` (or sending no valid lines) deletes ALL existing lines. |
Responses
200— Success. Failures (invalid key, validation, not found) are also returned with HTTP 200 and `success: false` + `description`.