# Connect by JBRH > A Digital Business Employee. Connect reads a business's email, answers its phone, handles WhatsApp and SMS, researches prospects, keeps one relationship record per person, and follows through — under rules and approvals the business sets. Built and operated by JBRH Digital Solutions. Product version 6.3.2. Every page below states its own status and the date it was last checked against the running system. Capability status in machine-readable form: https://connectbyjbrh.com/docs-data/status.json ## Start here - [What Connect is](https://connectbyjbrh.com/docs/getting-started/what-is-connect/): the plainest answer, and what it does not replace. - [How Connect works](https://connectbyjbrh.com/docs/product/how-connect-works/): one pass through the whole system. - [Current limits](https://connectbyjbrh.com/docs/product/limits/): every honest limit in one place. - [Capability status](https://connectbyjbrh.com/docs/product/status/): what is available, what is foundation, what is not yet. ## Product - [Connect by JBRH](https://connectbyjbrh.com/docs/product/): What Connect by JBRH is, the five channels it works across, the records it keeps, and the controls that decide what it may do without asking. - [Accessibility](https://connectbyjbrh.com/docs/product/accessibility-statement/): What has actually been measured in Connect's interface — focus rings read from a focused element, contrast ratios, form-field names — and what is known to be imperfect. - [Channels](https://connectbyjbrh.com/docs/product/channels/): The five ways Connect reaches people — email, phone, WhatsApp, SMS and a browser softphone — with the status, the provider and the honest limit of each. - [The data you give Connect](https://connectbyjbrh.com/docs/product/data-you-give-connect/): Every category of material a workspace supplies to Connect, the reason each one is needed, and exactly what changes if you decide to withhold it. - [How Connect works](https://connectbyjbrh.com/docs/product/how-connect-works/): One pass through Connect in plain language: how a message becomes a canonical record, a grounded decision, a permitted action and an audit entry. - [Current limits](https://connectbyjbrh.com/docs/product/limits/): Every current limit in Connect, by channel and capability: what is not available, what depends on a provider, and what is deliberately reserved for a person. - [One product, two audiences](https://connectbyjbrh.com/docs/product/owner-and-customer/): JBRH runs its own business on Connect and sells the same product. One feature set, one implementation, two routers — and a difference that is purely commercial. - [Privacy inside the product](https://connectbyjbrh.com/docs/product/privacy-in-the-product/): What Connect does with a workspace's material in practice: where it sits, what reaches a model, what a person can remove, and what is deliberately kept. - [How this manual talks about the future](https://connectbyjbrh.com/docs/product/roadmap-language/): The four words this manual uses about a capability, what each one promises, what none of them promise, and the vocabulary the build refuses to print. - [Capability status](https://connectbyjbrh.com/docs/product/status/): The capability register behind this manual: ninety capabilities, each labelled AVAILABLE, IN DEVELOPMENT or PLANNED, with its evidence and a machine-readable copy. - [The records Connect keeps](https://connectbyjbrh.com/docs/product/the-record-model/): Everything Connect writes down: the workspace root, the thirteen record sheets, the two shapes of mail, and how a person, a company and a conversation relate. - [Versions and what changed](https://connectbyjbrh.com/docs/product/versions/): Three kinds of version live here: the product's own, the date on every page, and the specification versions the machine surfaces are written to. - [What a person always decides](https://connectbyjbrh.com/docs/product/what-a-person-decides/): The decisions Connect never takes: price and terms, money and law, suppression, the rules themselves — each with the reason it is reserved for a human. - [What Connect decides on its own](https://connectbyjbrh.com/docs/product/what-connect-decides/): The decisions Connect makes without asking — priority, classification, wording, timing, research depth — and the gates that sit around every one of them. ## Getting started - [Getting started with Connect](https://connectbyjbrh.com/docs/getting-started/): The shortest route from an empty workspace to Connect handling real work: the order to do things in, what each step proves, and where setups stall. - [Connect your mailbox](https://connectbyjbrh.com/docs/getting-started/connect-your-mailbox/): The first real step: connecting Gmail, Microsoft Graph or an IMAP server to Connect, giving the mailbox a role, and proving that it is genuinely working. - [A working day with Connect](https://connectbyjbrh.com/docs/getting-started/daily-routine/): What a person actually does each day once Connect is running: one queue pass, a look at what went out, and the three habits that keep the rest honest. - [Find your first prospects](https://connectbyjbrh.com/docs/getting-started/find-your-first-prospects/): Writing a discovery brief that returns a short list you would actually ring, and the one guarantee that shapes everything prospecting gives you. - [Approve your first reply](https://connectbyjbrh.com/docs/getting-started/first-approval/): Reading your first held draft, editing it, approving it, and the honest answer to what that approval does and does not teach Connect. - [Your first hour](https://connectbyjbrh.com/docs/getting-started/first-hour/): The four things worth doing in your first hour with Connect, in order, with the result each one produces and the mistake each one prevents. - [Your first week](https://connectbyjbrh.com/docs/getting-started/first-week/): What to add once mail is flowing: knowledge that earns its place, standing instructions, a second channel, follow-ups, and when to loosen autonomy. - [The nine words you need first](https://connectbyjbrh.com/docs/getting-started/glossary-for-new-users/): Nine words that unlock the rest of this manual, grouped by what they are for, with the three distinctions new users most often get wrong. - [Inviting your team](https://connectbyjbrh.com/docs/getting-started/inviting-your-team/): Adding colleagues to a workspace: what an invitation really grants, what everyone shares, how work is divided, and why a colleague sometimes sees a refusal. - [Keyboard and speed](https://connectbyjbrh.com/docs/getting-started/keyboard/): Getting around Connect quickly: hash routes you can type or bookmark, asking instead of navigating, and an honest note about published shortcuts. - [Make a test call](https://connectbyjbrh.com/docs/getting-started/make-a-test-call/): Ringing your own line for the first time: what to say, the four things to listen for, and how to read the transcript, summary and timings afterwards. - [Using Connect on a phone](https://connectbyjbrh.com/docs/getting-started/mobile/): Connect on a small screen: what is identical, what folds into a menu below 600 pixels, and the work that is genuinely better left for a desk. - [Your first pass through Needs You](https://connectbyjbrh.com/docs/getting-started/read-needs-you/): Needs You is the one queue a person actually works: what lands in it, why it is ranked rather than chronological, and what an empty queue does and does not prove. - [Set up the phone](https://connectbyjbrh.com/docs/getting-started/set-up-the-phone/): Going from no number to a line that answers: the two voice engines, the settings that matter before the first call, and what is honestly not available yet. - [Decide what Connect may do](https://connectbyjbrh.com/docs/getting-started/set-what-connect-may-do/): The four autonomy modes, the four scopes they can be set at, and the combination most businesses should start with before anything is sent for them. - [Teach Connect about your business](https://connectbyjbrh.com/docs/getting-started/teach-connect-your-business/): What to put in Knowledge first, what belongs in Memory instead, and why the difference decides whether a correction applies to everyone or one person. - [A weekly review](https://connectbyjbrh.com/docs/getting-started/weekly-review/): Five checks worth half an hour every week, what each one tells you that the daily pass cannot, and the change each finding should produce. - [What Connect will not do](https://connectbyjbrh.com/docs/getting-started/what-connect-will-not-do/): The refusals that are designed rather than broken: what Connect declines in the moment, what is not built yet, and what it never claims about itself. - [What Connect by JBRH is](https://connectbyjbrh.com/docs/getting-started/what-is-connect/): Connect by JBRH in plain terms: one worker that reads mail, answers the phone and follows through — the category, and what it does not replace. - [Create your first follow-up](https://connectbyjbrh.com/docs/getting-started/your-first-follow-up/): The four parts of a follow-up — commitment, reason, due time, channel — and exactly what happens on each channel when one falls due. ## How-to - [How-to guides](https://connectbyjbrh.com/docs/how-to/): Task-shaped instructions for Connect: each guide is one job from first action to proof it worked, with the recovery when it did not. - [Add a second mailbox](https://connectbyjbrh.com/docs/how-to/add-a-second-mailbox/): A workspace can hold several mailboxes, each with its own role, signature, autonomy and health. What to set, and what changes about replies. - [Ask Connect about a customer](https://connectbyjbrh.com/docs/how-to/ask-connect-about-a-customer/): Get an answer about one customer that is worth acting on: the question to ask first, the four follow-ups that add most, and how to tell an answer from a guess. - [Attach a document to a deal](https://connectbyjbrh.com/docs/how-to/attach-a-document-to-a-deal/): Put a quote, a specification or a signed order on an opportunity so that Connect can answer from it, and so the next version does not overwrite the last. - [Find out why Connect did something](https://connectbyjbrh.com/docs/how-to/audit-a-decision/): Trace an action back to the rule that produced it: what the decision log records, how to read it, and why refusals appear there as decisions too. - [Block someone](https://connectbyjbrh.com/docs/how-to/block-a-sender/): A block is one directive stored against the person, tagged per channel, so it holds on email, WhatsApp, SMS and phone and in future conversations. - [Update many records at once](https://connectbyjbrh.com/docs/how-to/bulk-update-records/): Change many rows at once in the Data grid without turning it into a second database: selection, bulk actions, the services underneath, and what gets refused. - [Change how Connect sounds on the phone](https://connectbyjbrh.com/docs/how-to/change-the-voice/): The Voice Lab splits settings that reach the engine from directions that only ask the model. How to change one, and prove it with a test call. - [Change how Connect writes](https://connectbyjbrh.com/docs/how-to/change-what-connect-says/): Tone, length and signature are owned by three different controls in Connect. Which one to change, in what order, and how to see the effect. - [Check a phone number before you go live](https://connectbyjbrh.com/docs/how-to/check-a-number-before-going-live/): Prove a phone number end to end before you publish it, one segment at a time, using only a handset you already hold and the records each test leaves behind. - [Check what Connect knows about a person](https://connectbyjbrh.com/docs/how-to/check-what-connect-knows/): Read everything Connect holds about one person, tier by tier, work out which tier is driving behaviour, and correct it so the change actually sticks. - [Clean up duplicate records](https://connectbyjbrh.com/docs/how-to/clean-up-duplicates/): Two records for one human split their history in half. Finding the pairs, merging safely, and the four things to check on the survivor afterwards. - [Review your suppression list](https://connectbyjbrh.com/docs/how-to/clean-up-your-suppression-list/): Read the suppression list properly: where each entry came from, which kinds may be cleared, and why most of a tidy-up is leaving things exactly where they are. - [Make sure a promise is kept](https://connectbyjbrh.com/docs/how-to/close-the-loop-on-a-promise/): Find every commitment a customer is waiting on, check each has something behind it that will actually fire, and close the ones that no longer mean anything. - [Add a second phone number](https://connectbyjbrh.com/docs/how-to/connect-a-second-number/): Claim a second business line: the carrier side, the channel route, the purpose that decides its voice, and the checks that prove it actually rings. - [Correct something Connect got wrong](https://connectbyjbrh.com/docs/how-to/correct-a-mistake/): Four places a correction can live in Connect — this message, this thread, this person, or the whole business — and how to pick the right one. - [Export your data](https://connectbyjbrh.com/docs/how-to/export-your-data/): Exporting from the Connect data grid: which sheets, what CSV carries, and why an exported cell can look escaped when it starts with an equals sign. - [Find out why a reply was held](https://connectbyjbrh.com/docs/how-to/find-why-a-reply-was-held/): Work backwards from a reply that has not gone out to the exact setting that stopped it, in the order the holds are actually evaluated. - [Give Connect a document to answer from](https://connectbyjbrh.com/docs/how-to/give-connect-a-document/): Knowledge or attachment: which one a document belongs in, how to load it so answers are grounded in it, and the retrieval test that proves it took. - [Hand a conversation to a colleague](https://connectbyjbrh.com/docs/how-to/hand-over-to-a-colleague/): Move a conversation to somebody else without losing the context: what transfers by itself, what you have to write down, and what the customer notices. - [Give one customer special treatment](https://connectbyjbrh.com/docs/how-to/handle-a-vip/): Give one account slower, more careful handling without changing anything for everybody else: contact-scope autonomy, memory and guidance used together. - [Import contacts](https://connectbyjbrh.com/docs/how-to/import-contacts/): Bringing a contact list into Connect: preparing the file, mapping columns, what identity resolution does with each row, and where bad rows end up. - [Measure whether Connect is working](https://connectbyjbrh.com/docs/how-to/measure-whether-it-is-working/): Five numbers Connect already reports that tell you whether it is earning its place, what each one moves with, and the vanity metrics to ignore. - [Prepare for a busy period](https://connectbyjbrh.com/docs/how-to/prepare-for-a-busy-week/): Four things to check before a peak: the daily allowance, autonomy on each channel, line hours and capacity, and who is actually working the queue. - [Recover something that was removed](https://connectbyjbrh.com/docs/how-to/recover-a-deleted-record/): What can be brought back after a deletion, where it is recovered from, and the four things that are genuinely gone — with the reason each one is. - [Reduce what Connect costs you](https://connectbyjbrh.com/docs/how-to/reduce-your-costs/): Where Connect's spend actually goes — carried context on voice calls, prompt size, research passes — and the four changes that move the number most. - [Report a problem usefully](https://connectbyjbrh.com/docs/how-to/report-a-problem/): Capture the eight facts that turn a support question into a fixable one, in the order that finds the answer fastest — and the two nobody thinks to include. - [Review a call properly](https://connectbyjbrh.com/docs/how-to/review-a-call/): Read a call in the order that finds the fault: outcome, timings on the wire, review findings, then the transcript — and act on the findings a control can change. - [Send certain mail to a person instead](https://connectbyjbrh.com/docs/how-to/route-mail-to-a-person/): Make certain mail reach a colleague instead of being answered: the rules that do it, how narrow each is, and what the exception looks like. - [Set business hours](https://connectbyjbrh.com/docs/how-to/set-business-hours/): Hours belong to a phone line, not to the workspace. What a caller hears outside them, why the message names no times, and which clock is used. - [Serve customers in a second language](https://connectbyjbrh.com/docs/how-to/set-up-a-second-language/): Serve customers in another language across email, WhatsApp and the phone, and test each channel separately because they fail in different ways. - [Set Connect up before you go away](https://connectbyjbrh.com/docs/how-to/set-up-for-a-holiday/): Leave Connect running while you are away: the autonomy decision, business hours, who reads the queue, and the dated commitments that will fire without you. - [Share a record with a colleague](https://connectbyjbrh.com/docs/how-to/share-a-record/): What a link to a Connect record carries — a location, not access — and the three isolation layers that decide whether the person opening it sees anything. - [Stop an outreach sequence](https://connectbyjbrh.com/docs/how-to/stop-an-outreach-sequence/): Five ways to stop cold outreach, ranked by how fast each takes effect and how wide it reaches — and which one to use while you work out the rest. - [Stop Connect immediately](https://connectbyjbrh.com/docs/how-to/stop-connect-immediately/): The runtime switch stops new work at once without changing a setting. What halts, what is already in flight, and how to start again cleanly. - [Test a change before trusting it](https://connectbyjbrh.com/docs/how-to/test-before-trusting/): Safe ways to try a change on each channel — draft-only on mail, a test call on the phone — and how to read the result without fooling yourself. - [Turn off one channel without turning off Connect](https://connectbyjbrh.com/docs/how-to/turn-off-one-channel/): Switch one channel off without stopping the rest: what `off` actually does, what keeps running behind it, and the three switches people confuse it with. - [Use a different voice for each line](https://connectbyjbrh.com/docs/how-to/use-a-different-voice-per-line/): Give each line its own voice: what a profile actually contains, the six-step resolution order behind it, and how to prove which one ran on a call. - [Write a discovery brief that finds the right companies](https://connectbyjbrh.com/docs/how-to/write-a-discovery-brief/): The four parts of a discovery brief that finds companies worth contacting, with a weak brief rewritten and the reason each change alters the result. - [Write a standing instruction that works](https://connectbyjbrh.com/docs/how-to/write-a-standing-instruction/): What separates a standing instruction that changes behaviour from one that reads well and does nothing — plus the three kinds that reliably fail. ## Use cases - [Business use cases](https://connectbyjbrh.com/docs/use-cases/): The shapes of work Connect is put to, what each one needs configured first, and the limits that decide whether a given shape is possible at all. - [After-hours enquiries](https://connectbyjbrh.com/docs/use-cases/after-hours-enquiries/): What a caller and an emailer actually get outside working hours, what is held until morning, and the promises Connect must not make at midnight. - [An agency with several clients](https://connectbyjbrh.com/docs/use-cases/agency-multiple-clients/): Running several clients from one product: why each client is its own workspace, what isolation actually enforces, and what deliberately cannot be shared. - [Booking appointments](https://connectbyjbrh.com/docs/use-cases/appointment-booking/): What Connect can agree, confirm and chase around an appointment, why it does not hold your diary, and the read-back rule that keeps a booked time honest. - [Chasing appointments and commitments](https://connectbyjbrh.com/docs/use-cases/appointment-follow-up/): Chasing appointments, call-backs and commitments across channels, with the duplicate, staleness and reason rules that keep the chasing honest. - [A B2B sales team](https://connectbyjbrh.com/docs/use-cases/b2b-sales-team/): A sales team using Connect for pipeline hygiene and follow-through, with the commercial escalation that keeps the agent out of the negotiation. - [A clinic or practice](https://connectbyjbrh.com/docs/use-cases/clinic-or-practice/): Scheduling-shaped enquiries for a clinic or practice, the privacy questions to settle first, and the clinical work that must never leave a person. - [Reaching dormant customers](https://connectbyjbrh.com/docs/use-cases/customer-reactivation/): Reaching customers who have gone quiet: the compliance checks that run first, the evidence that makes a message worth sending, and which channels can carry it. - [Support that remembers the sale](https://connectbyjbrh.com/docs/use-cases/customer-support-continuity/): Carrying what was learned during the sale into support: how one person stays one record across channels, and what breaks the thread when it breaks. - [Payment reminders](https://connectbyjbrh.com/docs/use-cases/debt-and-payment-reminders/): Reminding customers about unpaid invoices: the factual part that automates safely, the regulated part that cannot, and the evidence a dispute will need. - [Order and delivery enquiries](https://connectbyjbrh.com/docs/use-cases/ecommerce-enquiries/): Where is my order, and can I change it: answering from real data, refusing what is not known, and the order lookup Connect does not have by default. - [Education and admissions](https://connectbyjbrh.com/docs/use-cases/education-and-admissions/): Admissions-season enquiry volume, families who write in several languages, and the decisions a school must keep out of software entirely. - [After an event or exhibition](https://connectbyjbrh.com/docs/use-cases/event-followup/): Turning a box of cards from an exhibition into researched, evidenced records and a first message, without a single invented email address. - [Asking for feedback](https://connectbyjbrh.com/docs/use-cases/feedback-collection/): Asking customers what they thought: when the request is triggered, which channel can carry it, and why a reply should rarely become Knowledge. - [A business whose people are not at a desk](https://connectbyjbrh.com/docs/use-cases/field-service/): When the people who do the work are on site rather than at a desk: what the phone covers, what the browser covers, and what genuinely cannot be done. - [A franchise network](https://connectbyjbrh.com/docs/use-cases/franchise/): A network of independently run branches: one workspace each, what genuinely cannot be pooled across them, and why there is no franchisor console. - [A high-volume inbox](https://connectbyjbrh.com/docs/use-cases/high-volume-inbox/): An inbox with more mail than anyone can read: how work is picked, why the allowance holds rather than drops, and what to automate first. - [Responding to inbound leads quickly](https://connectbyjbrh.com/docs/use-cases/inbound-lead-response/): Answering a new enquiry before it goes cold: what Connect can say straight away, what it refuses, and why a held draft is not a fast reply. - [Operating in India](https://connectbyjbrh.com/docs/use-cases/india-sms-and-voice/): Operating in India: what DLT registration actually requires, why outbound SMS does not work on the live carrier, and which channels do the job instead. - [Handing work between colleagues](https://connectbyjbrh.com/docs/use-cases/internal-handover/): Giving a colleague a customer relationship mid-flight: what the record already carries, what does not transfer at all, and who ends up accountable. - [Delivery and order status enquiries](https://connectbyjbrh.com/docs/use-cases/logistics-and-delivery/): Answering where-is-it questions from records you actually hold, refusing the ones you do not, and why an answer from a sample is worse than no answer. - [Manufacturing and B2B enquiries](https://connectbyjbrh.com/docs/use-cases/manufacturing-enquiries/): Technical enquiries and requests for quotation: which specification questions can be answered from documents, which are refused, and how the engineer gets involved. - [Never miss a business call](https://connectbyjbrh.com/docs/use-cases/missed-calls/): Answering every inbound call in hours and out: what the caller gets, what still needs a person, and the three limits that shape the whole thing. - [A business with several locations](https://connectbyjbrh.com/docs/use-cases/multi-location/): Several branches inside one workspace: a line and a mailbox each, branch facts that stay local, and one relationship record the customer never sees split. - [Serving customers in several languages](https://connectbyjbrh.com/docs/use-cases/multilingual-customers/): Serving customers in more than one language across phone, email and WhatsApp: how the language is chosen, what it costs, and what is not claimed. - [A small organisation with no support desk](https://connectbyjbrh.com/docs/use-cases/non-profit/): Coverage for an organisation where answering enquiries is nobody's actual job, and the decisions that have to stay with a named person anyway. - [Outbound prospecting without buying a list](https://connectbyjbrh.com/docs/use-cases/outbound-prospecting/): Finding and approaching new organisations from public research rather than a bought list, and the refusals that cap the volume on purpose. - [Working with partners and suppliers](https://connectbyjbrh.com/docs/use-cases/partner-communication/): Pointing the same machinery at counterparties who are not customers: suppliers, partners and agencies, with the scoping and refusals that differ. - [Professional services enquiries](https://connectbyjbrh.com/docs/use-cases/professional-services/): Enquiries for advisory and professional work: scoping without committing, reading what the client sends, and the decisions that must stay with a person. - [Following up a quotation](https://connectbyjbrh.com/docs/use-cases/quote-follow-up/): Following up a quotation without letting the agent restate the price: the sequence, the refusal rule, and how a commercial question escalates. - [Property enquiries](https://connectbyjbrh.com/docs/use-cases/real-estate/): Portal enquiries answered in minutes, qualified in the reply, and turned into a viewing commitment — with the listing-accuracy problem stated plainly. - [Handling applicants](https://connectbyjbrh.com/docs/use-cases/recruiting-and-hiring/): Handling applicants at volume: the correspondence Connect takes on, the records it keeps, and the hiring decisions it must never be given. - [Communication you must be able to explain](https://connectbyjbrh.com/docs/use-cases/regulated-communication/): Work where every message may have to be explained later: what is recorded, what evidence exists, and the certifications this documentation does not claim. - [Reseller and partner enquiries](https://connectbyjbrh.com/docs/use-cases/reseller-and-partner-enquiries/): Inbound approaches from would-be resellers and partners: qualifying them with evidence, and the commercial terms that never leave a person. - [Software trials and onboarding](https://connectbyjbrh.com/docs/use-cases/saas-trials/): Trial and onboarding nudges that are worth receiving: what they can be grounded in, the stop rules, and the product data Connect does not have. - [A business with a season](https://connectbyjbrh.com/docs/use-cases/seasonal-business/): Handling a season that is ten times the rest of the year: what you widen, what capacity actually limits you, and the rules that must not move. - [Covering a small team's inbox](https://connectbyjbrh.com/docs/use-cases/small-team-coverage/): Covering a shared inbox with a handful of people: mailbox roles, per-mailbox autonomy, and the queue that keeps a human in charge of what goes out. - [Running a business on your own](https://connectbyjbrh.com/docs/use-cases/solo-operator/): One person, no colleagues to approve anything: the settings that give the widest cover for the least risk, and where the single-approver problem bites. - [Chasing suppliers](https://connectbyjbrh.com/docs/use-cases/supplier-chasing/): Outbound follow-up aimed at people who owe you something rather than owe you money: what drains automatically, what expires, and what the record proves. - [Trades and installers](https://connectbyjbrh.com/docs/use-cases/trades-and-installers/): Enquiries answered while you are up a ladder: qualifying a job, arranging a visit, and chasing the quote afterwards without ever naming a price. ## Phone - [Phone and voice in Connect](https://connectbyjbrh.com/docs/phone/): How Connect answers and places calls: the two voice engines, what a line owns, and where every phone topic in this manual sits. - [Abandoned calls](https://connectbyjbrh.com/docs/phone/abandonment/): Calls the caller walked away from: how the hang-up watcher recognises real abandonment, what it records, and why no closing line is spoken. - [Barge-in](https://connectbyjbrh.com/docs/phone/barge-in/): Speaking over the voice on a live call: what stops it, the two-second rule that decides an interruption was ignored, and why the greeting is protected. - [Business hours and the closed line](https://connectbyjbrh.com/docs/phone/business-hours/): How opening hours are set on a line, what a caller hears outside them, and why the closed-line message never speaks the hours aloud. - [Your business number in Connect](https://connectbyjbrh.com/docs/phone/business-number/): What a phone number becomes once a workspace claims it: a channel_routes line that carries the provider, the permissions, the hours and the routing. - [Consent on calls](https://connectbyjbrh.com/docs/phone/call-consent/): Where consent for a phone call is decided, the single outbound path every call passes through, and why a block recorded elsewhere already applies to the phone. - [The call brief](https://connectbyjbrh.com/docs/phone/call-context/): Everything assembled before a call starts: persona, purpose, contact facts, knowledge, rules and guidance — each with a character budget, and why the budgets exist. - [Facts learned on a call](https://connectbyjbrh.com/docs/phone/call-facts/): What a phone call leaves behind in Memory, which extracted facts are refused outright, and how something heard on a call reaches a conversation on another channel. - [Follow-ups from a call](https://connectbyjbrh.com/docs/phone/call-follow-up/): How a spoken commitment on a call becomes a dated follow-up: the words that parse into a time, the channel it lands on, and the default when nothing parses. - [Call outcomes and dispositions](https://connectbyjbrh.com/docs/phone/call-outcome/): The engine's outcome and a person's disposition are two columns answering two questions. What each one says, and how to use them together. - [The call record](https://connectbyjbrh.com/docs/phone/call-record/): Every field on a call: ring and answer times, provider status, cost, participants, quality, and why outcome and disposition are separate columns. - [Call summaries](https://connectbyjbrh.com/docs/phone/call-summary/): When a call summary is written, the two conditions under which Connect refuses to write one, and what a summary is allowed to contain. - [Identifying the caller](https://connectbyjbrh.com/docs/phone/caller-identity/): Turning the number that rang into a person: the phone key, the rule when two records share a number, and what happens when nobody gives a name. - [How a call reaches your workspace](https://connectbyjbrh.com/docs/phone/carrier-routing/): How a dialled number becomes a workspace, why every handler enters that workspace before reading a setting, and what an unclaimed number does. - [Carrier callback verification](https://connectbyjbrh.com/docs/phone/carrier-verification/): Why every carrier callback is signature-checked inside the owning workspace, what a replayed webhook looks like, and the index that stops one. - [Light code-mixing and slang](https://connectbyjbrh.com/docs/phone/code-mixing/): Hinglish and light slang on a call: when a mixed sentence counts as evidence and when it does not, and what asking a model for a register achieves. - [Connect's own voice](https://connectbyjbrh.com/docs/phone/connect-voice-tts/): Why the words a caller hears are synthesised by Connect rather than the carrier, how a sentence becomes a cached MP3, and the rule that forbids silence. - [Greeting warm-up](https://connectbyjbrh.com/docs/phone/greeting-prewarm/): How Connect has the first sentence of a call already synthesised before the phone is picked up, and the quota refusal that once cost every restart its warm greeting. - [The greeting](https://connectbyjbrh.com/docs/phone/greeting/): How the first sentence of a call is chosen, why it is synthesised while the phone is still ringing, and what happens when it cannot be spoken. - [Who ended the call](https://connectbyjbrh.com/docs/phone/hangup-attribution/): The six values of hangup_by, why every non-caller ending once read as 'agent', and how to tell an ended call from a dropped one. - [Human voice profiles](https://connectbyjbrh.com/docs/phone/human-voice-profiles/): One choice that yields a whole person: 86 parameters across identity, speech, imperfections and psychology, and the ones marked unsupported rather than faked. - [Answering inbound calls](https://connectbyjbrh.com/docs/phone/inbound-calls/): From ring to greeting to first reply: the gates a caller passes, what they hear at each refusal, and what is written down while they talk. - [Remembering a caller's language](https://connectbyjbrh.com/docs/phone/known-language/): A caller's remembered speaking preference: where it is held, why Connect speaks it from the first reply, what overrides it, and what it costs in the brief. - [Detecting the caller's language](https://connectbyjbrh.com/docs/phone/language-detection/): What counts as proof a caller has changed language: four tiers with four different bars, the transcript artefacts that never count, and what pinning overrides. - [Reply latency on a call](https://connectbyjbrh.com/docs/phone/latency/): How long a caller waits for a reply: what the clock measures, where the floor comes from, and how to tell a slow reply from a slow model. - [Leads captured from a call](https://connectbyjbrh.com/docs/phone/lead-from-call/): When a phone call creates a Person and a lead, the two call endings that deliberately create nothing, and the key the record carries from the very first ring. - [Configuring a phone line](https://connectbyjbrh.com/docs/phone/line-configuration/): The ten facts that make up a phone line, what each one refuses when it is set wrongly, and the order to decide them in. - [Switching the line off](https://connectbyjbrh.com/docs/phone/line-off/): What switching a phone line off does to a caller, to the call record and to work already scheduled on that line — and why it is not silence. - [Transfer and escalation](https://connectbyjbrh.com/docs/phone/live-transfer/): What an escalation phrase queues on a live call, why the transfer capability is asked of the provider rather than assumed, and what the live carrier does not carry. - [What a setting cannot change](https://connectbyjbrh.com/docs/phone/model-limits/): Findings the call review counts but does not score, why they come with no control to turn, and the two behaviours proven unreachable by prompting. - [Multilingual calling](https://connectbyjbrh.com/docs/phone/multilingual-calls/): Calls held in more than one language: how the opening choice is made, what may change part-way through, and what a mixed sentence does. - [Names heard on a call](https://connectbyjbrh.com/docs/phone/names-on-calls/): What happens to a name spoken on a call: the protected markers, why a form of address never becomes one, and every door it must pass on the way in and out. - [Calls that were never a conversation](https://connectbyjbrh.com/docs/phone/not-a-conversation/): no_answer, not_reached and silent failure are three different nothings. What each one means, how to tell them apart, and why none creates a lead. - [Placing outbound calls](https://connectbyjbrh.com/docs/phone/outbound-calls/): The five gates an outbound call passes before a number is dialled, what each refusal means, and how a call-back gets placed at all. - [Executing phone follow-ups](https://connectbyjbrh.com/docs/phone/phone-followup-drain/): The drain that places a due call-back, the gates each one passes, the retry when no voice worker is ready, and the point at which a late follow-up is abandoned. - [Phone line health](https://connectbyjbrh.com/docs/phone/phone-health/): The four things line health reports about a phone line, what each one means for somebody ringing the number, and why none of them has to be cleared by hand. - [Phone for the Owner and for a customer](https://connectbyjbrh.com/docs/phone/phone-owner-tenant/): What the phone channel does identically for the operator and for a customer workspace, what a plan changes, and the small set of things that stay operator-only. - [Promises made on a call](https://connectbyjbrh.com/docs/phone/promise-integrity/): The rule that refuses a follow-up time the caller never said, what counts as agreeing to one, when a read-back is asked, and the finding for an empty promise. - [The realtime voice engine](https://connectbyjbrh.com/docs/phone/realtime-engine/): The speech-to-speech calling path: how a workspace turns it on, what the worker is given for each call, and what it is never allowed to know. - [Regional speaking style](https://connectbyjbrh.com/docs/phone/regional-speech/): The regional speaking-style layer: the prompt directions it adds, the things it cannot touch, and why a rendered cadence rule was removed rather than kept. - [The response watchdog](https://connectbyjbrh.com/docs/phone/response-watchdog/): The timer that asks a stalled model to answer: why its default is 5.5 seconds, what disarms it, and how a nudge can cancel the very reply it was waiting for. - [A returning caller](https://connectbyjbrh.com/docs/phone/returning-caller/): The second time somebody rings: what Connect has already, how little of it reaches the conversation, and why continuity is not the same as recital. - [Session limits and long calls](https://connectbyjbrh.com/docs/phone/session-limits/): The model's session cap, the context window, the provider cap and the product's own thirty-minute ceiling — which one ends a long call, and what a caller notices. - [Silence and check-ins](https://connectbyjbrh.com/docs/phone/silence/): What Connect does when nobody is speaking: how presence is tracked, why nothing is said over a caller, and what a silent stretch leaves on the record. - [Calling from the browser](https://connectbyjbrh.com/docs/phone/softphone/): The browser line: a per-person SIP endpoint, why every state the dialler shows comes from a SIP event, and how a browser call actually makes a phone ring. - [Telling the voice how to speak](https://connectbyjbrh.com/docs/phone/speaking-guide/): The style block and the behaviour block: which settings become session parameters, which become instructions a model may only approximate, and which are neither. - [Stuck calls and the sweep](https://connectbyjbrh.com/docs/phone/stuck-calls/): Call rows left active by a worker that died or a browser call with no worker behind it, the sweep that closes them against the provider cap, and what it charges. - [Steering a live call](https://connectbyjbrh.com/docs/phone/supervisor/): The panel a colleague uses to steer a call in progress: why guidance never reaches the caller, and why pause, take over and release are read back out of the log. - [Call transcripts](https://connectbyjbrh.com/docs/phone/transcript/): How a call transcript is assembled turn by turn, what the latency beside a reply actually measures, and the three things a transcript is not. - [The carrier turn-based engine](https://connectbyjbrh.com/docs/phone/turn-based-engine/): The carrier webhook path — gather, reply, redirect — when it is the right engine for a line, and the three things it cannot do. - [Turn detection and end of speech](https://connectbyjbrh.com/docs/phone/turn-detection/): Deciding that the caller has finished speaking: the model's own detection, the host semantic path with dynamic endpointing, and how to choose between them. - [The budget that stops a call](https://connectbyjbrh.com/docs/phone/voice-budget/): The budget question asked before an outbound call and before answering an inbound one, what a refused caller hears, and how the quota breaker differs from it. - [What a call costs](https://connectbyjbrh.com/docs/phone/voice-cost/): Why a voice call is metered by modality rather than by a total token count, the reporting field that never existed, and what a call reporting no tokens is charged. - [Call quality review](https://connectbyjbrh.com/docs/phone/voice-lab-review/): What a finished call is scored on: deterministic findings with the setting each one points at, the model's opinion kept separate, and limits that do not lower the score. - [The Voice Lab](https://connectbyjbrh.com/docs/phone/voice-lab/): The screen where a line's voice is tuned: engine settings that take effect exactly, steering text the model interprets, drafts and test calls. - [Voice profiles](https://connectbyjbrh.com/docs/phone/voice-profile/): Named bundles of voice settings: where one can be attached, the six-step resolution order that decides which wins, and what is recorded on the call. - [The voice worker](https://connectbyjbrh.com/docs/phone/voice-worker/): The process that holds a realtime call: how it starts, what it heartbeats, how a deploy drains it, and what a caller gets when none is running. - [Capacity and admission control](https://connectbyjbrh.com/docs/phone/worker-capacity/): How admission decides a call can be taken: load per core, the 0.85 threshold, why a silent worker reads as free, and what saturation does to a caller. ## Email - [Email in Connect](https://connectbyjbrh.com/docs/email/): The email channel end to end: the providers you can connect, what a mailbox owns, how a provider message becomes canonical, and where every other email page sits. - [Approving and rejecting a draft](https://connectbyjbrh.com/docs/email/approve-reject/): The two decisions on a waiting reply, what each one records, why a rejection is not a lesson, and who is accountable afterwards. - [Email attachments](https://connectbyjbrh.com/docs/email/attachments/): What Connect records about a document attached to an email, what it deliberately does not keep, and what a reply looks like when the enclosure was the message. - [Blocking a sender](https://connectbyjbrh.com/docs/email/blocking/): Blocking a sender writes a memory row tagged block:email, not a column — which is why it holds across channels and across future conversations. - [Bounces](https://connectbyjbrh.com/docs/email/bounces/): What Connect does when a message comes back undelivered: permanent against temporary failure, which one takes an address out of use, and how a person clears it. - [Large batches and bursts](https://connectbyjbrh.com/docs/email/burst-handling/): What happens when hundreds of messages arrive at once: the two different orderings involved, why screen cost stays flat, and what a burst can genuinely distort. - [Spam complaints](https://connectbyjbrh.com/docs/email/complaints/): What a spam complaint changes in Connect: escalation instead of a reply, a suppressed address at the provider, and a reputation state that can stop outreach. - [Connecting Gmail](https://connectbyjbrh.com/docs/email/connect-gmail/): Connecting a Google mailbox: the consent path, why signing in and connecting a mailbox are different acts, and what the mailbox row holds afterwards. - [Connecting an IMAP and SMTP server](https://connectbyjbrh.com/docs/email/connect-imap-smtp/): Connecting a mailbox on your own mail server: the two halves of the connection, what a saved connection proves, and the ladder of checks that proves the rest. - [Resolving a sender to a person](https://connectbyjbrh.com/docs/email/contact-resolution/): How an email address becomes an identity, an identity a person and a person part of a company — and what happens the first time a stranger writes to you. - [The daily email allowance](https://connectbyjbrh.com/docs/email/daily-allowance/): What the daily email allowance counts, what happens when it is spent, and why the read cursor deliberately stays where it is on a refusal. - [Deliverability](https://connectbyjbrh.com/docs/email/deliverability/): What Connect controls about whether mail arrives, what belongs to your own sending domain and its history, and the order worth fixing things in. - [Do not contact](https://connectbyjbrh.com/docs/email/dnc/): The strongest entry in Connect's compliance record: what a do-not-contact instruction stops, how it is set, and why the Connect Assistant cannot lift one. - [How a reply is drafted](https://connectbyjbrh.com/docs/email/draft-generation/): What goes into a reply before a word of it is written: the thread, grounded knowledge, memory at four tiers, the rules — and the answers Connect declines to give. - [Editing a draft before it goes](https://connectbyjbrh.com/docs/email/edit-draft/): Changing a reply before it goes out: which fields are editable, why the sending mailbox is not, and what your edit does to the record. - [Following up by email](https://connectbyjbrh.com/docs/email/email-follow-up/): Creating a dated commitment to write again, what is drafted when it falls due, and the reference rule that stops the same follow-up existing twice. - [Email for the Owner and for a customer](https://connectbyjbrh.com/docs/email/email-owner-tenant/): Email runs on one implementation behind two doors. What the plan changes for a customer, what is identical, and where the asymmetry has actually gone wrong before. - [A send that failed](https://connectbyjbrh.com/docs/email/failed-send/): A message that did not go: the failure classes, which ones are worth another attempt, what Connect completed anyway, and where the failure appears. - [Gmail history sync](https://connectbyjbrh.com/docs/email/gmail-history-sync/): How a Gmail mailbox resumes by history ID instead of re-reading, what a gap in that history means, and what has to happen when the provider can no longer answer. - [Gmail OAuth scopes and why each is asked for](https://connectbyjbrh.com/docs/email/gmail-scopes/): The permissions a Google mailbox connection asks for, the capability behind each one, and precisely what stops working when one is withheld or withdrawn. - [Writing back to Gmail](https://connectbyjbrh.com/docs/email/gmail-writeback/): After Connect answers a Gmail thread it labels it and marks it read in the customer's own mailbox — and a failure to do so never blocks the reply. - [Giving guidance on a thread](https://connectbyjbrh.com/docs/email/guidance/): The one-line direction you give on a thread: where it is stored, how far it reaches, and when it should be a standing instruction instead. - [Held drafts](https://connectbyjbrh.com/docs/email/held-drafts/): What happens to a reply Connect has written but is not allowed to send yet: where it waits, what the recipient sees, and how it is released. - [Rendering HTML email safely](https://connectbyjbrh.com/docs/email/html-email/): How Connect renders an HTML message: what the sanitiser removes, why remote images never load from the sender, and what you read instead. - [IMAP UID and cursor lifecycle](https://connectbyjbrh.com/docs/email/imap-cursor/): The UID cursor on an IMAP mailbox: what it records, the only outcome that advances it, and the two server-side events that can invalidate it entirely. - [Syncing an inbox](https://connectbyjbrh.com/docs/email/inbox-sync/): How a mailbox is read: what the first pass does that no later pass repeats, what each pass fetches, and what bounds a single pass rather than letting it run away. - [Autonomy on one mailbox](https://connectbyjbrh.com/docs/email/mailbox-autonomy/): Giving one address its own rule about what Connect may do: how the endpoint scope resolves against the channel and the workspace, and when it is the right tool. - [Disconnecting a mailbox](https://connectbyjbrh.com/docs/email/mailbox-disconnect/): Removing a mailbox from a workspace: exactly what stops, exactly what is kept, what happens to work in flight, and the safer order to do it in. - [Mailbox health](https://connectbyjbrh.com/docs/email/mailbox-health/): Why a mailbox that authenticates can still be failing, what the health verdicts on the row are derived from, and which action each situation actually calls for. - [Mailbox roles](https://connectbyjbrh.com/docs/email/mailbox-roles/): Why a mailbox carries a role, what the role changes about which address a reply leaves from and how it is written, and how to choose one deliberately. - [Mailbox signatures](https://connectbyjbrh.com/docs/email/mailbox-signature/): Where a signature is stored, which messages it is applied to, how it interacts with a reply you have edited, and what this documentation can and cannot say about footers. - [Mailboxes](https://connectbyjbrh.com/docs/email/mailboxes/): What one mailbox row owns, how several run at once in a workspace, what changes when you add another, and the defect that made a connected mailbox invisible. - [From a provider message to a canonical one](https://connectbyjbrh.com/docs/email/message-canonicalisation/): The journey from a provider's own message record to the canonical thread, message and contact the engine reads — and why the engine is not allowed near the provider table. - [Connecting a Microsoft mailbox](https://connectbyjbrh.com/docs/email/microsoft-graph/): Connecting a Microsoft mailbox over Graph: what the adapter covers, the two places it differs from Gmail, and the much larger part that is identical. - [Outreach email versus a customer reply](https://connectbyjbrh.com/docs/email/outreach-email/): Outreach and a reply to a customer are two paths with different gates. What each must pass, why they are never merged, and what that costs in volume. - [The primary mailbox](https://connectbyjbrh.com/docs/email/primary-mailbox/): What falls back to a workspace's default sending mailbox, how that default is expressed and changed, and what to do when a workspace appears to have none. - [A quiet mailbox](https://connectbyjbrh.com/docs/email/quiet-mailbox/): A mailbox that authenticates and returns nothing: what the state means, the four ordinary reasons for it, and why it is reported as a signal rather than an error. - [Regenerating a draft](https://connectbyjbrh.com/docs/email/regenerate-draft/): When writing a reply again is the right move rather than editing it, what a fresh pass picks up, and what regenerating costs you. - [Remote images in email](https://connectbyjbrh.com/docs/email/remote-images/): Why an image in a received message loads through Connect's proxy instead of your browser, and what that changes for the sender and for you. - [Proof that a message was sent](https://connectbyjbrh.com/docs/email/send-evidence/): Why Connect will not call a message sent without the provider's own acknowledgement, what the third state means, and how a message in doubt is resolved. - [Sending email](https://connectbyjbrh.com/docs/email/sending/): The path an outbound message takes through Connect's single send boundary, the checks along it, and the narrow meaning the word sent may carry. - [The suppression list](https://connectbyjbrh.com/docs/email/suppression-list/): The one list checked before any outreach: what puts an address on it, what it blocks, who may take an entry off, and how it differs from blocking a person. - [Conversation threads](https://connectbyjbrh.com/docs/email/threads/): How a canonical thread is formed, which signals attach a message to one, what a person's own marks on a thread control, and the ordinary ways a thread breaks. - [Triage and priority](https://connectbyjbrh.com/docs/email/triage/): How a thread gets a priority, why `threads.priority` changes what the engine does next, and which triage marks belong to you alone. - [Unsubscribe](https://connectbyjbrh.com/docs/email/unsubscribe/): How Connect honours an unsubscribe: the request is acted on rather than answered, a do-not-contact entry is written, and every send path checks it. ## WhatsApp - [WhatsApp in Connect](https://connectbyjbrh.com/docs/whatsapp/): WhatsApp as a Connect channel: the two ways a number is connected to Meta, what Meta decides, and where every WhatsApp topic in this manual sits. - [Setting up WhatsApp](https://connectbyjbrh.com/docs/whatsapp/channel-setup/): Connecting WhatsApp in a workspace: Official API credentials or Meta's QR-linked coexistence route, the webhook, the autonomy decision, and the test that proves it. - [Continuing a WhatsApp conversation](https://connectbyjbrh.com/docs/whatsapp/conversation-continuity/): What Connect carries from one WhatsApp message to the next: the thread, the relationship, memory and knowledge — and how a long silence is treated. - [Receiving a WhatsApp message](https://connectbyjbrh.com/docs/whatsapp/inbound-webhook/): How a WhatsApp message reaches Connect: Meta's signed webhook call, which workspace it belongs to, every message type it can carry, and the record it becomes. - [Delivery and read status](https://connectbyjbrh.com/docs/whatsapp/message-status/): Delivery and read receipts on WhatsApp: what Meta reports, what Connect stores, what it refuses to infer, and the billed category that rides along with a status. - [Opting out of WhatsApp](https://connectbyjbrh.com/docs/whatsapp/opt-out/): What a customer can say to stop WhatsApp messages, how Connect honours it, where the suppression is recorded, and what still reaches them afterwards. - [Recognising who sent a WhatsApp message](https://connectbyjbrh.com/docs/whatsapp/person-resolution/): How a WhatsApp number becomes a named Person in your relationships, what happens when the sender is unknown, and how a wrong match is corrected. - [The WhatsApp business identity](https://connectbyjbrh.com/docs/whatsapp/provider-identity/): The number, the display name and the verification mark a customer sees on a WhatsApp chat: what Meta owns, what the connection mode changes, and what Connect cannot. - [Replying on WhatsApp](https://connectbyjbrh.com/docs/whatsapp/replying/): How a WhatsApp reply is written, what decides whether it is sent or held for approval, and what counts as evidence that it actually went. - [Follow-ups on WhatsApp](https://connectbyjbrh.com/docs/whatsapp/whatsapp-follow-up/): Scheduling a WhatsApp follow-up: what can be promised, what Meta's 24-hour window allows, and what happens when the due time arrives and only a template will do. - [What WhatsApp cannot do here](https://connectbyjbrh.com/docs/whatsapp/whatsapp-limits/): The honest boundaries of WhatsApp in Connect: two things not proven in production, what Meta decides rather than Connect, and the limits that are Connect's own. - [WhatsApp for the Owner and for a customer](https://connectbyjbrh.com/docs/whatsapp/whatsapp-owner-tenant/): One WhatsApp implementation, two audiences: what the Owner and a customer workspace share, what is separate, and why a test on one proves nothing about the other. ## SMS - [SMS in Connect](https://connectbyjbrh.com/docs/sms/): SMS in Connect is a foundation: inbound, dedupe, STOP and suppression work; outbound depends entirely on the provider, and the live carrier carries no SMS. - [DLT registration in India](https://connectbyjbrh.com/docs/sms/dlt/): What DLT registration means for a business sending commercial SMS in India, the three registrations involved, and why it is a process with the operators, not a setting. - [Receiving SMS](https://connectbyjbrh.com/docs/sms/inbound-sms/): How a text message reaches Connect: the provider webhook, the workspace it resolves to, the record it becomes, and what receiving alone does not give you. - [Duplicate SMS](https://connectbyjbrh.com/docs/sms/sms-dedupe/): Why the same text message can arrive at Connect more than once, what key stops a second copy becoming a second conversation, and the one case it cannot cover. - [Sending SMS: what is available today](https://connectbyjbrh.com/docs/sms/sms-outbound-status/): The honest state of outbound SMS: what the provider decides, why the carrier on the live account carries none, and what the Phone screen shows instead of a thread. - [SMS for the Owner and for a customer](https://connectbyjbrh.com/docs/sms/sms-owner-tenant/): Whether SMS behaves differently on the Owner account and in a customer workspace: the same code path, the same provider limit, and the one real difference. - [Attaching an SMS to a person](https://connectbyjbrh.com/docs/sms/sms-relationship/): How Connect turns the number that sent a text message into a Person, what it does when the number is unknown, and the near-misses that land a message on the wrong record. - [SMS suppression](https://connectbyjbrh.com/docs/sms/sms-suppression/): How a suppression entry is created on SMS, what it stops, how it differs from a do-not-contact directive, and who is allowed to clear one. - [STOP and opt-out](https://connectbyjbrh.com/docs/sms/stop/): The opt-out words Connect honours in a text message, what is written when one arrives, how far the refusal reaches, and how quickly it takes effect. ## Prospects - [Prospecting in Connect](https://connectbyjbrh.com/docs/prospects/): The prospecting section: the stages from a discovery brief to a first reply, the evidence rule underneath them, and where each page sits. - [Discovery running in the background](https://connectbyjbrh.com/docs/prospects/background-discovery/): Discovery that runs on a schedule rather than on a button: what it does between visits, what it consumes, and how you see progress. - [Collecting candidates](https://connectbyjbrh.com/docs/prospects/candidate-collection/): The stage between a search and a researched prospect: where a candidate comes from, what is stored about it, and what is deliberately left undecided. - [Stopping a cold sequence](https://connectbyjbrh.com/docs/prospects/cold-sequence-stop/): Every event that ends a cold outreach sequence, why each takes effect at once rather than at the next scheduled step, and how to confirm one stopped. - [The compliance check before outreach](https://connectbyjbrh.com/docs/prospects/compliance-check/): Do-not-contact, suppression, unsubscribe, complaints and prior contact, all checked in one place before any outreach leaves a workspace. - [Evidence for a contact address](https://connectbyjbrh.com/docs/prospects/contact-evidence/): How a prospect's address earns its place: where it was found, how that origin is stored, and what makes one address usable and another not. - [Contactability](https://connectbyjbrh.com/docs/prospects/contactability/): The gap between a business you can research and one you can write to, why the two counts differ, and what to do with the difference. - [Finding the right person](https://connectbyjbrh.com/docs/prospects/decision-makers/): How a role at a prospect is inferred from public material, why it is recorded as an inference, and what that means for who a first message names. - [Deep research on a prospect](https://connectbyjbrh.com/docs/prospects/deep-research/): The second, deeper pass over a prospect: what it adds, what it consumes, and the rule that decides which candidates are worth it. - [Describing who you want to reach](https://connectbyjbrh.com/docs/prospects/discovery-criteria/): What a discovery brief holds, which parts become hard filters and which only steer research, and how to write one that returns real work. - [Evidence on a prospect](https://connectbyjbrh.com/docs/prospects/evidence/): Why every claim on a prospect carries the source it came from, what qualifies as backing, and what happens to a statement that has none. - [First outreach](https://connectbyjbrh.com/docs/prospects/first-outreach/): The first message to a prospect: what goes out, what is held and why, and what is written to the record in both cases. - [Why this prospect](https://connectbyjbrh.com/docs/prospects/fit-reason/): The sentence explaining why an organisation is on your list: what it may cite, what it is forbidden to say, and how to fix one that reads wrong. - [Location and scope](https://connectbyjbrh.com/docs/prospects/location-scope/): How a place in a discovery search is interpreted, what widening it actually costs, and why a tighter area usually returns more usable prospects. - [Connect does not guess email addresses](https://connectbyjbrh.com/docs/prospects/no-guessed-email/): Connect never constructs a prospect's email contact from a name and a domain. What that rule costs, what it buys, and what happens to a prospect without one. - [The angle for first contact](https://connectbyjbrh.com/docs/prospects/personalised-angle/): The opening line of a first message: how it is grounded in sourced claims, what it is refused permission to say, and what makes one read as automated. - [What prospecting costs](https://connectbyjbrh.com/docs/prospects/prospect-costs/): Where prospecting spends money, how the cost router decides a deeper pass is worth running, and which screen shows what a run consumed. - [The numbers above the list](https://connectbyjbrh.com/docs/prospects/prospect-counts/): What each headline number above the prospect list counts, and the paging defect that once made every one of them stop at five hundred. - [Keeping prospect research fresh](https://connectbyjbrh.com/docs/prospects/prospect-freshness/): Prospect research ages at different speeds. What is re-checked, what is left alone, and the control that stops re-research becoming a standing bill. - [Resolving a prospect to an existing relationship](https://connectbyjbrh.com/docs/prospects/prospect-identity/): The check that recognises a discovered organisation as somebody you already deal with, what it matches on, and what happens when it fires. - [Prospecting for the Owner and for a customer](https://connectbyjbrh.com/docs/prospects/prospect-owner-tenant/): Prospecting is one implementation serving two audiences. What is identical, what the plan bounds, and why a tenant sometimes sees a 403 instead. - [The prospect record](https://connectbyjbrh.com/docs/prospects/prospect-passport/): Every part of a prospect record, which parts a person supplied, which came from research with a source attached, and which are recalculated. - [A prospect replies](https://connectbyjbrh.com/docs/prospects/prospect-reply/): What happens when a prospect answers: how the reply is classified, what it changes about the record, and which answers end the cold path immediately. - [From prospect to opportunity](https://connectbyjbrh.com/docs/prospects/prospect-to-opportunity/): When a researched prospect becomes a deal on the pipeline: what is created, what is linked rather than copied, and what deliberately stays behind. - [Uploading your own list](https://connectbyjbrh.com/docs/prospects/prospect-upload/): Bringing a list you already own into Connect: the file, what is checked on every row, what happens to a row that fails, and what is never added. - [Researching a candidate](https://connectbyjbrh.com/docs/prospects/public-source-research/): What Connect reads about a candidate, what it extracts, and why text fetched from a stranger's website is treated as data rather than instruction. - [Qualifying a prospect](https://connectbyjbrh.com/docs/prospects/qualification/): How researched claims become a fit judgement and a score, what the score is allowed to decide on its own, and how a person overrides it. - [Sender readiness](https://connectbyjbrh.com/docs/prospects/sender-readiness/): The checks that stand between a written first message and a send: which mailbox, whether it is healthy, what allowance is left, and which signature applies. ## Sales - [Sales in Connect](https://connectbyjbrh.com/docs/sales/): Opportunities, the pipeline and demos — and the line between a question Connect can answer from Knowledge and a commercial decision it must escalate. - [Escalating a commercial decision](https://connectbyjbrh.com/docs/sales/commercial-escalation/): What a refused commercial question looks like in Needs You, what the person deciding actually sees, and what happens to the customer afterwards. - [How a deal connects to people and companies](https://connectbyjbrh.com/docs/sales/deal-relationships/): The links between an opportunity, its person and its organisation — what each one is for, and exactly what a merge does to them. - [The next best action on a deal](https://connectbyjbrh.com/docs/sales/next-best-action/): How Connect picks the next thing to do on a deal, the records that evidence it, and what to change when the suggestion is wrong. - [Opportunities: the deal record](https://connectbyjbrh.com/docs/sales/opportunities/): What an opportunity holds — value in minor units, stage, the people it belongs to, the review flag — and what each field is actually used for. - [The pipeline board](https://connectbyjbrh.com/docs/sales/pipeline/): What the board shows, what dragging a card actually calls, and why a total on a board must be counted in the database rather than in the page. - [Quotes and sales documents](https://connectbyjbrh.com/docs/sales/quotes-and-documents/): A quote in Connect is a file, not a special object: what can be assembled, which terms it may contain, and where its versions and provenance live. - [Price, SLA and warranty: what Connect may say](https://connectbyjbrh.com/docs/sales/safe-sales/): Connect does not invent commercial terms. What counts as grounded, what is refused and escalated instead, and how a breach is caught on a live call. - [Follow-ups on a deal](https://connectbyjbrh.com/docs/sales/sales-follow-ups/): What raises a chase on an opportunity, how the channel is chosen, and the duplicate rule that stops one customer being pursued twice for the same thing. - [Sales for the Owner and for a customer](https://connectbyjbrh.com/docs/sales/sales-owner-tenant/): The pipeline is one implementation serving both audiences. What a plan bounds, and why two commercial screens are correctly operator-only. - [Stage rules and refusals](https://connectbyjbrh.com/docs/sales/stage-rules/): Why a deal will not move: the four shapes a stage restriction takes, what a refusal tells you, and why declining is a correct answer. - [Closing a deal: won and lost](https://connectbyjbrh.com/docs/sales/won-and-lost/): What each closing outcome records, what it starts or stops downstream, and what to do with the commitments the deal made before it closed. ## Relationships - [Relationships in Connect](https://connectbyjbrh.com/docs/relationships/): The section map: Person, Identity and Company, the console that answers one relationship for both audiences, and where every other page here sits. - [Companies](https://connectbyjbrh.com/docs/relationships/companies/): The company record, how several people attach to one organisation, what belongs to the company rather than to a human, and when not to create one. - [The contact brief](https://connectbyjbrh.com/docs/relationships/contact-brief/): The short block about a person that a channel is given before it answers: what is in it, the character budgets, and why every line has to earn its place. - [One person across phone, email and WhatsApp](https://connectbyjbrh.com/docs/relationships/cross-channel-identity/): How the same human is recognised when they arrive on a second channel, what counts as evidence, and why a likeness is a proposal rather than a match. - [Customer 360](https://connectbyjbrh.com/docs/relationships/customer-360/): One person's whole history in a single view: what is assembled into it, which service each part comes from, and what it deliberately leaves out. - [Duplicate detection](https://connectbyjbrh.com/docs/relationships/duplicates/): How two records come to describe one human, what a duplicate proposal is and is not, and why nothing is ever joined without a person saying so. - [Identities](https://connectbyjbrh.com/docs/relationships/identities/): One address on one channel is its own row: how identities attach to a person, how they are keyed, and what happens when one is attached to the wrong human. - [Lifecycle stages](https://connectbyjbrh.com/docs/relationships/lifecycle-stages/): The six stages a relationship moves through, what may move it, why becoming a client needs a person, and where the history of every move is kept. - [What a merge preserves](https://connectbyjbrh.com/docs/relationships/merge-safety/): The itemised guarantee: identities, stages, follow-ups, deals, demos, cases and onboarding all survive a merge, and what happens when both sides hold one. - [Merging two records](https://connectbyjbrh.com/docs/relationships/merging/): Merging two records is a human decision: who makes it, what happens at the moment it runs, what changes for every channel, and what cannot be undone. - [People](https://connectbyjbrh.com/docs/relationships/people/): The person record: what you type, what Connect derives, what attaches from other services, and why blocking somebody is not a field on it. - [What Connect remembers about a person](https://connectbyjbrh.com/docs/relationships/person-memory/): The contact tier of memory: what Connect knows about one human, how a fact gets there, how it is read into an answer, and how anyone removes it. - [Relationships for the Owner and for a customer](https://connectbyjbrh.com/docs/relationships/relationship-owner-tenant/): The Owner calls them relationships and a customer calls them people: the same records, the same code, and the rewrite that makes one path serve both. - [Finding a person or company](https://connectbyjbrh.com/docs/relationships/relationship-search/): Finding a person or company: what is matched, why counting and paging happen in SQL, and how a per cent sign typed in the box is treated as a character. - [The relationship summary](https://connectbyjbrh.com/docs/relationships/relationship-story/): The written relationship summary: what it is assembled from, why it is not a stored document, and the name guard that rewrites it on the way out. - [Normalising a stage](https://connectbyjbrh.com/docs/relationships/stage-normalisation/): Why one column holds three vocabularies, how an unfamiliar stage word is read, and the message that went unanswered when a lookup raised instead. - [The customer timeline](https://connectbyjbrh.com/docs/relationships/timeline/): What appears on a person's timeline, where each entry comes from, the ordering rule, and the query cost that once made this screen expensive. ## Follow-ups - [Follow-ups in Connect](https://connectbyjbrh.com/docs/follow-ups/): The section map: what a dated commitment is, the six channels one can sit on, which of them a drain executes, and where every other page here lives. - [Approval on a follow-up](https://connectbyjbrh.com/docs/follow-ups/approval/): When executing a follow-up needs a person's yes, what the approver is shown, and what a rejection does to the commitment underneath. - [Choosing the channel](https://connectbyjbrh.com/docs/follow-ups/channel-choice/): Which of the six channels a commitment lands on, how a call decides it, when to use `any`, and the one channel that nothing ever sends. - [Completing a follow-up](https://connectbyjbrh.com/docs/follow-ups/completion/): The two ways a follow-up closes as kept, the third state that looks like completion and is not, and what each one records against the relationship. - [Creating a follow-up](https://connectbyjbrh.com/docs/follow-ups/creating/): The three routes to a follow-up — by hand, from a conversation, from a call — and what each one records about the promise behind it. - [Due dates and times](https://connectbyjbrh.com/docs/follow-ups/due-time/): How a spoken or written promise becomes a due timestamp: the phrases that parse, the timezone it lands in, and the fallback when nothing usable was said. - [Duplicate follow-ups](https://connectbyjbrh.com/docs/follow-ups/duplicates/): What counts as the same commitment: the person and the due time. What the rule catches, what it deliberately does not, and how to work with it. - [Changing a follow-up](https://connectbyjbrh.com/docs/follow-ups/editing/): What you can change on an open follow-up, which operation to reach for, and the one thing no operation will do — erase what already happened to the row. - [Executing a follow-up](https://connectbyjbrh.com/docs/follow-ups/execution/): What happens when a row comes due: the drain that picks it up, the gates it passes through unchanged, and the three outcomes written back against it. - [Follow-ups for the Owner and for a customer](https://connectbyjbrh.com/docs/follow-ups/followups-owner-tenant/): One queue, one drain, two doors: what is identical for the Owner and a customer workspace, what differs, and the enquiry queue that belongs to neither. - [Overdue follow-ups](https://connectbyjbrh.com/docs/follow-ups/overdue/): Where a follow-up past its time shows up, how it is ranked against everything else a person owes, and the four things that clear it. - [The reason on a follow-up](https://connectbyjbrh.com/docs/follow-ups/reason/): Every follow-up carries a reason. What a usable one contains, the four that are not reasons at all, and who ends up reading it. - [A follow-up that is too late](https://connectbyjbrh.com/docs/follow-ups/stale/): A phone follow-up more than twenty-four hours late is closed rather than rung. The cut-off, the reasoning behind it, and what the closed row records. - [Follow-ups for a person to do](https://connectbyjbrh.com/docs/follow-ups/task-channel/): The `task` channel is work for a person, and no drain ever sends it. What lands there, where it appears, and why nothing sending it is correct. ## Support - [Support in Connect](https://connectbyjbrh.com/docs/support/): The section map: what a support case is, how onboarding works, why the relationship carries on after the sale, and where website enquiries actually live. - [What a case carries](https://connectbyjbrh.com/docs/support/case-context/): The history an open case is answered from: what is assembled, the budget it is assembled to, and the things deliberately left out of it. - [Escalating a case](https://connectbyjbrh.com/docs/support/case-escalation/): What makes a case stop and wait for a person, what the person is actually being asked to decide, and what the customer sees while it waits. - [Support cases](https://connectbyjbrh.com/docs/support/cases/): What a support case is in Connect, what opens one, the three verbs it moves through, and how it stays attached to the person it belongs to. - [Onboarding a new customer](https://connectbyjbrh.com/docs/support/onboarding/): The onboarding record after a deal is won: what it tracks, what Connect does between the steps, and why the plan is the workspace's rather than a template. - [The relationship after the sale](https://connectbyjbrh.com/docs/support/post-sale/): What carries over when a prospect becomes a client: the record, the memory and the commitments that continue, and the four rules that change. - [Resolving a case](https://connectbyjbrh.com/docs/support/resolving/): What closing a case actually records, what it changes on the relationship, and the four things it deliberately leaves exactly as they were. - [Website enquiries](https://connectbyjbrh.com/docs/support/website-enquiries/): Enquiries from the public JBRH website are held outside every workspace, on purpose. What that means, who works them, and why customers cannot see them. ## Assistant - [Connect Assistant](https://connectbyjbrh.com/docs/assistant/): What the Connect Assistant is, the 66 tools behind it, how every write reaches a record, and the authority it deliberately does not have. - [Proposed actions](https://connectbyjbrh.com/docs/assistant/action-cards/): Anything the Assistant would change arrives first as a card: the action, the reason, the arguments you can edit, and a confirmation that nothing has happened yet. - [What the Assistant may not do](https://connectbyjbrh.com/docs/assistant/assistant-authority/): The Assistant is given deliberately narrower rights than the person using it: no pricing, no clearing a do-not-contact entry, and no way around a workspace's own rules. - [Correcting a fact without leaving the Assistant](https://connectbyjbrh.com/docs/assistant/assistant-memory/): Turning something you said in conversation into what Connect actually knows: which tier it lands in, how a block is stored, and what forgetting does. - [The Assistant on a phone and on a wide screen](https://connectbyjbrh.com/docs/assistant/assistant-responsive/): Three layouts for one Assistant: full screen on a phone, a sidebar from 600px, a column on a wide screen — and how the on-screen keyboard is handled. - [The Assistant's tools](https://connectbyjbrh.com/docs/assistant/assistant-tools/): The Assistant has 66 tools. What the reading ones reach, what the writing ones change, and the rule that every write calls the service owning the record. - [Where an answer came from](https://connectbyjbrh.com/docs/assistant/evidence-and-citation/): How the Assistant shows what an answer was built from, how to read the folded step detail, and what to do when it cannot name a source. - [Running an action](https://connectbyjbrh.com/docs/assistant/executing-actions/): What happens the moment you confirm: which service runs, which gates still apply, what the result shows you, and what is written to the decision log. - [Rating an answer](https://connectbyjbrh.com/docs/assistant/feedback/): What rating an Assistant answer records, who can read it, and why a correction you want to stick belongs in Memory rather than in a rating. - [Working with files in the Assistant](https://connectbyjbrh.com/docs/assistant/files-in-assistant/): Attaching a document to the Assistant, the formats it reads, what it refuses, and where a document it creates or changes actually goes. - [Conversation history](https://connectbyjbrh.com/docs/assistant/history/): What an Assistant conversation keeps, where it lives, why it is not the same thing as memory, and how to start a genuinely clean thread. - [The live status line](https://connectbyjbrh.com/docs/assistant/live-stream/): The single line the Assistant shows while it works: what Understanding means, what the step count counts, and what Stop actually stops. - [Needs You inside the Assistant](https://connectbyjbrh.com/docs/assistant/needs-you-in-assistant/): The queue of decisions waiting on a person, worked from inside the Assistant panel: what is shown, what deciding there does, and what it will not let you do. - [Opening the Assistant](https://connectbyjbrh.com/docs/assistant/opening/): Where the Connect Assistant lives, how the panel opens over any screen, and what it already knows about your workspace the moment it does. - [Answers that change nothing](https://connectbyjbrh.com/docs/assistant/read-only-answers/): Most of what the Assistant does is read and answer. The tools that can only read, how to recognise one at a glance, and why the default matters. - [Working on one record](https://connectbyjbrh.com/docs/assistant/record-context/): Pinning a person, company, deal or thread to an Assistant tab: what changes in the answers, what it overrides, and when to unpin. - [Screen awareness](https://connectbyjbrh.com/docs/assistant/screen-context/): What the Assistant is told about the page you are on, and the database check that runs before any of it is allowed to shape an answer. - [Asking about selected text](https://connectbyjbrh.com/docs/assistant/selected-text/): Highlighting a passage and asking about it: exactly what leaves the page, what stays behind, and the questions it answers better than any other route. - [When the Assistant finds two answers](https://connectbyjbrh.com/docs/assistant/source-conflict/): What happens when a memory, a knowledge source and a customer's own message do not agree: what is shown, what is never decided silently, and who settles it. - [Suggested commands](https://connectbyjbrh.com/docs/assistant/suggested-commands/): The prompts the Assistant offers before you type: what they are drawn from, what they are not, and why clicking one still asks before it acts. - [Assistant tabs](https://connectbyjbrh.com/docs/assistant/tabs/): Each Assistant tab keeps its own conversation, follow-up chain, record, draft, files and scroll position — and why that separation is the point. - [When the Assistant is not sure](https://connectbyjbrh.com/docs/assistant/uncertainty/): Why an admission beats a plausible guess in a system that acts on its answers, and what the Assistant offers you in place of one. - [Undoing an action](https://connectbyjbrh.com/docs/assistant/undo/): Some Assistant actions reverse cleanly, some cannot be reversed at all, and the line between them follows whether the change ever left your workspace. ## Memory - [Memory in Connect](https://connectbyjbrh.com/docs/memory/): What Connect remembers about a business and its people: four tiers resolved narrowest-first, how each is written, and how a person reads or forgets any of it. - [Business memory](https://connectbyjbrh.com/docs/memory/business-memory/): The workspace tier: what a business should tell Connect once so it holds everywhere, and the four kinds of line that do not belong there. - [Channel and endpoint memory](https://connectbyjbrh.com/docs/memory/channel-context/): The two middle tiers: what Connect should know about a whole channel, and what belongs to one mailbox or one phone number instead. - [How a memory is created](https://connectbyjbrh.com/docs/memory/creating-memory/): The four ways a memory gets written in Connect — by hand, by the Assistant, at the end of a call, or as a deliberate correction — and what each one records. - [Forgetting something](https://connectbyjbrh.com/docs/memory/deleting/): What forgetting actually removes in Connect, what deliberately survives it, and the two deletions that have consequences people do not expect. - [Block and guidance directives](https://connectbyjbrh.com/docs/memory/directives/): The two memories that direct behaviour rather than describe it: a block carried in the tag list, and a standing instruction carried in the text. - [Editing a memory](https://connectbyjbrh.com/docs/memory/editing/): Changing a memory that is worded badly or plainly wrong: what an edit touches, what it does not touch, and when superseding is the right move instead. - [Memory from a phone call](https://connectbyjbrh.com/docs/memory/memory-from-call/): What a phone call leaves behind: the end-of-call write, the two filters that stop a thin call producing facts, and the guards that refuse a misheard name. - [Memory from an email or a chat](https://connectbyjbrh.com/docs/memory/memory-from-conversation/): Why an email or a chat does not silently become memory, what a person or the Assistant may take from one, and how a written instruction inside content is treated. - [How memory reaches a reply](https://connectbyjbrh.com/docs/memory/memory-in-channels/): The door memory goes through on each channel, the character budgets on the voice path, and why instruction size is a latency decision rather than a preference. - [Person memory](https://connectbyjbrh.com/docs/memory/person-memory/): The contact tier: what Connect keeps about one human, how it follows them across channels, and the 600-character block that reaches a live call. - [Where a memory came from](https://connectbyjbrh.com/docs/memory/provenance/): Why every memory needs an answer to 'who said so': the four origins, what the record keeps, and how to write a row that explains itself later. - [Superseding a memory](https://connectbyjbrh.com/docs/memory/superseding/): Replacing a memory whose truth has changed while keeping the earlier statement readable, and why that is different from editing it in place. - [The four memory tiers](https://connectbyjbrh.com/docs/memory/tiers/): Workspace, channel, endpoint and contact: what each tier is for, how tiers() resolves them narrowest-first, and why an empty tier is still returned. - [Seeing what Connect knows](https://connectbyjbrh.com/docs/memory/viewing/): Where the memory viewer opens from, how it groups what it shows, and the second route through the Data grid when you want to read a whole tier at once. ## Knowledge - [Knowledge in Connect](https://connectbyjbrh.com/docs/knowledge/): Where a grounded answer comes from: the sources a workspace supplies, the authority each one carries, and how a few passages reach a reply. - [Extracting text from a source](https://connectbyjbrh.com/docs/knowledge/extraction/): How a file becomes text: direct decoding for Markdown and plain text, model reading for PDF, image and video, and the limits on both. - [The facts editor](https://connectbyjbrh.com/docs/knowledge/facts/): Typing a short grounded statement directly: the fields, what priority and keywords actually do, and when this beats uploading a document. - [How Knowledge is prepared for retrieval](https://connectbyjbrh.com/docs/knowledge/indexing/): What Connect actually builds from a source: heading-aware passages in the same database, no vector store, and an optional embedding column. - [Knowledge for the Owner and for a customer](https://connectbyjbrh.com/docs/knowledge/knowledge-owner-tenant/): One Knowledge implementation reached by two routes: what is identical for both audiences, what a plan scopes, and where a customer workspace stops. - [Knowledge and Fact are different things](https://connectbyjbrh.com/docs/knowledge/knowledge-vs-fact/): Knowledge is the body of material a workspace supplies; a Fact is one statement inside it. Blurring the two produces confident, unsupported answers. - [Who decides what is true](https://connectbyjbrh.com/docs/knowledge/owner-authority/): Authority is set by a person and enforced in code before the model sees anything, which is why no document and no message can promote itself. - [Instructions hidden in content](https://connectbyjbrh.com/docs/knowledge/prompt-injection/): Received and fetched text is data, never instruction. What is stripped, what is flagged, what stops before any model runs, and what none of it guarantees. - [Testing retrieval](https://connectbyjbrh.com/docs/knowledge/retrieval-test/): The search tool that shows what a question would actually fetch, how to read its score and authority columns, and what it cannot tell you. - [Retrieving Knowledge for an answer](https://connectbyjbrh.com/docs/knowledge/retrieval/): What is fetched for one question: eligibility, the scoring terms in order, the three labelled blocks, and why a live call gets only four entries. - [When two sources disagree](https://connectbyjbrh.com/docs/knowledge/source-conflict/): Contradiction detection when a source is added, why a conflicted source stops answering, and why nobody but a person may decide the winner. - [Knowledge sources](https://connectbyjbrh.com/docs/knowledge/sources/): What can be added as a Knowledge source, the size ceiling for each kind, the authority and scope it is given, and why one stops answering. - [Claims Knowledge does not support](https://connectbyjbrh.com/docs/knowledge/unsupported-claims/): What happens when an answer would need something Knowledge does not carry: no draft is written, a person is asked, and the miss is recorded. ## Autonomy - [What Connect may do](https://connectbyjbrh.com/docs/autonomy/): The controls deciding what Connect may send, call or do on its own: four modes, four scopes, the approval queue, and the decision log. - [Approvals](https://connectbyjbrh.com/docs/autonomy/approvals/): Waiting For You: how a held action is presented, what a person may change, the two decisions available, and what each one records. - [Asking before placing a call](https://connectbyjbrh.com/docs/autonomy/ask-before-calling/): Holding outbound calls for a human yes: what the setting covers, what the approver is shown, and what happens to a call-back that waits too long. - [How long the record is kept](https://connectbyjbrh.com/docs/autonomy/audit-retention/): How long decision records last, what actually limits an investigation, and why no age-based deletion schedule is published for them. - [The decision log](https://connectbyjbrh.com/docs/autonomy/audit-trail/): What was decided, by what, under which rule, and what happened — including the refusals, because a refusal is a decision like any other. - [Autonomy for the Owner and for a customer](https://connectbyjbrh.com/docs/autonomy/autonomy-owner-tenant/): One implementation serves both audiences: a customer gets the same modes, scopes, queue and log, with the plan bounding volume rather than permission. - [Turning Connect on and off](https://connectbyjbrh.com/docs/autonomy/connect-on-off/): The runtime switch: what stops when you turn Connect off, what carries on regardless, and the four things it deliberately does not change. - [Editing before approving](https://connectbyjbrh.com/docs/autonomy/editing-before-approval/): Changing a prepared reply before releasing it: which parts a person may alter, what the edit records, and when to regenerate instead. - [Exceptions to a rule](https://connectbyjbrh.com/docs/autonomy/exceptions/): Overriding a channel rule for one contact or one mailbox: when an exception is the right instrument, and the three tools often confused with it. - [The gates that always apply](https://connectbyjbrh.com/docs/autonomy/explicit-gates/): Suppression, blocks, allowances, evidence and workspace isolation: the refusals that stand even when a channel is set to autonomous. - [The four autonomy modes](https://connectbyjbrh.com/docs/autonomy/modes/): Off, draft only, ask before sending and autonomous: what each does to an outbound action, and the difference readers most often miss. - [What appears in Needs You](https://connectbyjbrh.com/docs/autonomy/needs-you-kinds/): Every sort of entry the attention list carries, what each one means, and the screen you go to in order to make it go away. - [How Needs You is ordered](https://connectbyjbrh.com/docs/autonomy/needs-you-ranking/): Why the list is not in arrival order: the signals that push an entry up, the ones that pull it down, and how your own triage feeds back into it. - [Needs You](https://connectbyjbrh.com/docs/autonomy/needs-you/): One ranked place for everything wanting a person: held decisions, mailboxes needing attention and line health, each clearing as its cause resolves. - [Setting autonomy per channel](https://connectbyjbrh.com/docs/autonomy/per-channel/): Email, WhatsApp, SMS and voice each carry their own autonomy mode. Why they usually should not match, and the configurations that work. - [Who may change what](https://connectbyjbrh.com/docs/autonomy/permissions/): Who is allowed to change autonomy, decide a held item and read the record — and the rights the Connect Assistant is never given. - [Rejecting an action](https://connectbyjbrh.com/docs/autonomy/rejecting/): Saying no to a held item: what happens to the prepared work, what is written down, and whether Connect tries the same thing again. - [Autonomy scopes](https://connectbyjbrh.com/docs/autonomy/scopes/): Contact, endpoint, channel and workspace: the four levels an autonomy rule can be set at, and why the narrowest one always wins. - [Autonomy and spend](https://connectbyjbrh.com/docs/autonomy/spend-context/): Permission and capacity are separate controls: how the plan allowance and the workspace budget limit what an autonomous channel actually does. - [Standing instructions](https://connectbyjbrh.com/docs/autonomy/standing-instructions/): Durable directions a person gives Connect: where they apply, how to write one that can be acted on, and how they differ from memory and autonomy. ## Files and data - [Files and data in Connect](https://connectbyjbrh.com/docs/files-data/): The two halves of Files and data: one file service shared by both audiences, and a grid over 13 record sheets that never writes to a table directly. - [Answering from a file](https://connectbyjbrh.com/docs/files-data/answer-from-file/): Grounding an answer in an attachment instead of in a model's memory: how Connect quotes a file, what happens when the file does not say, and what a citation means. - [Bulk selection and actions](https://connectbyjbrh.com/docs/files-data/bulk-actions/): Selecting many rows on the Data screen and acting on them at once: how a bulk change is applied row by row, and what a partial result means. - [Creating a file](https://connectbyjbrh.com/docs/files-data/create-file/): How Connect produces a file: what it can be built from, which formats it will and will not write, and where the finished document lands. - [Columns, order and visibility](https://connectbyjbrh.com/docs/files-data/data-columns/): Arranging a sheet on the Data screen: resizing, reordering, hiding and showing columns, what a hidden column still does, and how to keep an arrangement. - [Duplicates in the grid](https://connectbyjbrh.com/docs/files-data/data-duplicates/): How the Data screen surfaces records that look like the same person or company, what merging actually does, and why it is never done automatically. - [Filtering and searching a sheet](https://connectbyjbrh.com/docs/files-data/data-filtering/): Narrowing a sheet on the Data screen: how filters on several columns combine, how search differs from a filter, and why a typed wildcard is just a character. - [The Data grid](https://connectbyjbrh.com/docs/files-data/data-grid/): The Data screen: an Excel-like grid over thirteen record sheets, what each sheet holds, and why it is a view of Connect rather than a second database. - [Importing and exporting](https://connectbyjbrh.com/docs/files-data/data-import-export/): Getting records into and out of the Data screen: how an import is validated row by row, and why an exported CSV escapes cells that begin with an equals sign. - [The grid on a small screen](https://connectbyjbrh.com/docs/files-data/data-mobile/): What the Data screen becomes on a phone: the controls that survive the loss of width, the ones that are dropped, and why dropping them is the right answer. - [Sorting, grouping and freezing](https://connectbyjbrh.com/docs/files-data/data-sorting-grouping/): Ordering rows, gathering them under a shared value and pinning the columns you read against — and what happens when you use all three at once. - [The record of a file](https://connectbyjbrh.com/docs/files-data/file-audit/): The trail a file leaves in Connect: who added it, who changed it, what was refused, and what was produced from it — and what the trail deliberately does not hold. - [File versions](https://connectbyjbrh.com/docs/files-data/file-versions/): The version chain a file keeps in Connect: what one version records, what provenance means here, and how the chain relates to the audit trail. - [Understanding an image](https://connectbyjbrh.com/docs/files-data/image-understanding/): How Connect reads a photo or a screenshot: the image formats it accepts, what the model is actually shown, and the questions a picture cannot answer. - [Editing in the grid](https://connectbyjbrh.com/docs/files-data/inline-edit/): Changing a value in a cell on the Data screen: which fields accept an edit, which service actually performs it, and why some edits are refused. - [Linking a file to a record](https://connectbyjbrh.com/docs/files-data/linking-files/): Attaching a file to a company, a deal, a case or a conversation: what the link changes, what it does not, and where the file actually lives. - [Validating a file](https://connectbyjbrh.com/docs/files-data/mime-validation/): What Connect checks about a file before any parser touches it: the type check against the bytes, and the two structural attacks the checks exist to stop. - [Changing a file](https://connectbyjbrh.com/docs/files-data/modify-file/): Why changing a file in Connect always produces a new version instead of overwriting it, and exactly what the version you started from keeps. - [Previewing a file](https://connectbyjbrh.com/docs/files-data/preview/): What a file preview shows and what it deliberately does not: stored bytes for an image, extracted content for a document, and nothing fetched from the network. - [Parsing a file safely](https://connectbyjbrh.com/docs/files-data/safe-parsing/): Three refusals that keep document handling safe: external entity declarations, archives that expand out of proportion, and formulas neutralised on the way out. - [Saved views](https://connectbyjbrh.com/docs/files-data/saved-views/): What a saved view on the Data screen keeps, why it grants nobody any access they did not have, and how to get a sheet back to how it arrived. - [File formats Connect reads](https://connectbyjbrh.com/docs/files-data/supported-formats/): Every file format Connect reads, what is actually extracted from each one, and the limits worth knowing before you rely on an answer drawn from it. - [Reading tables out of a file](https://connectbyjbrh.com/docs/files-data/table-extraction/): How XLSX and delimited files are read into rows and columns, what survives the trip, and the four things that are reliably lost on the way. - [Reading text out of a document](https://connectbyjbrh.com/docs/files-data/text-extraction/): How words come out of a PDF, a DOCX, a PPTX or a plain file, what reading order means in practice, and what happens when a document has no text layer at all. - [Adding a file](https://connectbyjbrh.com/docs/files-data/upload/): Three ways to add a file — button, drag-and-drop, paste — what happens the instant it lands, and the checks it must pass before anything reads it. ## Account - [Account and access](https://connectbyjbrh.com/docs/account/): How you get into Connect, what a session is, which workspace you land in, who may change what, and the switches an individual person owns. - [Entitlements and runtime choice](https://connectbyjbrh.com/docs/account/entitlements/): Entitlement is what your plan grants; runtime is what your workspace has switched on, and Connect acts only when both agree. - [Signing in with Google](https://connectbyjbrh.com/docs/account/google-sign-in/): Google is the only way into Connect. What the sign-in asks for, what is kept afterwards, and the four reasons it can refuse you. - [How your Google account binds to a person](https://connectbyjbrh.com/docs/account/identity-binding/): Connect binds one Google identity to one user on first sign-in. Where that binding is stored, why there are two stores, and what a mismatch means. - [When a plan lapses](https://connectbyjbrh.com/docs/account/lapsed-plan/): What stops when a workspace plan is no longer live, what waits instead of failing, what is refused outright, and what is never deleted. - [The operator's workspace and a customer's](https://connectbyjbrh.com/docs/account/owner-vs-tenant/): One codebase serves the platform operator and every customer. The feature set is identical; the difference is commercial, plus two screens about running the platform. - [Your plan](https://connectbyjbrh.com/docs/account/plan/): A plan decides how much a workspace may do, never what it is allowed to do. What that distinction covers, and the one place it is easy to get backwards. - [Your profile](https://connectbyjbrh.com/docs/account/profile/): What Connect keeps about you personally is deliberately small. Where the line falls between your details and the workspace's, and why the signature is not yours. - [Security settings](https://connectbyjbrh.com/docs/account/security-settings/): The security controls a person genuinely has: the list of live sessions, one action that ends all the others, and what to do the day a device goes missing. - [Signing in as somebody else](https://connectbyjbrh.com/docs/account/session-replacement/): Signing in as a different person on the same browser ends the session that browser was holding — that one only, never that person's other devices. - [Sessions](https://connectbyjbrh.com/docs/account/sessions/): A signed-in browser, how long it stays signed in, what ends one, and why your other devices are unaffected by anything that happens to this one. - [Usage and allowances](https://connectbyjbrh.com/docs/account/usage/): What Connect counts against a plan, how a daily allowance is reserved before the work happens, and what you see as a limit gets close. - [Workspace administration](https://connectbyjbrh.com/docs/account/workspace-admin/): Memberships, roles and what an administrator may change — and the deliberate limit: no member management on the account screen. - [Which workspace you are in](https://connectbyjbrh.com/docs/account/workspace-resolution/): Every request runs inside exactly one workspace. How that one is chosen from your memberships, and why a second membership stops a sign-in rather than offering a choice. ## Security - [Security and isolation](https://connectbyjbrh.com/docs/security/): How one workspace is kept from another, what is recorded and reviewable, and what this section deliberately does not publish. - [Who can read the audit trail](https://connectbyjbrh.com/docs/security/audit-access/): Who can read the record of what Connect decided and did: the two doors onto one trail, what each shows, and what the trail deliberately does not hold. - [Authorisation](https://connectbyjbrh.com/docs/security/authorization/): Five different questions get called permission. The order they are asked in, which one produced your refusal, and how each one is worded. - [How provider credentials are stored](https://connectbyjbrh.com/docs/security/credential-sealing/): Provider credentials are sealed as they are saved and never shown again. What a screen displays instead, and why the database password lives in no file. - [The customer facade](https://connectbyjbrh.com/docs/security/customer-facade/): A customer session is served through a closed surface: what is not explicitly permitted is refused, and the refusal says so in plain words. - [What is kept and for how long](https://connectbyjbrh.com/docs/security/data-retention/): How long each class of record survives in Connect, what deleting something actually does, and the two classes that are deliberately kept longest. - [Proving a mailbox belongs to a workspace](https://connectbyjbrh.com/docs/security/mailbox-ownership/): The scoped lookup that replaced a bare fetch on four mailbox routes, what it prevents, and the single webhook still allowed to resolve differently. - [Multi-tenancy in Connect](https://connectbyjbrh.com/docs/security/multi-tenancy/): One application serves every business. What is genuinely common, what belongs to exactly one workspace, and where the data model draws that line. - [Proving a phone number belongs to a workspace](https://connectbyjbrh.com/docs/security/number-ownership/): How Connect proves a phone line really belongs to the workspace being served, and the class of defect that check exists to prevent. - [Public and authenticated surfaces](https://connectbyjbrh.com/docs/security/public-vs-private/): Which Connect surfaces answer without a session, which require one, and which are deliberately closed — with the rule that decides where a new surface belongs. - [Row-level security](https://connectbyjbrh.com/docs/security/rls/): The database applies its own workspace filter beneath the application. What that catches which application code structurally cannot, and what it refuses to write. - [Verifying an inbound webhook](https://connectbyjbrh.com/docs/security/webhook-verification/): What an inbound provider callback has to prove before Connect acts on it: origin, freshness, single use and a known route, plus one named exception. - [Workspace isolation](https://connectbyjbrh.com/docs/security/workspace-isolation/): The boundary between two businesses is enforced three separate times. What each layer catches, and why one careful layer was not judged enough. ## Workflows - [End-to-end workflows](https://connectbyjbrh.com/docs/workflows/): How every end-to-end flow in this manual is documented: the twelve stages, what each promises, how to read the failure column, and the index of every flow. - [An agent discovering Connect](https://connectbyjbrh.com/docs/workflows/a2a-discovery-flow/): How another agent finds Connect: fetching the Agent Card from its well-known URL, reading the published skills, and sending a message to one of them. - [Reviewing account security, end to end](https://connectbyjbrh.com/docs/workflows/account-security-review/): A working review of one workspace's access: the sessions, the provider grants, the stored credentials and the audit trail, with the question to ask of each. - [Adding a Knowledge source, end to end](https://connectbyjbrh.com/docs/workflows/add-knowledge/): From choosing a file to a passage that answers a question: every stage of adding a Knowledge source, with the status the record carries at each. - [Adding a colleague, end to end](https://connectbyjbrh.com/docs/workflows/adding-a-colleague/): How a second person gets into a workspace: membership, their own Google sign-in, the role that gates configuration, and what is recorded per person. - [An AI search engine citing a page](https://connectbyjbrh.com/docs/workflows/ai-citation/): The chain from crawl to citation to referral: what has to be true at each step, which steps can actually be measured from this side, and which cannot. - [Enforcing an allowance, end to end](https://connectbyjbrh.com/docs/workflows/allowance-enforcement/): The moment a daily allowance runs out: how the approach is checked, what the refusal says, what is held rather than lost, and how the work resumes. - [Approving a held action, end to end](https://connectbyjbrh.com/docs/workflows/approval-decision/): A held action from the moment it reaches the queue to the provider's acknowledgement: who may decide, what an edit changes, and what the log keeps. - [Asking the Assistant to do something, end to end](https://connectbyjbrh.com/docs/workflows/assistant-action/): From an instruction to an audited change: how a writing tool becomes a proposal, what the confirmation buys you, and where autonomy re-enters the path. - [Checking the Assistant's screen context](https://connectbyjbrh.com/docs/workflows/assistant-context-check/): The Assistant is told which screen and record you are on. That claim is checked against the database before it is trusted, and dropped when it does not hold. - [Correcting Connect from a conversation, end to end](https://connectbyjbrh.com/docs/workflows/assistant-correction/): From a wrong answer to changed behaviour: how a correction typed in conversation becomes a memory at a tier, and what proves it actually took effect. - [Working on a file with the Assistant, end to end](https://connectbyjbrh.com/docs/workflows/assistant-file/): Attaching a file to the Assistant and working on it: validation, extraction, the answer, the new version, and where the file ends up linked. - [Asking the Assistant a question, end to end](https://connectbyjbrh.com/docs/workflows/assistant-question/): A question typed into the Assistant, followed all the way to a grounded answer: what runs at each stage, what it costs, and where an answer loses its citations. - [Undoing an action, end to end](https://connectbyjbrh.com/docs/workflows/assistant-undo/): Undoing an Assistant action: the three outcomes — reversed, compensated, or recorded only — and how to tell which one your action will get. - [Changing what Connect may do, end to end](https://connectbyjbrh.com/docs/workflows/autonomy-change/): Changing an autonomy rule end to end: what takes effect at once, what the change cannot reach backwards, and where the change itself is recorded. - [Blocking a contact, end to end](https://connectbyjbrh.com/docs/workflows/blocking-someone/): One tag on one memory row, and what it stops across email, WhatsApp, SMS and voice — including the browser line a colleague dials from. - [Handling a bounce, end to end](https://connectbyjbrh.com/docs/workflows/bounce-handling/): A bounced message from the notification to the record: how permanent and temporary failures are told apart, what changes on the address, and what is never retried. - [Making a call from the browser](https://connectbyjbrh.com/docs/workflows/browser-call/): A person dialling from the browser: the SIP registration, the invite that does not dial the number in it, the bridge, and what is recorded as human-owned. - [The AI budget guard, end to end](https://connectbyjbrh.com/docs/workflows/budget-guard/): The AI budget guard on the voice path: when it is asked, what it refuses, what a caller hears instead of silence, and how a call gets through again. - [Editing many records at once, end to end](https://connectbyjbrh.com/docs/workflows/bulk-edit/): Selecting many rows in the Data grid and changing them together: how a selection becomes one service call per record, and what a partial result means. - [Ingesting a burst of mail, end to end](https://connectbyjbrh.com/docs/workflows/burst-ingest/): Hundreds of messages arriving at once: how they are taken in, the order they are processed, what the allowance holds back, and why no wave of replies follows. - [Escalating a call to a person](https://connectbyjbrh.com/docs/workflows/call-escalation/): When a caller asks for a person: what is queued, what the caller hears, what a colleague can do on the live call, and what a completed transfer still depends on. - [Recovering a failed call](https://connectbyjbrh.com/docs/workflows/call-recovery/): Every way a call can fail on this path and the recovery for each, in the order the failures are detected — from admission control to a late provider webhook. - [Reviewing calls as a routine](https://connectbyjbrh.com/docs/workflows/call-review-cycle/): A weekly pass over the call record: which fields to read first, what each pattern points at, and which findings a setting can fix rather than the model deciding. - [From a call to a customer relationship](https://connectbyjbrh.com/docs/workflows/call-to-relationship/): What survives a phone call: the person, the company, the timeline entry and the next action, and the rules that stop each of them being invented. - [Configuring a channel, end to end](https://connectbyjbrh.com/docs/workflows/channel-configuration/): The shape every channel setup shares in Connect — identity, credentials, routing, rules, verification — and the specific places email, WhatsApp, phone and SMS differ. - [A channel provider going down](https://connectbyjbrh.com/docs/workflows/channel-failure/): What happens when a channel's provider stops answering: how the failure is detected, what stops attempting, what carries on regardless, and how recovery works. - [Verifying a channel actually works](https://connectbyjbrh.com/docs/workflows/channel-verification/): The one test that proves each channel is really working, what each test does not prove, and why a saved setting and a green screen are not evidence. - [From client to support, end to end](https://connectbyjbrh.com/docs/workflows/client-to-support/): What carries over when a deal is won: onboarding, the first support case, and the continuity that depends on one person record rather than two. - [Closing a deal, end to end](https://connectbyjbrh.com/docs/workflows/close-deal/): What changes when an opportunity is marked won or lost: the stage rules, the stored value, the follow-ups that stop, and what picks the person up next. - [A commercial decision reaching a person](https://connectbyjbrh.com/docs/workflows/commercial-decision/): What happens when a customer asks a price, a warranty or a deadline that Knowledge does not support: the refusal, the escalation, the human decision and the reply. - [Answering a commercial question, end to end](https://connectbyjbrh.com/docs/workflows/commercial-question/): A customer asks what it costs: the grounded answer, the refusal, the escalation, the human decision, and how the same question stops recurring. - [Escalating a complaint, end to end](https://connectbyjbrh.com/docs/workflows/complaint-escalation/): How a complaint is recognised on any channel, who it reaches, what Connect commits to on the business's behalf, and what it deliberately refuses to promise. - [Handling a spam complaint, end to end](https://connectbyjbrh.com/docs/workflows/complaint-handling/): A spam complaint from the moment it arrives: how the recipient is identified, what is suppressed, and what it should change about the way a workspace sends. - [Connecting Gmail, end to end](https://connectbyjbrh.com/docs/workflows/connect-gmail-workflow/): Connecting a Google mailbox from the consent screen to the first synced thread, with the evidence that proves each step actually happened. - [Connecting an IMAP mailbox, end to end](https://connectbyjbrh.com/docs/workflows/connect-imap-workflow/): Connecting a plain IMAP and SMTP mailbox: what you supply, the two separate proofs that must pass, and what a half-working connection looks like. - [Finding a contact address, end to end](https://connectbyjbrh.com/docs/workflows/contact-discovery/): How Connect finds an address to write to, what it records about where the address came from, and why it will not construct one from a naming pattern. - [A search crawler fetching a page](https://connectbyjbrh.com/docs/workflows/crawler-access/): What a search crawler receives from this site, what it does not, how policy differs for search, user fetches and training, and how a bot proves who it claims to be. - [Creating a document, end to end](https://connectbyjbrh.com/docs/workflows/create-document/): From asking for a document to a produced file sitting on the right record: what is resolved, what is proposed, what is written, and what is deliberately left blank. - [Creating a follow-up, end to end](https://connectbyjbrh.com/docs/workflows/create-follow-up/): From a promise made out loud to a scheduled row: the guard on the time, the channel decision, the duplicate test, and what each stage records. - [Creating an opportunity, end to end](https://connectbyjbrh.com/docs/workflows/create-opportunity/): From a sentence in a conversation to a deal on the board with its first commitment: every stage, what changes, and what can fail on the way. - [Rotating a provider credential, end to end](https://connectbyjbrh.com/docs/workflows/credential-rotation/): Replacing a provider credential in a workspace: what happens on save, how to verify a value you can never read back, and what becomes of work in flight. - [Continuing one conversation on another channel](https://connectbyjbrh.com/docs/workflows/cross-channel-continuity/): What happens when someone who emailed last week rings instead: how the same person is recognised, and exactly which context follows them. - [Continuing on a different channel](https://connectbyjbrh.com/docs/workflows/cross-channel-handover/): Continuing a conversation on a different channel: what history carries over, what has to be re-established, and the identity check that decides both. - [Assembling a Customer 360, end to end](https://connectbyjbrh.com/docs/workflows/customer-360-assembly/): Every store a Customer 360 reads to build one person's whole history, and why the cost of assembling it is counted in database statements. - [Editing a record in the grid, end to end](https://connectbyjbrh.com/docs/workflows/data-grid-edit/): One cell, changed: what the grid sends, which service decides, what comes back into the row, and the audit entry that survives the browser tab. - [Importing records, end to end](https://connectbyjbrh.com/docs/workflows/data-import/): Bringing records in from a spreadsheet: how a file becomes validated rows, how duplicates are matched, and what happens to rows that do not qualify. - [Answering a customer's data request](https://connectbyjbrh.com/docs/workflows/data-request/): What Connect can produce when somebody asks for their data: which records, in what format, from where — and the limits, including what sits outside a workspace by design. - [Running deep research, end to end](https://connectbyjbrh.com/docs/workflows/deep-research-flow/): When a second, deeper research pass is run on one prospect, what decides that it is worth paying for, what it produces, and where the output is attached. - [Handling a demo request, end to end](https://connectbyjbrh.com/docs/workflows/demo-request/): From a customer asking to see the product to a dated commitment somebody will actually keep: the record, the confirmation, the reminder and the outcome. - [Preparing for DLT, end to end](https://connectbyjbrh.com/docs/workflows/dlt-registration/): Preparing for DLT in India: what a business gathers, in what order the three registrations must be obtained, and what Connect stores once they are granted. - [A do-not-contact reaching every channel](https://connectbyjbrh.com/docs/workflows/dnc-across-channels/): One do-not-contact directive that reaches email, WhatsApp, SMS, phone and prospect outreach: where it is stored, why it holds, and what the audit trail shows. - [Publishing a documentation change](https://connectbyjbrh.com/docs/workflows/docs-publication/): How a documentation change reaches the public site: one source, the gate, generated HTML and Markdown, the manifests, the sitemaps, and IndexNow last of all. - [Verifying published documentation](https://connectbyjbrh.com/docs/workflows/docs-verification/): Every check run before and after a documentation change ships: the gate, the link graph, structured data, the built tree, and the fetch-as-a-crawler probe. - [Regenerating a draft, end to end](https://connectbyjbrh.com/docs/workflows/draft-regeneration/): Asking Connect to write a reply again: what is thrown away, what survives untouched, what the second attempt is given that the first was not, and when to stop. - [Merging duplicate people, end to end](https://connectbyjbrh.com/docs/workflows/duplicate-merge/): From a duplicate proposal to one merged record: every stage, the human decision in the middle, and how to verify the result afterwards. - [An email follow-up, end to end](https://connectbyjbrh.com/docs/workflows/email-follow-up-execution/): A dated commitment becoming a sent email: where the follow-up came from, which gates it passes, and why a retry cannot send it twice. - [Drafting and approving a reply, end to end](https://connectbyjbrh.com/docs/workflows/email-reply-approval/): From an arriving message to a sent reply, with the autonomy gate in the middle: what is drafted, what is held, who releases it, what proves it went. - [From an email to an opportunity](https://connectbyjbrh.com/docs/workflows/email-to-opportunity/): The reply that turns into a deal: which records change, in what order, and what keeps the pipeline honest about where the evidence came from. - [Entitlement and runtime choice, end to end](https://connectbyjbrh.com/docs/workflows/entitlement-vs-runtime/): Two separate gates decide whether Connect acts: what the plan permits, and what a person has switched on. Both must agree, and they fail differently. - [Escalating to a person, end to end](https://connectbyjbrh.com/docs/workflows/escalation/): What happens when Connect decides it should not answer: how the refusal becomes a person's decision, and how that decision gets into future work. - [Executing a follow-up, end to end](https://connectbyjbrh.com/docs/workflows/execute-follow-up/): From due to placed, held or refused: the drain's rate, every gate in order, the outcome written back, and the lateness rule that ends it. - [Producing a new version of a file](https://connectbyjbrh.com/docs/workflows/file-version-chain/): Changing a file produces a new version rather than overwriting one: what each version carries, how it links back to a record, and what the chain proves later. - [From first contact to a person record](https://connectbyjbrh.com/docs/workflows/first-contact-to-person/): A stranger writes or rings on any channel and becomes a canonical person: every stage, what changes, what can fail, and what happens on the second channel. - [Connecting a phone line, end to end](https://connectbyjbrh.com/docs/workflows/first-phone-setup/): Connecting a number to Connect: the line record, the carrier link, and the four verifications that separate a configured line from an answering one. - [First response to a new contact](https://connectbyjbrh.com/docs/workflows/first-response/): How Connect decides whether to answer a new contact immediately, draft and wait, or refuse — and what the person on the other end experiences while that is decided. - [Signing in for the first time, end to end](https://connectbyjbrh.com/docs/workflows/first-sign-in/): From the Google consent screen to the first working screen: what a session is, how one workspace is resolved, and what a first sign-in does not do. - [Approving a follow-up, end to end](https://connectbyjbrh.com/docs/workflows/follow-up-approval/): How a follow-up Connect may not execute on its own reaches a person, what the approver is allowed to change, and what runs after the yes. - [Catching up after a Gmail history gap](https://connectbyjbrh.com/docs/workflows/gmail-history-catchup/): When Gmail can no longer serve the history a mailbox was reading from: what a gap is, what Connect re-fetches instead, and why order and duplicates are handled first. - [What Connect changes in your Gmail after a reply](https://connectbyjbrh.com/docs/workflows/gmail-writeback-flow/): The step that reaches back into Gmail after a reply: what it writes, why it runs last, why its failure is allowed to pass, and which state flows which way. - [Google sign-in, end to end](https://connectbyjbrh.com/docs/workflows/google-sign-in/): From the Google consent screen to a working session: what Google proves, what Connect binds it to, and the mismatch it refuses rather than resolves. - [Producing a grounded answer, end to end](https://connectbyjbrh.com/docs/workflows/grounded-answer/): A customer question turned into a defensible reply: scopes, retrieval, the sufficiency gate, drafting under labelled context, and the citations kept. - [Binding a Google identity to a person, end to end](https://connectbyjbrh.com/docs/workflows/identity-binding/): How a Google account becomes a person in Connect: binding on the first non-empty subject, adopting a row that predates them, and refusing a later mismatch. - [Deciding whether two records are one person](https://connectbyjbrh.com/docs/workflows/identity-merge-decision/): From the signals that suggest two records are one person to the human decision and the merge itself, with what survives on both sides. - [Advancing an IMAP cursor safely](https://connectbyjbrh.com/docs/workflows/imap-cursor-advance/): The rule that decides when an IMAP read position may move: what must be recorded first, what refusal holds it, and how advancing early loses mail for good. - [Inbound email, end to end](https://connectbyjbrh.com/docs/workflows/inbound-email/): Every stage between a message landing at the provider and Connect acting on it: fetch, bridge, thread, triage, and where mail can be lost. - [Inbound phone call, end to end](https://connectbyjbrh.com/docs/workflows/inbound-phone-call/): A call arriving on a Connect number, stage by stage: what the caller hears, what is written, which provider acts, and what fails where. - [Responding to a suspected access problem, end to end](https://connectbyjbrh.com/docs/workflows/incident-response/): What to do when access to a workspace looks wrong: contain first, establish scope from evidence, then rotate — in that order, with what each step proves. - [Reviewing an incident, end to end](https://connectbyjbrh.com/docs/workflows/incident-review/): After something goes wrong: which records to open and in what order, the questions that decide whether it is fixed, and what belongs in the write-up. - [Submitting changed URLs to IndexNow](https://connectbyjbrh.com/docs/workflows/indexnow-submission/): Submitting changed URLs to IndexNow: how the changed set is derived, the three rules the tool enforces, the response codes, and why submission runs last. - [Proving a workspace is isolated, end to end](https://connectbyjbrh.com/docs/workflows/isolation-verification/): A layer-by-layer check that one workspace cannot reach another's records, what each of the three layers catches, and what each of them cannot see. - [Keeping a good prospect you cannot email](https://connectbyjbrh.com/docs/workflows/keeping-a-prospect-without-email/): An organisation fits your criteria and publishes no address. What stays on the record, what Connect proposes instead, and the four ways it can become reachable later. - [Auditing what an answer was based on](https://connectbyjbrh.com/docs/workflows/knowledge-audit/): Taking one sentence in a sent reply and following it back to the passage, the authority and the person who allowed it to be said. - [Ingesting a Knowledge source, end to end](https://connectbyjbrh.com/docs/workflows/knowledge-ingest/): What happens between adding a document and an answer being grounded in it: reading the file, refusing dangerous ones, extraction, and when it becomes usable. - [A lapsed plan and its recovery, end to end](https://connectbyjbrh.com/docs/workflows/lapse-and-recovery/): The whole arc of a lapse: what stopped, what queued rather than failed, and the order in which work resumes once the workspace is live again. - [Moving a relationship through its lifecycle](https://connectbyjbrh.com/docs/workflows/lifecycle-progression/): Every lifecycle stage change: what triggers one, how the requested word is normalised, what the move records, and the things it deliberately leaves alone. - [Importing a prospect list, end to end](https://connectbyjbrh.com/docs/workflows/list-import/): An import followed from the file to usable prospects: what each stage does to a row, what is merged, what is refused, and what the summary is for. - [Reviewing mailbox health as a routine](https://connectbyjbrh.com/docs/workflows/mailbox-health-review/): A routine check of every mailbox: why connected is not health, the states worth watching, the pattern that hides a mailbox entirely, and the action for each. - [Repairing a broken mailbox, end to end](https://connectbyjbrh.com/docs/workflows/mailbox-repair/): Detecting that a mailbox has stopped working, finding which half broke, reconnecting without creating a second row, and proving the repair held. - [Assigning a mailbox role, end to end](https://connectbyjbrh.com/docs/workflows/mailbox-role-assignment/): Giving a mailbox a role, from the click to the first message it re-routes: what is stored, what routing changes, and which conversations are deliberately untouched. - [An AI client searching the public documentation](https://connectbyjbrh.com/docs/workflows/mcp-public-search/): The unauthenticated MCP path: which documentation tools any AI client may call without a key, what they return, and the limits that make them safe to publish. - [An AI client calling a Connect MCP tool](https://connectbyjbrh.com/docs/workflows/mcp-tool-call/): How an AI client discovers a Connect workspace tool, authenticates with an integration key, and has the call scoped, gated and recorded like any other action. - [Correcting what Connect knows, end to end](https://connectbyjbrh.com/docs/workflows/memory-correction/): From a reply that was wrong to a corrected memory to changed behaviour: every stage, what changes at each, and the three places a correction fails to stick. - [A fact learned on a call, end to end](https://connectbyjbrh.com/docs/workflows/memory-from-call-workflow/): Following one spoken fact from the moment it is said, through the checks that decide whether to believe it, to the email where it is used a week later. - [Reviewing everything Connect knows about a person](https://connectbyjbrh.com/docs/workflows/memory-review/): The audit anyone can run on one person's record: the four tiers, the tags, the identities behind them, and the decisions that follow from what you find. - [Superseding a memory, end to end](https://connectbyjbrh.com/docs/workflows/memory-supersede/): Replacing something Connect believes without losing the record of what it used to believe: the new version, the kept history, and how each option reads later. - [Writing a memory, end to end](https://connectbyjbrh.com/docs/workflows/memory-write/): How something worth remembering becomes a stored memory: the trigger, the tier it lands on, what the row carries, and the first reply that changes because of it. - [Changing the model, end to end](https://connectbyjbrh.com/docs/workflows/model-change/): Moving Connect to a different model: what to check first, what changes on the wire during the switch, and which numbers prove afterwards that it was worth doing. - [Changing a document, end to end](https://connectbyjbrh.com/docs/workflows/modify-document/): Changing a stored document from end to end: which version is read, what the proposal shows, what the new version records, and what the old one keeps. - [Moving a deal from stage to stage, end to end](https://connectbyjbrh.com/docs/workflows/move-opportunity/): Every stage change on an opportunity: what is checked before it, what is written after it, and the side effects a move sets off downstream. - [Working the Needs You queue, end to end](https://connectbyjbrh.com/docs/workflows/needs-you-triage/): One full pass through Needs You: how the list is ordered, what each kind of item wants from you, and what an empty queue does and does not prove. - [Onboarding, end to end](https://connectbyjbrh.com/docs/workflows/onboarding-workflow/): Onboarding from the won deal to steady state: the stages, who does what between them, and the failures that leave a new customer waiting. - [Handling a request Connect cannot fulfil](https://connectbyjbrh.com/docs/workflows/out-of-scope-request/): What happens when somebody asks for something Connect must not answer: how it is recognised, how it is refused, who it reaches, and what the customer is told. - [Outbound phone call, end to end](https://connectbyjbrh.com/docs/workflows/outbound-phone-call/): Placing a call: the reason it exists, the gates it passes, the dial itself, and what is written whether or not anybody answers. - [An outreach sequence, end to end](https://connectbyjbrh.com/docs/workflows/outreach-sequence/): Cold outreach from first contact to the reply that stops it, with every compliance gate named and the point where a stranger becomes a conversation. - [Routing a request for the Owner or a customer](https://connectbyjbrh.com/docs/workflows/owner-tenant-routing/): One implementation, two doors: how a request is rewritten for a customer, checked against an allowlist, and refused in the two ways that both fail closed. - [Verifying a customer payment, end to end](https://connectbyjbrh.com/docs/workflows/payment-verification/): How a customer payment is verified and a plan activated: deterministic evidence, a fail-closed match, and why this flow sits outside every workspace. - [A promised call-back, end to end](https://connectbyjbrh.com/docs/workflows/phone-follow-up-execution/): A call-back promised out loud becomes a dated commitment and then a ring: how the time is read, when it is refused, and when it is too late to place. - [Changing plan, end to end](https://connectbyjbrh.com/docs/workflows/plan-change/): What a plan change alters the moment it lands, what it deliberately leaves alone, and why a lowered ceiling never removes anything you already have. - [A plan lapsing, end to end](https://connectbyjbrh.com/docs/workflows/plan-lapse/): What a lapsed plan actually stops: which work is refused, which is held, why the mail cursor stays where it is, and what returns on settlement. - [Repairing a workspace with no primary mailbox](https://connectbyjbrh.com/docs/workflows/primary-mailbox-repair/): A workspace whose primary mailbox is missing: how the gap shows itself, the two repairs, and why one of them cannot run from a browser request at all. - [Assigning priority to a thread, end to end](https://connectbyjbrh.com/docs/workflows/priority-assignment/): How a conversation gets its priority, what happens when a person overrides it, and why that correction changes what Connect works on rather than how a list is sorted. - [Changing what the agent is told](https://connectbyjbrh.com/docs/workflows/prompt-change/): Changing the words Connect is given: the six layers a prompt lives in, what extra characters cost on a live call, how to measure it and how to undo it. - [Discovering prospects, end to end](https://connectbyjbrh.com/docs/workflows/prospect-discovery/): One discovery run followed from the brief to a qualified list: every stage, every gate that can stop it, and what exists afterwards. - [Capturing evidence for a prospect, end to end](https://connectbyjbrh.com/docs/workflows/prospect-evidence-capture/): How one fact about a business travels from a public source to a stored piece of evidence to the claim it supports — and what stops it on the way. - [First outreach to a prospect, end to end](https://connectbyjbrh.com/docs/workflows/prospect-outreach/): The first message to a prospect, followed from readiness through the compliance check, the draft, approval and the send that only counts with provider evidence. - [Qualifying a prospect, end to end](https://connectbyjbrh.com/docs/workflows/prospect-qualification-flow/): How evidence gathered about an organisation becomes a score, how the score becomes a decision, and what happens when a person disagrees with it. - [Handling a prospect's reply, end to end](https://connectbyjbrh.com/docs/workflows/prospect-reply-handling/): What happens between a prospect's reply landing and the record it changes: classification, the stop rules, and when a relationship is created. - [Researching one prospect, end to end](https://connectbyjbrh.com/docs/workflows/prospect-research/): One candidate followed through research: what is read, how a claim earns its place on the record, and what happens when nothing can be proved. - [From prospect to client, end to end](https://connectbyjbrh.com/docs/workflows/prospect-to-client/): One relationship followed from a discovered name to a paying client, naming every record that is created, changed or left behind on the way. - [Changing a provider, end to end](https://connectbyjbrh.com/docs/workflows/provider-change/): Swapping the carrier, the mail provider or the messaging provider underneath Connect: which layer changes, what has to be re-proved, and what may never be assumed. - [A developer calling the public API](https://connectbyjbrh.com/docs/workflows/public-api-call/): A developer calling Connect over HTTP: how a key is issued and scoped, what one request looks like, how errors are shaped, and what a rate limit means. - [A provider quota breaker opening and closing](https://connectbyjbrh.com/docs/workflows/quota-breaker/): What a provider breaker does when a model account starts refusing: which work is skipped, which is still attempted anyway, and how the breaker closes. - [Hitting the daily allowance, end to end](https://connectbyjbrh.com/docs/workflows/quota-refusal/): What Connect does when the day's allowance is spent: what is held, what is refused, why the read cursor stays where it is, and how work resumes. - [Turning on the realtime engine, end to end](https://connectbyjbrh.com/docs/workflows/realtime-engine-enablement/): Switching a workspace to the speech-to-speech engine: the trunk, the dispatch rule, the worker and the console steps that have no API at all. - [Proving a change did not break anything](https://connectbyjbrh.com/docs/workflows/regression-check/): Proving a change did not break anything: the verification ladder, which rung proves what, and the two audiences every screen change has to be checked as. - [Classifying a prospect's reply, end to end](https://connectbyjbrh.com/docs/workflows/reply-classification/): What Connect does with an answer to cold outreach: the classes it sorts replies into, what each one stops or starts, and which ones a person must confirm. - [Resolving conflicting Knowledge, end to end](https://connectbyjbrh.com/docs/workflows/resolve-conflict/): From a contradiction being detected to a source that answers again: what is compared, what is refused, and the decision only a person can take. - [Retrieving Knowledge for one reply](https://connectbyjbrh.com/docs/workflows/retrieval-for-a-reply/): How much of your Knowledge actually reaches one answer: how the question is formed, what the budget allows, how material is chosen, and how to see the choice. - [Turning Connect on or off at runtime](https://connectbyjbrh.com/docs/workflows/runtime-toggle/): What the runtime switch actually stops, what finishes anyway, what happens to work that was scheduled, and what the people on the other end experience. - [Handling more volume, end to end](https://connectbyjbrh.com/docs/workflows/scaling-up/): What binds first when volume rises — worker capacity, plan allowance, model quota, query cost — and the order in which to change them without guessing. - [Sending with provider evidence, end to end](https://connectbyjbrh.com/docs/workflows/send-with-evidence/): Every state a message passes through between the decision to send and the provider's acknowledgement, including the third state that is neither sent nor failed. - [The readiness check before outreach](https://connectbyjbrh.com/docs/workflows/sender-readiness-check/): Every gate an outreach message passes before it leaves, in the order they are evaluated, and what a refusal at each one looks like from the screen. - [Communicating during an interruption](https://connectbyjbrh.com/docs/workflows/service-interruption/): What Connect says to customers during an interruption, what it keeps internal, who is told first, and why a cause and a restoration time are held back. - [Establishing a session, end to end](https://connectbyjbrh.com/docs/workflows/session-establishment/): What a session actually is in Connect: what the server keeps, what the browser holds, what it resolves to, and what can be ended from which side. - [Signing out and replacing a session](https://connectbyjbrh.com/docs/workflows/sign-out-replacement/): The two ways a session ends on one browser — signing out, and signing in as somebody else — and why neither of them touches your other devices. - [An inbound SMS, end to end](https://connectbyjbrh.com/docs/workflows/sms-inbound/): An inbound text message followed from the provider webhook to the person it belongs to and the decision about answering it, with what can fail at each stage. - [An SMS STOP, end to end](https://connectbyjbrh.com/docs/workflows/sms-stop/): A stop request followed from the word in the message to the suppression, the audit entry and the confirmation, including what is deliberately skipped. - [Stopping Connect, end to end](https://connectbyjbrh.com/docs/workflows/stopping-connect/): The runtime switch end to end: what stops the moment you use it, what was already handed to a provider, and what is waiting when you switch back on. - [A support case, end to end](https://connectbyjbrh.com/docs/workflows/support-case/): A customer problem from the message that raises it to the resolution and the memory it leaves: every stage, what changes, and what can fail at each. - [Applying a suppression, end to end](https://connectbyjbrh.com/docs/workflows/suppression-application/): What happens when an address or a person is suppressed: where the entry is recorded, which gate reads it, what refuses afterwards, and who is allowed to clear it. - [Creating a conversation thread, end to end](https://connectbyjbrh.com/docs/workflows/thread-creation/): From one arriving message to a conversation with a person and a company attached: what is matched, what is created, and what is decided once and kept. - [Building the timeline, end to end](https://connectbyjbrh.com/docs/workflows/timeline-assembly/): How a person's timeline is put together from the records that own each event, why it is ordered by when things happened, and what it leaves out on purpose. - [Executing one Assistant tool call, end to end](https://connectbyjbrh.com/docs/workflows/tool-call-execution/): One Assistant tool call from argument to audit entry: what validates the arguments, which service does the work, the gates it passes, and what is recorded. - [An unsubscribe request, end to end](https://connectbyjbrh.com/docs/workflows/unsubscribe-workflow/): What happens between somebody asking to be left alone and the record that proves it: the suppression, its scope, and the one entry nobody clears casually. - [Uploading a file and answering from it, end to end](https://connectbyjbrh.com/docs/workflows/upload-and-answer/): The whole path from dropping a file into Connect to reading an answer grounded in it: validation, safe parsing, extraction, grounding and the citation. - [Metering usage, end to end](https://connectbyjbrh.com/docs/workflows/usage-metering/): How Connect counts what a workspace uses: which dimensions exist, when each is reserved or merely tracked, and what the daily ledger is actually for. - [Tuning the voice, end to end](https://connectbyjbrh.com/docs/workflows/voice-tuning-cycle/): Changing how the voice sounds and behaves, then proving the change: the two kinds of control, the test call, the review, and the findings no setting can fix. - [Delivering an outbound webhook](https://connectbyjbrh.com/docs/workflows/webhook-delivery/): The outbound webhook interface Connect publishes: the signed envelope, at-least-once delivery, the retry and pause rules — and why nothing is being delivered yet. - [A website enquiry, end to end](https://connectbyjbrh.com/docs/workflows/website-enquiry/): A public-site enquiry from the submitted form to an answered person, and the stage where having no workspace decides everything that follows. - [A WhatsApp follow-up, end to end](https://connectbyjbrh.com/docs/workflows/whatsapp-follow-up-execution/): A scheduled WhatsApp follow-up from due to sent: the composition, the autonomy and consent checks, the window, and the template fallback when Meta refuses. - [An inbound WhatsApp message, end to end](https://connectbyjbrh.com/docs/workflows/whatsapp-inbound/): One inbound WhatsApp message followed the whole way: Meta's signed webhook, the stored record, the draft, the autonomy decision and the timeline entry. - [A WhatsApp opt-out, end to end](https://connectbyjbrh.com/docs/workflows/whatsapp-optout/): A WhatsApp opt-out followed end to end: the STOP word, the three records it writes, what changes for every pending message, and the START that reverses it. - [Connecting WhatsApp, end to end](https://connectbyjbrh.com/docs/workflows/whatsapp-setup-workflow/): Connecting WhatsApp from a Meta credential set to a first verified inbound message, the QR alternative, and the checkpoint that proves each half of the chain. - [Handing a won deal to onboarding](https://connectbyjbrh.com/docs/workflows/won-deal-handover/): What happens when an opportunity is won: which records carry over untouched, what is newly created, and the two mistakes that split a customer in half. - [Granting a permission, end to end](https://connectbyjbrh.com/docs/workflows/workspace-admin-permission/): Granting or removing a permission in a workspace: who may do it, when the change takes effect, what it does not widen, and the record it leaves. - [Creating a customer workspace, end to end](https://connectbyjbrh.com/docs/workflows/workspace-creation/): From a first Google sign-in to a workspace that can actually receive mail: what is created, what is not, and the three things still missing afterwards. - [Removing a workspace, end to end](https://connectbyjbrh.com/docs/workflows/workspace-deletion/): What removing a workspace actually does: how access ends, which records stay outside it by design, and which parts of it can never be undone. - [Resolving which workspace a request belongs to](https://connectbyjbrh.com/docs/workflows/workspace-resolution-flow/): How a request is tied to exactly one workspace before any handler runs, and the three independent places that resolution is enforced afterwards. - [Setting up a workspace, end to end](https://connectbyjbrh.com/docs/workflows/workspace-setup/): Taking a workspace from empty to working: the business profile, the channels, what Connect is allowed to say, and what it may do unsupervised. ## Technology - [Technology reference](https://connectbyjbrh.com/docs/technology/): How to read the technology reference: the ten questions every page answers, the five status words, and the rule that Connect's own use is always stated. - [Web accessibility](https://connectbyjbrh.com/docs/technology/accessibility/): Accessible pages start with semantic HTML: name, role and state, keyboard order and focus — and the same structure that helps browser agents. - [Agent observability](https://connectbyjbrh.com/docs/technology/agent-observability/): Recording an agent's work so a decision taken weeks ago can be explained: what to capture, what is useless afterwards, and where Connect keeps it. - [Agent security](https://connectbyjbrh.com/docs/technology/agent-security/): The threat model for software that holds real mail credentials and takes real actions on a business's behalf, and the boundaries that keep a mistake small. - [Agentic workflow](https://connectbyjbrh.com/docs/technology/agentic-workflow/): Multi-step work with tools and checkpoints: how an agentic workflow differs from a script, and where the human checkpoints have to sit to be worth having. - [AI agent](https://connectbyjbrh.com/docs/technology/ai-agent/): The AI agent concept: the perceive-decide-act loop, the three things that make one useful in a business, and the two that make one dangerous. - [WAI-ARIA](https://connectbyjbrh.com/docs/technology/aria/): WAI-ARIA roles, states and properties: the five rules, the patterns that genuinely need it, and the ways it makes a page worse. - [Speech recognition](https://connectbyjbrh.com/docs/technology/asr/): Automatic speech recognition: what it does on a turn-based path, what a transcript actually is once the model speaks directly, and why it lands late. - [Audit logs](https://connectbyjbrh.com/docs/technology/audit-log/): The four things an entry needs before a log counts as an audit trail, why refusals belong in it, and what turns the same file into a liability. - [Authorisation models](https://connectbyjbrh.com/docs/technology/authorization-models/): Allowlists, roles, scopes and row policies compared by the failure each one produces, and how Connect layers three of them over one request. - [Backups and restore](https://connectbyjbrh.com/docs/technology/backup-restore/): What a backup has to contain before a restore actually works, the parts that live outside the database, and the rehearsal that turns a hope into a fact. - [Barge-in](https://connectbyjbrh.com/docs/technology/barge-in/): Interrupting a talking voice agent: the two ways it fails, how an ignored interruption is measured, and why resuming afterwards is usually wrong. - [BIMI](https://connectbyjbrh.com/docs/technology/bimi/): What BIMI actually requires before a logo appears anywhere: DMARC at enforcement, a constrained SVG, and for some clients a mark certificate. - [Bounces](https://connectbyjbrh.com/docs/technology/bounce/): Hard, soft and the classes in between: what a bounce actually is, why some rejections never bounce at all, and the response each one deserves. - [Call quality measurement](https://connectbyjbrh.com/docs/technology/call-quality/): Two different things are called call quality. What a conversation review can measure on the wire, what a network metric measures, and what neither can judge. - [Call routing](https://connectbyjbrh.com/docs/technology/call-routing/): How a ringing number becomes a workspace, a line and a handler, and why direction, opening hours and worker capacity are part of that decision. - [Call transcripts](https://connectbyjbrh.com/docs/technology/call-transcript/): What a call transcript contains on a speech-to-speech call, what it is reliable evidence for, and why timing read from transcript rows is wrong. - [Canonical URLs](https://connectbyjbrh.com/docs/technology/canonical-url/): What a rel=canonical element actually decides, the duplicate URLs it consolidates, and the signals that quietly overrule it. - [Telephony carriers](https://connectbyjbrh.com/docs/technology/carrier/): What a telephony carrier actually supplies, which capability differences change your architecture, and why you should ask rather than assume. - [Circuit breakers](https://connectbyjbrh.com/docs/technology/circuit-breaker/): Open, closed and half-open: how a failure counter stops a dying provider taking your own workers with it, and what Connect runs in place of one. - [Context compression on a live call](https://connectbyjbrh.com/docs/technology/context-compression/): Why a live model is re-billed for its whole context every turn, what a compression trigger and target do, and why the trigger has to be sized. - [Context window](https://connectbyjbrh.com/docs/technology/context-window/): The span of text a model can attend to in one call: what has to be re-sent every turn, what it costs, and why a larger window is not a longer memory. - [Page experience and Core Web Vitals](https://connectbyjbrh.com/docs/technology/core-web-vitals/): LCP, INP and CLS explained by what causes them, plus what a text-heavy documentation site should fix first and what it can ignore. - [CORS](https://connectbyjbrh.com/docs/technology/cors/): What the same-origin policy stops, what a preflight is really asking, and why an Allow-Origin header protects a browser rather than a server. - [Credential rotation](https://connectbyjbrh.com/docs/technology/credential-rotation/): Why a password is read from a managed secret at boot rather than kept in a file, what a stale copy breaks, and how OAuth tokens rotate themselves. - [Content Security Policy](https://connectbyjbrh.com/docs/technology/csp/): Content Security Policy as a source allowlist: what it blocks, why inline script is the usual casualty, and why these docs carry no JavaScript. - [CSV formula injection](https://connectbyjbrh.com/docs/technology/csv-injection/): A CSV cell that begins with an equals sign becomes a formula when a spreadsheet opens it. The attack, the neutralisation, and why an export looks escaped. - [Data residency](https://connectbyjbrh.com/docs/technology/data-residency/): What residency, sovereignty and localisation each mean, which parts of a system they actually constrain, and the questions worth asking a supplier. - [Email deliverability](https://connectbyjbrh.com/docs/technology/deliverability/): The factors that decide whether mail reaches an inbox, ranked honestly: who you send to first, authentication second, content much later. - [DID — a direct inward dialling number](https://connectbyjbrh.com/docs/technology/did/): A business phone number as a technical object: what direct inward dialling means, what renting a number gives you, and where routing is decided. - [Digital employee](https://connectbyjbrh.com/docs/technology/digital-employee/): What a digital employee is as a category: a permanent role with responsibilities, memory and oversight, rather than a task-shaped agent you launch and forget. - [DKIM](https://connectbyjbrh.com/docs/technology/dkim/): DKIM signatures: what is signed, how a receiver verifies, why signatures break in transit, and how keys are rotated with a selector. - [DLT — Distributed Ledger Technology registration in India](https://connectbyjbrh.com/docs/technology/dlt/): India's distributed-ledger registration for commercial messaging: what the regulator requires, who registers what, and why an unregistered message is rejected upstream. - [DMARC](https://connectbyjbrh.com/docs/technology/dmarc/): How DMARC works: alignment against the From header, the three policies, the two report types, and the deployment order that does not lose mail. - [DNS](https://connectbyjbrh.com/docs/technology/dns/): The record types a business communications setup actually depends on, and why TTL is an operational commitment rather than a number in a form. - [DTMF](https://connectbyjbrh.com/docs/technology/dtmf/): Keypad tones: how a digit is encoded, the three ways it travels, and why a voice agent should mostly listen instead of asking for keypresses. - [Encryption at rest](https://connectbyjbrh.com/docs/technology/encryption-at-rest/): Which threats storage encryption actually removes, the three layers it can be applied at, and why an authenticated query reads plaintext no matter what. - [Evidence in an agent system](https://connectbyjbrh.com/docs/technology/evidence/): What counts as evidence when software claims something happened, how it is attached to the record, and the price of a claim with nothing behind it. - [Complaint feedback loops](https://connectbyjbrh.com/docs/technology/feedback-loop/): What a mailbox provider sends back when someone presses the spam button, why the recipient is often redacted, and the only correct response. - [Gmail API](https://connectbyjbrh.com/docs/technology/gmail-api/): Gmail's HTTP mail API: history IDs for incremental sync, labels instead of folders, and why write-back must never block a reply. - [Grounding](https://connectbyjbrh.com/docs/technology/grounding/): Tying an answer to a source a person can check, and the practical difference between a grounded statement and a merely plausible one. - [Unsupported claims](https://connectbyjbrh.com/docs/technology/hallucination/): Why a confidently wrong answer costs a business more than a slow one, and the controls that reduce unsupported claims rather than apologising for them. - [hreflang](https://connectbyjbrh.com/docs/technology/hreflang/): Language and region annotations that survive contact with reality: the reciprocity rule, x-default, and when hreflang is the wrong tool. - [HTML email](https://connectbyjbrh.com/docs/technology/html-email/): What actually renders in a mail client, what is stripped, and why a mail reader must sanitise incoming HTML rather than trust it. - [HTTP caching and revalidation](https://connectbyjbrh.com/docs/technology/http-caching/): Freshness, validators and revalidation: how ETag and Last-Modified work, and the header that stops a browser serving a module from the last deploy. - [HTTP](https://connectbyjbrh.com/docs/technology/http/): The request-and-response model everything here runs on, the status codes that carry real meaning in Connect, and the three that routinely mislead. - [HTTPS and TLS](https://connectbyjbrh.com/docs/technology/https/): What TLS protects on the wire, the four things it does not protect at all, and how a terminating proxy changes what the application can see. - [Human in the loop](https://connectbyjbrh.com/docs/technology/human-in-the-loop/): Putting a person at the point where a decision is expensive to reverse, and the review-speed problem that decides whether the pattern survives contact with a working week. - [Idempotency](https://connectbyjbrh.com/docs/technology/idempotency/): Why the same request arriving twice must not do the thing twice, the three mechanisms that achieve it, and the actions where it is the only defence. - [IMAP](https://connectbyjbrh.com/docs/technology/imap/): Reading a mailbox over IMAP: folders, UIDVALIDITY, flags and the cursor a client must keep — and the way a cursor loses mail. - [IndexNow](https://connectbyjbrh.com/docs/technology/indexnow/): IndexNow in full: the key file, the shape of a submission, the 10,000-URL bulk limit, and what is worth telling a search engine about. - [JSON-LD and structured data](https://connectbyjbrh.com/docs/technology/json-ld/): Structured data as JSON-LD: what it changes, the rule that markup must match visible text, and the types not worth adding. - [JSON Schema](https://connectbyjbrh.com/docs/technology/json-schema/): Describing the shape of a payload so a machine can check it: what a schema pins down, what it cannot say, and why valid is not the same as allowed. - [JSON](https://connectbyjbrh.com/docs/technology/json/): The data format every Connect surface speaks, and the two traps — number precision and re-serialisation — that break systems holding JSON in more than one place. - [Knowledge base](https://connectbyjbrh.com/docs/technology/knowledge-base/): What a knowledge base is when an agent has to answer from it, and the properties that make one usable rather than merely large. - [What a model call costs](https://connectbyjbrh.com/docs/technology/llm-cost/): What a model call is actually billed for: tokens by direction and modality, context carried on every turn, and the spending that never appears on a per-request line. - [Message delivery status](https://connectbyjbrh.com/docs/technology/message-status/): Sent, delivered, read, failed: what each state is actually evidence of, why the ladder differs per channel, and why a late status must not overwrite a decision. - [Microsoft Graph mail](https://connectbyjbrh.com/docs/technology/microsoft-graph/): Microsoft Graph as a mail transport: the folder model, delta queries, change notifications, and what differs from Gmail in practice. - [Schema migrations](https://connectbyjbrh.com/docs/technology/migrations/): Migrations that run at every boot, why every guard has to be idempotent, and the expression index a reflection API cannot find for you. - [MIME](https://connectbyjbrh.com/docs/technology/mime/): Why an email is a tree: multipart structures, transfer encodings, header encoding, and the parts a reader never sees. - [System prompts and instructions](https://connectbyjbrh.com/docs/technology/model-context/): The instruction block a model is given before it sees a message: what belongs in it, what does not, and why its size is a latency decision on a live call. - [Choosing a model](https://connectbyjbrh.com/docs/technology/model-selection/): The axes that decide which model does a piece of business work, how a default gets set, and what actually changes when you move one. - [Multi-tenancy patterns](https://connectbyjbrh.com/docs/technology/multi-tenancy/): Shared schema, separate schema or separate database: what each isolation pattern actually costs, and why the pattern is never the security control. - [Multilingual voice](https://connectbyjbrh.com/docs/technology/multilingual-voice/): How a call's language is chosen and changed: language tags, the gap between language and script, code-mixing, and what counts as evidence of a switch. - [OAuth 2.0](https://connectbyjbrh.com/docs/technology/oauth/): Delegated access without handing over a password: the code flow, what a scope really grants, and why the refresh token is the credential that matters. - [Observability](https://connectbyjbrh.com/docs/technology/observability/): Metrics, logs and traces are built around requests; this system's unit of work is a conversation. What changes, and where the signals actually surface. - [Office Open XML](https://connectbyjbrh.com/docs/technology/office-open-xml/): DOCX, XLSX and PPTX are ZIP archives of XML parts. What each one holds, what a reader can get from it, and the two archive attacks that get refused. - [OpenID Connect](https://connectbyjbrh.com/docs/technology/openid-connect/): The identity layer built on OAuth 2.0: what an ID token asserts, which claim is the stable one, and where identity stops and permission begins. - [Agent orchestration](https://connectbyjbrh.com/docs/technology/orchestration/): Sequencing agent work, retrying what failed, and the single-thinker rule that stops two loops from answering the same message twice. - [PDF text extraction](https://connectbyjbrh.com/docs/technology/pdf-text/): PDF stores positioned glyphs rather than a document, so extraction is reconstruction — and a scanned page has no text in it at all to reconstruct. - [Personal data](https://connectbyjbrh.com/docs/technology/pii/): What counts as personal data, the eight places it collects in a communications system, and the handling rules that keep the collection from spreading. - [PostgreSQL](https://connectbyjbrh.com/docs/technology/postgresql/): What a relational database buys a multi-tenant application, which PostgreSQL features this system actually depends on, and the costs that come with them. - [Prompt injection](https://connectbyjbrh.com/docs/technology/prompt-injection/): Instructions smuggled into content an agent reads, what the attack looks like when it arrives as ordinary business mail, and the boundary that contains it. - [Provenance](https://connectbyjbrh.com/docs/technology/provenance/): Recording where a statement came from, why the origin has to survive an edit, and how Connect attaches evidence to facts, memories and files. - [PSTN](https://connectbyjbrh.com/docs/technology/pstn/): The public telephone network as a software dependency: what you cannot do without a carrier, and the constraints a phone call imposes on an agent. - [Query cost](https://connectbyjbrh.com/docs/technology/query-cost/): Counting statements instead of timing a machine, the N+1 that grows with the business, and four measured before-and-after numbers from this system. - [Retrieval-augmented generation](https://connectbyjbrh.com/docs/technology/rag/): The retrieve-then-generate pattern, the failure modes nobody advertises, and a plain account of what Connect implements and what it deliberately does not. - [Rate limiting](https://connectbyjbrh.com/docs/technology/rate-limit/): Caps that protect a provider, a workspace and you: the algorithms behind them, and why a 429 is a message to your queue rather than to one request. - [Realtime voice agents](https://connectbyjbrh.com/docs/technology/realtime-voice/): How a speech-to-speech voice agent is actually assembled, what each part is responsible for, and the failure surface a live call exposes. - [Relational data modelling](https://connectbyjbrh.com/docs/technology/relational-data/): Normalisation in plain terms, what a foreign key is really buying, and the three places this system keeps a second copy of something on purpose. - [Relationship memory](https://connectbyjbrh.com/docs/technology/relationship-memory/): Memory keyed to a person rather than to a conversation, why that key changes the answers, and what it takes to hold one identity across channels. - [REST](https://connectbyjbrh.com/docs/technology/rest/): The architectural style behind most web APIs, what its constraints actually buy, and the four places Connect departs from it on purpose. - [Retries and backoff](https://connectbyjbrh.com/docs/technology/retry/): Which failures deserve another attempt, which are already a final answer, and why backoff without jitter turns one outage into a second one. - [Reversible and irreversible actions](https://connectbyjbrh.com/docs/technology/reversible-actions/): The three-way taxonomy an agent needs before it offers undo: what can be withdrawn, what can only be corrected, and what a person must approve first. - [robots.txt](https://connectbyjbrh.com/docs/technology/robots-txt/): RFC 9309 in practice: what a robots file controls, the thing people wrongly believe it does, and how Connect serves its own. - [Row-level security](https://connectbyjbrh.com/docs/technology/row-level-security/): How a database enforces who may see which rows: the mechanism, why FORCE matters, the difference between USING and WITH CHECK, and what it cannot protect. - [RTP and media transport](https://connectbyjbrh.com/docs/technology/rtp/): How call audio really travels: small UDP packets, a jitter buffer that costs latency, and loss that is concealed rather than repaired. - [Secret management](https://connectbyjbrh.com/docs/technology/secret-management/): Where a credential should live, how rotation is supposed to work, and why a convenience copy of a rotated password becomes a fuse that blows at the next restart. - [Sender IDs](https://connectbyjbrh.com/docs/technology/sender-id/): The four kinds of sender identity a recipient can see, why an alphanumeric name cannot be replied to, and what changing one costs you. - [Session resumption](https://connectbyjbrh.com/docs/technology/session-resumption/): What a realtime model session is, why a server ends one mid-call, and how a resumption handle carries the conversation across the reconnect. - [Sessions and cookies](https://connectbyjbrh.com/docs/technology/sessions-cookies/): How a browser stays signed in between requests, which cookie attributes do the real work, and why holding one is not permission to do anything. - [SIP over WebSocket](https://connectbyjbrh.com/docs/technology/sip-over-websocket/): Carrying call signalling into a browser that cannot open a UDP socket: registration, what keeps it alive, and the addressing mistakes that fail silently. - [SIP trunks](https://connectbyjbrh.com/docs/technology/sip-trunk/): Inbound and outbound SIP trunks: what an origination URI is, what a dispatch rule decides, and the configuration mistakes that fail silently. - [SIP](https://connectbyjbrh.com/docs/technology/sip/): Signalling for calls: SIP methods and responses, why it carries no audio, what registration binds, and what a host:5060 URI means. - [XML sitemaps](https://connectbyjbrh.com/docs/technology/sitemap/): XML sitemaps as a discovery aid: what belongs in one, why lastmod must be true, and when an index file becomes necessary. - [SMS](https://connectbyjbrh.com/docs/technology/sms/): How the short message service actually works: the 140-octet payload, the alphabets, what concatenation costs, and why one emoji halves your message. - [SMTP](https://connectbyjbrh.com/docs/technology/smtp/): The protocol that moves mail between servers: envelope versus headers, what a 250 response proves, and the states after it. - [Speech-to-speech models](https://connectbyjbrh.com/docs/technology/speech-to-speech/): A model that takes audio in and gives audio back, with no synthesiser in the loop: what that buys on a call, and what it takes away. - [SPF](https://connectbyjbrh.com/docs/technology/spf/): Sender Policy Framework: the DNS record that authorises sending hosts, the ten-lookup limit, and the claim SPF cannot make. - [Server-sent events](https://connectbyjbrh.com/docs/technology/sse/): A single long-lived HTTP response that the server keeps writing to: how it streams updates one way, and why Connect uses it rather than WebSocket. - [STOP and opt-out keywords](https://connectbyjbrh.com/docs/technology/stop-keyword/): The opt-out words a recipient may send, what honouring one actually requires, and why your suppression list and the operator's can quietly disagree. - [Structured memory](https://connectbyjbrh.com/docs/technology/structured-memory/): Keeping what an agent knows as records rather than as conversation history, and the operations that only become possible once you do. - [Suppression lists](https://connectbyjbrh.com/docs/technology/suppression/): The list that outranks every campaign: what belongs on a suppression list, what does not, and why entries must be hard to remove. - [Tool calling](https://connectbyjbrh.com/docs/technology/tool-calling/): How a model asks for an action it cannot perform itself, what the schema is really doing, and the checks a tool must run before it changes anything. - [Transactional and marketing email](https://connectbyjbrh.com/docs/technology/transactional-vs-marketing/): Why the transactional and marketing distinction governs consent, how a single hybrid message destroys it, and what Connect separates instead. - [Text to speech](https://connectbyjbrh.com/docs/technology/tts/): Turning written words into speech: where a synthesiser still earns its place on a realtime call, and the three things it cannot do. - [End-of-turn detection](https://connectbyjbrh.com/docs/technology/turn-detection/): Deciding that a caller has finished rather than paused: silence timers against semantic endpointing, and why this dominates perceived latency. - [Unicode, scripts and transliteration](https://connectbyjbrh.com/docs/technology/unicode-and-scripts/): Why a language and a writing system are different things, what normalisation and collation actually decide, and how both show up in a call transcript. - [One-click unsubscribe](https://connectbyjbrh.com/docs/technology/unsubscribe/): The List-Unsubscribe headers, what a one-click POST must not do, and the gap between honouring an opt-out and advertising one. - [Identifiers](https://connectbyjbrh.com/docs/technology/uuid-identifiers/): UUIDs, sequential keys and opaque identifiers compared, and the rule that saves the most trouble later: never parse an identifier you were given. - [Voice activity detection](https://connectbyjbrh.com/docs/technology/vad/): Voice activity detection decides one thing — speech or not speech — and the choice of where it runs shapes what a voice agent can react to. - [Versioning](https://connectbyjbrh.com/docs/technology/versioning/): Three problems that share one word: versioning a document, versioning a record, and versioning an interface other people have already built against. - [Virtualised rendering](https://connectbyjbrh.com/docs/technology/virtualised-rendering/): Drawing only the rows a screen can show, the four things that break when you do, and why virtualising the view never fixes an unbounded query. - [Voice latency](https://connectbyjbrh.com/docs/technology/voice-latency/): Where the seconds go on a voice call: the measured components, the floor no setting removes, and why a transcript is the wrong place to measure from. - [Voice profiles](https://connectbyjbrh.com/docs/technology/voice-profile/): How a voice profile splits into session parameters the engine enforces and written directions the model only approximates, and which setting wins. - [Provider webhook signatures](https://connectbyjbrh.com/docs/technology/webhook-signature/): How a provider signs a webhook, how to verify one without introducing a hole, and why a valid signature still does not stop the same event arriving twice. - [Webhooks](https://connectbyjbrh.com/docs/technology/webhook/): A provider calling you when something happens: verifying the sender, answering fast, and building a receiver that survives the same event arriving twice. - [WebRTC](https://connectbyjbrh.com/docs/technology/webrtc/): How a browser sends and receives call audio directly: the media path, why signalling is not part of it, and the security policy that does not reach it. - [WebSocket](https://connectbyjbrh.com/docs/technology/websocket/): A two-way connection that starts as an HTTP request and stops being HTTP: the one place Connect uses it, and the reason it is not used anywhere else. - [WhatsApp Business messaging](https://connectbyjbrh.com/docs/technology/whatsapp-business/): How business messaging on WhatsApp actually works: the 24-hour window, pre-approved templates, opt-in, and Meta's coexistence route for a number already on a phone. ## Protocols - [Protocol reference](https://connectbyjbrh.com/docs/protocols/): The wire protocols and description formats Connect speaks, the exact version of each, and which ones Connect only explains rather than runs. - [A2A agent discovery](https://connectbyjbrh.com/docs/protocols/a2a-discovery/): The three ways one agent finds another under A2A — a well-known URI, a curated registry, or direct configuration — and which one Connect supports. - [A2A — the Agent2Agent protocol](https://connectbyjbrh.com/docs/protocols/a2a/): The Agent2Agent protocol 1.0.0: how one agent finds another, asks it something in words, and why it sits beside MCP rather than replacing it. - [The A2A Agent Card](https://connectbyjbrh.com/docs/protocols/agent-card/): The A2A Agent Card: where it lives, the fields that matter, how Connect generates its own, and what must never appear in a public card. - [Arazzo](https://connectbyjbrh.com/docs/protocols/arazzo/): Arazzo 1.1.0 describes a multi-step sequence across API calls machine-readably — the order, the criteria and the outputs that carry between steps. - [AsyncAPI](https://connectbyjbrh.com/docs/protocols/asyncapi/): AsyncAPI 3.1.0 describes event and webhook interfaces — channels, operations and message envelopes — and Connect publishes one for its outbound webhooks. - [Scheduling formats](https://connectbyjbrh.com/docs/protocols/ical-scheduling/): Where date and time interchange appears in Connect: RFC 3339 instants on the wire, due times on follow-ups, and why iCalendar does not appear at all. - [JSON-RPC 2.0](https://connectbyjbrh.com/docs/protocols/json-rpc/): JSON-RPC 2.0, the envelope MCP and A2A both sit on: request, response, notification, the reserved error codes and how Connect maps them to HTTP. - [llms.txt](https://connectbyjbrh.com/docs/protocols/llms-txt/): llms.txt is a community proposal, not a standard, and Google has said no Search system reads it. What it is for, and why this site publishes one anyway. - [MCP resources](https://connectbyjbrh.com/docs/protocols/mcp-resources/): MCP resources and prompts: what each is for, when a resource is the better answer than a tool, and the four resources Connect publishes. - [MCP security](https://connectbyjbrh.com/docs/protocols/mcp-security/): Origin validation, authentication, scoping and blast radius for an MCP server — and the one tool nobody should build, whatever the request sounds like. - [MCP tools](https://connectbyjbrh.com/docs/protocols/mcp-tools/): How an MCP tool is defined — name, title, description, input schema and annotations — and why a client must treat every one of those fields as untrusted. - [MCP transports](https://connectbyjbrh.com/docs/protocols/mcp-transports/): The two MCP transports — stdio for a local process and Streamable HTTP for a remote server — and what revision 2026-07-28 took out of the HTTP one. - [Model Context Protocol](https://connectbyjbrh.com/docs/protocols/mcp/): What the Model Context Protocol is, what revision 2026-07-28 changed, and exactly which tools Connect exposes over it at POST /mcp. - [OAuth for agents](https://connectbyjbrh.com/docs/protocols/oauth-for-agents/): Delegated access when the client is a program rather than a person: what OAuth gives you, what it does not, and how Connect handles machine callers instead. - [OpenAPI](https://connectbyjbrh.com/docs/protocols/openapi/): OpenAPI as a description format, why Connect publishes 3.1.0 rather than the newer revision, and the difference between a public contract and an internal route map. - [RFC 9309 — the Robots Exclusion Protocol](https://connectbyjbrh.com/docs/protocols/rfc-9309/): What RFC 9309 actually standardises about robots.txt — matching rules, status-code handling, size limits — and the parts people quote that are not in it. - [Schema.org](https://connectbyjbrh.com/docs/protocols/schema-org/): The Schema.org vocabulary in JSON-LD: the types this documentation actually emits, the ones deliberately refused, and the rule that structured data must match the page. - [Streamable HTTP](https://connectbyjbrh.com/docs/protocols/streamable-http/): The Streamable HTTP transport in detail: one POST endpoint, the three MCP headers, when a response streams, and how a call is cancelled without a session. - [Well-known URIs](https://connectbyjbrh.com/docs/protocols/well-known-uris/): RFC 8615 and the /.well-known/ prefix: why fixed paths need a registry, what lives there on this site, and what does not belong there. ## Troubleshooting - [Troubleshooting](https://connectbyjbrh.com/docs/troubleshooting/): The index of documented failures, plus how to read a page here: what each one promises, the three questions to answer first, and what is never printed. - [A screen returned 403](https://connectbyjbrh.com/docs/troubleshooting/403-on-a-screen/): A screen refuses with 403 for one audience and works for the other: which of the two boundaries refused, how to tell, and what to report. - [A caller reached the closed-line message](https://connectbyjbrh.com/docs/troubleshooting/after-hours-call/): A caller heard the closed-line message instead of the voice: why that is the line working, what the message says and does not say, and how to change it. - [The allowance is spent](https://connectbyjbrh.com/docs/troubleshooting/allowance-reached/): A daily counter is spent. What keeps running, what is held rather than dropped, and the four things a person can genuinely do about it today. - [The approval is not in the queue](https://connectbyjbrh.com/docs/troubleshooting/approval-not-appearing/): You are waiting for something to approve and the queue does not have it. The two states that look exactly like absence, and the four other reasons. - [The Assistant is not on screen](https://connectbyjbrh.com/docs/troubleshooting/assistant-missing/): The Assistant launcher or panel is not where it should be: the two layout causes, the one session cause, and how to tell them apart in under a minute. - [The Assistant refused to do it](https://connectbyjbrh.com/docs/troubleshooting/assistant-refused/): The Assistant declined to do something you asked: the four kinds of refusal — authority, autonomy, evidence and plan — and which of them a person can lift. - [The Assistant stopped responding](https://connectbyjbrh.com/docs/troubleshooting/assistant-stuck/): The Assistant stops mid-answer or never starts: separating a dropped stream from a provider limit from a spent AI budget, and what each one needs. - [The Assistant answered about the wrong record](https://connectbyjbrh.com/docs/troubleshooting/assistant-wrong-context/): An answer about a record you were not asking about: how screen context is claimed and checked, what a pinned record overrides, and how to reset both. - [There is no audit entry for something](https://connectbyjbrh.com/docs/troubleshooting/audit-entry-missing/): No audit entry for something that clearly happened: which of Connect's three self-records holds it, what the audit trail deliberately excludes, and what an absence proves. - [The AI budget is spent](https://connectbyjbrh.com/docs/troubleshooting/budget-exhausted/): The AI spend ceiling has been reached. What stops immediately, what carries on untouched, and the sentence a caller hears instead of a conversation. - [The call connected and nobody spoke](https://connectbyjbrh.com/docs/troubleshooting/call-answered-in-silence/): The call connected and nothing was said: the greeting failure that used to read as caller abandonment, how it is recorded now, and what to check. - [The call sounded bad](https://connectbyjbrh.com/docs/troubleshooting/call-audio-quality/): When a call sounded bad: separating band-limited telephone audio from network trouble, turn-taking faults and delivery, and what Connect can actually measure. - [A call cost more than expected](https://connectbyjbrh.com/docs/troubleshooting/call-cost-surprise/): Why a voice minute costs more than a text minute: audio token rates, context re-billed every turn, restarts, swept calls and calls that report no tokens. - [The call ended early](https://connectbyjbrh.com/docs/troubleshooting/call-cut-short/): The call ended before the conversation did: how to tell a product ceiling, a session limit, a silence watcher and a carrier hang-up apart from each other. - [The call never rang](https://connectbyjbrh.com/docs/troubleshooting/call-never-rang/): An outbound call recorded as never reached: how it differs from nobody answering, which of the dial, the dispatch or the worker failed, and what to do about each. - [Something will not delete](https://connectbyjbrh.com/docs/troubleshooting/cannot-delete/): Something refuses to be removed: what Connect protects and why, which removals are marks rather than erasures, and what to do instead of deleting. - [You cannot sign in](https://connectbyjbrh.com/docs/troubleshooting/cannot-sign-in/): Three different failures wear the same face at the sign-in screen: consent, the address you used, and membership. How to tell them apart in order. - [Every line is busy](https://connectbyjbrh.com/docs/troubleshooting/capacity-full/): Calls are refused because every voice worker is over its load threshold: what the caller meets, how capacity is actually computed, and what to change. - [The carrier callback was refused](https://connectbyjbrh.com/docs/troubleshooting/carrier-verification-failed/): The carrier's callback was refused before the call was answered: what a refusal before pickup looks like on both logs, and the workspace-scope trap that causes most of them. - [No case was opened](https://connectbyjbrh.com/docs/troubleshooting/case-not-created/): A customer raised a problem and no case exists. Why opening one is an action rather than an inference, and what to do when it should have happened. - [A person is not attached to their company](https://connectbyjbrh.com/docs/troubleshooting/company-not-linked/): The company link is a decision somebody makes, not something inferred from an address. Where it comes from, and how to set it in each place. - [Connect would not give a price](https://connectbyjbrh.com/docs/troubleshooting/connect-refused-to-quote/): Connect would not give a price, an SLA or a warranty term. Why the refusal is correct, what evidence changes it, and how to answer the customer today. - [A CSV export looks escaped](https://connectbyjbrh.com/docs/troubleshooting/csv-export-formula/): An exported CSV shows odd leading characters on some cells. That is formula neutralisation working, why it is not optional, and how to read the file safely. - [Data that should be here is not](https://connectbyjbrh.com/docs/troubleshooting/data-not-visible/): A record you expect is not in a list: the three different silences behind that, how to tell them apart, and the one that is a defect rather than a boundary. - [A deal is not on the board](https://connectbyjbrh.com/docs/troubleshooting/deal-missing-from-pipeline/): A deal you expected is not on the board. Four causes checked in order: the filter, the stage, who owns the record, and which workspace you are in. - [The draft is still waiting](https://connectbyjbrh.com/docs/troubleshooting/draft-never-sent/): A written reply that has not gone out: the four holds that cause it, the screen that reveals each one, and what the customer is experiencing meanwhile. - [The same call-back was booked twice](https://connectbyjbrh.com/docs/troubleshooting/duplicate-follow-up/): Two follow-ups for one promise: how a repeated commitment, a second call or a split person record each produce a double booking, and how to clear one. - [An obvious duplicate was not suggested](https://connectbyjbrh.com/docs/troubleshooting/duplicate-not-detected/): Why two records that look identical to you share nothing a detector can match on, and how to merge them yourself without losing either side. - [A duplicate record was created](https://connectbyjbrh.com/docs/troubleshooting/duplicate-record-created/): Two records for one person or company: the three ways a second one is created, what merging does to history, and what to check before you merge. - [The same conversation appears twice](https://connectbyjbrh.com/docs/troubleshooting/duplicate-threads/): One conversation showing as two: why mail threading splits, what Connect can and cannot merge, and how the person's timeline restores the whole story. - [The reply lost its formatting](https://connectbyjbrh.com/docs/troubleshooting/email-formatting-lost/): A message that looks plainer than it should: what the reading sanitiser removes, what the composer never adds, and how to tell lost styling from lost content. - [A website enquiry is not in my workspace](https://connectbyjbrh.com/docs/troubleshooting/enquiry-not-visible/): An enquiry from the JBRH site is not in your workspace, and it never will be. What you are actually seeing, where the record is, and what it protects. - [An export is missing rows](https://connectbyjbrh.com/docs/troubleshooting/export-missing-rows/): A download that is shorter than the screen suggested: what an export actually follows, why the visible rows are not the set, and the cells that change on the way out. - [The file was refused](https://connectbyjbrh.com/docs/troubleshooting/file-rejected/): A file would not attach: the format list, the content check that ignores the extension, and the two safety refusals that happen before anything is parsed. - [The call promised a call-back that never happened](https://connectbyjbrh.com/docs/troubleshooting/follow-up-not-booked/): A caller was promised a call-back and no follow-up exists: the time-mismatch refusal, the unbooked-promise finding, and where the evidence is. - [A follow-up did not go out](https://connectbyjbrh.com/docs/troubleshooting/follow-up-not-executed/): A follow-up came due and nothing went out. The six gates in the order they are checked, and how to tell from the row which one stopped yours. - [The follow-up went out at the wrong time](https://connectbyjbrh.com/docs/troubleshooting/follow-up-wrong-time/): A follow-up reached someone at an hour nobody intended. What the due time actually promises, and the four delays that move a send later. - [Gmail was not updated](https://connectbyjbrh.com/docs/troubleshooting/gmail-labels-missing/): The reply went out but Gmail still shows the thread unread and unlabelled: what write-back is, why its failure never blocks a send, and how to retry it. - [The greeting took seconds to arrive](https://connectbyjbrh.com/docs/troubleshooting/greeting-too-slow/): Why a caller hears a pause before the first sentence: a cold worker process, a refused warm-up, or greeting wording that no longer matches the cache. - [The grid would not save an edit](https://connectbyjbrh.com/docs/troubleshooting/grid-edit-refused/): A cell reverted instead of saving: the service that owns the record declined the change. The six reasons it declines, and how to find which one applied. - [The email renders badly](https://connectbyjbrh.com/docs/troubleshooting/html-looks-wrong/): A message that renders as plain, broken or oddly laid out: what the sanitiser takes out, why it is aggressive, and how to see the original safely. - [Images in an email do not load](https://connectbyjbrh.com/docs/troubleshooting/images-not-loading/): Pictures in a message are missing or broken: what the image proxy does, why it exists, and which of the five causes you can actually do something about. - [Some imported rows are missing](https://connectbyjbrh.com/docs/troubleshooting/import-rows-dropped/): Fewer records arrived than the file had rows. The three causes that account for nearly all of it, and the report that names each one by row. - [An integration disconnected](https://connectbyjbrh.com/docs/troubleshooting/integration-disconnected/): A connected provider has stopped working. The shape every disconnection shares, what each provider does differently, and why reconnection happens at the provider. - [Keyboard navigation gets stuck](https://connectbyjbrh.com/docs/troubleshooting/keyboard-trap/): Tab stops working or focus vanishes: how to tell a real focus trap from focus you cannot see, the reliable way out, and what a useful report contains. - [Connect said it does not know](https://connectbyjbrh.com/docs/troubleshooting/knowledge-insufficient/): A thread waiting because approved Knowledge held no confident answer: the six causes in order of likelihood, and the three things that change it. - [Mail is in the provider but not in Connect](https://connectbyjbrh.com/docs/troubleshooting/mail-not-arriving/): A message is visible at Gmail or on the mail server and absent from Conversations. Four checks, in the order that finds the cause fastest. - [The mailbox disconnected](https://connectbyjbrh.com/docs/troubleshooting/mailbox-disconnected/): A mailbox has stopped authenticating: the causes in order of likelihood, what is still safe while it is down, and the path back to working. - [An MCP client cannot connect](https://connectbyjbrh.com/docs/troubleshooting/mcp-client-cannot-connect/): An MCP client that will not talk to Connect: the four refusals it can meet — transport, origin, protocol version and authentication — and the one-line test for each. - [An older fact stopped being used](https://connectbyjbrh.com/docs/troubleshooting/memory-budget/): Something Connect used to mention has quietly stopped appearing: the per-channel character budgets, the fixed group order, and what falls off the end first. - [Connect ignored what I told it](https://connectbyjbrh.com/docs/troubleshooting/memory-not-applied/): A reply that ignores something you wrote down: the four causes in order of likelihood, what to check for each, and what the reply did and did not do meanwhile. - [The memory viewer shows nothing](https://connectbyjbrh.com/docs/troubleshooting/memory-viewer-empty/): You opened the memory viewer expecting to see what Connect knows and found nothing. Which tier you are actually looking at, and when empty is the true answer. - [Something is missing from the timeline](https://connectbyjbrh.com/docs/troubleshooting/missing-timeline-entry/): Four kinds of event never appear on a customer timeline by design, and one kind of absence is a real gap. How to tell them apart. - [The layout is wrong on a phone](https://connectbyjbrh.com/docs/troubleshooting/mobile-layout-broken/): Overlapping or unreachable controls on a phone: where the layout comes from, the breakpoint that matters, and the four details that make a report reproducible. - [The voice model refused the session](https://connectbyjbrh.com/docs/troubleshooting/model-session-failed/): The voice model would not start or dropped the session: the three close codes in plain language, the settings that cause each, and the retry and fallback. - [The AI provider refused](https://connectbyjbrh.com/docs/troubleshooting/model-unavailable/): The AI provider refused. Quota, a rejected key, the spend ceiling and a bad model choice produce one symptom — here is how to tell which of the four it was. - [Needs You is empty and something is wrong](https://connectbyjbrh.com/docs/troubleshooting/needs-you-empty/): An empty queue is not a clean bill of health. What Needs You raises, what it deliberately leaves to other screens, and where to look when it is quiet. - [Discovery returned nothing](https://connectbyjbrh.com/docs/troubleshooting/no-prospects-found/): Discovery finished and the list is empty or nearly so. The four causes in order of likelihood, how to tell them apart, and what to change for each. - [Connect appears to be doing nothing](https://connectbyjbrh.com/docs/troubleshooting/nothing-is-happening/): Connect looks idle: no replies, no calls, no activity. The seven reasons, ordered by how often each one turns out to be the answer. - [Connect is preparing work but sending nothing](https://connectbyjbrh.com/docs/troubleshooting/nothing-is-sending/): Connect is clearly working — drafts appear, calls are planned — and nothing leaves. The four causes in the order they actually apply, and how to tell them apart. - [Outreach was blocked](https://connectbyjbrh.com/docs/troubleshooting/outreach-blocked/): A message to a prospect was refused or held. Which gate did it, where the reason is written, and which refusals a person is allowed to lift. - [The PDF has no readable text](https://connectbyjbrh.com/docs/troubleshooting/pdf-no-text/): A PDF with no text layer still gets read, as an image, by the model. What that changes about the answer, and when to go back for a better source. - [You do not have permission](https://connectbyjbrh.com/docs/troubleshooting/permission-denied/): Three unrelated things produce 'you do not have permission': your audience, your workspace and your role. Each looks different once you know what to look at. - [Nobody can reach the number](https://connectbyjbrh.com/docs/troubleshooting/phone-line-not-ringing/): Nobody can reach your business number: the checklist in order — claim, trunk, routing, worker, hours, switch — and what each failure leaves on the record. - [No voice worker is available](https://connectbyjbrh.com/docs/troubleshooting/phone-worker-unavailable/): Calls are refused or reach nothing because no voice worker has checked in: what the caller meets, why a screen once said ready anyway, and the two ways it clears. - [The plan has lapsed](https://connectbyjbrh.com/docs/troubleshooting/plan-lapsed/): Four different things stop a workspace and all of them look the same from a screen. How to tell a lapse from the other three in about a minute. - [The prospecting allowance is spent](https://connectbyjbrh.com/docs/troubleshooting/prospect-allowance/): Prospecting has stopped because a limit was reached. Which of the two allowances it was, what carries on regardless, and what is waiting rather than lost. - [Connect refused to prospect an existing customer](https://connectbyjbrh.com/docs/troubleshooting/prospect-already-customer/): A candidate was recognised as somebody the workspace already deals with. What the match was made on, and how to correct it when the match is wrong. - [A good prospect has no address](https://connectbyjbrh.com/docs/troubleshooting/prospect-no-email/): A qualified prospect with no contact address. Why nothing was invented to fill the gap, what the record is still worth, and the next actions that do work. - [A provider is down](https://connectbyjbrh.com/docs/troubleshooting/provider-outage/): A provider Connect depends on is failing. What is handled automatically, what simply waits, and the few things a person should and should not do meanwhile. - [Reconnect required](https://connectbyjbrh.com/docs/troubleshooting/reconnect-required/): Why a stored grant stops working, what running the consent again restores, and the four things it deliberately does not put right. - [A screen is empty and should not be](https://connectbyjbrh.com/docs/troubleshooting/screen-empty/): A list showing nothing when it should show rows: the four causes — a filter, a workspace stamp, a permission, or genuine emptiness — and how to tell them apart. - [Search returns nothing](https://connectbyjbrh.com/docs/troubleshooting/search-finds-nothing/): Search returns nothing for something you know exists: which fields are actually matched, how wildcard characters behave, and why results are a page rather than a set. - [The reply would not send](https://connectbyjbrh.com/docs/troubleshooting/send-failed/): A reply was refused by the provider or never left: how to read the category of failure, which ones are worth retrying, and what to do about each. - [You were signed out](https://connectbyjbrh.com/docs/troubleshooting/session-expired/): A session expires on a clock rather than on idleness, and it does it without warning. What that looks like on an open screen, and what your last action did. - [A screen is slow to load](https://connectbyjbrh.com/docs/troubleshooting/slow-screen/): A screen that takes seconds to appear: what it is actually fetching, the two query patterns that make screens slow, and how to tell which one you have. - [The same SMS was answered twice](https://connectbyjbrh.com/docs/troubleshooting/sms-duplicate-reply/): One text message produced two answers, two follow-ups or two cases. What the deduplication key covers, what defeats it, and how to clean up without losing a promise. - [SMS will not send](https://connectbyjbrh.com/docs/troubleshooting/sms-not-sending/): A text message will not go out. The provider check comes first, then DLT, then suppression — with what Connect completed and what it never started. - [The same message went out twice](https://connectbyjbrh.com/docs/troubleshooting/something-was-sent-twice/): Two copies of one message, or one call placed twice: how retries are made safe, the two causes that produce a genuine duplicate, and what to do next. - [A Knowledge source failed to process](https://connectbyjbrh.com/docs/troubleshooting/source-failed/): A Knowledge source that ended in error or never went active: the format, size, content and service causes, with the repair for each. - [The deal would not move stage](https://connectbyjbrh.com/docs/troubleshooting/stage-move-refused/): A deal will not move to the stage you picked. The rules that block a move, how to satisfy each one, and the stage change people confuse it with. - [The screen shows old data](https://connectbyjbrh.com/docs/troubleshooting/stale-data/): The screen shows something you know has changed: the five reasons old data appears, including a tab that never noticed a release and a record still being written. - [The recipient is suppressed](https://connectbyjbrh.com/docs/troubleshooting/suppressed-recipient/): Connect refused to write to an address: how to find out why, who is allowed to clear the entry, and the one kind nobody should clear casually. - [A time is shown in the wrong zone](https://connectbyjbrh.com/docs/troubleshooting/time-is-wrong/): A clock reading that looks an hour or half a day out: which zone each surface uses, why a promised call-back follows the line rather than the caller, and what to check. - [The same person is being chased repeatedly](https://connectbyjbrh.com/docs/troubleshooting/too-many-follow-ups/): One person is being chased again and again. Where the extra commitments come from, why duplicate protection missed them, and how to stop them. - [The send result is uncertain](https://connectbyjbrh.com/docs/troubleshooting/uncertain-send/): A reply whose outcome the provider never confirmed: what that state means, why nothing is re-sent on a guess, and the evidence that settles it. - [Connect did something without asking](https://connectbyjbrh.com/docs/troubleshooting/unexpected-autonomous-action/): Something went out with no approval. How to read the decision log entry that explains it, and why the scope in force is usually wider than the one you set. - [The voice talked over the caller](https://connectbyjbrh.com/docs/troubleshooting/voice-cut-the-caller/): The voice kept talking over the caller, or stopped when nobody interrupted: the interruption thresholds, false-interruption resume, and why the host path leaves it off. - [An inbound webhook was rejected](https://connectbyjbrh.com/docs/troubleshooting/webhook-rejected/): A provider reports failed deliveries and nothing arrives in Connect: the four causes of a refused callback, in the order they are worth checking. - [WhatsApp messages are not arriving](https://connectbyjbrh.com/docs/troubleshooting/whatsapp-not-receiving/): No WhatsApp conversations are appearing in Connect: the causes in order of likelihood, what Connect did and did not complete, and how to prove which half is broken. - [The WhatsApp reply would not send](https://connectbyjbrh.com/docs/troubleshooting/whatsapp-send-failed/): A WhatsApp reply was written and did not go: telling the 24-hour window from a consent block, a spent allowance, an unapproved template and the hourly cap. - [The WhatsApp message attached to the wrong person](https://connectbyjbrh.com/docs/troubleshooting/whatsapp-wrong-person/): A WhatsApp conversation is attached to the wrong contact: why matching works from the number alone, what the wrong join affects, and the two different repairs. - [An answer quoted the wrong thing](https://connectbyjbrh.com/docs/troubleshooting/wrong-answer-from-knowledge/): A reply cited something out of date, contradictory or beside the point. The causes in order of likelihood, what Connect finished, and what it never attempted. - [The voice answered in the wrong language](https://connectbyjbrh.com/docs/troubleshooting/wrong-language-on-call/): The voice answered in a language the caller did not use: which language a call opens in, what counts as evidence for a switch, and the transcript that looks wrong and is not. - [The reply went from the wrong address](https://connectbyjbrh.com/docs/troubleshooting/wrong-mailbox-sent/): Why a reply left from a mailbox you did not expect: how the sending address is chosen, why a thread keeps it, and what to do about a message already gone. - [Connect remembers something wrong](https://connectbyjbrh.com/docs/troubleshooting/wrong-memory/): Connect keeps repeating something about your business that is not true: how to find where it is stored, correct it at the right tier, and confirm the fix. - [Two people were treated as one](https://connectbyjbrh.com/docs/troubleshooting/wrong-person-matched/): A reply that mixes up two contacts: how an over-broad identity or a bad merge causes it, and how to separate the consequences afterwards. - [A message went to the wrong person](https://connectbyjbrh.com/docs/troubleshooting/wrong-recipient/): A reply or a call reached the wrong person: how identity resolution and thread stickiness decide a recipient, and how to correct the record afterwards. - [You are in the wrong workspace](https://connectbyjbrh.com/docs/troubleshooting/wrong-workspace/): Why you are looking at another business's screens, how a workspace is actually chosen, and the one version of this that is worth reporting. ## Glossary - [Glossary](https://connectbyjbrh.com/docs/glossary/): One canonical definition per term in Connect, and the rule that every other page links here instead of defining a word a second time. - [Allowance](https://connectbyjbrh.com/docs/glossary/allowance/): An allowance is what remains of a period's permitted volume. Some are refused at the limit, some are ceilings on what may exist, and one is only counted. - [Approval](https://connectbyjbrh.com/docs/glossary/approval/): An approval is one held action waiting for a human yes or no — what holds it, what the recipient sees meanwhile, and what a rejection does. - [Audit](https://connectbyjbrh.com/docs/glossary/audit/): The audit trail records who did what, in what capacity, to what, and whether it worked — including the refusals, because a refusal is a decision too. - [Autonomy](https://connectbyjbrh.com/docs/glossary/autonomy/): Autonomy is the per-channel rule for what Connect may do without asking: four channels, four modes, four scopes, narrowest scope wins. - [Carrier](https://connectbyjbrh.com/docs/glossary/carrier/): A carrier is the telephony provider specifically — the company that reaches the public phone network, and the authority for a call's duration and cost. - [Channel](https://connectbyjbrh.com/docs/glossary/channel/): A channel is a medium Connect communicates over. Four carry autonomy rules, one more exists for calls you make yourself, and the word is not the provider. - [Company](https://connectbyjbrh.com/docs/glossary/company/): A company in Connect is an organisation you deal with — never your own business, which is the workspace — and it is what people are attached to. - [Connect](https://connectbyjbrh.com/docs/glossary/connect/): What the name Connect covers: the product, the operator behind it, the work it does across four channels, and the names it is not. - [Conversation](https://connectbyjbrh.com/docs/glossary/conversation/): A conversation is Connect's channel-agnostic unit of exchange — one continuing exchange with one person, whether it arrived by email, WhatsApp, SMS or phone. - [Customer 360](https://connectbyjbrh.com/docs/glossary/customer-360/): Customer 360 is one person's whole history assembled across every channel — built when you ask for it, not stored as a separate record. - [Customer-safe](https://connectbyjbrh.com/docs/glossary/customer-safe/): The allowlist that decides which API paths a customer session may call, how it differs from the rewrite that happens in the browser, and what its 403 means. - [Deal](https://connectbyjbrh.com/docs/glossary/deal/): Deal is the everyday word for an opportunity. Both appear in Connect because the screens speak plainly and the model and API do not. - [Digital employee](https://connectbyjbrh.com/docs/glossary/digital-employee/): The role-shaped definition of a Digital Business Employee, and the line that separates one from a task agent, a copilot or an automation. - [Disposition](https://connectbyjbrh.com/docs/glossary/disposition/): A disposition is what a person decided a call was — stored apart from the engine's guess, and never overwritten by a model or a late carrier update. - [DNC](https://connectbyjbrh.com/docs/glossary/dnc/): Do not contact is the strongest block a workspace can set on a person: every channel, no exceptions, and not something the Connect Assistant may clear. - [Entitlement](https://connectbyjbrh.com/docs/glossary/entitlement/): An entitlement records what a workspace's subscription permits: which features it reaches and what daily volumes it may use, as two separate questions. - [Fact](https://connectbyjbrh.com/docs/glossary/fact/): A fact in Connect is one grounded statement with provenance, extracted from knowledge or a conversation — and correctable on its own. - [Follow-up](https://connectbyjbrh.com/docs/glossary/follow-up/): A follow-up is a dated commitment to make contact on a named channel, with the reason recorded — including one channel that never sends anything. - [Identity](https://connectbyjbrh.com/docs/glossary/identity/): An identity is one address on one channel that resolves to a person — and it is not your own mailbox, not a sign-in, and never guessed. - [Knowledge](https://connectbyjbrh.com/docs/glossary/knowledge/): Knowledge is the source material a workspace supplies for answers to be grounded in — what counts as a source, and why it is not the same as memory. - [Lead](https://connectbyjbrh.com/docs/glossary/lead/): A lead in Connect is a contact captured from a conversation you were already having — a different record from a prospect, and from a person. - [Lifecycle stage](https://connectbyjbrh.com/docs/glossary/lifecycle-stage/): A lifecycle stage says how far one relationship has got, in six words — and the transition into client is the one Connect may not make alone. - [Mailbox](https://connectbyjbrh.com/docs/glossary/mailbox/): A mailbox is one email account connected to a workspace, with its own role, signature and autonomy — and it is not the same thing as an identity. - [Memory](https://connectbyjbrh.com/docs/glossary/memory/): Memory in Connect is what it knows about a business and its people, held at four tiers and resolved narrowest-first — readable and erasable at each one. - [Needs You](https://connectbyjbrh.com/docs/glossary/needs-you/): Needs You is the ranked queue of decisions, approvals and operational problems waiting for a person — what qualifies for it and how it empties. - [Opportunity](https://connectbyjbrh.com/docs/glossary/opportunity/): An opportunity is one commercial deal on the pipeline, with a value and one of five stages — and winning it is a change only a person confirms. - [Outcome](https://connectbyjbrh.com/docs/glossary/outcome/): An outcome is the engine's verdict on a call, derived from the conversation — and it decides whether anything is scheduled to happen next. - [Owner](https://connectbyjbrh.com/docs/glossary/owner/): Owner in Connect means the platform operator's own workspace and session — what that changes, and the three things that are correctly operator-only. - [Person](https://connectbyjbrh.com/docs/glossary/person/): A person is the canonical human record in Connect: one human however many addresses they use, and the thing every conversation resolves to. - [Prospect](https://connectbyjbrh.com/docs/glossary/prospect/): A prospect is an organisation research found and kept as a candidate — held deliberately even before any contact address for it exists. - [Provider](https://connectbyjbrh.com/docs/glossary/provider/): A provider is the external service behind a channel — the mail host, the messaging platform, the carrier. Connect keeps their shape out of its own records. - [Relationship](https://connectbyjbrh.com/docs/glossary/relationship/): A relationship is the ongoing connection between a business and a person or company — everything that has happened, across channels and years, in one record. - [Rule](https://connectbyjbrh.com/docs/glossary/rule/): A rule in Connect constrains behaviour rather than granting permission — where rules are written, and how they differ from filters and from autonomy. - [Standing instruction](https://connectbyjbrh.com/docs/glossary/standing-instruction/): A standing instruction is a durable direction a person gives Connect — how it differs from a memory, from a rule and from an autonomy setting. - [Support case](https://connectbyjbrh.com/docs/glossary/support-case/): A support case is one post-sale thing a customer needs sorted out, with a state and an owner — and deliberately not a helpdesk ticket. - [Suppression](https://connectbyjbrh.com/docs/glossary/suppression/): Suppression is a standing block on contacting an address or number. It outranks every other reason to send, and its origin decides whether it can be lifted. - [Tenant](https://connectbyjbrh.com/docs/glossary/tenant/): Tenant is the engineering word for a customer workspace: where it appears, why the product says customer instead, and what it is not. - [Thread](https://connectbyjbrh.com/docs/glossary/thread/): A thread is the email-shaped conversation in Connect: what joins messages into one, what does not, and the triage state the engine reads from it. - [Voice Lab](https://connectbyjbrh.com/docs/glossary/voice-lab/): Voice Lab is where a workspace tunes how Connect sounds on the phone and reviews finished calls against measurements the worker took on the wire. - [Workspace kernel](https://connectbyjbrh.com/docs/glossary/workspace-kernel/): The layer that filters every database query by workspace, why it is not the same thing as row-level security, and what an empty workspace stamp does to a record. - [Workspace](https://connectbyjbrh.com/docs/glossary/workspace/): The isolation root in Connect: what belongs to one workspace, how the boundary is enforced three times, and what deliberately sits outside it. ## Comparisons - [Comparisons and concepts](https://connectbyjbrh.com/docs/compare/): The index of Connect's comparison pages: how it sits beside a CRM, a helpdesk or a call centre, and the internal distinctions people confuse. - [Agent and assistant](https://connectbyjbrh.com/docs/compare/agent-vs-assistant/): The engine starts work on its own and is governed by autonomy. The Connect Assistant answers a person and has narrower rights than they do. - [Autonomy and approval](https://connectbyjbrh.com/docs/compare/autonomy-vs-approval/): Autonomy is the standing rule for what Connect may do unasked. An approval is one held action waiting on a person. Changing one does not do the other's job. - [Connect and a call centre](https://connectbyjbrh.com/docs/compare/connect-vs-call-centre/): What answering every call the same way is worth, what it costs, and the three things on a live Connect line that a call centre still does and it does not. - [Connect and a chatbot](https://connectbyjbrh.com/docs/compare/connect-vs-chatbot/): A chatbot answers the person in front of it. Connect works a business's whole mail across channels, remembers, acts, and records who decided what. - [Connect and a CRM](https://connectbyjbrh.com/docs/compare/connect-vs-crm/): Connect keeps people, companies and deals as a by-product of work it does; a CRM keeps them as the thing itself. Which record belongs where. - [Connect and email marketing tools](https://connectbyjbrh.com/docs/compare/connect-vs-email-marketing/): A broadcast tool sends one message to a list that agreed to hear from you. Connect writes one message to one person. The consent models are not the same. - [Connect and a helpdesk](https://connectbyjbrh.com/docs/compare/connect-vs-helpdesk/): A helpdesk organises work into tickets and queues. Connect tries to finish the work before a queue exists, and keeps cases for what it cannot. - [Connect and sales engagement tools](https://connectbyjbrh.com/docs/compare/connect-vs-sales-engagement/): Sequence tools optimise cadence and volume. Connect optimises whether the message should be sent at all, and refuses to guess an address or a price. - [Connect and workflow automation](https://connectbyjbrh.com/docs/compare/connect-vs-workflow-automation/): Automation runs a path you drew in advance. Connect decides what a message needs. Where each belongs, and what happens when you pick the wrong one. - [Digital employee and AI agent](https://connectbyjbrh.com/docs/compare/digital-employee-vs-ai-agent/): An AI agent is a technical pattern. A Digital Business Employee is a commitment to permanence, responsibility and oversight. Confusing them costs money. - [Drafting and sending](https://connectbyjbrh.com/docs/compare/draft-vs-send/): Writing a reply and sending it are two acts with very different consequences. Why the approval gate sits exactly between them and nowhere else. - [Evidence and inference](https://connectbyjbrh.com/docs/compare/evidence-vs-inference/): Something observed and something concluded are not the same claim. Where Connect draws the line, and what each kind of statement lets you act on. - [Gmail API and IMAP](https://connectbyjbrh.com/docs/compare/gmail-api-vs-imap/): Two ways to connect a mailbox to Connect. One knows about labels and history; the other works with any mail server in the world. What each costs you. - [Knowledge and memory](https://connectbyjbrh.com/docs/compare/knowledge-vs-memory/): Knowledge is what you told Connect is true about your business. Memory is what it worked out about a person. Putting a fact in the wrong one has consequences. - [llms.txt and a sitemap](https://connectbyjbrh.com/docs/compare/llms-txt-vs-sitemap/): A sitemap is a protocol search engines actually read. llms.txt is a community proposal. Publishing one instead of the other costs you discovery. - [MCP and A2A](https://connectbyjbrh.com/docs/compare/mcp-vs-a2a/): MCP hands tools and data to a model. A2A lets one agent give another agent a task. Connect publishes both, and they answer different questions. - [MCP and a plain API](https://connectbyjbrh.com/docs/compare/mcp-vs-api/): MCP exists so a model can discover what it may call at runtime. An HTTP API exists so your code can call exactly what it already knows it wants. - [Memory and context window](https://connectbyjbrh.com/docs/compare/memory-vs-context/): A context window is what the model can see during one call. Memory is what survives it. Enlarging the first will never produce the second. - [Operator and customer, as a design idea](https://connectbyjbrh.com/docs/compare/owner-vs-tenant-concept/): One codebase serving the platform operator and its customers: what the pattern costs on every change, and the class of defect it makes impossible. - [Public documentation and private help](https://connectbyjbrh.com/docs/compare/public-vs-private-docs/): Some of what Connect knows is written for anybody to read, and some can only be answered inside your workspace. The line between them, and why it is drawn there. - [Realtime and turn-based voice](https://connectbyjbrh.com/docs/compare/realtime-vs-turn-based-voice/): Two voice engines with different physics: one speaks straight from the model, the other produces a sentence code can inspect before the caller hears it. - [A record and a transcript](https://connectbyjbrh.com/docs/compare/record-vs-transcript/): A transcript says what was said once. A record says what is true across everything that happened. Each answers questions the other cannot. - [Rules and instructions](https://connectbyjbrh.com/docs/compare/rules-vs-instructions/): A rule is enforced in code whatever the model concludes. An instruction is text the model is asked to follow. One prevents; the other, at best, detects. - [Scheduled work and triggered work](https://connectbyjbrh.com/docs/compare/scheduled-vs-triggered/): Work that starts because something happened, and work that starts because a time arrived. Two clocks in one system, and what happens where they meet. - [Structured data and content](https://connectbyjbrh.com/docs/compare/structured-data-vs-content/): Markup describes a page; it is not a second page. When the two disagree the markup is the thing that is wrong, and the cost is not theoretical. - [Suppression and blocking](https://connectbyjbrh.com/docs/compare/suppression-vs-block/): Two ways of telling Connect not to contact somebody, enforced in different places. Which one you need depends on whether you mean an address or a relationship. - [Workspace and account](https://connectbyjbrh.com/docs/compare/workspace-vs-account/): Your account is who you are; a workspace is where the business lives. Which one owns what, and what happens when a person and a business part company. ## Research - [Engineering notes](https://connectbyjbrh.com/research/): Engineering notes from building and operating Connect: each one states its method, what was measured, the numbers that came out, and what it cannot tell you. - [Why an agent's tools should call domain services](https://connectbyjbrh.com/research/agent-tools-call-services/): The shortcut where an agent tool writes rows directly, the rules that shortcut silently skips, and the shape that keeps one implementation for people and agents. - [Human approval without blocking low-risk work](https://connectbyjbrh.com/research/approval-without-blocking/): Approval set as a rule per channel and scope rather than per message, a queue that drains itself, and the trade each of the four modes actually makes. - [Separating the agent's authority from the person's](https://connectbyjbrh.com/research/authority-separation/): The agent's rights are a strict subset of the person's. What is deliberately absent from the tool set, the three places it matters, and where it thins out. - [A background thread that outlives its task](https://connectbyjbrh.com/research/background-threads/): Cancelling the coroutine that awaits a worker thread does not stop the thread. What the orphan did at shutdown, and the cooperative stop that replaced it. - [Barge-in without cutting the greeting in half](https://connectbyjbrh.com/research/barge-in-without-cutting-the-greeting/): Letting a caller interrupt a voice agent without a cough killing the opening: the protected greeting, the sensitivity setting and the two-second rule. - [Migrations that run on every boot](https://connectbyjbrh.com/research/boot-time-migrations/): Schema changes applied on every start, with no migration framework: what idempotent has to mean, and the properties a reflection API cannot see. - [Preventing a voice agent from promising a call-back it cannot keep](https://connectbyjbrh.com/research/callback-promises/): How a voice agent came to promise call-backs nothing had booked, the time-word rule that refuses the record, and the finding that measures the residue. - [A tenant facade that fails closed](https://connectbyjbrh.com/research/closed-by-default-facade/): An unmapped API path is refused rather than guessed, in the browser and again on the server. What that costs per feature, and the enumerated test that keeps it honest. - [Headline numbers that stop at the page size](https://connectbyjbrh.com/research/counting-past-the-limit/): When a list limit becomes a total, a workspace of 540 is told it has 500 and a category of 40 reads as 0. Two measured cases and the way to find more. - [How a mail cursor loses messages, and how to stop it](https://connectbyjbrh.com/research/cursor-loss/): A read position advanced on a refusal skips mail permanently and silently. The rule that prevents it, the ordering it depends on, and how to check. - [Deriving control state from the log instead of storing it](https://connectbyjbrh.com/research/derived-control-state/): Pause, take over and release end in a state no single row describes. Why the live call's control state is folded from its guidance log instead of stored. - [Treating documentation as a build artefact](https://connectbyjbrh.com/research/documentation-as-a-build/): Documentation compiled from one capability registry into HTML, manifests and machine descriptions, with a gate that fails closed on everything it can measure. - [Evidence-first prospecting without guessed emails](https://connectbyjbrh.com/research/evidence-first-prospecting/): Attaching a source to every claim and never generating an address: what the method costs in volume, what it buys, and where the honest gaps are. - [Making a next-best-action defensible](https://connectbyjbrh.com/research/evidence-for-next-action/): What a recommended next action has to carry before it is worth following: the record, the evidence, the rule behind it, and the act it enables. - [Five ways a test suite has passed while proving nothing](https://connectbyjbrh.com/research/false-passing-tests/): Five suites that ran green while proving nothing: a rule asserted in prose, a policy never exercised, a clock on the wrong source, and a field that did not exist. - [One file service for two audiences](https://connectbyjbrh.com/research/files-through-one-service/): A second file implementation for the second audience drifts within a release. The single-service shape used here, what it refuses at the door, and its limits. - [A focus ring that was defined, valid-looking and computed to nothing](https://connectbyjbrh.com/research/focus-rings-that-computed-to-none/): A keyboard focus ring can be present in the source, valid to a linter, and still compute to nothing in the browser. What to measure instead of reading. - [A spreadsheet view that is not a second database](https://connectbyjbrh.com/research/grid-over-services/): A spreadsheet over 13 record sheets where every edit still goes through the service that owns the record. What the constraint costs, and what it prevents. - [Grounding an answer without pretending to have a vector database](https://connectbyjbrh.com/research/grounding-without-a-vector-database/): How an answer is grounded in a workspace's own Knowledge and Facts without an embedding index, why selection by relation holds at this size, and where it stops. - [Idempotency for retried telephony webhooks](https://connectbyjbrh.com/research/idempotent-telephony-webhooks/): Why a carrier retries a webhook, what a duplicate delivery does to a live call, and the partial unique index that makes a replay harmless. - [A row with no workspace stamp is invisible, not missing](https://connectbyjbrh.com/research/invisible-not-missing/): Missing, deleted and invisible are three different incidents with three different repairs. The one-minute triage that tells them apart before anyone reaches for a backup. - [Defects that are invisible in the source and obvious in a browser](https://connectbyjbrh.com/research/invisible-ui-defects/): Three defects a source review could not have seen: an overlay covering a control, a remembered size hiding one, and a capability nothing on screen called. - [Why 'connected' is not enough to prove mailbox health](https://connectbyjbrh.com/research/mailbox-health-beyond-connected/): Authentication proves a credential, not a working mailbox. The signals that matter, the quiet mailbox that looks fine, and the setter that keeps a token alive. - [Measuring whether AI systems can actually read your site](https://connectbyjbrh.com/research/measuring-ai-visibility/): Crawl, citation and referral are three different measurements with three different kinds of evidence. Only the first is visible in a server log. - [Measuring conversational latency correctly](https://connectbyjbrh.com/research/measuring-voice-latency/): Why a transcript row is the wrong clock for a voice agent, what to time instead, and what moving the measurement did to the numbers. - [Making a correction actually change behaviour](https://connectbyjbrh.com/research/memory-correction-that-sticks/): A correction that is stored and never read looks exactly like one that worked. Where that happens, why, and what makes a correction change behaviour. - [Findings a setting cannot fix](https://connectbyjbrh.com/research/model-limited-findings/): Three voice behaviours prompting could not reach, the measurement that settled each one, and how a quality score should count a fault no control can fix. - [The query cost that grows with the business](https://connectbyjbrh.com/research/n-plus-one-that-grows/): Query cost measured in statements rather than seconds, with four before-and-after figures: 5,574 to 3, 83 to 11, 89 to 17 and 133 to 15. - [Why the machine proposes a merge and a person disposes](https://connectbyjbrh.com/research/one-person-many-channels/): One human reachable by phone, email and WhatsApp: the identity model, what a merge preserves, and why a machine proposes while a person disposes. - [A probe that fires on a correct release is worse than no probe](https://connectbyjbrh.com/research/probes-that-cry-wolf/): A release probe reported 235 backend files changed for a release that changed no code. Why the comparison was wrong, and what a release check should compare. - [Prompt injection arrives as ordinary business mail](https://connectbyjbrh.com/research/prompt-injection-in-business-mail/): Received text is data, never instruction. The realistic attack on a mail-reading agent, the boundary that contains it, and the part that stays unproven. - [What every character of a prompt costs on a live call](https://connectbyjbrh.com/research/prompt-size-and-first-token/): The measured relationship between instruction size and time to first token on a live call, and the character budgets that came out of it. - [Telling a new prospect from an existing customer](https://connectbyjbrh.com/research/prospect-identity-resolution/): Deciding whether a discovered organisation or person is already somebody you know, and the two opposite ways that decision goes wrong. - [Why 'sent' must require provider evidence](https://connectbyjbrh.com/research/provider-evidence-for-sent/): A message is sent when the provider says so and not before. The three states, why the uncertain one must stay uncertain, and how it is resolved. - [Designing telephony that does not name its provider](https://connectbyjbrh.com/research/provider-independent-telephony/): Three layers, one capability table, and the six production defects that came from putting code on the wrong side of the boundary. - [Relationship memory versus chat history](https://connectbyjbrh.com/research/relationship-memory/): What a transcript cannot answer about a customer, what a tiered memory store answers instead, and what each of the two costs to keep and to read. - [Spending research budget where it changes a decision](https://connectbyjbrh.com/research/research-cost-routing/): Running a deeper research pass only where it could change a decision, the same rule applied to model spend on live calls, and what is actually measured. - [Why a sales agent should refuse to answer](https://connectbyjbrh.com/research/safe-refusals-in-sales/): The commercial questions no agent should answer alone, why refusing is the correct outcome, and the escalation that keeps a deal moving anyway. - [When a call is answered in silence](https://connectbyjbrh.com/research/silent-failure/): Five inbound calls were answered in silence and filed as callers hanging up before speaking. The cause, and the event that now tells the two apart. - [Why only one loop may think](https://connectbyjbrh.com/research/single-thinker/): One function turns an inbound message into a decision, and one caller reaches it. Why that boundary exists, what a second loop costs, and where it is enforced. - [A copy of a password somebody else rotates](https://connectbyjbrh.com/research/stale-credentials/): A database password copied into an environment file kept working until somebody else rotated it, then failed at the next restart and read as a bad deploy. - [A four-word vocabulary for capability status](https://connectbyjbrh.com/research/status-vocabulary/): Four words describe every capability in this manual, one of them takes a qualifier, and nothing else is permitted. What each forbids, and what the discipline costs. - [Structured business memory instead of a longer prompt](https://connectbyjbrh.com/research/structured-business-memory/): Why a bigger context window is not a memory, what a four-tier store gives that a longer prompt cannot, and the measured cost of choosing the prompt. - [Three independent layers of tenant isolation](https://connectbyjbrh.com/research/three-layers-of-isolation/): An allowlist, an ORM kernel and PostgreSQL row-level security. What each catches that the other two miss, the gaps all three share, and the cost. - [One implementation, two audiences](https://connectbyjbrh.com/research/two-audiences-one-implementation/): One feature set over one body of code, the seam that keeps it that way, and what a reduced copy for the second audience costs before anybody notices. - [Why uncertainty is a valid answer from a business agent](https://connectbyjbrh.com/research/uncertainty-is-an-answer/): The cost of a confident wrong answer, the places Connect reports not-knowing instead, and what turns uncertainty from an evasion into something actionable. - [Designing undo for agent actions](https://connectbyjbrh.com/research/undo-for-agents/): Reversible, compensable and irreversible: why an agent needs that taxonomy before it needs an undo button, and what Connect offers at each level. - [Data that is invisible rather than missing](https://connectbyjbrh.com/research/workspace-stamp/): A row stamped with an empty workspace id is invisible to every list and openable by id. The asymmetry is the diagnosis, and the repair belongs at boot. - [Writing documentation that both a person and a retrieval system can use](https://connectbyjbrh.com/research/writing-for-people-and-machines/): One text has to serve a person reading and a retrieval system quoting. Answer-first structure, naming entities every time, and keeping facts out of pictures. ## Developers - [Developers and AI agents](https://connectbyjbrh.com/developers/): Every machine interface Connect publishes — MCP, A2A, a read-only HTTP API and the generated descriptions — with what each is for and how to choose. - [Interoperating over A2A](https://connectbyjbrh.com/developers/a2a-integration/): Calling Connect as an A2A agent: the endpoint, the one method it answers, how a skill is chosen, and the operations it refuses. - [The Connect Agent Card](https://connectbyjbrh.com/developers/agent-card/): Connect's A2A Agent Card: where it lives, every field it carries, the five skills it advertises, and the fields that declare what is absent. - [Building an agent on Connect safely](https://connectbyjbrh.com/developers/agent-safety/): The discipline an agent built on Connect should keep, and the controls Connect enforces regardless of whether the agent keeps it. - [API authentication](https://connectbyjbrh.com/developers/api-authentication/): The public Connect API takes no credential and none exists to request. What that means, where workspace access actually lives, and what integration keys are not. - [API error shapes](https://connectbyjbrh.com/developers/api-errors/): The error envelope the public API returns, the codes inside it, the one response that does not use it, and what a client should do with each. - [Idempotency in the API](https://connectbyjbrh.com/developers/api-idempotency/): Connect accepts no idempotency key, and does not need one: every published operation is a read. What that means for retries, and where the guarantee stops. - [Pagination](https://connectbyjbrh.com/developers/api-pagination/): Connect's API has no cursor and no page token. What `limit` really does, how results are ordered, and the two correct ways to read the whole corpus. - [API rate limits](https://connectbyjbrh.com/developers/api-rate-limits/): The three request limits Connect enforces, the headers it does not send, and the client behaviour that keeps you under them. - [API versioning](https://connectbyjbrh.com/developers/api-versioning/): How Connect versions its published interfaces: the product version on the descriptions, protocol revisions negotiated per call, and what a client should not pin to. - [The Arazzo workflows](https://connectbyjbrh.com/developers/arazzo-workflows/): Connect's Arazzo 1.1.0 document: three ordered sequences over the public API, what each produces, and how to run one by hand or with a runner. - [The AsyncAPI description](https://connectbyjbrh.com/developers/asyncapi-events/): The AsyncAPI 3.1.0 document at /developers/asyncapi.yaml: one outbound channel, one signed envelope, six event types, and what it deliberately leaves out. - [Verifying a bot is who it claims](https://connectbyjbrh.com/developers/bot-verification/): A user agent string is a claim, not an identity. The two verification mechanisms, each vendor's own published address source, and what Connect does with them. - [The changelog and its feed](https://connectbyjbrh.com/developers/changelog-feed/): The changelog page, its Atom feed at /changelog/feed.xml, the fields in an entry, and the two quirks a feed reader should know about. - [Crawler policy](https://connectbyjbrh.com/developers/crawler-policy/): Which crawlers this site allows, which decision is left open and why, and the trade-off behind naming model-training crawlers without blocking them. - [The public data model](https://connectbyjbrh.com/developers/data-model-public/): The five object shapes a developer actually receives from Connect, field by field, and the product records that are deliberately not among them. - [Getting help as a developer](https://connectbyjbrh.com/developers/developer-support/): What a developer report needs to be answerable on the first reply, what must be redacted from it, and which routes to the operator are actually published. - [Searching the documentation programmatically](https://connectbyjbrh.com/developers/docs-search-api/): GET /api/public/docs/search: the parameters, the response record, the ranking model, and the four sibling routes on the same public prefix. - [Stable identifiers](https://connectbyjbrh.com/developers/entity-ids/): Page ids, prefixed object ids, delivery identifiers and canonical URLs: which are stable, which change on purpose, and which must never be parsed. - [Designing a resilient client](https://connectbyjbrh.com/developers/errors-and-retries/): Every failure the public surfaces produce, sorted into transient and final, plus the backoff that suits a rate limit with no Retry-After header. - [Integration keys](https://connectbyjbrh.com/developers/integration-keys/): The cbj_ machine credential: how one is issued and scoped, why the plaintext appears once, how revocation works, and what it does not open. - [llms.txt on this site](https://connectbyjbrh.com/developers/llms-txt-here/): The two llms files this site publishes, what each contains, what is kept out of them, and why neither replaces robots.txt or a sitemap. - [The machine-readable documentation](https://connectbyjbrh.com/developers/machine-manifests/): Every generated JSON manifest on the site: docs-manifest.json, the docs-data files, what each field means and when they change. - [Markdown alternates](https://connectbyjbrh.com/developers/markdown-mirrors/): Every page has a Markdown twin at the same URL plus index.md: how to build the URL, what the body contains, and which one is canonical. - [Authenticating to the MCP server](https://connectbyjbrh.com/developers/mcp-authentication/): The Connect MCP server accepts no credential and issues none. What the Origin check does instead, and why there is nothing to revoke. - [Using Connect from any MCP client](https://connectbyjbrh.com/developers/mcp-client-generic/): The protocol-level steps for talking to the Connect MCP server from any client: the methods, the request shapes, and a call you can paste into curl. - [MCP error shapes](https://connectbyjbrh.com/developers/mcp-errors/): Every error the Connect MCP endpoint can return: the JSON-RPC code, the HTTP status beside it, what caused it, and what a client should do next. - [Public MCP tools](https://connectbyjbrh.com/developers/mcp-public-tools/): The ten read-only MCP tools Connect publishes, their input schemas, what each returns, and the four resources and two prompts alongside them. - [Adding Connect to ChatGPT](https://connectbyjbrh.com/developers/mcp-quickstart-chatgpt/): Using the Connect MCP server from ChatGPT: the endpoint, what it does and does not offer a connector, and the limits worth knowing first. - [Adding Connect to Claude](https://connectbyjbrh.com/developers/mcp-quickstart-claude/): Add Connect to Claude as a custom connector: the URL to paste, why no credential is asked for, and what the first connection should show. - [The Connect MCP server](https://connectbyjbrh.com/developers/mcp-server/): The Connect MCP endpoint: its URL, the 2026-07-28 protocol revision, the Streamable HTTP transport, and exactly what is public. - [Workspace MCP tools](https://connectbyjbrh.com/developers/mcp-workspace-tools/): There is no authenticated MCP tool in Connect. What that means, what is written down about the gates a workspace tool would pass, and what to use instead. - [The OpenAPI description](https://connectbyjbrh.com/developers/openapi-description/): Where Connect's OpenAPI document lives, what it covers, the schemas it defines, and the allowlist that decides which routes can ever appear in it. - [The public API](https://connectbyjbrh.com/developers/public-api/): Connect's public HTTP API: five read-only endpoints over the documentation corpus, their parameters, and the boundary that keeps workspace data out. - [Testing against Connect safely](https://connectbyjbrh.com/developers/sandbox/): There is no published sandbox environment. What you can exercise safely without one, what you cannot, and how to build the tests that matter locally. - [The product status manifest](https://connectbyjbrh.com/developers/status-manifest/): status.json: the five-word capability vocabulary, the per-capability status and evidence, and how to depend on it without hardcoding a list. - [Time in the API](https://connectbyjbrh.com/developers/time-and-timezones/): Every timestamp Connect publishes, in which format, in which zone, and the single place where a business's local time is the one that matters. - [Verifying a Connect webhook signature](https://connectbyjbrh.com/developers/webhook-signatures/): The exact HMAC computation behind X-Connect-Signature, worked in Python, Node and Go, and the four mistakes that make a verifier look correct. - [Outbound webhooks](https://connectbyjbrh.com/developers/webhooks-outbound/): The published contract for events Connect delivers to a subscriber: the retry model, the de-duplication rule, and the honest status of delivery itself. - [Webhooks or polling](https://connectbyjbrh.com/developers/webhooks-vs-polling/): The trade-off between being told and asking, what each costs in requests and operational surface, and which one is actually available here. ## Machine interfaces - [Documentation manifest](https://connectbyjbrh.com/docs-manifest.json): every page as JSON. - [Capability status](https://connectbyjbrh.com/docs-data/status.json) - [Protocol versions](https://connectbyjbrh.com/docs-data/versions.json) - [Agent Card](https://connectbyjbrh.com/.well-known/agent-card.json): A2A 1.0.0. - [MCP endpoint](https://connectbyjbrh.com/mcp): Model Context Protocol 2026-07-28, Streamable HTTP. - [Public OpenAPI](https://connectbyjbrh.com/developers/openapi.yaml): OpenAPI 3.1.0. - [Arazzo workflows](https://connectbyjbrh.com/developers/workflows.arazzo.yaml) - [AsyncAPI events](https://connectbyjbrh.com/developers/asyncapi.yaml) - [Crawler policy](https://connectbyjbrh.com/docs-data/crawlers.json) ## Not here - Customer data, workspace settings and private diagnostics require a signed-in session and are not part of this corpus. - Internal engineering documentation is not published. - The application's own HTTP route map is deliberately closed; the public contract is the OpenAPI description above.