Skip to main content
Tools Reference

Kaseya Quote Manager Tools

Written By Christopher Scaminaci

Last updated 7 days ago

Kaseya Quote Manager Tools

kqm_ · 45 tools · Free 45 Kaseya Quote Manager API; raw JSON passthrough.

All connector tools · Kaseya Quote Manager setup guide

Kaseya Quote Manager tool groups

Catalog

ToolPlanAccessSummary
kqm_get_brand_by_idFreeRead-onlyRetrieve a single brand (manufacturer) by its KQM ID.
kqm_get_category_by_idFreeRead-onlyRetrieve a single product category by its KQM ID.
kqm_get_product_by_idFreeRead-onlyRetrieve a single product by its KQM ID.
kqm_get_product_supplier_by_idFreeRead-onlyRetrieve a single product-supplier link by its KQM ID.
kqm_list_brandsFreeRead-onlyList product brands (manufacturers) in the KQM catalog.
kqm_list_categoriesFreeRead-onlyList all product categories in the KQM catalog.
kqm_list_product_imagesFreeRead-onlyList product images, optionally scoped to a single product.
kqm_list_product_suppliersFreeRead-onlyList product-supplier links, optionally scoped to a single product.
kqm_list_productsFreeRead-onlyList products in the KQM catalog with optional filtering by manufacturer part number or modification time.
kqm_list_suppliersFreeRead-onlyList vendors/suppliers in the KQM catalog.

[KQM] Retrieve a single brand (manufacturer) by its KQM ID. Returns brand name and metadata. Use `kqm_list_brands` to discover valid brand IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM brand identifier. Use `kqm_list_brands` to find valid IDs.

[KQM] Retrieve a single product category by its KQM ID. Use `kqm_list_categories` to discover valid category IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM category identifier. Use `kqm_list_categories` to find valid IDs.

[KQM] Retrieve a single product by its KQM ID. Returns product name, SKU, brand, category, pricing, and other metadata. Use `kqm_list_products` to discover valid product IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM product identifier. Use `kqm_list_products` to find valid IDs.

[KQM] Retrieve a single product-supplier link by its KQM ID. Use `kqm_list_product_suppliers` to find valid IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM product-supplier identifier.

[KQM] List product brands (manufacturers) in the KQM catalog. Returns brand IDs and names used to classify products. Use this to discover valid brand IDs before filtering products by brand. Results are page-based (max 100 per page).

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only brands modified on or after this time are returned (e.g. '2026-01-01T00:00:00').
pageintegerno1Page number (1-indexed, default 1). Increment to retrieve subsequent pages.
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).

[KQM] List all product categories in the KQM catalog. Returns a bare array of category objects. This endpoint returns the full set in one call (no pagination) — KQM does not expose `page` or `modifiedAfter` for categories. Use to resolve category IDs referenced on products.

[KQM] List product images, optionally scoped to a single product. Returns image URLs and metadata. This list endpoint has no matching `get_by_id` in KQM — use the response `productID` field to join back to `kqm_get_product_by_id`.

ParamTypeRequiredDefaultDescription
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).
productIDintegernonullOptional product ID to scope images to a single product. Use `kqm_list_products` to find valid IDs.

[KQM] List product-supplier links, optionally scoped to a single product. Each record ties a product to one of its suppliers with per-supplier cost and SKU. Use `kqm_list_products` to find product IDs and `kqm_list_suppliers` to find supplier IDs.

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only records modified on or after this time are returned.
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).
productIDintegernonullOptional product ID to scope to a single product's supplier links.

[KQM] List products in the KQM catalog with optional filtering by manufacturer part number or modification time. Use this to discover product IDs before drilling into images, suppliers, or sales-order lines. Pair with `kqm_list_brands`/`kqm_list_categories` for filtering on the client side.

ParamTypeRequiredDefaultDescription
manufacturerPartNumberstringnonullOptional exact-match filter on manufacturer part number (e.g. 'PN12345678').
modifiedAfterstringnonullISO-8601 timestamp. When set, only products modified on or after this time are returned.
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).

