Import items from CSV
Creates or changes items from a CSV in the file store, with optional quantities per location; all rows or none.
$0.001 per row imported
From your agent’s balance. A call that fails costs nothing.
An example
Here's the spreadsheet of everything in the warehouse. Load it into our stock.
Your agent callsinventory_import$0.001 per row imported
The example business is Hansen & Voss, a restaurant-equipment wholesaler in Hamburg with 60 staff. The reply is the one the tool really gives.
{
"file_id": "5e8a1c3d-2b4f-4d6a-9c0e-7f1b3d5a8c2e"
}Use it when
A whole stock list arrives as a spreadsheet.
What it does
Items from a CSV in the file store, created or changed by SKU. Columns: sku, name, description, unit, barcode, cost, price, reorder_point, quantity, location (sku and, for new items, name). A quantity sets what is held at the row's location (default Main, made if new): the difference becomes an adjustment, in at the row's cost. All rows or none. Charged per row.
What comes back
How many items were created and changed, how many stock levels were adjusted, and the columns that were ignored. Every reply also carries cost_usd and balance_usd.
Inputs
| Name | Type | What it is |
|---|---|---|
file_idRequired | string | Exactly 36 characters. |
max_rows | integer | The most rows this call may import (and hold the price for). 1 to 5,000. Default: 1000. |
The call
Over MCP, call inventory_import on https://api.conecto.chat/mcp/inventory. Over REST:
curl -X POST https://api.conecto.chat/v1/tools/inventory_import \
-H "Authorization: Bearer $CONECTO_KEY" \
-H "Content-Type: application/json" \
-d '{"file_id":"5e8a1c3d-2b4f-4d6a-9c0e-7f1b3d5a8c2e"}'When it refuses
A refused call costs nothing and says what to do next.
| Code | When | What to do |
|---|---|---|
invalid_input400 | A quantity, cost or date is not valid. | Send numbers like 140.00 (a dot for decimals) and dates that have passed, like 2026-10-14. |
not_enough_stock409 | Stock would go below 0 at a location. | Ship or move less; the message says how much there is. |
not_found404 | No location has that name. | Call inventory_locations, or add it with inventory_save_location. |
archived409 | The item or location is archived. | Use another one, or name a location that is in use. |
not_found404 | The file is not in the store. | Upload it with files_upload first. |
too_many_rows413 | The CSV has more rows than max_rows. | Pass a higher max_rows (up to 5,000). |
sku_taken409 | A new SKU is used already. | Fix the row the message names. |
More Inventory tools
All 10 tools- Add or change items
inventory_save_itemsAdds stock items or changes them by SKU: name, unit, barcode, cost, price and reorder point.$0.005 per item saved - List items
inventory_list_itemsItems with their stock in total and per location, the moving-average cost and the value.Free* - Move stock
inventory_moveChanges stock, all moves or none: receive, ship, transfer between locations, or adjust.$0.005 per move - Count a location
inventory_stocktakeRecords a count of one location; each difference from the books becomes a count move.$0.002 per line counted - Stock history
inventory_historyStock moves, newest first, of one item, at one location, of one kind, or in a period.Free* - List locations
inventory_locationsEvery location with how many items it holds and their value.Free* - Add or change a location
inventory_save_locationAdds a location (a warehouse, a shop, a van), or renames, describes or archives one.$0.001 a call - Run an inventory report
inventory_reportValuation (what was held on a day and its value), movement (per item in a period, with the cost of goods shipped) or low stock.Free*
Give this to your agent.
Set up Conecto from https://conecto.chat/SKILL.md