Agentic UI prototype & controlled API actions
Nova Campaign Assistant
A conversational prototype for describing campaign changes, reviewing proposed actions and working with campaign reports.
Business problem
The challenge
Campaign operators needed a shorter path from describing a change to finding the right controls and applying it.
Technical solution
Our approach
Chat UI, LangSmith Managed Deep Agent, approval interrupts and a scoped PAPI gateway.
- 01
Build the conversation
Built a chat panel with streamed progress and campaign/report links. Tools list/create/launch/pause campaigns, list flights/update budgets and discover reporting columns/run reports.
- 02
Keep writes reviewable
Required approve/reject decisions for campaign creation, launch, pause and budget changes. Routed action-required budget cases back into the budget UI.
- 03
Scope access to the user
Added short-lived encrypted grants, user/advertiser-bound threads, allowed-operation checks and campaign ownership verification. Raw PAPI credentials stay outside the hosted agent.
Results & impact
Project outcomes
A conversational prototype for describing campaign changes, reviewing proposed actions and working with campaign reports.
Campaign and reporting actions
In-process tools call PAPI REST through the Nova server.
Controlled write execution
The prototype pauses supported writes for explicit user review.
Visual assets
How the workflow fits together
Nova Campaign Assistant
flowchart TD A["Chat request"] --> B["Nova server"] B --> C["Hosted agent"] C --> D["Approve proposed write"] D --> E["Scoped PAPI gateway"] E --> F["Campaign or report result"]
Tech stack
Technology and ownership.
Proof-of-concept branch work. The assistant calls PAPI directly through Nova; public MCP integration is a future direction.