Marketing operations#
An operation gathers everything you launch for one goal (back to school, a launch, a trade fair) and tells you what it produced: people reached, replies, sales, costs. It is created and read on the Operations page, and can also be driven from VIBE, Turbo, the API and Claude (MCP).
A goal and a period
Name, goal, expected result, start and end dates. Without dates, the period is 30 days from today. Two operations in the same project cannot share a name (accents, case and punctuation ignored).
Every action that serves it
Email and SMS campaigns, ads, social posts, follow-up sequences, automations. Content (visuals, videos, copy) follows the action that uses it.
A status
Running during the period, “review due” once it is over, then closed once the review is recorded.
A sequel
A new operation is automatically chained to the last reviewed operation: its sheet recalls the previous decision.
An action joins an operation in three ways, all reversible. In every case, an action only joins an operation if its date falls within the operation's period, and never a closed operation.
| At launch | choice | The email, SMS and ad campaign wizards offer the running operation. VIBE and Turbo use it when you name it. |
| Afterwards | declared | From the sheet, or by asking VIBE or Turbo to link the latest campaign, ad or post. |
| Automatically | AI, 15 min | An action launched without an operation is compared with the running operations. Confidence of at least 85%: linked and flagged; at least 60%: suggested in one click; below: left free, or a new operation is suggested. If the team undoes too many links, the threshold raises itself. |
The sheet computes its figures from what actually happened, over the operation's period. The same figures are returned by the page, VIBE, Turbo, the API and Claude: no assistant writes them itself.
| People reached | email + SMS | Each person once, even when reached by email and SMS (the prospect record and confirmed links make the match). Possible duplicates are flagged, never merged automatically. |
| Sends by channel | sent, delivered | Email: sent, delivered, opened, clicked (see below). SMS: sent and delivered according to the carrier receipt. |
| Replies | proven | A reply counts when it answers a send of the operation (a reply address unique to each send). Comments on linked posts count too. |
| Sales | ordered, paid | Deals won and lost, amount ordered, amount declared paid. |
| Ads and social | period | Ad spend, impressions and clicks; post views and interactions, measured over the period rather than all-time totals. |
| Costs | credits | SMS used and generation credits of the content the operation used. |
Every email sent by Gliiz keeps a send record. The sending provider (Resend) then reports, message by message, what happens to it, and the record is updated: this is what feeds the campaign and operation sheet rates.
| Sent | sent | The provider accepted the message. An immediate refusal counts as failed and is never billed. |
| Delivered | email.delivered | The recipient's server accepted the message. |
| Opened | email.opened | First open dated, then open count. Some mail apps block the measurement: the open rate is a floor. |
| Clicked | email.clicked | First click dated, then click count. |
| Bounce, complaint | email.bounced / complained | The address is automatically removed from later sends (campaigns and sequences). A temporary bounce does not remove it. |
| Failed | email.failed | The provider gives up on a message it had accepted: the send becomes failed. |
A deal opens by itself
A reply to an operation email, a commercial comment on a linked post, or a message expressing purchase intent, a product question or a contact request opens the person's deal. Stages: new, qualified, negotiating, won, lost.
Attribution
The deal is attributed to the operation that last reached the person, during its period or within the 30 days after. This link is frozen when the deal opens: it does not change afterwards.
Order
Product lines from the catalog (catalog price if you give none). The total is recomputed by the database. A confirmed order moves the deal to “won”.
Declared payment
You declare what was paid (cash, mobile money, transfer), in the order's currency. Gliiz collects nothing for you: the sheet separates ordered from paid.
At the end of the period, the review records a decision (continue, adjust, stop), a note and, if you wish, a hypothesis to try. The review adds what it learned to the project's brand memory, in three distinct kinds:
| Observation | measured | A fact drawn from the sheet's figures. It never changes a rule. |
| Hypothesis | to try | An idea to test in a next operation. |
| Rule | validated | Applied by VIBE and Turbo in everything they suggest. A rule only exists if a person validated it: the database refuses any rule without validation. |
The sheet also suggests leads (failed posts, ads without clicks, unanswered replies) with the next step: link, open VIBE with a prefilled request (never sent without you), or note a hypothesis.
The same actions go through the interface, VIBE (text), Turbo on Telegram and WhatsApp (text or voice), the public API and Claude via MCP. Anything that writes or spends asks for your confirmation, and the same permissions apply everywhere.
| “How is the Back to school operation doing?” | GET /operations/report | The sheet's figures. MCP: gliiz_get_operation_report. |
| “Create the November fair operation” | POST /operations | Created with the same rules as the page. MCP: gliiz_create_operation, gliiz_list_operations. |
| “Link the latest campaign to Back to school” | POST /operations/attach | Declared link. MCP: gliiz_attach_to_operation. |
| “Text the operation's contacts” | Turbo | Audience frozen when proposed, cost shown, sent only after your “Yes”. The text is made as short as possible in SMS segments. |
| “Marie ordered 3 packs, paid 50,000 by mobile money” | POST /sales, /payments | Sale and declared payment; an ambiguous name asks you to choose. MCP: gliiz_record_sale, gliiz_declare_payment, gliiz_list_deals (GET /deals). |
| “Remember: short morning SMS with the price” | POST /rules | Rule validated by you. Reading the memory: GET /brand-memory. MCP: gliiz_validate_rule, gliiz_get_brand_memory. |
Any project member can view operations, their reviews and the brand memory. Creating an operation, linking an action, recording a review or validating a rule requires the “Publish” permission. Committing ad spend (creating or resuming an ad) requires “Ad budget”; pausing it remains possible with “Publish”. Approving content requires “Approve”, and the approved version is what goes out: an edit made after approval is flagged and does not go out without a new approval. Permission details are in Workspace & Projects.
Exact figures at any volume
Up to 20,000 sends per operation, the sheet reads every send. Beyond that, the database counts sends, deliveries, opens and clicks itself; the sheet says so, and people reached by email and SMS are no longer matched across channels.
SMS or email provider down
Nothing that did not go out is billed: reserved SMS credits are refunded exactly, and every failure is recorded. A campaign where nothing went out stays a draft.
Social network not responding
A clear refusal is retried (15 min, then 1 h, three attempts). If the network stops responding after receiving the request, the post is marked “uncertain” and is never resent on its own: no double posting.
Turbo unreachable
A Turbo notification that cannot go out (post, video ready, payment) waits in a queue and is delivered on your next message, on Telegram as on WhatsApp. After 7 days it is dropped.
Was this documentation helpful?