[KQM] List vendors/suppliers in the KQM catalog. Returns supplier IDs and names referenced by products and purchase orders. Use with `kqm_get_supplier_by_id` (in Operations) to drill into an individual supplier.

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only suppliers modified on or after this time are returned.
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).

Customers

ToolPlanAccessSummary
kqm_get_contact_by_idFreeRead-onlyRetrieve a single customer contact by its KQM ID.
kqm_get_customer_address_by_idFreeRead-onlyRetrieve a single customer address by its KQM ID.
kqm_get_customer_by_idFreeRead-onlyRetrieve a single customer by its KQM ID.
kqm_list_contactsFreeRead-onlyList customer contacts (people) in KQM.
kqm_list_customer_addressesFreeRead-onlyList customer shipping/billing addresses.
kqm_list_customersFreeRead-onlyList customers (companies that KQM quotes or sells to).

[KQM] Retrieve a single customer contact by its KQM ID. Use `kqm_list_contacts` to discover valid IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM contact identifier.

[KQM] Retrieve a single customer address by its KQM ID. Use `kqm_list_customer_addresses` to discover valid IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM customer-address identifier.

[KQM] Retrieve a single customer by its KQM ID. Use `kqm_list_customers` to discover valid IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM customer identifier.

[KQM] List customer contacts (people) in KQM. When `customerID` is supplied, only contacts for that customer are returned. Use `kqm_list_customers` to find valid customer IDs first.

ParamTypeRequiredDefaultDescription
customerIDintegernonullOptional customer ID to scope to a single customer's contacts.
modifiedAfterstringnonullISO-8601 timestamp. When set, only contacts modified on or after this time are returned.
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).

[KQM] List customer shipping/billing addresses. When `customerID` is supplied, only addresses for that customer are returned. Use `kqm_list_customers` to find valid customer IDs.

ParamTypeRequiredDefaultDescription
customerIDintegernonullOptional customer ID to scope to a single customer's addresses.
modifiedAfterstringnonullISO-8601 timestamp. When set, only addresses modified on or after this time are returned.
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).

[KQM] List customers (companies that KQM quotes or sells to). Returns customer IDs and core metadata. Use this to resolve customer IDs referenced by quotes, sales orders, contacts, and addresses.

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only customers modified on or after this time are returned.
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).

Quotes

ToolPlanAccessSummary
kqm_get_quote_by_idFreeRead-onlyRetrieve a single quote by its KQM ID, including header fields, totals, and status.
kqm_get_quote_line_by_idFreeRead-onlyRetrieve a single quote line by its KQM ID.
kqm_get_quote_section_by_idFreeRead-onlyRetrieve a single quote section by its KQM ID.
kqm_list_quote_linesFreeRead-onlyList line items for a specific quote section.
kqm_list_quote_sectionsFreeRead-onlyList quote sections, typically scoped to a single quote.
kqm_list_quotesFreeRead-onlyList sales quotes.

[KQM] Retrieve a single quote by its KQM ID, including header fields, totals, and status. Use `kqm_list_quotes` to discover IDs, and pair with `kqm_list_quote_sections` to walk the quote body.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM quote identifier.

[KQM] Retrieve a single quote line by its KQM ID. Use `kqm_list_quote_lines` to discover valid IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM quote-line identifier.

[KQM] Retrieve a single quote section by its KQM ID. Use `kqm_list_quote_sections` to discover valid IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM quote-section identifier.

[KQM] List line items for a specific quote section. Call `kqm_list_quote_sections` first to obtain the `quoteSectionID` required by this tool — quote lines are scoped to sections, not directly to quotes.

ParamTypeRequiredDefaultDescription
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).
quoteSectionIDintegernonullOptional quote-section ID to scope to lines within a single section. Obtain from `kqm_list_quote_sections`.

[KQM] List quote sections, typically scoped to a single quote. Call this before `kqm_list_quote_lines` to obtain the `quoteSectionID` values required to fetch lines. Use `kqm_list_quotes` to find the parent quote ID.

