> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mosaqo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Messaging guests

> How guest-provider chat works, what you can see, and how to step in when needed.

Once a provider **accepts** a request, a private message thread opens between the guest and that provider. Here's how it works and where you fit in.

<Frame caption="Guest-provider message thread, as seen from the dashboard">
  <img src="https://mintlify.s3.us-west-1.amazonaws.com/mosaqo/images/guest-experience/message-thread.png" alt="Guest-provider message thread" />
</Frame>

## How the guest gets in

The guest gets an email with a secure link straight to their conversation — no account or login needed. That link stays valid for up to a year (or until the conversation closes), though each click only opens a session for about a week before they'd need to use the link again.

## Who's actually in the chat

By default, it's just the **guest** and the **assigned provider(s)**. You (the PM) aren't automatically part of it.

### Watching a conversation

You can always **read** any conversation in your organization, even without joining it.

### Joining a conversation

If you need to message the guest directly — the provider is unreachable, there's a dispute, anything urgent — click to join. You'll see a confirmation first:

> **Join this conversation?** You are not assigned to this booking, so messaging is normally limited to the assigned provider. Guests expect to hear from their provider. If you join without context, it can be confusing — we will post a notice in the chat so they know a property manager is helping.

<Frame caption="Join conversation confirmation dialog">
  <img src="https://mintlify.s3.us-west-1.amazonaws.com/mosaqo/images/guest-experience/join-conversation-dialog.png" alt="Join conversation confirmation dialog" />
</Frame>

<Note>
  Joining is one-way — once you're in, there's no "leave" button. The guest will always see a system note that a property manager joined.
</Note>

If you're also the assigned provider on that request, you can message directly with no extra step.

## Guardrails built into the chat

<AccordionGroup>
  <Accordion title="Sharing contact info (phone, email, WhatsApp, etc.)">
    First attempt is blocked with a warning explaining messages should stay on Mosaqo to keep the booking protected — the sender can choose "Send anyway," and if they do, the message goes through but is flagged for review.
  </Accordion>

  <Accordion title="Abusive or blocked language">
    Hard-blocked outright — the sender sees a message asking them to rephrase, and it never reaches the other party.
  </Accordion>

  <Accordion title="Reporting a conversation">
    Either side can report a conversation (harassment, spam, trying to move off-platform, inappropriate content, other). Reports go to you and the Mosaqo team for review.
  </Accordion>

  <Accordion title="Suspending a conversation">
    You (or Mosaqo support) can pause a conversation while a report is being reviewed — both sides are blocked from sending until it's unsuspended.
  </Accordion>
</AccordionGroup>

## When conversations close

* **Completed request** — the guest can keep reading and replying for about a week, then it locks (read-only, then archived).
* **Cancelled request** — about 24 hours, then it locks.
* The guest can also mute notifications or leave the conversation themselves at any point without affecting your or the provider's access.

## Troubleshooting

<AccordionGroup>
  <Accordion title="Guest says their message link doesn't work">
    Most likely the conversation has closed (request completed/cancelled a while back) or the guest is using an old copy of the link. Have them check their most recent email for a fresh link, or reach out to you directly if it's genuinely closed.
  </Accordion>

  <Accordion title="I want to see what a provider and guest are discussing">
    You can read any conversation without joining it — no need to interrupt the thread just to check in.
  </Accordion>
</AccordionGroup>
