{
  "icp": "real estate teams and solo agents already running their pipeline on Follow Up Boss — brokerages, listing teams, buyer's-agent pools, ISA teams, and solo agents whose phone keeps ringing after hours",
  "capabilities": {
    "availability": {
      "headline": "Captures the website inquiry or caller as a Follow Up Boss person, books the showing if there's real intent, and feeds one unified conversion pipe for your website forms AND your AI Receptionist.",
      "lede": "Every caller who lands on the line becomes a Follow Up Boss person (with the right source, stage, assigned agent, and first note). When they want a showing, AnyCRM creates a Follow Up Boss appointment on the matched agent's calendar. AND the same lead event flows through one unified pipe (with the same shape, same source attribution, and same server-side conversion path used by your website forms) so your CRM business logic and your Google / Facebook / LinkedIn Ads both stay in sync.",
      "cards": [
        {
          "num": "A.01",
          "title": "Every caller becomes a Follow Up Boss person, not a stray missed call",
          "body": "The AI Receptionist captures first name, last name, email, phone, the listing they asked about, and buying/selling intent. Then AnyCRM writes the record into Follow Up Boss with the right agent owner, source, and stage attached DURING the call."
        },
        {
          "num": "A.02",
          "title": "Books showings as native Follow Up Boss appointments",
          "body": "The showing lands as a Follow Up Boss appointment with the matched agent as the user-invitee, the person associated, and a duration that matches your configured appointment type. So it shows on the person's timeline and the agent's Gmail/Outlook calendar exactly the way Follow Up Boss expects."
        },
        {
          "num": "A.03",
          "title": "Sends the lead event straight to your CRM. You decide what happens next.",
          "body": "AnyCRM does not pretend to know your deal-creation rules. Every person-create and every showing-book sends a lead event straight to your CRM (with <code>source: \"AI Receptionist Call\"</code> or <code>source: \"AI Receptionist Web\"</code>) where YOUR business logic takes over. Drop into a Smart List, fire the action plan, assign to the Pond Lead Agent, route the workflow. We set up the receiving end inside your CRM for you during onboarding, tuned to your team's lanes and listing config. AnyCRM doesn't get in the way of policy you've already encoded in Follow Up Boss."
        }
      ],
      "apiSummary": "The AI Receptionist asks AnyCRM for availability against the agents on your roster and gets back open slots in the caller's timezone. No double bookings. Every AnyCRM call prevents duplicate people, sets the right agent owner (matched from your team), writes the appointment so Follow Up Boss's calendar sync to Google/Outlook fires automatically, and sends the lead event straight into your CRM tagged with <code>AI Receptionist Call</code> or <code>AI Receptionist Web</code>. The same lead also feeds the AnyCRM Conversion Lift pipeline (covered in the next capability) so your Google, Facebook, and LinkedIn Ads start optimising against the call and chat leads that actually pick up the phone.",
      "tools": [
        "getFollowupbossAvailability",
        "createFollowupbossContactAppointment"
      ],
      "curl1Path": "/mcp/tools/getFollowupbossAvailability",
      "curl2Path": "/mcp/tools/createFollowupbossContactAppointment",
      "pipeIntro": "Most real estate teams run two completely separate conversion-tracking stacks: one for the website (IDX forms, chatflows, page-load pixels) and a totally absent one for the phone and the AI Receptionist. So Google Ads and Facebook Ads only learn from form-fills, the bidding optimises for the wrong audience, attribution is broken, and analytics double-count or miss real conversations entirely. AnyCRM closes that gap by running BOTH surfaces through a single conversion pipe.",
      "pipeStages": [
        {
          "stage": "1. Capture",
          "body": "A lead arrives either through your IDX form / website chatflow OR through the AI Receptionist on phone / chat. Either way, AnyCRM produces the same clean lead-event shape, tagged at source with either <code>AI Receptionist Call</code>, <code>AI Receptionist Web</code>, or your website's form identifier. One vocabulary across both surfaces."
        },
        {
          "stage": "2. Deliver to your CRM",
          "body": "AnyCRM sends the lead event straight to your CRM, into the receiving flow we wired up for you at onboarding. Your Follow Up Boss logic decides what happens next: which stage, which action plan, which Pond, which Smart List, which agent. You don't have to maintain two sets of rules. Web leads and AI Receptionist leads both arrive through the same door."
        },
        {
          "stage": "3. Fire server-side conversion to your ad platforms",
          "body": "The same lead event fires server-side into Google Ads, Facebook Ads, and your analytics platform, using the origin of the domain you registered with AnyCRM. Server-side means the conversion can't be blocked by ad-blockers, doesn't degrade under iOS / Safari tracking restrictions, and lands with full attribution context."
        },
        {
          "stage": "4. Optimise, attribute, report",
          "body": "Because website conversions AND AI Receptionist conversions flow through the same pipe with the same source taxonomy, your Google Ads bid strategy now optimises against real bookings (not just form-fill noise), your Facebook Ads campaigns see the high-intent traffic that picks up the phone for a showing, your analytics platform sees a single unified funnel, and attribution stops fragmenting between web and voice."
        }
      ],
      "outcomes": [
        "<strong>Higher ROAS.</strong> Ad bidding optimises against actual conversations and booked showings, not against the noisy subset of leads that happen to fill an IDX form.",
        "<strong>Lower ad costs.</strong> Once Google Ads and Facebook Ads learn what a real lead looks like, they stop spending against lookalikes of low-quality Zillow form-fills.",
        "<strong>Enriched analytics.</strong> Every conversation surface (IDX form, web chat, phone call, AI Receptionist chat) feeds the same event shape into your analytics, so funnels are complete instead of half-blind.",
        "<strong>Correct attribution.</strong> A caller who first saw a Google Ad, then visited the listing page, then phoned three days later gets attributed end-to-end. Voice traffic stops being invisible to your marketing stack.",
        "<strong>One source of truth for lead policy.</strong> Your Follow Up Boss flow owns stage routing, action-plan firing, and Pond assignment. AnyCRM doesn't drift out of date because AnyCRM never tried to own that policy in the first place."
      ],
      "whyThisIsBetter": "Most competitor AI Receptionists try to maintain rules for when a person is created, what stage they land at, and which source tag to apply. That approach breaks the moment your business changes, and it ignores the conversion-tracking surface entirely. AnyCRM inverts the responsibility. AnyCRM stays focused on the conversation (capture, dedup, route, book, cancel) and delivers a clean lead event to the two destinations that matter: your CRM (for action plans and Pond routing) and your ad platforms server-side (for conversion optimisation, attribution, and ROAS). This is a custom service baked into the AI Receptionist package. We configure the lead-receiving flow inside Follow Up Boss AND the server-side conversion tracking at onboarding, matched to your specific market, ad mix, and analytics setup.",
      "honestAside": "We'll be candid: as far as we can tell, none of our competitors have thought of this yet. They sell AI Receptionists as a phone-answering product. AnyCRM treats the AI Receptionist as one of two equally weighted entries into a unified lead-event pipe, and that's where the real compounding value sits."
    },
    "adsConversionLift": {
      "headline": "Turns every call and chat into a real conversion event your Google, Facebook, and LinkedIn Ads can actually optimise against. So Cost per Lead drops, ROAS goes up, and CAC stops being a guess.",
      "lede": "If you run paid Ads on Google, Facebook, or LinkedIn, here is the uncomfortable truth: those platforms only get smarter when they see real conversions. Today, a Zillow form-fill counts. A real phone call from a high-intent buyer who picked up the phone at 7pm asking about 14 Maple Street does NOT count. So Google bids harder on the audience that fills forms (often the cheaper, lower-intent one) and ignores the audience that actually calls. Cost per Lead looks fine. CAC quietly creeps up. ROAS looks misleading. AnyCRM fixes this. Every call and chat the AI Receptionist handles is sent as a real conversion event to Google Ads, Facebook Ads, AND LinkedIn Ads. The bidding algorithm finally sees what's actually working.",
      "cards": [
        {
          "num": "1b.01",
          "title": "Every phone call and every chat becomes a tracked conversion. Not just website form-fills.",
          "body": "Today, Google Ads and Facebook Ads probably think your only conversions are IDX form-fills. That's why your Cost per Lead looks low but your agents complain the leads are weak. The high-intent traffic is calling you instead of filling a form, and the Ad platforms have no idea. AnyCRM sends every call and every chat the AI Receptionist handles into your Ad platforms as a real conversion event. Suddenly Google, Facebook, and LinkedIn can see the FULL picture of who is converting from your Ads."
        },
        {
          "num": "1b.02",
          "title": "Lower Cost per Lead. Better ROAS. Smaller CAC.",
          "body": "Once your Ad platforms can see the phone calls and chats as real conversions, they re-train on a better signal. Bidding shifts toward audiences that actually pick up the phone, not just the audience that loves filling out forms. In practice this means: <strong>Cost per Lead drops</strong> because you stop overpaying for low-intent form-fills; <strong>Return on Ad Spend goes up</strong> because the Ads now find people closer to ready-to-buy; and <strong>Customer Acquisition Cost shrinks</strong> because more of your Ad budget reaches buyers who will actually convert into closings."
        },
        {
          "num": "1b.03",
          "title": "The same pipe carries your website forms too. One source of truth across Ads, CRM, and Analytics.",
          "body": "AnyCRM doesn't just track AI Receptionist conversions. It also runs your existing IDX forms and chatflows through the same pipeline. So a lead from a Google Ad that fills a form on your listing page AND a lead from a Facebook Ad that called the AI Receptionist three days later both end up tagged, attributed, and counted in exactly the same way. Your Ads platform stops double-counting, your analytics stop fragmenting, and your CRM stops being half-blind to where your leads actually came from."
        }
      ],
      "apiSummary": "Every person-create and showing-book fires through AnyCRM's Conversion Lift pipeline. The lead event lands inside your CRM for business logic, AND fires a real conversion event server-side into Google Ads, Facebook Ads, and LinkedIn Ads using the verified origin of your registered domain. Server-side means the conversion can't be blocked by ad-blockers, doesn't degrade on iOS or Safari, and arrives with full attribution context so the Ad platforms' bidding algorithms can re-train on it. Your existing website forms run through the same pipeline, so Web and Voice conversions feed the SAME training signal.",
      "businessImpact": [
        "<strong>Cost per Lead drops.</strong> Because Google, Facebook, and LinkedIn stop wasting your Ad budget on lookalikes of low-intent form-fillers, and start finding the audience that picks up the phone to ask about a listing.",
        "<strong>Return on Ad Spend (ROAS) goes up.</strong> Because the Ads now optimise toward conversations that actually book a showing, not toward whichever cheap audience generates the most form submissions.",
        "<strong>Customer Acquisition Cost (CAC) shrinks.</strong> Because a higher share of every Ad dollar reaches buyers ready to talk to a human (or in this case, your AI Receptionist).",
        "<strong>Analytics get a complete funnel.</strong> Web and voice leads sit side by side, with the same source taxonomy. You stop seeing \"50% of revenue: unknown source.\"",
        "<strong>Attribution stops fragmenting.</strong> A buyer who first clicked a Google Ad on a listing, then called the brokerage three days later, finally shows up correctly attributed. Today, that buyer is invisible to your Ads stack.",
        "<strong>You finally know if Ads are working.</strong> Most brokerages cannot honestly tell you whether their Zillow or Google spend is profitable. With AnyCRM's Conversion Lift, you can."
      ],
      "plainEnglishExample": "Imagine you spend $5,000/month on Google Ads for your listings. Today, you see 80 IDX form-fills and assume that's the full picture. With AnyCRM running, you'll also see (say) 60 phone calls and 45 web chats the AI Receptionist handled, all flowing into Google Ads as real conversions. Suddenly Google sees 185 conversions a month instead of 80. It re-trains on that bigger, better signal. Within weeks, the bidding finds you more of the right kind of buyer. Same $5,000 spend, more real showings booked, lower Cost per Lead, higher revenue. That is what \"AI Receptionist with AnyCRM\" actually means for the bottom line. Not just \"it answers the phone.\"",
      "tools": [
        "createOrUpdatesFollowupbossContact",
        "createFollowupbossContactAppointment"
      ]
    },
    "lifecycle": {
      "headline": "Manages the full showing lifecycle inside Follow Up Boss for anyone calling or chatting.",
      "lede": "Every \"can we push the Tuesday viewing?\" or \"actually, cancel that\" lands with the AI Receptionist instead of in your inbox. AnyCRM reschedules update the existing Follow Up Boss appointment in place. Cancellations preserve the audit trail. Reason recorded on the person's timeline, outcome flagged on the appointment. Instead of deleting the appointment and erasing the trail, you get crystal clarity on when a Follow Up Boss appointment was created, and when and why it was updated by your AI Receptionist.",
      "cards": [
        {
          "num": "B.01",
          "title": "Finds the showing by email in a single step without needing an appointment ID",
          "body": "Customers DO NOT quote appointment IDs over the phone. We've tested with hundreds of callers and each time they were asked 'Can you tell me the appointment id from your email?', the response was the same: 'Why can't you find it yourself?'. AnyCRM gives the AI Receptionist an easy way to find the soonest upcoming appointment associated to the matching person. And the AnyCRM response forces the AI Receptionist to be human. It reads back the title, date, time, and listing before changing anything."
        },
        {
          "num": "B.02",
          "title": "Reschedules in place and keeps the appointment data clean",
          "body": "Rescheduling updates the existing appointment in a single confirmation. No cancel-then-rebook round-trip means the appointment history, person association, and calendar invite all stay intact. Failed reschedules leave the original appointment untouched."
        },
        {
          "num": "B.03",
          "title": "Cancels without erasing the audit trail",
          "body": "When a caller cancels, AnyCRM writes the caller's reason onto the person's timeline as a note and flags the appointment with a cancellation outcome BEFORE the cancellation completes. Instead of just deleting the appointment and stripping WHY it fell through. This lets you intuitively track changes for Follow Up Boss appointments created or updated by your AI Receptionist."
        }
      ],
      "apiSummary": "AnyCRM's search, reschedule, and cancel all accept just an email. The soonest upcoming appointment associated to the matching person is resolved inside AnyCRM. No appointment IDs at the AI Receptionist layer.",
      "tools": [
        "searchFollowupbossAppointments",
        "rescheduleFollowupbossAppointment",
        "cancelFollowupbossAppointment"
      ],
      "curl1Path": "/mcp/tools/searchFollowupbossAppointments",
      "curl2Path": "/mcp/tools/rescheduleFollowupbossAppointment",
      "curl3Path": "/mcp/tools/cancelFollowupbossAppointment"
    },
    "routing": {
      "headline": "Routes every caller to the right agent. And maintains the existing agent looking after the lead instead of randomly reassigning to someone else.",
      "lede": "Follow Up Boss accounts run on users, teams, and Ponds. At setup AnyCRM imports your Follow Up Boss roster into its database and enriches each agent with lane, expertise, languages, timezone, and bookable appointment-type duration. The AI Receptionist then routes each caller to the agent who actually handles that lane. Existing person assignments in Follow Up Boss are honoured as the source of truth.",
      "cards": [
        {
          "num": "C.01",
          "title": "Routes by lane: listing vs buyer's vs ISA vs repeat client",
          "body": "\"I want to list my house\" routes to your listing-side agents. \"I saw 14 Maple Street on Zillow\" routes to that listing's agent. \"I'm already working with Sarah\" routes back to Sarah. And the existing agent on the person is always preserved."
        },
        {
          "num": "C.02",
          "title": "Honours existing assigned agents in Follow Up Boss",
          "body": "If a person already has an assigned agent in Follow Up Boss, the AI Receptionist doesn't reassign them. The appointment and the note attach to the existing person under the existing agent. No orphaned duplicate, no lead poached off an agent's pipeline."
        },
        {
          "num": "C.03",
          "title": "Matches fresh inbound callers and website chatters to the right person on the team",
          "body": "New leads with no existing Follow Up Boss person get matched to an agent on the lane you've designated (listing / buyer's / ISA), honouring the criteria you set in AnyCRM for matching a lead to an agent. New leads with no existing owner are released to the right Pond and inherit the Pond Lead Agent. The AI Receptionist doesn't fight the rules you already use."
        }
      ],
      "apiSummary": "Team details live in AnyCRM's database, pulled once from Follow Up Boss at setup, enriched with lane, expertise, languages, timezone, and appointment-type duration (valuable context for the AI Receptionist that Follow Up Boss's user object doesn't carry by default). At runtime, one read of the team roster matches caller → lane → agent. New persons get assigned to the right agent or released to the right Pond. Existing persons keep theirs. AnyCRM does NOT cache your stages, your action plans, or your Smart Lists. That policy stays inside your CRM, where it belongs.",
      "tools": [
        "listFollowupbossTeamMembers",
        "getFollowupbossAgentProfile"
      ],
      "curl1Path": "/mcp/tools/listFollowupbossTeamMembers",
      "curl2Path": "/mcp/tools/getFollowupbossAgentProfile"
    }
  },
  "setup": {
    "headline": "Setup in 3 steps. Battle-tested on real <span data-tpl-crm>Follow Up Boss</span> accounts.",
    "lede": "You connect <span data-tpl-crm>Follow Up Boss</span> once. AnyCRM imports your roster, your sources, and your stages. AnyCRM also wires up the receiving end inside your CRM so lead events from the AI Receptionist land where your business logic can act on them. Then the AI Receptionist starts capturing leads and booking showings the same afternoon. No middleware. No prompt-engineering by you.",
    "steps": [
      {
        "num": "S.01",
        "title": "Connect Follow Up Boss (API key + system registration, 60 seconds)",
        "body": "Generate a Follow Up Boss API key (Admin → API) and paste it in. AnyCRM is registered as an integrating system with Follow Up Boss, so every request the AI Receptionist makes carries auditable system-attribution headers. Follow Up Boss can see exactly which system created which person and which appointment. Both your API key and the system registration are revocable from your Follow Up Boss account at any time."
      },
      {
        "num": "S.02",
        "title": "Import the roster. Lock in your sources and stages. Wire up your CRM's lead-receiving flow.",
        "body": "AnyCRM imports every active Follow Up Boss user as a bookable agent with lane, expertise, languages, timezone, and appointment-type duration. AnyCRM also reads your existing Source list (e.g. <em>AI Receptionist</em>), freezes the stage new leads enter at, and locks inbound-call source attribution (always <code>AI Receptionist Call</code> or <code>AI Receptionist Web</code>) so reporting stays consistent. During onboarding we set up the receiving flow inside your CRM so the lead events from the AI Receptionist land where your business logic can act on them. AnyCRM does NOT replicate your stages, action plans, or Smart Lists. Your CRM decides what happens after a lead is captured. AnyCRM just delivers a clean event."
      },
      {
        "num": "S.03",
        "title": "Drop the AI Receptionist on your phone line and your site",
        "body": "Forward your business number to the AI Receptionist's number and paste the chat widget into your site. The same AI Receptionist (same team roster, same Follow Up Boss account, same lead-event pipe into your CRM and your ad platforms) answers both voice and web. Live the same afternoon."
      }
    ],
    "nativeAlternative": {
      "headline": "Why not just use Follow Up Boss's <strong>Lead Flow</strong> + native action plans + Follow Up Boss AI?",
      "body": "Follow Up Boss's Lead Flow, action plans, Smart Lists, and the newer Follow Up Boss AI features (smart summaries, suggested tasks, smart messages) are excellent at the steps AFTER a lead exists in Follow Up Boss. Follow Up Boss AI itself is positioned as an assistant for your human agents (it learns from your conversations, suggests replies, summarises calls), not as a phone-answering front line. A new caller at 9pm still gets a missed call, not a person record. An inbound IDX inquiry still sits in the queue until someone reads it. The AI Receptionist is the layer BEFORE all of that. It picks up the call, asks the right qualifying questions, books the showing as a native Follow Up Boss appointment on the right agent's calendar, writes a clean person (with the source set to <code>AI Receptionist Call</code> or <code>AI Receptionist Web</code>, the right stage, and a call summary as the first note), AND sends the same lead event straight into your CRM's downstream Lead Flow plus your ad platforms server-side. So your Follow Up Boss action plans, Follow Up Boss AI's smart-summary learnings, your analytics, and your Google / Facebook Ads bidding all start optimising on a real conversation, not a name and a voicemail."
    },
    "enrichmentSummary": "Every tool the AI Receptionist calls is an opinionated wrapper inside AnyCRM. AnyCRM does the messy work for you. Dedup, source registration, owner assignment, stage mapping, appointment-type resolution, timezone math, dual-invitee assembly, error handling, lead-event delivery into your CRM, and server-side conversion tracking into your ad platforms. All of it happens before the LLM ever sees a response. So the AI Receptionist reasons over clean, AI-aligned payloads instead of raw CRM internals.",
    "enrichmentExamples": [
      {
        "title": "Capturing a new lead",
        "raw": "There are two endpoints inside Follow Up Boss that look like they capture leads, and the obvious-looking one is the wrong one. The People endpoint creates the person but silently skips Lead Flow assignment, action plans, automations, agent notifications, and social-profile lookup. Follow Up Boss's own docs flag it as the wrong choice. The correct path goes through the Events endpoint with a type drawn from a fixed list (Registration, Property Inquiry, Seller Inquiry, General Inquiry, Visited Open House). Only those types fire action plans, and an even smaller subset fires automations. Worse: source is set-once on creation and cannot be amended later, so the first call has to be right. And nothing in raw Follow Up Boss fires a server-side conversion event to your ad platforms, so call-driven and chat-driven leads never get optimised for.",
        "mcp": "<code>createOrUpdatesFollowupbossContact</code> accepts <code>name</code>, <code>email</code>, <code>phone</code>, <code>note</code>, <code>source</code>, <code>tag</code>, plus an inferred event type. AnyCRM routes through the action-plan-firing Event path (never the raw People create), picks the right action-plan-triggering type from the call intent, locks the source to the one you configured at setup, dedups against existing persons by email then phone, preserves the existing assigned agent if there is one, appends the note to the timeline, sends the lead event straight into your CRM (with source <code>AI Receptionist Call</code> or <code>AI Receptionist Web</code>), AND fires a server-side conversion event into your ad platforms using the origin of your registered domain. All in one AnyCRM call."
      },
      {
        "title": "Booking the showing",
        "raw": "Creating an appointment directly against Follow Up Boss is a tight contract. The invitees list has to contain BOTH the person AND the Follow Up Boss user as separate entries — leave out the user and the appointment exists in Follow Up Boss but never syncs to the agent's Gmail/Outlook calendar, so the agent's actual calendar stays empty. Start and end times have to be in the right format. The appointment type references a separate list that only the account owner can extend. The creator field can only be set correctly with admin-grade access — otherwise the appointment is recorded as created by whichever key is logged in, regardless of which agent the showing is actually for.",
        "mcp": "<code>createFollowupbossContactAppointment</code> takes <code>email</code>, <code>scheduled_datetime</code> (a naive date and time, no offset needed), <code>invitee_timezone</code>, and <code>appointment_type_uuid</code>. AnyCRM resolves the right agent from the lane and listing, builds the dual-invitee payload (person + Follow Up Boss user, so calendar sync to Gmail/Outlook fires), computes end-time from the appointment-type duration, handles the timezone math, attributes the creator correctly, sends the same lead event straight into your CRM with the booking context, fires the server-side conversion event into your ad platforms, and returns both local and UTC start times in the response."
      },
      {
        "title": "Cancelling with a reason",
        "raw": "Deleting an appointment in Follow Up Boss strips it off the person timeline entirely. The raw delete takes the appointment ID and nothing else. No reason field, no cancellation outcome, no audit hook. To preserve WHY a showing fell through, you'd have to read the appointment first, write a note with the reason on the linked person, then optionally apply a cancellation outcome before deleting. None of these are atomic, and the deletion is irreversible.",
        "mcp": "<code>cancelFollowupbossAppointment</code> takes <code>email</code> and <code>reason</code>. AnyCRM resolves the soonest upcoming appointment, writes the reason onto the person's timeline BEFORE the cancellation fires, applies a cancellation outcome for reporting, then cancels. All in one AnyCRM call. Full audit trail, the appointment stays queryable in reporting under the right outcome."
      }
    ],
    "alignmentSummary": "Every AnyCRM tool for Follow Up Boss follows the same AI-alignment contract, so the AI Receptionist never has to think about transport:",
    "alignment": [
      "<strong>Naive datetimes in, Follow Up Boss-native shape out.</strong> The AI Receptionist passes <code>2026-05-15T11:00:00</code> and a timezone string. AnyCRM converts it into whatever shape the Follow Up Boss appointment requires, on both start and end.",
      "<strong>Email is the identity.</strong> Cancel and reschedule never need an appointment ID at the AI Receptionist layer. Email and soonest-upcoming resolves inside AnyCRM.",
      "<strong>Source and stage come from setup, not the LLM.</strong> The AI Receptionist can't invent a source or a stage. It inherits the values you configured at setup.",
      "<strong>Existing assigned agents are sacred.</strong> If a Follow Up Boss person already has an agent, AnyCRM preserves it. New persons only get the matched agent (or Pond) when no owner exists.",
      "<strong>Cancellation preserves the audit trail.</strong> The reason lands on the person's timeline and the cancellation outcome lands on the appointment, so reporting still counts the showing under the right outcome.",
      "<strong>Every lead event leaves AnyCRM in two places at once.</strong> Your CRM gets the lead event so your business logic can run. Your ad platforms get the server-side conversion event so bidding optimises against real conversations. Both happen on the same AnyCRM call. No race conditions, no missing events.",
      "<strong>Flat, deterministic shapes.</strong> Every AnyCRM response has the same top-level keys across every tool, so the AI Receptionist's prompt never grows with edge-case branching.",
      "<strong>Errors are messages, not codes.</strong> An error from Follow Up Boss becomes a one-sentence reason the AI Receptionist can repeat to the caller without translation.",
      "<strong>Idempotent reschedules.</strong> If a reschedule fails mid-flight, the original Follow Up Boss appointment is preserved. The customer never ends up with nothing."
    ],
    "industryLine": "Currently running for <strong>residential brokerages, listing teams, buyer's-agent pools, ISA teams, and solo agents</strong>. Anyone whose pipeline is in Follow Up Boss but whose phone keeps ringing after the agent has logged off.",
    "teamsSetup": {
      "headline": "Multi-agent setup. Team roster, lanes & system-prompt assembly",
      "body": "If you run more than one agent on Follow Up Boss, AnyCRM imports the roster once, you link each agent to the lanes they actually cover (listing / buyer's / ISA / repeat-client desk), and AnyCRM bakes the result into the AI Receptionist's system prompt at setup time. Not at runtime. The AI Receptionist doesn't query your roster on every call. It already knows who handles what.",
      "steps": [
        "<strong>Team roster import.</strong> AnyCRM imports your Follow Up Boss users once and writes each one into its database keyed by <code>crm_user_id</code> (with name, role, lane, timezone, Pond membership).",
        "<strong>Per-agent appointment types.</strong> For each agent AnyCRM resolves the appointment types they actually book and the duration per type. One call per person, cached.",
        "<strong>Lane visibility.</strong> Each lane is flagged <em>Public</em>, <em>Private</em> or <em>Ignored</em>. The AI Receptionist only routes to and books on Public lanes. You toggle this in the AnyCRM dashboard without re-deploying.",
        "<strong>Lead-event receiving flow inside your CRM.</strong> During onboarding we wire up the flow inside your CRM that receives lead events from AnyCRM. That's where your action-plan and stage-routing policy lives. AnyCRM doesn't try to own it.",
        "<strong>System-prompt assembly.</strong> The cached team roster, lane, and appointment-type JSON is prepended to the AI Receptionist's system prompt before the humaniser splits (personality, etiquettes, tone, speech style). So the AI Receptionist reads the team before it reads its own instructions.",
        "<strong>Runtime stays minimal.</strong> On a live call the AI Receptionist makes at most one availability call and one booking call. Never a team roster lookup. Updates to agents, lanes, or appointment types re-run the cache. The AI Receptionist picks them up on its next deploy."
      ],
      "note": "The end result: the AI Receptionist can match \"I saw 14 Maple Street on Zillow\" → the listing's owning agent → that agent's showing appointment type → that agent's calendar availability → a booked Follow Up Boss appointment on the right agent's calendar → a lead event delivered straight into your CRM → a server-side conversion event in your ad platforms. Without a single team roster query during the call."
    }
  },
  "privacy": {
    "headline": "Your <span data-tpl-crm>Follow Up Boss</span> data passes through AnyCRM. It doesn't stick.",
    "lede": "AnyCRM processes your <span data-tpl-crm>Follow Up Boss</span> data to answer the call. Then forgets it. The only thing AnyCRM persists is a conversation history ID so the AI Receptionist can recognise a returning caller. Person records, notes, sources, stages, assignments. All of it stays in Follow Up Boss, owned by your Follow Up Boss account.",
    "cards": [
      {
        "kind": "stored",
        "label": "What AnyCRM stores",
        "body": "<strong>Conversation history IDs only.</strong> So the AI Receptionist can pick up where it left off if a caller hangs up and rings back. No call audio, no transcripts of person records, no caller PII."
      },
      {
        "kind": "not-stored",
        "label": "What AnyCRM doesn't",
        "body": "Caller names, emails, phone numbers, Follow Up Boss person IDs, your team roster, your sources, your stages, your pipeline data. None of it. AnyCRM reads what it needs, hands it to the LLM, fires the events, and discards the payload."
      },
      {
        "kind": "data-lives",
        "label": "Where data lives",
        "body": "<strong>In your Follow Up Boss account and in whatever systems your CRM's flow forwards lead events to.</strong> Person records, notes, timeline events, appointments all live in Follow Up Boss. Source-attributed (always <code>AI Receptionist Call</code> or <code>AI Receptionist Web</code>), attributed to AnyCRM in the audit log, revocable. AnyCRM does not build a shadow CRM alongside yours."
      },
      {
        "kind": "revoke",
        "label": "Revocation",
        "body": "Revoke the API key in your Follow Up Boss admin panel and the AI Receptionist loses access immediately. There is no \"export your data\" step because there is no data to export. It was never AnyCRM's to hold."
      }
    ],
    "scopesSummary": "Follow Up Boss uses a single account-level API key. AnyCRM only calls the smallest set of endpoints required for the lead-capture and booking lifecycle. Nothing for analytics, nothing for marketing, nothing for billing.",
    "scopes": [
      "<strong>People (read + write).</strong> Read and write person records, dedup against existing leads, append notes.",
      "<strong>Events (write).</strong> Write inbound activity events so the call shows up on the timeline as a real interaction and the right action plans fire.",
      "<strong>Appointments (read + write).</strong> Read existing appointments (for reschedule and cancel) and write new ones on the right agent's calendar.",
      "<strong>Users (read).</strong> Read your team roster at setup so the AI Receptionist knows who exists and who owns existing leads.",
      "<strong>Not requested:</strong> billing / subscription data, transactions, Smart Lists, action-plan internals, your other integrations."
    ],
    "surfaceNote": "Same API key any Follow Up Boss integration uses. Just a smaller surface. AnyCRM holds the key and the auditable system-attribution headers (every write is signed so each appointment and person change is attributable to AnyCRM in Follow Up Boss's audit trail). The LLM never sees the key, and every tool call is logged with the operation name, never the raw payload."
  },
  "failureModes": [
    {
      "title": "Duplicate person records",
      "raw": "Raw Follow Up Boss will happily create a second person record for the same caller. Same email, same phone, different person ID. <strong>My AI Front Desk</strong> runs on a Zapier-style \"Add Lead\" action (their own integration page lists \"Add Lead\" as the headline capability) — a single API call that hands the caller's email straight to Follow Up Boss's default dedup. Same caller, slightly different casing? Duplicate. Phone-only? Duplicate. <strong>Goodcall</strong> writes through Zapier to Follow Up Boss too (Goodcall has no native Follow Up Boss integration; the only published path is the Zapier connector) — same single-step create. <strong>Smith.ai's AI tier</strong> on Follow Up Boss is one-way lead forwarding FROM Follow Up Boss into Smith.ai's Outreach Campaigns; the write-back side is humans logging notes after the fact. None of these can do a \"search-then-write\" because their architecture is one call in, one call out.",
      "mcp": "AnyCRM does NOT do a one-shot create. AnyCRM first searches Follow Up Boss on a normalised lowercased + trimmed email, then on a normalised phone, then decides whether to update the existing person or create a new one. A returning caller lands on the existing record with a new note on the timeline, never as a duplicate. This costs us an extra API call per person-create. We do it anyway, because the alternative is the duplicate-person mess Smith.ai, My AI Front Desk, and Goodcall users live with.",
      "competitorsAffected": ["My AI Front Desk", "Goodcall", "Smith.ai (AI tier)"]
    },
    {
      "title": "Capturing leads through the wrong endpoint so action plans never fire",
      "raw": "Follow Up Boss exposes two paths that look like they capture leads, and the obvious one is the wrong one. The People-create path silently skips Lead Flow assignment, action plans, automations, agent notifications, and social-profile lookup — Follow Up Boss's own docs say so. The correct path goes through the Events endpoint with one of a fixed set of types (Registration, Property Inquiry, Seller Inquiry, General Inquiry, Visited Open House). <strong>My AI Front Desk's</strong> Zapier-style \"Add Lead\" almost certainly hits the People path, because that's the action Zapier surfaces by default. <strong>Goodcall's</strong> Zapier path does the same — it's the Zapier action they get for free. <strong>Smith.ai's</strong> Follow Up Boss integration runs as outbound Outreach Campaigns triggered from Follow Up Boss, not as inbound capture into Follow Up Boss — so the question of which capture endpoint to use doesn't even come up. Either way, your action plans never fire on an AI Receptionist-captured lead.",
      "mcp": "AnyCRM always routes inbound capture through the action-plan-firing Event path with the right type inferred from the call (Property Inquiry, Seller Inquiry, General Inquiry, Visited Open House, Registration). The AI Receptionist cannot pick the wrong path. There is only one AnyCRM wrapper, and it always uses the one Follow Up Boss intends. AnyCRM does three things in one call where Smith.ai/My AI Front Desk/Goodcall do one (and usually the wrong one).",
      "competitorsAffected": ["My AI Front Desk", "Goodcall"]
    },
    {
      "title": "Appointments that don't reach the agent's real calendar",
      "raw": "Writing an appointment to Follow Up Boss looks like it creates a calendar event. And it does, but only inside Follow Up Boss. Whether it actually syncs to the agent's Gmail/Outlook calendar depends on the invitees list containing BOTH the person AND the Follow Up Boss user as separate entries. <strong>My AI Front Desk's</strong> Zapier-style \"Schedule Appointment\" action posts whatever it has straight at Follow Up Boss — no surfacing of the dual-invitee requirement, because Zapier doesn't expose that structural detail. <strong>Goodcall</strong> via Zapier hits the same wall: the Zapier action doesn't model the dual-invitee shape, so the appointment lands in Follow Up Boss but never on the agent's Gmail/Outlook. <strong>Smith.ai's</strong> human receptionists book appointments manually in Follow Up Boss after the call — sometimes correctly, sometimes not, depending on the receptionist. The agent walks into Tuesday morning unaware they have a 10am showing.",
      "mcp": "AnyCRM does multiple things in one call: looks up the right agent's Follow Up Boss user ID, builds the dual-invitee payload (person + Follow Up Boss user), validates the time format Follow Up Boss's calendar sync requires, computes end-time from the appointment-type duration, then writes the appointment. The showing lands in Follow Up Boss AND on the agent's Gmail/Outlook calendar atomically. We do four checks where Smith.ai/My AI Front Desk/Goodcall do one. That's why a showing booked through AnyCRM is never missing from the agent's calendar.",
      "competitorsAffected": ["My AI Front Desk", "Goodcall", "Smith.ai (human tier)"]
    },
    {
      "title": "Inventing sources and stages that don't exist in your account",
      "raw": "Follow Up Boss accepts any string as a source, and source is set-once on creation — you cannot fix it with a PUT later. <strong>My AI Front Desk's</strong> Zapier action takes whatever the AI generates and posts it. There is no \"read your account's real sources first\" step in a Zapier path; it's a single action. So the AI invents \"AI\" on one call, \"Inbound Call\" on the next, \"Phone Lead\" on a third — and there is no way to retroactively clean those source fields. <strong>Goodcall</strong> via Zapier has the same problem. <strong>Smith.ai's</strong> AI tier picks values from a generic playbook that doesn't match your real Follow Up Boss source list. The architecture is one-shot; there is no \"check the account first\" step.",
      "mcp": "AnyCRM reads your real Follow Up Boss sources, stages, and active listings at setup, in a separate call, and bakes them into the AI Receptionist's system prompt as a frozen table. So when the AI Receptionist captures a lead, it CAN ONLY pick from sources, stages, and listings that actually exist. The set-once <code>source</code> trap can't fire because the source isn't a variable — it's a constant. This is two API calls at setup time that Smith.ai, My AI Front Desk, and Goodcall don't make, and it's the difference between writes that always succeed and writes that silently rot your reporting.",
      "competitorsAffected": ["My AI Front Desk", "Goodcall", "Smith.ai (AI tier)"]
    },
    {
      "title": "Booking the wrong agent's calendar",
      "raw": "Follow Up Boss happily accepts any user on an appointment, including inactive users or users from another team whose calendar isn't connected. <strong>My AI Front Desk's</strong> Zapier action takes whichever agent name the AI generates and posts it — no \"is this person still active?\" check, no \"does this person own the existing person record?\" check, no Pond Lead Agent awareness. So a buyer-side inquiry gets booked on the listing agent's calendar, or worse, on a deactivated former team member. <strong>Goodcall's</strong> Zapier hop assigns based on connector defaults rather than the lane the call actually belongs to. <strong>Smith.ai's</strong> human receptionists rely on the receptionist's memory of who handles what — fine on a Tuesday morning, less reliable on a Friday at 8pm with a relief receptionist.",
      "mcp": "AnyCRM does the heavy work in multiple steps: matches the lane (listing / buyer's / ISA) from the call's intent and the listing the caller asked about, looks up the right agent from the AnyCRM team roster, filters out deactivated agents, AND checks whether the existing Follow Up Boss person already has an assigned agent. If the existing agent contradicts the inferred lane, AnyCRM refuses to overwrite — instead, the AI Receptionist surfaces the conflict so the call respects who is already on the lead. Smith.ai/My AI Front Desk/Goodcall can't do this because their architecture is one-shot.",
      "competitorsAffected": ["Smith.ai (human tier)", "Goodcall", "My AI Front Desk"]
    },
    {
      "title": "Cancelling by deletion instead of by outcome",
      "raw": "Deleting an appointment from Follow Up Boss strips it off the person timeline entirely. The raw delete takes the appointment ID and nothing else — no reason field, no cancellation outcome, no audit hook. <strong>My AI Front Desk's</strong> Zapier-style cancel (where it exists) issues a single delete — that's the only Follow Up Boss operation Zapier exposes for it. The appointment vanishes, the agent gets no signal of WHY it fell through, and your reschedule-vs-cancellation reporting breaks because the appointment no longer exists to be counted. <strong>Goodcall's</strong> cancellation via Zapier is the same single-step delete. <strong>Smith.ai</strong> receptionists ask the caller why, but they typically log the reason as a note rather than as a properly outcome-flagged appointment, so reporting doesn't count it correctly.",
      "mcp": "AnyCRM's cancellation is multi-step: find the soonest upcoming appointment, capture the caller's reason, write the reason onto the person's timeline as a note, AND apply a cancellation outcome on the appointment BEFORE any deletion fires. The cancellation stays queryable in reporting with the reason attached. Three operations where Smith.ai/My AI Front Desk/Goodcall do one (and usually the wrong one).",
      "competitorsAffected": ["My AI Front Desk", "Goodcall"]
    },
    {
      "title": "Encoding your stage and action-plan policy in the prompt or in middleware",
      "raw": "<strong>My AI Front Desk</strong> exposes a hardcoded \"Update Lead Status\" Zapier action that fires on every inbound call. There is no \"only advance the stage if the caller is actually qualified\" logic — the action is single-step, so every call advances the stage in the default way, polluting your Smart Lists with unqualified leads. The moment you change your stage taxonomy or add a new action plan, you go back into Zapier and rebuild the zap. <strong>Goodcall's</strong> Zapier hop applies whatever default behaviour the connector shipped with. Change your business, and the zap keeps doing what it did six months ago. <strong>Smith.ai's</strong> AI tier and human receptionists work from playbooks that drift out of date as your real Follow Up Boss policy evolves.",
      "mcp": "AnyCRM does not encode your stage or action-plan policy at all. AnyCRM sends a clean lead event straight to your CRM, into the receiving flow we wire up for you at onboarding. YOUR Lead Flow decides what happens: new stage? Update the flow. New action plan? Update the flow. New source-tag scheme? Update the flow. AnyCRM's behaviour stays consistent because AnyCRM's job stops at the conversation. Smith.ai/My AI Front Desk/Goodcall can't separate these concerns because their architecture forces business policy into either Zapier middleware or a hardcoded action.",
      "competitorsAffected": ["My AI Front Desk", "Goodcall", "Smith.ai (AI tier)"]
    },
    {
      "title": "Web leads and AI Receptionist leads run on two separate conversion-tracking stacks",
      "raw": "<strong>Smith.ai, My AI Front Desk, and Goodcall</strong> all treat phone and chat conversions as separate from IDX form / website chatflow conversions. None of them fire a real conversion event into Google Ads, Facebook Ads, or LinkedIn Ads when the AI Receptionist closes a call. So your Ad platforms only see the website form-fills, the bidding optimises for that (lower-intent) audience, your Cost per Lead looks deceptively low, ROAS reporting becomes a fiction, and the high-intent traffic that picks up the phone about a listing stays invisible to your Ad stack. Worse, when these competitors DO fire any tracking, it's client-side — blocked by ad-blockers and degraded under iOS / Safari tracking restrictions.",
      "mcp": "AnyCRM runs your website conversions AND your AI Receptionist conversions through the same Conversion Lift pipeline. Same event shape, same source taxonomy, same delivery to your CRM, AND the same server-side conversion event into Google Ads, Facebook Ads, and LinkedIn Ads — using the verified origin of your registered domain. Server-side means it can't be blocked client-side and doesn't degrade on iOS or Safari. The result is what Smith.ai/My AI Front Desk/Goodcall structurally can't deliver: lower Cost per Lead, higher ROAS, smaller CAC, complete analytics funnels, and attribution that doesn't fragment between web and voice.",
      "competitorsAffected": ["Smith.ai", "My AI Front Desk", "Goodcall"]
    }
  ],
  "failureModesMeta": {
    "headline": "How most AI Receptionists built on <strong>Smith.ai, My AI Front Desk, or Goodcall</strong> fail for <strong>residential brokerages, listing teams, buyer's-agent pools, ISA teams, and solo agents</strong> that use <span data-tpl-crm>Follow Up Boss</span>. And why AnyCRM can't.",
    "lede": "Most AI Receptionists fail on Follow Up Boss in the same handful of ways. Duplicate people, the wrong capture endpoint so action plans never fire, appointments that never sync to the agent's real calendar, invented sources and stages, the wrong agent's calendar, deletions that destroy the audit trail, hardcoded stage rules that drift away from your real policy, and conversion data that never reaches your ad platforms server-side. AnyCRM can't fail in any of these ways, because each failure was solved one layer down inside AnyCRM. And because AnyCRM delegates stage and action-plan policy to your CRM's own flow rather than trying to encode it, AND runs web and AI Receptionist conversions through a single unified conversion pipe instead of two disconnected stacks.",
    "closer": "The AI Receptionist is honest because AnyCRM doesn't let it lie. And AnyCRM is sophisticated because it doesn't pretend to own policy that belongs inside your CRM, while quietly fixing the conversion-tracking gap nobody else has thought to close."
  },
  "comparisonTable": {
    "headline": "AnyCRM vs Smith.ai, My AI Front Desk, Goodcall on <span data-tpl-crm>Follow Up Boss</span>",
    "columns": [
      { "key": "anycrm", "label": "AnyCRM" },
      { "key": "smithai", "label": "Smith.ai" },
      { "key": "myaifrontdesk", "label": "My AI Front Desk" },
      { "key": "goodcall", "label": "Goodcall" }
    ],
    "rows": [
      {
        "capability": "Live Follow Up Boss appointment booked DURING the call",
        "anycrm": "Yes. Native Follow Up Boss appointment, agent-matched, calendar-synced via dual-invitee.",
        "smithai": "No. Human receptionists book manually after the call; AI tier logs a note for follow-up.",
        "myaifrontdesk": "Partial. Zapier-style \"Schedule Appointment\" without the dual-invitee structural detail for calendar sync.",
        "goodcall": "Partial. Zapier hop, not a structurally-correct Follow Up Boss appointment."
      },
      {
        "capability": "Dedup-before-write on email and phone",
        "anycrm": "Yes. Always.",
        "smithai": "Manual.",
        "myaifrontdesk": "No. Zapier \"Add Lead\" is exact-match only.",
        "goodcall": "No. Single-step Zapier create."
      },
      {
        "capability": "Preserves existing Follow Up Boss agent on returning callers",
        "anycrm": "Yes. Existing assigned agent is sacred.",
        "smithai": "Implicit, not guaranteed.",
        "myaifrontdesk": "No. \"Assign Lead to Agent\" can overwrite.",
        "goodcall": "Depends on the Zapier connector's defaults."
      },
      {
        "capability": "Routes by lane (listing / buyer's / ISA)",
        "anycrm": "Yes. Lane is part of AnyCRM's team roster, with listing-aware matching.",
        "smithai": "Manual, depends on the receptionist.",
        "myaifrontdesk": "No.",
        "goodcall": "No."
      },
      {
        "capability": "Sources, stages & listings frozen from your real Follow Up Boss values",
        "anycrm": "Yes. Read at setup, baked into the prompt as a frozen table.",
        "smithai": "Not API-enforced.",
        "myaifrontdesk": "No. Writes can fail or create dirty source values.",
        "goodcall": "No structural guard."
      },
      {
        "capability": "Cancellation preserves the audit trail (outcome-flagged, not deleted)",
        "anycrm": "Yes. Reason on timeline + cancellation outcome on appointment.",
        "smithai": "Manual.",
        "myaifrontdesk": "No. Deletion strips the timeline.",
        "goodcall": "No. Single-step Zapier delete."
      },
      {
        "capability": "Reschedule in place (no cancel-then-rebook)",
        "anycrm": "Yes.",
        "smithai": "Manual.",
        "myaifrontdesk": "No.",
        "goodcall": "No."
      },
      {
        "capability": "Action-plan and stage policy delegated to YOUR Lead Flow",
        "anycrm": "Yes. Lead event delivered straight into your CRM, into the receiving flow we wire up at onboarding.",
        "smithai": "No. Policy lives in Zapier or in the receptionist's training.",
        "myaifrontdesk": "No. Hardcoded \"Update Lead Status\" Zapier action.",
        "goodcall": "No. Zapier connector-default behaviour."
      },
      {
        "capability": "Unified conversion pipe: web forms AND AI Receptionist → CRM + ad platforms server-side",
        "anycrm": "Yes. Same shape, same source taxonomy, same server-side delivery to your CRM and your ad platforms.",
        "smithai": "No. Web and voice run on separate stacks.",
        "myaifrontdesk": "No. Web and voice run on separate stacks.",
        "goodcall": "No. Web and voice run on separate stacks."
      },
      {
        "capability": "Server-side conversion events sent to Google Ads, Facebook Ads, and analytics (origin = your registered domain)",
        "anycrm": "Yes. Every call and chat lead lands server-side.",
        "smithai": "No.",
        "myaifrontdesk": "No.",
        "goodcall": "No."
      },
      {
        "capability": "Source attribution stays consistent across web and voice",
        "anycrm": "Yes. <code>AI Receptionist Call</code>, <code>AI Receptionist Web</code>, plus your IDX form identifiers.",
        "smithai": "Manual / inconsistent.",
        "myaifrontdesk": "No standardised taxonomy.",
        "goodcall": "Whatever the Zapier connector defaults to."
      },
      {
        "capability": "Scale ceiling",
        "anycrm": "Bounded by Follow Up Boss API limits, not by staffing.",
        "smithai": "Bounded by human receptionist staffing.",
        "myaifrontdesk": "Bounded by Zapier rate limits and action contracts.",
        "goodcall": "Bounded by the Zapier hop."
      }
    ],
    "footer": "Every row in this table is solved one layer down inside AnyCRM. Not in the prompt. Not by humans. Not by Zapier."
  },
  "faqs": [
    {
      "q": "Does this actually work with my Follow Up Boss account?",
      "a": "Yes. AnyCRM uses Follow Up Boss's official API via a standard account-level API key, with auditable system-attribution headers on every request. Every captured caller lands as a person with the right agent, source, stage, and a first note from the call. Showings land as native Follow Up Boss appointments on the right agent's calendar, with the matching activity on the person's timeline."
    },
    {
      "q": "How is this different from Follow Up Boss's own AI features?",
      "a": "Follow Up Boss AI (smart summaries, suggested tasks, smart messages, predictive lead prioritisation) is excellent at helping your human agents work faster on leads that already exist inside Follow Up Boss. It's positioned as an assistant for your agents, not as a phone-answering front line. The AI Receptionist sits BEFORE Follow Up Boss AI. It picks up the call at 9pm, captures the lead, books the showing, and writes a clean person record. Then Follow Up Boss AI takes over with the smart summary and the suggested follow-ups. The two layers are complementary, not competing."
    },
    {
      "q": "Will it create duplicate people in Follow Up Boss?",
      "a": "No. AnyCRM resolves the existing person first (normalising email and phone) before writing. A returning caller becomes a new note on the existing record, never a second person, and the existing assigned agent is preserved."
    },
    {
      "q": "Can it route different inquiries to different agents on my team?",
      "a": "Yes. AnyCRM reads your Follow Up Boss user roster once at setup. Every active agent, with their lane (listing / buyer's / ISA), Pond membership, appointment types, and timezone. Listing inquiries, buyer-side calls, ISA-side qualification calls, and repeat-client calls each route differently, and existing assignments in Follow Up Boss are always preserved."
    },
    {
      "q": "Where do the showings actually live, calendar or Follow Up Boss?",
      "a": "Both. AnyCRM writes the showing as a native Follow Up Boss appointment with the right dual-invitee structure (person + Follow Up Boss user), the right timing, and the right appointment type. Which makes Follow Up Boss's Gmail/Outlook calendar sync fire automatically. You see one appointment on the person timeline, one calendar invite on the agent's calendar, one source-attributed person."
    },
    {
      "q": "Can it cancel or reschedule a showing from a phone call?",
      "a": "Yes. The caller gives their email, AnyCRM finds the soonest upcoming appointment associated to the matching person, the AI Receptionist reads it back, and AnyCRM either reschedules in place or applies a cancellation outcome with the reason captured on the person's timeline. Never a raw deletion that would strip the audit trail."
    },
    {
      "q": "What if a caller has two upcoming showings in Follow Up Boss?",
      "a": "AnyCRM returns every upcoming appointment for that person (title, date, time, listing) and the AI Receptionist asks which one to change before doing anything. It never assumes."
    },
    {
      "q": "Does it handle timezones correctly?",
      "a": "Yes. The AI Receptionist confirms the caller's timezone, AnyCRM converts the showing time into the format the Follow Up Boss appointment requires, and the AI Receptionist reads the time back to the caller in <em>their</em> local timezone. No customer-facing UTC strings, no off-by-an-hour confirmations."
    },
    {
      "q": "Does it create Deals in Follow Up Boss?",
      "a": "Not directly. AnyCRM stays focused on the conversation surface: capturing the person, matching the right agent, booking the showing. Deal creation, stage advancement, and action-plan firing are YOUR business policy, and that policy lives inside Follow Up Boss, in the receiving flow we wire up for you at onboarding. Every person-create and every showing-book in AnyCRM sends a lead event straight into that flow (tagged with source <code>AI Receptionist Call</code> or <code>AI Receptionist Web</code>). Your flow decides which stage, which action plan, which Smart List, which Pond. AnyCRM doesn't try to encode policy that will drift out of date the moment your business changes."
    },
    {
      "q": "How does the conversion tracking work?",
      "a": "Every lead event AnyCRM produces (from a phone call, a chat conversation, OR an IDX form / website chatflow) flows through a single conversion pipe. It lands in your CRM for business logic. AND it fires server-side into Google Ads, Facebook Ads, and your analytics platform, using the origin of the domain you registered with AnyCRM. Server-side means the conversion can't be blocked by ad-blockers and doesn't degrade under iOS / Safari tracking restrictions. The result: higher ROAS, lower ad costs, enriched analytics, and attribution that doesn't fragment between web and voice. As far as we can tell, none of our competitors have built this yet."
    },
    {
      "q": "What about my existing website forms? Do they go through the same pipe?",
      "a": "Yes — that's the whole point. IDX forms / chatflows AND the AI Receptionist produce the same lead-event shape with the same source taxonomy. They land in the same place in your CRM, and they fire the same server-side conversion event into your ad platforms. So your bid strategy optimises against unified, real conversions instead of fragmenting across web-only and voice-only stacks."
    },
    {
      "q": "How long until it's actually capturing leads into Follow Up Boss?",
      "a": "Most teams are live the same afternoon. The API key takes a minute. The roster, sources, stages, and listings import is automatic. We wire up the lead-receiving flow inside your CRM during onboarding. The phone integration is usually under an hour. Web chat is faster."
    }
  ]
}
