Product Tools
What an AI can do with your product catalogue through Copilot or a connected AI app — connect, change and refresh product sources, and write, approve and delete the binding rules the AI follows when it talks about your products.
Overview
Through Copilot or a connected AI app, an AI can connect the catalogues a brand's products come from, keep them up to date, and write product rules — the binding wording the AI must follow whenever it mentions a product. It looks the actions below up with find_actions and runs each one with the run tool for its kind — see MCP Server. In find_actions these actions sit in the chatbot area, next to the Chatbot Tools.
ContentSources — shown as Content sources in the permission list, not Vex AI. A product catalogue is shared content, read by Vex, by phone agents, by inbox reply suggestions and by AI social posting alike. An app connected by browser login also needs the Chatbot area (copilot:chatbot) ticked on the login screen.For what any of this means in the product, see the dashboard documentation on product rules and product sources.
Actions
| Action | Level | What it does |
|---|---|---|
product_rules.create | Change | Creates one rule for a brand: its keys and the text the AI follows. It starts as a draft unless you confirmed the exact wording. |
product_rules.bulk_create | Change | Creates up to 200 rules in one go, all or none — for example to load a list of permitted claims. Drafts unless you confirmed the wording. |
product_rules.update | Change | Changes one rule's keys, text, note, mode, scope, kind or status. Setting it back to draft takes it away from the AI without deleting it. |
product_rules.approve | Change | Makes draft rules live — chosen ones, or every draft of a brand, optionally only those from one document import. |
product_sources.create | Change | Connects a catalogue: the shop's own JSON (Product API) or a Google Shopping CSV feed. |
product_sources.update | Change | Changes a source's name, address, secret, extra headers, key fields, schedule, or what happens after repeated failures. |
product_sources.fetch_now | Change | Reads a source's products in again right away, at most once every 5 minutes. Uses AI credits. |
product_rules.delete | Delete or send | Deletes one rule for good. The AI must repeat the rule's name — the first 60 characters of its text. |
product_sources.delete | Delete or send | Deletes one source and all of its products for good. The AI must repeat the source's name. Refused while a read or push is running. |
How Product Rules Work
A rule is a list of keys (the words a product and the rule share, usually an ingredient name) plus the text the AI reads word for word.
- Matching is exact, never fuzzy. A rule applies to a product when they share a key, compared after lowercasing, removing accents and collapsing punctuation. Every spelling of the same thing goes into one rule's keys; synonyms and translations are not matched for you.
- Scope "brand" reaches every product. A brand-wide rule has no keys and applies to every product of the brand, keyless products included — for a general disclaimer or an "only the listed claims may be made" sentence.
- Mode "always" or "when relevant". An "always" rule is passed every time a matching product comes up — for conditions, restrictions and mandatory disclaimers. A "when relevant" rule is filtered against the visitor's question — for individual permitted claims, so a long list does not arrive all at once.
- Kind "describe" or "find". A "describe" rule only guides what the AI says about a product already in the answer. A "find" rule promises that the products carrying its keys are the products for what the rule says. In the chat, find rules are searched by meaning and a short AI call — the meaning check — chooses which of them really fit the visitor's question; a chosen rule brings its products into the answer and leaves look-alike products out (a product the visitor names is kept). Keyed rules only, and never for a rule saying what a product contains ("contains gluten").
- A keyed rule needs at least one key to go live. An approval that includes such rules fails and names them; brand-wide rules are exempt.
- Bulk create is all or nothing. If one rule is refused, or the organization's limit of 20,000 rules would be passed, none are created.
How Product Sources Work
- Two kinds. A Product API source is the shop's own JSON, read on a schedule of whole days and pushable by the shop at any time; only this kind carries rule keys, and its address must be
https. A CSV source is a Google Shopping feed of simple products, with no keys and no rules. The kind cannot be changed later. - The secret is shown once. Creating an API source returns its secret, the push address and how the shop signs in — the organization's API key in the
Y-API-Keyheader. Later answers only say whether a secret exists; the dashboard shows it again. The full JSON shape is described in The Product API. - A moved source gets a new secret. When an API source's address moves to another host, or a push-only source gets its first address, and the AI sends no new secret, the source gets a freshly generated secret and its extra headers are cleared — a secret your shop knows never follows the source to someone else's server. The answer says so; give your shop the new secret from the brand's Products → Sources page.
- Key fields take effect at once. Changing which fields become the products' keys re-derives the keys of every product of that source, with no new read.
- Fetch now runs in the background. Inside the five-minute wait the AI is told how many minutes are left — an answer, not an error. Otherwise it gets a run id and checks the outcome by reading the source again.
- Repeated failures. After three failed refreshes in a row a source is switched off and the owner is emailed. The source's failure setting decides whether its products stay visible ("keep", the default) or are hidden until it works again ("hide").
Reading Products, Sources and Rules
Three resources are available through the Data Access tools, gated by the same Content sources permission:
| Resource | What it holds |
|---|---|
product_sources | The catalogues products come from, with their schedule and last run. |
product_rules | The binding wording, with its keys, status and mode. |
products | The catalogue itself: base products with their versions, plus each product's keys and its own rule sentences. |
Read one rule with get_record and it also says how many products it reaches today; read one product and it lists every rule that applies to it, drafts included. Together they are the fastest way to check a rule set before approving it.
What an AI Cannot Do Here
- Delete several rules at once, or every draft rule of a brand. An AI deletes one named rule per call. To delete many, tick them in the rules table on the brand's Products → Rules tab and delete them together.
- Show a source's secret again after creation. It is shown on the brand's Products → Sources page.
- Create the API key your shop pushes with. API keys are human-only in every connection: create one under Settings → Organization settings → API.
Example Prompts
- "Create a product API source called 'Shop feed' on my brand, reading https://shop.example.com/yaplet/products every day, and turn the Ingredients field into keys."
- "Create these permitted claims as draft rules, one Always rule per substance, keyed on the substance name and its common synonyms."
- "Show me every product on my brand that has no keys, so I know which ones no rule can reach."
- "How many products does the vitamin C rule reach today?"
- "Fetch the products of my Shop feed now."