Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.circuit.ai/llms.txt

Use this file to discover all available pages before exploring further.

A customer sends an email asking for a price on four of your top-selling SKUs. Today you scroll through their history in the CRM, check inventory in the ERP, look up list price, confirm lead time, compose the reply, and send. That’s five minutes per email, a hundred times a day. A Circuit agent configured with access to your mailbox can do most of that work and hand you back a draft to review. This page walks through the “email to quote” workflow end to end: connecting Outlook, setting up the agent, and running the job from a chat. The agent reads the thread, cross-references your systems, and creates a draft in your Outlook Drafts folder. You open Outlook, check it, edit if needed, and hit send. Circuit never sends email on your behalf.

Why it matters

The parts of answering a quote email that consume time are the parts an agent is good at:
  • Reading the thread. Attachments, forwarded chains, a three-paragraph back-and-forth from last week. The agent reads all of it, not only the latest message.
  • Gathering the inputs. Pulling the customer record from Salesforce or Dynamics, checking current price and stock in an ERP feed, looking up the product spec in an indexed catalog. The agent fans out these lookups in parallel and cites what it found.
  • Composing the reply. A drafted response in the tone and format your team uses, with pricing, lead time, and the customer’s preferred terms already filled in.
You keep the parts you’re best at: the judgment call on whether the price is right, the tone adjustment for this particular buyer, and the decision to actually send.

Before you start

You need four things in place:
  1. Circuit approved in your Microsoft tenant. Your IT administrator must register Circuit as an enterprise application in Microsoft Entra ID (formerly Azure Active Directory) and grant it consent for the permissions it requests. In tenants that allow user consent this is a one-time registration; in tenants that restrict user consent for third-party apps, IT needs to grant tenant-wide admin consent before any rep can connect a mailbox. Without this step, reps are blocked at the Microsoft consent screen.
  2. A connected Outlook mailbox. Each rep connects their own Microsoft 365 account to Circuit. The agent acts as that rep and only sees mail the rep already has access to. See integrations for the full connected-accounts flow.
  3. An agent with the Outlook tool enabled. An administrator creates or configures an agent with the Outlook tool in its tool list. The agent can read, search, and draft in any mailbox the signed-in rep has access to (your own inbox, or a shared mailbox like support@ if you’ve been delegated access in Exchange).
  4. The grounding systems the agent should consult. Anything you want the agent to check while drafting: product catalogs and pricing in an index, live account data in Salesforce or Dynamics via direct integrations, past policies in SharePoint, and so on. The agent only draws from systems it can reach, so give it what it needs.
The Outlook integration is gated behind a feature flag on some workspaces. If you don’t see Microsoft 365 Email on your profile’s Connected Accounts, contact your Circuit contact to enable it.

Setting it up

Step 1: Connect your mailbox

From your profile, find the Connected Accounts section and the row labeled Microsoft 365 Email (“Connect your Microsoft account to let agents read, search, and draft your email”). Click Connect. Circuit opens the Microsoft sign-in page and asks you to approve access to your mail. After consent you return to your profile; the row now shows your email address and a Disconnect button. Have every rep who will use the agent do this step on their own profile. Each rep’s agent acts as that rep, not as a single service account speaking for the whole team.

Step 2: Set up the agent

An administrator configures an agent for email work. See agents overview for the general flow. For this use case, the agent needs:
  • Outlook on its tool list. This is what lets it list, search, read, and draft messages.
  • Access to your reference indexes (product catalogs, price lists, service policies, past quote templates). Add these in the agent’s reference scope.
  • Tools or direct integrations for your systems of record (Dynamics, Salesforce, HubSpot, or any other CRM/ERP your team runs off of). The agent uses these to ground the reply in current data instead of guessing.
Most teams run one email-focused agent and share it across the reps who will use it. Each rep who chats with it contributes their own Outlook connection, so the same agent drafts as Maria when Maria uses it and as Sam when Sam uses it.

Step 3: Connect the grounding systems

Each rep connects the CRM and other accounts they want the agent to consult, via Connected Accounts on their profile. If the agent has a Salesforce tool but the rep hasn’t connected Salesforce, the agent tells them so and proceeds without it. Connect the ones you want the agent to use before your first run.

Running the workflow

Once setup is done, here’s what a real email-to-quote looks like.
1

Start a chat with the agent

Open the email agent in Circuit. You can phrase the request in a few ways, all of which work:
Find the latest email from procurement@acme.com and draft a reply with pricing and lead time on the SKUs they asked about.
I got an RFQ from Acme this morning. Pull up the thread and help me respond.
What’s unread in my inbox from Globex? Draft a reply to the one asking about stock on the 12-inch valves.
You can also paste the email body in directly if the agent doesn’t have access to that particular mailbox.
2

