Menu · Getting started
Getting started

Connect your CRM

Add your CRM's API key (Follow Up Boss, Sierra Interactive or Sure Send) to ask questions that need both sides, such as which leads viewed listings on your Ruuster site but haven't been called in a month, or how many leads in your inactive ponds engaged meaningfully. How the key is used, what each CRM supports, and how leads are matched.

View as Markdown

Ruuster knows what your leads do on your Ruuster sites: the listings they view, save and ask about. Your CRM knows the rest: who called them, which pond or stage they're in, who they're assigned to. With your CRM's API key, the CRM calls put the two together, so one question answers both:

In an AI assistant (MCP)

On the Ruuster connect screen, under Your CRM (optional), pick your CRM and paste its API key, then connect as usual. Ruuster checks the key before connecting, keeps it encrypted with that one connection, and uses it only for the CRM tools (leads_follow_up, leads_crm_segments, crm_people, crm_person, crm_overview, crm_identity, and, if you tick Let the assistant make changes, crm_change_preview and crm_change_apply; crm_changes_list and crm_change_get show the record). Already connected without one? Disconnect Ruuster in your assistant and connect again with your CRM picked. To stop CRM access, disconnect, or rotate the key in your CRM. See Use with AI assistants (MCP).

Where to find the key:

  • Follow Up Boss: create an API key under Admin › API. Use a broker's or the owner's key: an agent's key may see only that agent's people.
  • Sierra Interactive: your site's API key, from your Sierra admin (Sierra support can turn API access on). Sierra keys are site-wide.
  • Sure Send: an API key from your Sure Send account settings. A team key sees everyone; a user key sees only that user's people.

Your CRM may already be connected to Ruuster for the lead sync; that connection stays as it is. The key you add here is separate and belongs to you. It only reads, unless you allow changes (below).

With the API

Send two more headers on the CRM calls:

curl -s "https://api.ruuster.com/v1/leads/follow-up?quietDays=30" \
  -H "x-api-key: $RUUSTER_API_KEY" \
  -H "x-email: $RUUSTER_EMAIL" \
  -H "x-crm-vendor: fub" \
  -H "x-crm-key: $FUB_API_KEY"

x-crm-vendor is fub, sierra or suresend. Ruuster uses the key for that request only: it is never stored, logged or sent anywhere but your CRM's own API, and only to read (GET). Calls without the headers answer 400 crm_not_connected.

Changing your CRM

Ruuster can also make changes in your CRM for you: add or remove tags, change stage, reassign people to an agent, add a note, or create a task, for up to 500 people at a time. Follow Up Boss only for now (see What each CRM supports). It is off unless you turn it on: in an AI assistant, tick Let the assistant make changes under Your CRM on the connect screen; with the API, send x-crm-write: allow on the change calls.

Every change takes two steps, and nothing is written in the first:

  1. Preview (Preview a change to your CRM). Ruuster reads each person from your CRM and shows their before and after, skips anyone already that way, and lists what to consider (tags and stages can start automations and action plans in your CRM that email or text the lead; reassigning notifies the new agent). The request, in your words, is recorded.
  2. Confirm (Apply a change). Only the person who previewed it can confirm it, no sooner than 8 seconds and no later than 15 minutes after the preview, with a key for the same CRM account. An assistant connected to Ruuster is told to show you the preview and ask "Are you sure?" first, and never to confirm for you. Ruuster then changes each person one at a time and checks the result against what your CRM answers; anything the CRM didn't apply is reported as failed, never as done.

What Ruuster never does: delete or merge people, delete notes or tasks, change contact details, or send anything to a lead. A tag, stage or assignment change can be undone by previewing action: "undo" with the change's id: only what that change did is reversed, and anyone changed again since is left alone. Notes and tasks are removed in your CRM itself.

The record. Every change is kept and can't be deleted: the request in the person's words, who asked (their Ruuster login, and whether through an AI assistant), the action and its values, the warnings shown, when it was confirmed and finished, and for every person the values before and after and whether they were changed, skipped or failed and why, with the history of every call against the change, including refused confirmations. See List CRM changes and Get a CRM change. Reads of your CRM are on record too: which calls were made and with which filters (search text and keys are never stored).

How leads are matched

Every lead your CRM sync brought into Ruuster carries its CRM person id as crmExternalId. The joins use only that id: a lead without one is counted as notLinkedToCrm, never guessed by name or email. A CRM id the key doesn't return (the person was deleted, trashed or merged, or the key can't see them) is counted as notFoundInCrm. If only a small share is found, the answer says so: the key may be for a different CRM account than the one your Ruuster site syncs with.

Engagement levels

Level Means
any Any recorded activity on your Ruuster sites (listing views, searches, saves, sign-ins)
viewed Viewed at least one listing
meaningful 3 or more listing views, or any favorite, tour request, contact-agent click or share
strong A tour request or contact-agent click, 10 or more listing views, or 2 or more favorites

Email opens never count (machine opens are common), and neither do sign-ins, searches or saved-search changes on their own.

What each CRM supports

Follow Up Boss Sure Send Sierra Interactive
Find engaged leads your CRM hasn't called Yes Not yet No: Sierra keeps no calls
Segments by pond and agent Yes, live Not yet Not yet
Segments by stage and tag Yes, live From Ruuster's synced copy From Ruuster's synced copy
Search people Yes Yes (no pond filter) Yes (status, tag, agent)
One person Calls, texts, events, tasks Calls, texts, events Notes
Changes (tags, stage, assignment, notes, tasks) Yes Not yet Not yet: Sierra's lead update can reset a lead's type, so it waits for testing

Follow Up Boss looks up to 100 people per call, so a join checks up to 2,000 engaged leads in about 20 CRM calls. Sure Send and Sierra can only be asked one person at a time, which is why their joins are narrower.

Limits

CRM calls are lookup calls (20 per minute per key), and one CRM call runs at a time per brokerage, so your CRM's own rate limit is never strained. Your CRM's limits still apply: if it is busy, the API answers 429 crm_rate_limited with Retry-After. If it refuses the key, 403 crm_key_rejected; if it is slow or down, 503 crm_unavailable. See Errors.