> For the complete documentation index, see [llms.txt](https://docs.allshore.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.allshore.ai/clients-and-pipeline/client-contacts-and-portal-invitations.md).

# Client contacts & portal invitations

Your clients' people get their own **portal** — where they approve timesheets, download invoices and contracts, and see who's engaged with them. You control who gets in.

## Inviting a contact

From the client's detail page (Contacts panel), invite a contact by email with one of two portal roles:

| Portal role       | What they can do                                                                     |
| ----------------- | ------------------------------------------------------------------------------------ |
| **client admin**  | Approve or reject submitted timesheets, and manage their own company's portal users. |
| **client viewer** | Read-only: see approvals, roster, compliance status, invoices, and contracts.        |

Either partner role can invite or revoke contacts. Portal access requires an **active** client — a prospect's contacts can't be invited until you've won the deal.

## What happens next

Inviting records the contact immediately; the **invitation email goes out separately**. When the contact accepts and signs in for the first time, their account **links to your client automatically** (matched by the invited email), and the portal opens at **Approvals** — their home screen.

## Client self-service

Once one **client admin** is in, they can manage their own company's users from the portal's **Your users** screen — inviting colleagues and revoking leavers without involving you. Client viewers can see the user list but not change it.

## Revoking access

Revoke a contact from the same Contacts panel (or the client admin does it from their side). Revocation cuts portal access; nothing about the client's history is deleted.

## Troubleshooting

* **The invitation email never arrived.** A contact can show as invited even when the email failed to send — delivery happens after the record is created. There is no resend: **revoke the pending contact, then invite them again** (check the address while you're at it). If it keeps happening, ask your platform operator to check the invitation configuration.
* **They sign in but can't reach the portal.** They almost certainly signed in with a **different email than the one invited** — the automatic link matches on the invited address. Either have them sign in with the invited address, or invite the address they actually use (and revoke the old pending contact).
* **They were never invited (or were revoked).** No amount of signing in will open the portal — that's the fence working as designed.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.allshore.ai/clients-and-pipeline/client-contacts-and-portal-invitations.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