ParamTypeRequiredDefaultDescription
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).
quoteIDintegernonullOptional quote ID to scope to sections of a single quote. Use `kqm_list_quotes` to find valid IDs.

[KQM] List sales quotes. Optionally filter by quote number, modification time, or status. Status is filtered client-side after fetching (KQM does not support a status query parameter); may require larger page sizes for accurate counts across large tenants.

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only quotes modified on or after this time are returned.
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).
quoteNumberstringnonullOptional exact-match filter on quote number (e.g. 'QO12345678').
statusstringnonullOptional status filter. Applied client-side after fetching — KQM does not accept a status query param. Values: Draft(0), Sent(1), Viewed(2), Won(3), PendingApproval(4), Approved(5), Declined(90).

Sales Orders

ToolPlanAccessSummary
kqm_get_sales_order_by_idFreeRead-onlyRetrieve a single sales order by its KQM ID, including header fields, totals, customer link, and status.
kqm_get_sales_order_line_by_idFreeRead-onlyRetrieve a single sales-order line by its KQM ID.
kqm_get_sales_order_payment_by_idFreeRead-onlyRetrieve a single sales-order payment by its KQM ID.
kqm_list_sales_order_linesFreeRead-onlyList line items for a specific sales order.
kqm_list_sales_order_paymentsFreeRead-onlyList payments recorded against a sales order.
kqm_list_sales_ordersFreeRead-onlyList sales orders.

[KQM] Retrieve a single sales order by its KQM ID, including header fields, totals, customer link, and status. Use `kqm_list_sales_orders` to discover IDs and `kqm_list_sales_order_lines` to enumerate line items.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM sales-order identifier.

[KQM] Retrieve a single sales-order line by its KQM ID. Use `kqm_list_sales_order_lines` to discover valid IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM sales-order-line identifier.

[KQM] Retrieve a single sales-order payment by its KQM ID. Use `kqm_list_sales_order_payments` to discover valid IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM sales-order-payment identifier.

[KQM] List line items for a specific sales order. Use `kqm_list_sales_orders` to obtain the `salesOrderID`, or call without it to page across all sales-order lines in the tenant.

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only lines modified on or after this time are returned.
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).
salesOrderIDintegernonullOptional sales-order ID to scope to lines of a single order.

[KQM] List payments recorded against a sales order. Use `kqm_list_sales_orders` to find the parent `salesOrderID`, or omit the filter to enumerate payments across all orders.

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only payments modified on or after this time are returned.
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).
salesOrderIDintegernonullOptional sales-order ID to scope to payments of a single order.

[KQM] List sales orders. Optionally filter by order number, modification time, or status. Status is filtered client-side after fetching (KQM does not support a status query parameter); may require larger page sizes for accurate counts across large tenants.

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only sales orders modified on or after this time are returned.
orderNumberstringnonullOptional exact-match filter on sales-order number (e.g. 'ON12345678').
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).
statusstringnonullOptional status filter. Applied client-side after fetching — KQM does not accept a status query param. Values: Draft(1), Approved(2), Processed(3), Cancelled(90).

Purchase Orders

ToolPlanAccessSummary
kqm_get_purchase_order_by_idFreeRead-onlyRetrieve a single purchase order by its KQM ID, including header fields, totals, supplier link, and status.
kqm_get_purchase_order_cost_by_idFreeRead-onlyRetrieve a single purchase-order cost record by its KQM ID.
kqm_get_purchase_order_line_by_idFreeRead-onlyRetrieve a single purchase-order line by its KQM ID.
kqm_list_purchase_order_costsFreeRead-onlyList ancillary cost records (freight, duty, etc.) attached to a purchase order.
kqm_list_purchase_order_linesFreeRead-onlyList line items for a specific purchase order.
kqm_list_purchase_ordersFreeRead-onlyList purchase orders.

