Candu
Analytics & DataConnect AI agents to Candu, the no-code in-app UI content builder. Agents identify users and groups and track custom events so Candu can segment audiences and target the right in-app content, checklists, and announcements.
What This Integration Enables
Candu builds in-app content: checklists, announcements, banners, onboarding surfaces that render inside your own product. The public REST API is ingestion only. There are three operations, all writes, and the connector says so plainly: no endpoints exist to read or list content, components, segments, or analytics. What goes in cannot be read back out through this door.
That constraint defines how an agent should use it. Identify User attaches traits to a person, Identify Group attaches traits to an account and can associate a user with it, and Track Event logs a named behavior with properties. Those three feeds are what Candu's segmentation and targeting rules evaluate to decide which customer sees which message inside the product. FlowRunner agents keep those feeds fed from the systems that actually know: billing for plan, the CRM for role and owner, the product database for usage milestones. The connectors layer makes each of those a step rather than a script. The judgment about what a trait should mean stays with the person who owns the in-app experience.
Without FlowRunner
With FlowRunner
Use Case Scenarios
Plan changes reach the in-app layer immediately
A subscription upgrades in Stripe. The agent calls Identify Group with the account's new plan, seat count, and renewal date, then calls Identify User for each seat on the account so user-level and account-level traits agree. The checklist that was nagging the account to start a trial stops rendering, and the onboarding sequence for the new tier becomes eligible. No release, no manual segment edit.
Product milestones as targeting signals
The product records that a workspace has connected its first data source. The agent reads that from PostgreSQL and calls Track Event with an event name and properties describing what was connected and how long it took. Candu can then target the next in-app step at exactly the users who have crossed that line, and hold back the ones who have not. Because the event carries properties, the same feed also supports a behavioral segment later without a new instrumentation project.
CRM context available inside the product
Account ownership, industry, and contract tier live in HubSpot. The agent syncs those onto the Candu group profile with Identify Group so in-app content can vary by segment, for example showing an enterprise onboarding path to enterprise accounts. When a trait's meaning changes upstream, for example the CRM renames a tier, the flow catches it as an exception rather than pushing a value that no targeting rule matches.
Human-in-Loop Highlight
Candu's ingestion endpoint returns an empty success response, and there is no read path in the API. An agent that pushes a trait cannot ask Candu what it now believes, cannot list which users carry a value, and cannot delete a write it regrets. Worse, the userId has to match the identifier used when the Candu SDK was initialized in the product; when it does not, the write succeeds and creates a profile that will never resolve to a real user, silently. Both failure modes are invisible to the agent and highly visible to customers, because the output of this data is content rendered inside your product.
So the gate is on the bulk backfill, and specifically on the identifier mapping. Incremental writes, one account at a time as billing changes, run unattended. When a flow is about to re-identify the installed base with a recomputed trait, the agent stops and posts the change set to the owner of the in-app experience: "Backfill of the plan trait covers 4,180 users across 612 accounts. 503 accounts move from trial to churned, which makes them eligible for the win-back banner. Sample of 5 userIds attached for comparison against the SDK identifiers in the app. Push, push a 50-account test batch first, or cancel?" One person answers one question, with the sample in front of them. That is cheaper than discovering the mismatch from a support ticket about a banner that will not go away.
Agent Capabilities
3 actionsIngestion
3- Identify User Sends or updates a user profile by userId with traits such as email, name, role, or plan. Traits are merged with what Candu already holds, and they power the segmentation and targeting rules that decide which in-app content a person sees.
- Identify Group Sends or updates a group, meaning an organization or account, by groupId with traits such as name, domain, employee count, or plan, and optionally associates a user with the group. Used for account-level targeting where the message should depend on the company rather than the individual.
- Track Event Logs a named custom event for a user with optional properties, for example a plan upgrade or a completed onboarding step. Used to trigger and target in-app content on behavior and to build behavioral segments.
Frequently Asked Questions
What can FlowRunner do with Candu?
FlowRunner agents can run Identify User, Identify Group, and Track Event in Candu.
Does connecting Candu to FlowRunner require OAuth?
No. Candu connects to FlowRunner with an API key, no OAuth flow required.
Can Candu trigger a FlowRunner workflow automatically?
Candu doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.
Start building with Candu
$100 in credits. No card required. Connect in minutes.