# Odoo integration

> Open-source ERP and CRM accessed over its External API (JSON-RPC) — manage contacts, sales, purchasing, inventory, invoicing, CRM, projects, and HR through generic model methods.

- Authentication: apiKey

## Tools (14)

- **Authenticate (Resolve UID)**: Resolve the numeric user id (uid) required by every execute_kw call, using the database, login, and API key.
- **Call Model Method (execute_kw)**: Invoke any other model method not covered by the standard verbs — confirm a sales order, post an invoice, validate a delivery, or log a message.
- **Count Records (search_count)**: Count the records on a model that match a domain filter.
- **Create Record (create)**: Create one or more records on any model and return the new id(s) — contacts, sales orders, invoices, leads, products, and more.
- **Delete Records (unlink)**: Permanently delete one or more records from a model.
- **Get Server Version**: Return the Odoo server and protocol version, useful to detect whether the newer JSON-2 API is available.
- **Inspect Model Fields (fields_get)**: Discover a model's fields, their types, labels, and relations — use before reading or writing an unfamiliar model.
- **List Databases**: List the database names available on the Odoo server. Often disabled on hosted / SaaS instances.
- **Name Search (name_search)**: Resolve a display-name string to matching record ids on a model — look up a customer, product, or any labelled record before filtering on it.
- **Read Grouped Aggregates (read_group)**: Aggregate a model's records grouped by one or more fields — sums, counts, and averages for reporting (total sales by month, pipeline by stage).
- **Read Records by ID (read)**: Fetch field values for a known set of record ids on a model.
- **Search & Read Records (search_read)**: Search a model by domain filter and return the matching records' fields in one call — the primary way to query any Odoo model.
- **Search Record IDs (search)**: Return only the ids of records matching a domain filter on a model.
- **Update Records (write)**: Update field values on one or more existing records of any model.

Connect Odoo in General Input: https://www.generalinput.com/apps/odoo