Rewst¶
Rewst's own dashboard shows your team an hours-saved widget. This page is about the other audience: the client who has never seen that number. One HTTP action per workflow turns Rewst executions into a client-facing, per-client value report with the methodology printed on the page.
Per-client workspaces first¶
On the MSP plan, create one LumaTrack client workspace per managed client and one API key per client org. The value ledger, the QBR report, and the audit trail stay per client by construction; see the MSP guide.
Import the LumaTrack integration (5 minutes)¶
Rewst's Custom Integrations V2 turns an OpenAPI spec into first-class workflow actions, so you get a Record Run action instead of hand-building HTTP requests:
- Download the spec: lumatrack-rewst-openapi.json.
- In Rewst: Configuration, Integrations, Custom Integrations, create a V2 integration and import the JSON.
- Authentication: API Key, header name
Authorization, preambleBearer(with the trailing space), and paste a LumaTrack API key (Settings, API keys; ingest-scope keys are enough for recording runs). - The Workflow Builder now shows LumaTrack actions: Record Run, Get ROI Summary, List Automations, Create Automation.
Drop Record Run as the last step of a workflow: automation slug,
status, external_id mapped to {{ CTX.execution_id }} (retries then
dedupe instead of double-counting), and units when the workflow
processes a batch. Add an error branch that runs Record Run again with
status set to failure; a priced failure is what keeps the QBR total
honest.
For per-client credentials on the MSP plan, create the integration once
and configure a key per client org, or run one integration per client;
each client's runs land in that client's workspace either way. Within one
organization, Get ROI Summary takes an optional workspace id to filter
to a single workspace; it never crosses organizations, so each managed
client's numbers still come from that client's own key.
What Record Run returns¶
Branch on the status code so a client's numbers never drift on a silent error:
| Status | Meaning | In Rewst |
|---|---|---|
| 201 | Recorded. | Continue. |
| 200 | Replay: this external_id was already recorded, so nothing was double-counted. |
Treat as success; do not retry. |
| 202 | Recorded, but held because the plan's run cap is reached. | Success; held runs land when capacity frees or the plan is raised. |
| 400 | The payload was rejected (a bad field, or an executed_at in a closed month). |
Fix the mapping; do not retry unchanged. |
| 404 | No automation matches that slug. | Create it with Create Automation, or correct the slug. |
| 429 | Rate limited. | Back off and retry after the Retry-After interval. |
Get ROI Summary returns 404 when the workspace id is not in the key's
organization.
The workflow step (plain HTTP alternative)¶
No custom integration? An HTTP Request action works identically:
| Setting | Value |
|---|---|
| URL | https://your-lumatrack-host/api/v1/runs |
| Method | POST |
| Headers | Authorization: Bearer <client org's API key>, Content-Type: application/json |
{
"automation": "user-onboarding",
"status": "success",
"source": "rewst",
"external_id": "{{ CTX.execution_id }}",
"duration_seconds": 42,
"units": 3
}
Map Rewst's execution id to external_id so retried workflows dedupe
instead of double-counting. units fits workflows that process a batch
(users onboarded, mailboxes migrated); value those automations
per unit so a 30-user run books more
than a 3-user run, honestly.
Wire the failure path too: an error branch posting "status": "failure"
is what makes the numbers credible at QBR time.
From time-saved widget to QBR page¶
- Report runs from each workflow (above), per client.
- Enter each automation's manual baseline: the tech minutes one manual execution takes, at the role's loaded rate. This is your assumption and it is labeled as such on every report.
- Open the client's report page. Each figure drills down to the runs and the arithmetic behind it; months close and never restate.
If editing every workflow is impractical, start with a single reporter workflow your other workflows call as a sub-step, or a nightly backfill of an execution-log CSV export.