> For the complete documentation index, see [llms.txt](https://docs.cogram.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cogram.com/projects/inviting-external-collaborators.md).

# Inviting external collaborators

Share a project with a consultant, contractor, or client at another firm: invite a Directory contact, get the share approved, and manage their access.

Share a project with people at another firm — a structural consultant, a GC, an owner's rep — so you work in one project record instead of forwarding files. When you finish this guide, the person you invited can open your project in their own Cogram account, with the role you chose.

## When to use this

* A consultant needs to follow the project's meetings, chat, and documents as the work happens.
* A contractor should post updates in the project chat rather than email them.
* A client or owner's rep needs read access to the project record.

For sharing a single asset (one meeting, transmittal, RFI, or submittal) rather than a whole project, see [External collaborators](/projects/external-collaborators.md).

## Prerequisites

* You are an owner of the project, or an admin or owner of your organization.
* The collaborator is a contact in your [Directory](/projects/directory.md), with their **work email address**. Personal addresses (Gmail, Outlook.com, and similar) are not accepted — sharing is firm-to-firm.

## Invite a collaborator

You invite a Directory contact, not a bare email address — the invitation is tied to a person your firm already tracks. Start from whichever surface you are on; all three open the same dialog:

* **Directory**: open [Contacts](https://app.cogram.com/dashboard/directory/contacts) and select **Invite to&#x20;*****project*** on the contact's row or on their contact page. Under **All Projects**, the button reads **Invite to project**, and the dialog asks which project to share.
* **Project chat**: select **Invite a collaborator** at the bottom of the channel list.
* **Project overview**: go to **Overview → Access**, scroll to **External collaborators**, and select **Invite a collaborator**.

Then, in the dialog:

1. Confirm the **Contact**, or search for one if it isn't filled in already.
2. Pick a **Role**:
   * **Member** — posts in chat, uploads files, takes part in the project's day-to-day work.
   * **Viewer** — read-only. External collaborators can never be project owners.
3. Select **Send invite**.

The confirmation tells you what happened: the invite went out at once, it is waiting for an admin's approval, or the person was added directly because their firm already collaborates on this project.

### If the contact cannot be invited

The dialog (and the grayed-out button in the Directory) states the reason:

| Reason                                                                               | What to do                                                                                  |
| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------- |
| The contact is in your organization, or their email is on your organization's domain | Add them to the project as a member instead — they are not external.                        |
| The contact has a personal email address                                             | Ask for their work address and update the contact. Sharing across firms needs a work email. |
| The contact is already on this project, or already has an invite on it               | Nothing to do; check the invite's status under **Overview → Access**.                       |
| The contact is archived                                                              | Restore the contact in the Directory first.                                                 |

## Approval

Cross-firm shares are a governance decision, so they need an **organization admin or owner** to approve them:

* If you are an org admin or owner yourself, your invite is approved automatically and the invitation email goes out at once.
* If you are a project owner, the share appears under **Overview → Access → External collaborators** with an **Awaiting Approval** badge, and your organization's admins and owners are notified. One of them opens the same section and selects **Approve**.

The collaborator receives their invitation email only after approval.

## What the collaborator sees

The invitation email links them into Cogram, where they accept or decline the share. If they do not have a Cogram account yet, signing in with the invited email address sets one up. On accept, your project appears in their project list — the project and everything they add to it stay in your firm's workspace.

Their side of the flow is described in [External collaborators](/projects/external-collaborators.md).

## Managing and revoking access

The **External collaborators** section under **Overview → Access** lists every share with its role and status. To end a share, select the remove (trash) icon on its row — access ends immediately, and the person disappears from the project's member list. Project owners and org admins/owners can revoke.

If you invite a second person from a firm that already collaborates on the project, there is nothing new to accept: their firm already agreed, so on approval the person is simply added under the existing share's role.

## Expected result

* **Overview → Access → External collaborators** shows the share as **Accepted**, and the collaborator appears in the project's members.
* In project chat, they take part according to their role — see [Project chat](/projects/project-chat.md).

## Troubleshooting

**The share sits at Awaiting Approval and nothing happens**

* Likely cause: no organization admin or owner has approved it yet.
* Fix: your org's admins and owners were notified when you invited; follow up with one of them, or have them open the project's **Overview → Access** tab and select **Approve** under **External collaborators**.

**The contact cannot be invited because their email is a personal address**

* Likely cause: the contact's email is on a consumer domain (Gmail, Outlook.com, and similar).
* Fix: update the contact in the [Directory](/projects/directory.md) with their work email address. Sharing is firm-to-firm.

**The invited person says they never received an email**

* Likely cause: the share has not been approved yet — the email goes out on approval.
* Fix: check the status in the Team tab. If it shows **Awaiting Approval**, an org admin needs to approve first.

## Next steps

* [Project chat](/projects/project-chat.md) — how guests take part in the conversation
* [Project roles](/projects/project-roles.md) — what Member and Viewer mean
* [External collaborators](/projects/external-collaborators.md) — the collaborator's side of the flow


---

# 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.cogram.com/projects/inviting-external-collaborators.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.
