# Orquestr Documentation > Orquestr Cloud API reference. Authenticate with an API key, manage customers, licenses, and devices, and invoke POS functions such as SICAR V4 - [Introduction](https://docs.orquestr.dev/introduction.md): Cloud APIs, devices, and device Functions for Orquestr. - [Quickstart](https://docs.orquestr.dev/quickstart.md): Authenticate with an API key, list devices, and invoke a function. - [Errors](https://docs.orquestr.dev/errors.md): Standard error envelope and common codes. - [Functions overview](https://docs.orquestr.dev/functions/overview.md): Adapter-scoped function catalog executed on devices via the Gateway. - [Invoke a function](https://docs.orquestr.dev/functions/invoke.md): POST body shape, auth, and result handling. - [SICAR V4 functions](https://docs.orquestr.dev/functions/adapters/sicarv4/overview.md): Default Cloud Functions for adapter `sicarv4` (device POS / MySQL). - [SICAR V4 table whitelist](https://docs.orquestr.dev/functions/adapters/sicarv4/tables.md): Tables allowed in sicarv4.custom.select and related lookups. - [device.health](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/device-health.md): Agent / database health check - [sicarv4.schema](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-schema.md): List SICAR tables with column names and data types - [sicarv4.products.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-products-list.md): List SICAR products (tabla articulo) - [sicarv4.products.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-products-search.md): Search articulo by text (art_id/clave/claveAlterna/descripcion/caracteristicas), ids, status, servicio, existencia, cat_id - [sicarv4.inventory.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-inventory-list.md): List SICAR inventory levels (existencia en articulo) - [sicarv4.categories.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-categories-list.md): List SICAR categories (tabla categoria) - [sicarv4.categories.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-categories-search.md): Search categories by cat_id (comma-separated) - [sicarv4.images.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-images-search.md): Search images by img_id (comma-separated) - [sicarv4.products.with_images](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-products-with_images.md): Articulo LEFT JOIN articuloimagen — product rows with linked image ids (if any) - [sicarv4.product_images.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-product_images-search.md): Search articuloimagen by art_id and/or img_id (comma-separated) - [sicarv4.customers.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-customers-list.md): List SICAR customers (tabla cliente) - [sicarv4.customers.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-customers-search.md): Search customers by cli_id (comma-separated) - [sicarv4.departments.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-departments-list.md): List SICAR departments (tabla departamento) - [sicarv4.departments.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-departments-search.md): Search departments by dep_id (comma-separated) - [sicarv4.invoices.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-invoices-list.md): List SICAR invoices (tabla factura) - [sicarv4.invoices.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-invoices-search.md): Search invoices by fac_id (comma-separated) - [sicarv4.registers.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-registers-list.md): List SICAR cash registers (tabla caja) - [sicarv4.registers.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-registers-search.md): Search cash registers by caj_id (comma-separated) - [sicarv4.currencies.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-currencies-list.md): List SICAR currencies (tabla moneda) - [sicarv4.currencies.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-currencies-search.md): Search currencies by mon_id (comma-separated) - [sicarv4.payment_types.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-payment_types-list.md): List SICAR payment types (tabla tipopago) — tpa_id for sales - [sicarv4.payment_types.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-payment_types-search.md): Search payment types by tpa_id (comma-separated) - [sicarv4.users.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-users-list.md): List SICAR users (tabla usuario) — usu_id for historial / quotes / orders - [sicarv4.users.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-users-search.md): Search users by usu_id (comma-separated) - [sicarv4.sellers.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-sellers-list.md): List SICAR sellers (vendedor) without binary columns. Optional status + columns. - [sicarv4.sellers.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-sellers-search.md): Search sellers by vnd_id and/or text (nombre|clave|alias). Same column projection as list. - [sicarv4.seller_groups.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-seller_groups-list.md): List SICAR seller groups (tabla grupovendedor) — gvn_id for sellers.create - [sicarv4.seller_groups.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-seller_groups-search.md): Search seller groups by gvn_id (comma-separated) - [sicarv4.shifts.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-shifts-list.md): List SICAR shifts (tabla turno) — tur_id for sellers.create - [sicarv4.shifts.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-shifts-search.md): Search shifts by tur_id (comma-separated) - [sicarv4.positions.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-positions-list.md): List SICAR job positions (tabla puesto) — pue_id for sellers.create - [sicarv4.positions.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-positions-search.md): Search job positions by pue_id (comma-separated) - [sicarv4.vacations.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-vacations-list.md): List SICAR vacation policies (tabla vacaciones) — vac_id for sellers.create - [sicarv4.vacations.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-vacations-search.md): Search vacation policies by vac_id (comma-separated) - [sicarv4.suppliers.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-suppliers-list.md): List SICAR suppliers (tabla proveedor) — pro_id for purchase orders - [sicarv4.suppliers.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-suppliers-search.md): Search suppliers by pro_id (comma-separated) - [sicarv4.units.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-units-list.md): List SICAR units (tabla unidad) - [sicarv4.units.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-units-search.md): Search units by uni_id (comma-separated) - [sicarv4.taxes.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-taxes-list.md): List SICAR taxes (tabla impuesto) — imp_id for products.create / articuloimpuesto - [sicarv4.taxes.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-taxes-search.md): Search taxes by imp_id (comma-separated) - [sicarv4.roles.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-roles-list.md): List SICAR roles (tabla rol) — rol_id for users.create / sellers.create - [sicarv4.roles.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-roles-search.md): Search roles by rol_id (comma-separated) - [sicarv4.tax_regimes.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-tax_regimes-list.md): List SICAR tax regimes (tabla regimenfiscal) — rgf_id for customers.create - [sicarv4.tax_regimes.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-tax_regimes-search.md): Search tax regimes by rgf_id (comma-separated) - [sicarv4.customer_groups.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-customer_groups-list.md): List SICAR customer groups (tabla grupocliente) — grc_id for customers.create - [sicarv4.customer_groups.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-customer_groups-search.md): Search customer groups by grc_id (comma-separated) - [sicarv4.cash_cuts.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-cash_cuts-list.md): List SICAR cash-register cuts (tabla cortecaja) — newest cor_id first - [sicarv4.cash_cuts.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-cash_cuts-search.md): Search cash-register cuts by cor_id (comma-separated) - [sicarv4.cash_cut_payments.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-cash_cut_payments-list.md): List SICAR cash-cut amounts by payment type (tabla cortetipopago) - [sicarv4.cash_cut_payments.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-cash_cut_payments-search.md): Search cash-cut payment rows by cor_id (comma-separated) - [sicarv4.cash_cut_summaries.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-cash_cut_summaries-list.md): List SICAR cash-cut summaries (tabla resumencortecaja) — newest rcc_id first - [sicarv4.cash_cut_summaries.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-cash_cut_summaries-search.md): Search cash-cut summaries by rcc_id (comma-separated) - [sicarv4.cash_cut_payment_summaries.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-cash_cut_payment_summaries-list.md): List SICAR cash-cut summary lines by payment type (tabla resumentipopago) - [sicarv4.cash_cut_payment_summaries.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-cash_cut_payment_summaries-search.md): Search cash-cut payment summaries by rcc_id (comma-separated) - [sicarv4.tip_cuts.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-tip_cuts-list.md): List SICAR tip cuts (tabla cortepropina) — newest cpr_id first - [sicarv4.tip_cuts.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-tip_cuts-search.md): Search tip cuts by cpr_id (comma-separated) - [sicarv4.sales.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-sales-list.md): List SICAR sales (tabla venta) — newest first - [sicarv4.sales.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-sales-search.md): Search sales by ven_id (comma-separated) - [sicarv4.quotes.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-quotes-list.md): List SICAR quotes (tabla cotizacion) — newest first - [sicarv4.quotes.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-quotes-search.md): Search quotes by cot_id (comma-separated) - [sicarv4.purchase_orders.list](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-purchase_orders-list.md): List SICAR purchase orders (tabla pedido) — newest first - [sicarv4.purchase_orders.search](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-purchase_orders-search.md): Search purchase orders by ped_id (comma-separated) - [sicarv4.shifts.create](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-shifts-create.md): Create SICAR shift (turno + historial). Optional for sellers — tur_id is nullable. - [sicarv4.sales.create](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-sales-create.md): Create SICAR sale (TICKET|NOTA|REMISION): folio + venta + lines + taxes + cash + stock. Registry write only — not custom.query. - [sicarv4.quotes.create](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-quotes-create.md): Create SICAR quotation (cotización): NO stock/cash. Registry write only — not custom.query. - [sicarv4.purchase_orders.create](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-purchase_orders-create.md): Create SICAR supplier purchase order (pedido). Registry write only — not custom.query. - [sicarv4.inventory.adjust](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-inventory-adjust.md): Adjust SICAR article stock (ajusteinventario): type adjustment|entry|exit + cantidad + comentario. Registry write — not custom.query. - [sicarv4.customers.create](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-customers-create.md): Create SICAR customer (cliente + historial). Registry write — clave unique. - [sicarv4.units.create](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-units-create.md): Create SICAR unit (unidad + historial). Registry write — nombre unique. - [sicarv4.products.create](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-products-create.md): Create SICAR product (articulo + articuloimpuesto + historial). Registry write — clave unique. - [sicarv4.suppliers.create](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-suppliers-create.md): Create SICAR supplier (proveedor + historial). Registry write. - [sicarv4.sellers.create](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-sellers-create.md): Create SICAR seller (vendedor + historial). Registry write — clave unique. Not a login user. - [sicarv4.users.create](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-users-create.md): Create SICAR user (usuario + historial). Copies encrypted password from an existing user — no plaintext. Change password in SICAR UI. - [sicarv4.custom.select](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-custom-select.md): Custom SELECT on a whitelisted table — choose columns, optional ids filter, limit - [sicarv4.custom.query](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-custom-query.md): Read-only free-form SQL (SELECT / SHOW / DESCRIBE only). INSERT/UPDATE/DELETE/DROP rejected. Mutations use registry *.create functions. - [sicarv4.custom.validate](https://docs.orquestr.dev/functions/adapters/sicarv4/fn/sicarv4-custom-validate.md): Validate read-only SQL on the device before saving it. Does not store the query. - [Introduction](https://docs.orquestr.dev/api/introduction.md): Cloud API overview — authentication, response shape, and basics. - [Rate limits](https://docs.orquestr.dev/api/rate-limits.md): Per-API-key request limits by plan, and how to handle 429s. - [Customers](https://docs.orquestr.dev/api/customers.md): Create and manage customers. - [Create customer](https://docs.orquestr.dev/api/customers/create-customer.md) - [List customers](https://docs.orquestr.dev/api/customers/list-customers.md) - [Get customer](https://docs.orquestr.dev/api/customers/get-customer.md) - [Update customer](https://docs.orquestr.dev/api/customers/update-customer.md) - [Delete customer](https://docs.orquestr.dev/api/customers/delete-customer.md): Owner. Blocked while the customer has **active** licenses (`status=active`) or **active** devices (`pending`/`enrolled`). Revoke them first. - [Licenses](https://docs.orquestr.dev/api/licenses.md): Issue and revoke org licenses. - [Create license](https://docs.orquestr.dev/api/licenses/create-license.md): Returns `license_key` once. - [List licenses](https://docs.orquestr.dev/api/licenses/list-licenses.md) - [Get license](https://docs.orquestr.dev/api/licenses/get-license.md) - [List devices for a license](https://docs.orquestr.dev/api/licenses/list-devices-for-a-license.md): Returns every non-deleted device bound to the license (`pending`, `enrolled`, and `revoked`) unless filtered with `status`. Requires `devices.read` (or a product key for that license). - [Revoke license](https://docs.orquestr.dev/api/licenses/revoke-license.md) - [Delete license](https://docs.orquestr.dev/api/licenses/delete-license.md): Owner/admin. License must already be **revoked**. - [Devices](https://docs.orquestr.dev/api/devices.md): Register devices, list, patch, revoke, command history. - [Create device](https://docs.orquestr.dev/api/devices/create-device.md) - [List devices](https://docs.orquestr.dev/api/devices/list-devices.md): Returns devices for the customer in all statuses (`pending`, `enrolled`, `revoked`) unless filtered. API keys may be further scoped to license/device. - [Get device](https://docs.orquestr.dev/api/devices/get-device.md) - [Update device](https://docs.orquestr.dev/api/devices/update-device.md): Update `name`, `adapter`, and/or `external_device_id`. At least one field required. Cannot patch revoked devices. - [Revoke device](https://docs.orquestr.dev/api/devices/revoke-device.md) - [Delete device](https://docs.orquestr.dev/api/devices/delete-device.md): Owner/admin. Device must already be **revoked**. - [List command history](https://docs.orquestr.dev/api/devices/list-command-history.md) - [Functions API](https://docs.orquestr.dev/api/functions.md): List and invoke device functions with an API key. - [List device functions](https://docs.orquestr.dev/api/functions/list-device-functions.md): Registry + saved. for the device adapter. - [Invoke function](https://docs.orquestr.dev/api/functions/invoke-function.md): Device must be enrolled. Top-level sql/operation/params are forbidden. - [Saved SQL](https://docs.orquestr.dev/api/saved-sql.md): Org-scoped read-only saved queries exposed as saved. functions. - [List saved SQL](https://docs.orquestr.dev/api/saved-sql/list-saved-sql.md) - [Create saved SQL](https://docs.orquestr.dev/api/saved-sql/create-saved-sql.md) - [Get saved SQL](https://docs.orquestr.dev/api/saved-sql/get-saved-sql.md) - [Update saved SQL](https://docs.orquestr.dev/api/saved-sql/update-saved-sql.md) - [Delete saved SQL](https://docs.orquestr.dev/api/saved-sql/delete-saved-sql.md) ## OpenAPI Specs - [openapi](/openapi.json)