[KQM] Retrieve a single purchase order by its KQM ID, including header fields, totals, supplier link, and status. Use `kqm_list_purchase_orders` to discover IDs. Pair with `kqm_list_purchase_order_lines` and `kqm_list_purchase_order_costs`.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM purchase-order identifier.

[KQM] Retrieve a single purchase-order cost record by its KQM ID. Use `kqm_list_purchase_order_costs` to discover valid IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM purchase-order-cost identifier.

[KQM] Retrieve a single purchase-order line by its KQM ID. Use `kqm_list_purchase_order_lines` to discover valid IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM purchase-order-line identifier.

[KQM] List ancillary cost records (freight, duty, etc.) attached to a purchase order. Use `kqm_list_purchase_orders` to find the parent `purchaseOrderID`, or omit the filter to enumerate across all POs.

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only cost records modified on or after this time are returned.
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).
purchaseOrderIDintegernonullOptional purchase-order ID to scope to costs of a single order.

[KQM] List line items for a specific purchase order. Use `kqm_list_purchase_orders` to find the parent `purchaseOrderID`, or omit the filter to enumerate lines across all POs.

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only lines modified on or after this time are returned.
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).
purchaseOrderIDintegernonullOptional purchase-order ID to scope to lines of a single order.

[KQM] List purchase orders. Optionally filter by order number, modification time, status, or PO type. Status and type filters are applied client-side after fetching (KQM does not support these as query parameters); may require larger page sizes for accurate counts across large tenants.

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only purchase orders modified on or after this time are returned.
orderNumberstringnonullOptional exact-match filter on purchase-order number (e.g. 'PO12345678').
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).
statusstringnonullOptional status filter. Applied client-side after fetching. Values: Draft(0), Approved(1), Received(2), Cancelled(90).
typestringnonullOptional PO type filter. Applied client-side after fetching. Values: Normal(0), DropShip(1).

Operations

ToolPlanAccessSummary
kqm_get_employee_by_idFreeRead-onlyRetrieve a single employee by its KQM ID.
kqm_get_supplier_by_idFreeRead-onlyRetrieve a single supplier (vendor) by its KQM ID.
kqm_get_warehouse_by_idFreeRead-onlyRetrieve a single warehouse by its KQM ID.
kqm_list_employeesFreeRead-onlyList KQM employees (sales reps and other users).
kqm_list_warehousesFreeRead-onlyList warehouses (stocking locations) configured in KQM.

[KQM] Retrieve a single employee by its KQM ID. Use `kqm_list_employees` to discover valid IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM employee identifier.

[KQM] Retrieve a single supplier (vendor) by its KQM ID. Use `kqm_list_suppliers` (in Catalog) to discover valid IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM supplier identifier.

[KQM] Retrieve a single warehouse by its KQM ID. Use `kqm_list_warehouses` to discover valid IDs.

ParamTypeRequiredDefaultDescription
idintegeryesThe KQM warehouse identifier.

[KQM] List KQM employees (sales reps and other users). Returns employee IDs referenced by quotes and sales orders as the owner/assignee. Use this to resolve human-readable names from owner IDs.

ParamTypeRequiredDefaultDescription
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).

[KQM] List warehouses (stocking locations) configured in KQM. Returns warehouse IDs referenced by inventory-bearing sales-order and purchase-order lines.

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only warehouses modified on or after this time are returned.
pageintegerno1Page number (1-indexed, default 1).
pageSizeintegerno100Results per page (default 100, max 100 enforced by KQM).

Analytics

ToolPlanAccessSummary
kqm_customer_spend_summaryFreeRead-onlyComposite per-customer spend summary: for the given customer, rolls up all sales orders, their line items, and their payments, returning aggregate revenue, cost, outstanding balance, and per-order…
kqm_pipeline_summaryFreeRead-onlyComposite pipeline summary: counts and total/cost by quote status.
kqm_product_velocity_reportFreeRead-onlyComposite per-product velocity: units sold, revenue, and unique customer count across sales-order lines.
kqm_purchase_vs_sales_reconciliationFreeRead-onlyComposite reconciliation for a single sales order: compares the sales-order lines against matching purchase-order lines (joined by productID), flagging quantity mismatches.
kqm_quote_conversion_funnelFreeRead-onlyComposite quote funnel: total quotes by status, win rate (won / (won + declined)), conversion rate (won / total), and average days from creation to close for won quotes.
kqm_sales_order_margin_reportFreeRead-onlyComposite margin report: for each sales order (up to 200), fetches its line items and computes (unitPrice - unitCost) * quantity.