The agent locates the thread

The agent searches your mailbox, finds candidate messages, and confirms which thread you mean. It reads the full thread, including attachments and any forwarded history, not only the latest message. If there’s ambiguity (“you have two open threads from Acme, which one?”), it asks before proceeding.
3

The agent gathers the inputs

With the thread identified, the agent pulls the data it needs to draft a useful reply. For a quote, that typically means:
  • Product lookups from your catalog index: description, specifications, list price, compatible accessories.
  • Account history from Salesforce, Dynamics, or HubSpot: negotiated pricing tier, payment terms, past orders, preferred contact.
  • Inventory and lead time from the system that owns that data (often an index fed from your ERP, or a direct integration).
  • Policies and templates from SharePoint or a reference index: terms language, standard caveats, the format your team uses for quote replies.
The agent narrates what it found and what it’s using. If anything is missing (the customer isn’t in Salesforce yet, a SKU doesn’t match a catalog item), it tells you instead of guessing.
4

The agent creates the draft in Outlook

When the inputs are gathered, the agent creates a draft reply in your Outlook Drafts folder using the original thread’s subject and recipients. It returns a link to the draft in the chat (labeled with the draft’s subject), alongside a summary of what it composed and what it left for you to confirm.Circuit does not send the email. Sending stays with you, in Outlook.
5

Review and send in Outlook

Click the link in the chat. Outlook on the web opens to the draft. Read it, edit anything you want to adjust (tone, a specific number, an added cc), and click Send in Outlook. If the draft isn’t right, tell the agent in the chat (“bump the lead time to four weeks”, “add a line about the freight terms”, “drop the cc to accounts”) and it will create a revised draft.

Variations

Shared mailboxes

If your team works out of a shared inbox (support@, quotes@, orders@), you can point the agent at it by name:
Check the support inbox for unread messages about shipping damage and draft replies to each one.
The agent only succeeds if the signed-in rep has Full Access or delegated access to the mailbox in Exchange. If not, Microsoft rejects the call and the agent tells you access is missing.

Working through the queue

For reps who process many inbound emails, the agent can help you triage by pulling a shortlist:
Show me unread emails in the last 24 hours from any customer, with subject or body mentioning “quote”, “RFQ”, or “pricing”. Order by most recent.
Ask the agent to summarize each one, then drive into the specific thread you want to answer first.

Quote follow-ups

The same agent can draft follow-ups on quotes you already sent:
Find quotes I sent in the last two weeks that haven’t been replied to. Draft a short follow-up for the top three and save them as drafts.
Reviewing four drafts in Outlook is much faster than composing them from scratch.

Tips

Name the customer or domain in your request. “Find the email from procurement@acme.com” is faster than “find the RFQ email.” The agent uses the hint to narrow its mailbox search and reduces the chance it grabs the wrong thread.
  • Tell the agent the format you want. “Draft it as three short paragraphs: acknowledgment, pricing table, close” produces a more consistent result than “write a quote reply.”
  • Say what to do when information is missing. “If inventory is under 20 units, flag it in the draft and suggest a 2-week lead time” keeps the draft honest instead of optimistic.
  • Review in Outlook, not in Circuit. The draft is the authoritative version; the chat summary is a convenience. Small edits (a changed figure, a different signoff) are easy to miss if you only scan the chat.
  • Keep one chat per customer thread when iterating. If you’re going back and forth on the same draft, stay in the same chat so the agent has the earlier context.

Example chat

You: Find the latest email from procurement@acme.com and draft a reply with pricing and lead time on the four SKUs they asked about. Agent: Found one unread thread from procurement@acme.com, subject “RFQ: Q2 replenishment,” received today at 8:42 AM. They asked for pricing and delivery on four part numbers: XY-4400-HD, XY-4500-HD, XY-5100, and XY-5100-SS. Agent: Pulling the details. Acme is a Tier 2 account in Salesforce (net-30, 8% volume discount on XY-4000 series). All four SKUs are in the catalog. Current stock: XY-4400-HD 240 units, XY-4500-HD 95 units, XY-5100 18 units (below our 20-unit lead-time threshold), XY-5100-SS 60 units. Composing the reply now. Agent: Draft saved to your Outlook Drafts folder. [Open the draft in Outlook.] The reply quotes tier-2 pricing on all four SKUs, confirms in-stock lead time of 5 business days on three of them, and flags XY-5100 with a 2-week lead time because stock is below threshold. CC’d Acme’s AP contact per their usual thread. You: Good, but add a line about the freight terms since they asked about that last quarter. Agent: Updated draft saved. Added a paragraph confirming FOB origin and suggesting their preferred carrier based on the August order. [Open the updated draft in Outlook.] You: [Opens Outlook, reviews the draft, sends.]