For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Logo
DeveloperAcademyCommunityStatus
ReferenceGuides
ReferenceGuides
  • Agent Studio
    • Overview
    • Quickstart Guides
      • Purple Suite Setup
      • Quickstart #1: Build Your First Plugin
      • Quickstart #2: Slots & Resolvers
      • Quickstart #3: Build a Plugin That Follows a Process
      • Quickstart #4: Structured Data Analysis (SDA)
      • Quickstart #5: Notification Ambient Agent
      • Quickstart #6: Expense Approval Ambient Agent
      • Quickstart #7: Scheduled Trigger Ambient Agent
      • Purple API Tool
    • Core Concepts
    • Conversation Process
    • Actions
    • Connectors
    • System Triggers
    • Agent Architect
    • Cookbooks
    • Development and Testing
    • AI Agent Marketplace
    • Developer Tools
  • Agentic AI
    • LLM Fundamentals
    • The Agentic Reasoning Engine
    • Memory Constructs
    • Conversational Context
    • Guardrails
    • Grounding and Hallucinations
    • Continuous Learning
    • LLMs & SLMs
    • Steerability Tools
    • Multilingual Support
  • Core Platform
    • User Identity
    • Moveworks Agent (On-Prem)
    • Approvals Engine
    • Entity Catalog
    • Moveworks Data Objects
    • Security Information and Event Management (SIEM) Logs Overview
DeveloperAcademyCommunityStatus
On this page
  • Background & Objectives
  • Prerequisites
  • Define your plugin
  • Create a trigger
  • Build your process
  • Connect to the mock CRM
  • Attach a Conversational Process
  • Launch it
  • Test it!
  • Next Steps
Agent StudioQuickstart Guides

Quickstart #4: Structured Data Analysis (SDA)

||View as Markdown|
Was this page helpful?
Edit this page
Previous

Quickstart #5: Notification Ambient Agent

Next
Built with

Background & Objectives

This guide will walk you through how to build Agent Studio plugins that return large volumes of data to the AI Assistant.

In this quickstart guide, you will

  • Build a plugin that fetches 500 accounts from a mock CRM
  • Set up the plugin to work alongside our Code Interpreter plugin

At the end, your AI Assistant will be able to handle requests like this

Prerequisites

  • Access to Agent Studio
  • Access to Structured Data Analysis.
  • A Purple Suite instance and connector. Follow the Purple Suite Setup guide if you haven’t set one up yet.

Define your plugin

1

Navigate to Agent Studio

Go to Agent Studio. In the Plugins tab, select Create

2

Define your plugin

Define your plugin.

SDA Tip!

It’s important to be descriptive about the data that an SDA plugin returns.

AttributeValue
Plugin TitleFetch Accounts
Plugin DescriptionReturns all Accounts with ID, name, industry, territory, created/modified dates, last contact & renewal dates, ARR & MRR, employee count, opportunities (total/open/won/lost), avg deal size, churn rate, NPS, support tickets, offices, market share %, growth rate & funding amount.

Create a trigger

1

Add a Conversational Trigger

In the Plugin Editor, add a Conversational Trigger and fill it out


Build your process

Connect to the mock CRM

We need an HTTP action that will fetch the large volume of data from the external system.

1

Create a new HTTP Action

Click ⊕ in the tab bar and create a new HTTP Action

2

Select Import

Select the Import option (next to the Test button)

3

Import the API call

Import the following API call

$curl -X GET "https://marketplace.moveworks.com/api/purple-suite/crm/accounts?limit=500" \
> -H "Authorization: Bearer YOUR_PAT" \
> -H "X-Instance-ID: YOUR_INSTANCE_ID"

Replace YOUR_PAT and YOUR_INSTANCE_ID with the values from the Set up the Purple API section. If you already set up a connector, the auth headers will be handled automatically when you test the action.

4

Test

Hit Test

5

Name your HTTP Action

Name your HTTP Action. It should look something like this.


6

Save

Save your HTTP action

Attach a Conversational Process

Now let’s connect the HTTP action to your plugin & prepare it for analysis

1

Add a Conversational Process

In the Plugin Editor, add a Conversational Process & create a new one.

2

Add an action-based activity

In the Conversational Process Editor add an action-based activity.

3

Choose your HTTP Action

Choose the HTTP Action you just built.

4

Configure the Output Mapper

In the activity configuration, under Output Mapper, we will rename the fields to make them more friendly for SDA.

SDA Tip!

It’s important to name fields succinctly & clearly to maximize the performance of SDA against various queries.

1MAP():
2 items: response.data
3 converter:
4 AccountID: item.id
5 AccountName: item.name
6 AnnualRecurringRevenue: item.annualRecurringRevenue
7 AverageDealSize: item.averageDealSize
8 ChurnRate: item.churnRate
9 ClosedLostOpportunities: item.closedLostOpportunities
10 ClosedWonOpportunities: item.closedWonOpportunities
11 DateCreated: item.createdAt
12 DateLastModified: item.lastModifiedAt
13 Employees: item.employees
14 FundingAmount: item.fundingAmount
15 GrowthRate: item.growthRate
16 Industry: item.industry
17 LastContactDate: item.lastContactDate
18 MarketShare: item.marketSharePct
19 MonthlyRecurringRevenue: item.monthlyRecurringRevenue
20 NetPromoterScore: item.netPromoterScore
21 NextRenewalDate: item.nextRenewalDate
22 OfficeCount: item.officeCount
23 OpenOpportunities: item.openOpportunities
24 SupportTickets: item.supportTickets
25 Territory: item.territory
26 TotalOpportunities: item.totalOpportunities

Launch it

1

Launch to yourself

Under Audience Settings you can launch it to yourself for testing.

Test it!

1

Try it out

Try it out! You should see something like the following.

Not seeing the right results?

Verify that SDA is running by checking for the Running analysis progress update

Here are some other questions you could try:

  • What’s the total ARR of customers in the Tech industry?
  • Which industry is performing best in Europe?
  • Which accounts have the most support tickets are are up for renewal soon?

Next Steps

Start building your own plugins for Structured Data Analysis!

  • Learn more about Code Interpreter!
  • FAQs & Best Practices for Structured Data Analysis

Next step: Test your plugin. See our Testing & Error Handling guide for how to test, debug, and handle errors in production.