Overview
Once Centra is connected, the Dema Agent can pull live data from your store — products, variants, orders, customers, inventory, markets, pricelists, categories, and discounts — directly inside a conversation. With write permissions, it can also take action for you: correct stock, confirm or cancel orders, create shipments, update products and customers, and turn discounts on or off. The agent only acts when you ask it to, and Dema asks you to confirm sensitive changes before they are applied. You stay in control of both what the agent can see and what it can do.This is a separate connection from the Centra data integration that syncs orders and inventory into Dema’s analytics. That one is a read-only background sync; this one lets the agent read and act in real time when you ask. They use different credentials — see below.
Use a dedicated token for the agent
Create a new Integration API token just for the agent, separate from the one your data sync uses. The agent can act on your store, not just read it, so its own token keeps access independently scoped, auditable, and revocable — cutting the agent off or rotating its token never touches your analytics sync. Name it something obvious likeDema Agent.
Prerequisites
- A Centra account with permission to create Integration API tokens (System → API Tokens).
- Your store URL, in the form
https://your-store.centra.com.
Connect Centra
Create a dedicated API token in Centra
- In Centra, go to System → API Tokens.
- Click Create integration API token in the top right.
- Give it a description and set Integration name to
Dema Agent(create it if it does not exist). - Set an expiry date. Centra tokens are time-limited (30 days by default); pick a window that fits your rotation policy.
- Leave Restrictions unchecked, or scope them if your security team requires it.
- Under Permissions, select the permissions listed in Permissions to grant below. Grant the read set for analysis; add write permissions only if you want the agent to make changes.
- Click Save and copy the generated token.
Permissions to grant
Centra permissions are granular and chosen when you create the token. We recommend the principle of least privilege: grant the read set so the agent can analyze your store, and add write permissions only for the actions you actually want it to perform.Centra tells you the exact permission every request uses. If the agent ever reports a missing permission, Centra’s error names the precise one — add it to the token and reconnect. This is also the surest way to grant the agent the minimum it needs and nothing more.
Read access (recommended baseline)
Grant these so the agent can answer questions across your catalogue, orders, customers, inventory, and pricing.Products & catalogue
Products & catalogue
| Permission | What it unlocks |
|---|---|
Product:read | Read products and their details |
ProductVariant:read | Read variants (colours, styles) |
ProductSize:read | Read sizes, SKUs, and EANs |
Brand:read | Read the brand on a product |
Collection:read | Read the collection a product belongs to |
Display:read | Read catalogue items shown to shoppers |
Bundle:read | Identify bundle products |
Inventory
Inventory
| Permission | What it unlocks |
|---|---|
Warehouse:read | Read warehouses and stock locations |
ProductVariant.stock:read | Read stock levels per variant |
ProductSize.stock:read | Read stock levels per size |
Orders & returns
Orders & returns
| Permission | What it unlocks |
|---|---|
Order:read | Read orders, line items, and totals |
Order.shippingAddress:read | Read shipping addresses on orders |
Order.billingAddress:read | Read billing addresses on orders |
Return:read | Read return details on an order |
Customers
Customers
| Permission | What it unlocks |
|---|---|
Customer:read | Look up customers and their order history |
Customer.billingAddress:read | Read a customer’s billing address |
Markets, pricing & merchandising
Markets, pricing & merchandising
| Permission | What it unlocks |
|---|---|
Market:read | Read markets and sales channels |
Store:read | Read stores |
Pricelist:read | Read pricelists |
Category:read | Read the merchandising category tree |
Voucher:read | Read discount codes and vouchers |
Campaign:read | Read scheduled price campaigns |
Reference data
Reference data
These cover currency and country values that appear on prices, totals, addresses, markets, and pricelists.
| Permission | What it unlocks |
|---|---|
Currency:read | Read currencies on prices and totals |
Country:read | Read countries on addresses, markets, and pricelists |
Read permissions
Write access (optional)
Add these only if you want the agent to make changes in Centra. Write tools run only when you ask, and Dema prompts you to approve sensitive changes before they are applied.Inventory
Inventory
| Permission | What it unlocks |
|---|---|
StockChange:write + WarehouseDelivery:read | Set or correct stock quantities |
Order operations
Order operations
| Permission | What it unlocks |
|---|---|
Order:write | Confirm or cancel orders |
Purchaser:read | Required to cancel an order |
OrderHistory:write | Add notes to an order |
Shipment:write, Shipment:read, Shipment.shippingAddress:read, AdminUser:read, StorePlugin:read | Create shipments and fulfil orders |
Catalogue & customers
Catalogue & customers
| Permission | What it unlocks |
|---|---|
Product:write | Update product fields (name, status, number, internal comment) |
Customer:write | Update customer fields (status, internal comment) |
Attribute:write | Set custom attributes (custom fields) on any object |
Merchandising
Merchandising
| Permission | What it unlocks |
|---|---|
Category:write | Create categories and add or remove displays |
Pricing & promotions
Pricing & promotions
| Permission | What it unlocks |
|---|---|
Price:write | Set a product’s price in a pricelist |
Voucher:write | Disable or delete vouchers |
Creating a shipment also requires
AdminUser:read and StorePlugin:read on the token — Centra needs them to resolve the shipping configuration even though the agent never reads that data directly.Write permissions
When your token expires
Centra Integration API tokens are static and expire on the date you set (30 days by default). When a token expires, the integration shows as expired in Dema and the agent stops using it. To restore access, create a fresh token in Centra and paste it in via Reconnect on the integration card.Troubleshooting
The agent says it is missing a permission
The agent says it is missing a permission
Centra names the exact permission in the error (it returns
permissionsUsed on every request). Open the token in System → API Tokens, add the named permission, save, and click Reconnect in Dema. If the token cannot be edited, create a new one with the added permission and reconnect.Dema says the Account URL is invalid
Dema says the Account URL is invalid
The Account URL must be an HTTPS URL pointing at your Centra store, in the form
https://your-store.centra.com. Use your real store hostname, not a hand-written value.Dema says my connection has expired
Dema says my connection has expired
Your Centra token reached its expiry date. Create a new token in Centra and click Reconnect on the Centra integration card to paste it in.
The agent cannot see a write action working
The agent cannot see a write action working
Make sure you granted the matching write permission when you created the token (see Write access). Write permissions are not included in the read baseline and must be added deliberately.
Additional resources
- Centra Integration API documentation
- Centra data integration (analytics sync) — the separate read-only connection that feeds Dema’s reporting

