Maplith for marketing
- Sold out, and the ads keep running
- DKK 5,630 · 1,599 clicks · 0 conversions in 16 days
Where it goes wrong
Spend on what cannot be sold
Discount settings that break the written policy
What your agent does about it
Sold out, and the ads keep running
- Find the stock export and the ad platform export.
- Guess how their rows join; the catalogue spells seven re-listed products differently.
- Read a year of daily rows to notice the gap.
- Start over tomorrow.
- One rule, written once from the map’s own names.
- A signal for the product when it starts matching.
- The context to act in one call: the route, the playbook if the shop keeps one, the key’s policy.
- A record, so the next judging does not raise it as though nobody had looked.
- Your rulesStock on hand is zero and ad spend over the last day is above zero, per product.
- SignalsA
rule_firedsignal for the product, with the figure behind each condition.list_signals - Task contextThe verified route from ad spend to stock, the playbook if the shop keeps one, the last time, and the suggested operation.get_task_context
- The action gatePause the ad set: allowed, pending a person, or denied. The agent acts with the shop’s own credentials.request_action
- Record and valueWhat was done, with the spend it stopped when the agent has that figure, so the next judging does not raise it as though nobody had looked.record_action
- Live rulesThe shop’s own automation reports that a product reached zero; Maplith turns it into the same signal within minutes.early access
The full workflow, step by step
Without Maplith
Stock sits in the shop and the reporting database, spend sits in the ad platform, and nobody owns the space between. In the worked example a leather case was out of stock from 2026-07-14 to 2026-07-29, and one campaign spent DKK 5,630 on it across those sixteen days — 1,599 clicks, not one conversion — while the shop’s own marketing rules say to pause ads the day stock reaches zero. An agent without a map has to find both exports, guess how the ad platform’s rows join the stock (the catalogue spells seven re-listed products differently), read a year of daily rows to notice, and start over tomorrow.
With Maplith
- Your rules
An admin writes the rule once, from the map’s own names: stock on hand is zero and ad spend over the last day is above zero — per product. A product is reached only through joins Maplith tested against the rows. The rule is judged when a scan finishes and, for a connected system, daily or weekly between scans; its first judging is its baseline, so a product already sold out then raises nothing, and a product fires when it starts matching.
- Signals
list_signalsreturns arule_firedsignal for that product, with the figure behind each condition. - Task context
get_task_contextreturns the product, the verified route from ad spend to stock, the marketing rules if the shop keeps them as a playbook, what was done the last time, and the operation the rule suggests — pause the ad set — with the key’s policy for it. - The action gate
request_actionto pause that ad set: allowed, pending a person, or denied. An allowed answer can carry a grant good once for that ad set; the agent pauses it in the ad platform with the shop’s own credentials. - Record and value
record_actionrecords what was done — with the spend the ad platform says it stopped, when the agent has that figure — so the next judging does not raise it as though nobody had looked, and What you got counts it. - Live rules · early access
Instead of waiting for the next judging, the shop’s own automation — the kind a shop platform already runs when stock changes — reports only the observation that a product reached zero, and Maplith turns it into the same signal and task context within minutes.
What your agent calls
Your rules
liveTask context
liveThe action gate
liveRecord and value
liveLive rules
early accessWhere these come from
Acme Commerce
Fjeldrev Outdoor ApS
Map your exports. The first map is free.
Your systems stay the source of truth; your agent acts in them with your credentials.