[KQM] Composite per-customer spend summary: for the given customer, rolls up all sales orders, their line items, and their payments, returning aggregate revenue, cost, outstanding balance, and per-order detail. Performance Hint: issues up to 50 list pages + up to 200 per-order fetches for lines and payments each. Returns `_partial: true` if caps trigger. At KQM's 60 req/min limit, expect composites to take 2-5 minutes for large tenants — call sparingly.

ParamTypeRequiredDefaultDescription
customerIDintegeryesThe KQM customer ID to summarise. Use `kqm_list_customers` to find valid IDs.
modifiedAfterstringnonullISO-8601 timestamp. When set, only sales orders modified on or after this time are aggregated.

[KQM] Composite pipeline summary: counts and total/cost by quote status. Aggregates across all quotes returned by `kqm_list_quotes`, bucketed by status (Draft, Sent, Viewed, Won, PendingApproval, Approved, Declined). Performance Hint: issues up to 50 list-page calls on the quote endpoint. Returns `_partial: true` if caps trigger. At KQM's 60 req/min limit, expect composites to take 2-5 minutes for large tenants — call sparingly.

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only quotes modified on or after this time are aggregated.
ownerEmployeeIDintegernonullOptional employee ID filter; when set, only quotes owned by that employee are counted (filtered client-side).

[KQM] Composite per-product velocity: units sold, revenue, and unique customer count across sales-order lines. Aggregated from all sales-order lines matching the filter. Unique-customer counts require fetching each parent sales order, so fan-out is capped at 200 orders. Performance Hint: issues up to 50 list-page calls on sales-order-lines + up to 200 sales-order detail fetches. Returns `_partial: true` if caps trigger. At KQM's 60 req/min limit, expect composites to take 2-5 minutes for large tenants — call sparingly.

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only sales-order lines modified on or after this time are included.
productIDintegernonullOptional product ID filter. When omitted, all products touched by returned lines are included.

[KQM] Composite reconciliation for a single sales order: compares the sales-order lines against matching purchase-order lines (joined by productID), flagging quantity mismatches. Useful for checking drop-ship or stock-out coverage. Performance Hint: issues up to 50 list-page calls on sales-order-lines + up to 50 on purchase-order-lines. Returns `_partial: true` if caps trigger. At KQM's 60 req/min limit, expect composites to take 2-5 minutes for large tenants — call sparingly.

ParamTypeRequiredDefaultDescription
salesOrderIDintegeryesThe KQM sales-order ID to reconcile. Use `kqm_list_sales_orders` to find valid IDs.

[KQM] Composite quote funnel: total quotes by status, win rate (won / (won + declined)), conversion rate (won / total), and average days from creation to close for won quotes. Performance Hint: issues up to 50 list-page calls on the quote endpoint. Returns `_partial: true` if caps trigger. At KQM's 60 req/min limit, expect composites to take 2-5 minutes for large tenants — call sparingly.

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only quotes modified on or after this time are included in the funnel.

[KQM] Composite margin report: for each sales order (up to 200), fetches its line items and computes (unitPrice - unitCost) * quantity. Returns aggregate revenue, cost, margin, and per-order detail. Performance Hint: issues up to 50 list pages + up to 200 per-order line fetches (each of which may page up to 50 times). Returns `_partial: true` if caps trigger. At KQM's 60 req/min limit, expect composites to take 2-5 minutes for large tenants — call sparingly.

ParamTypeRequiredDefaultDescription
modifiedAfterstringnonullISO-8601 timestamp. When set, only sales orders modified on or after this time are considered.