BetaMaShop is in public beta. We improve it continuously, and your feedback shapes what comes next.

Inviting people to a project

Work togetherEnglish· 5 min read· Updated September 01, 2026

The three roles a MaShop project has, who can invite, what an invitation actually opens, and what a viewer can still do.

Team

A MaShop project has three roles: owner, editor, and viewer. There is no fourth one.

The owner is the account the project was created under. Editor and viewer exist only through an invitation. The three project roles are fixed, and no screen creates a custom one.

Sending an invitation

Two screens invite collaborators, and both call the same route. So both send the same email.

  • Share, at the top of the workspace. One field for the address, one menu for the role.
  • Settings, then the Team tab. The same form, plus everyone already on the project.

Only the project owner can invite, change a role, or remove someone. The Team tab hides its Invite button unless you own the project. The Share window offers the field to whoever opens it, and its refusal is a flat Invitation failed with no reason. The Team tab is the better screen here, because it shows the reason the server gave.

The Team tab also looks up the address while you type. When no MaShop account matches, it says the invitation will be sent by email anyway.

That tab sits inside a window titled Account settings, and the title is misleading. The tab manages one project, not your account.

Two roles are offered, Editor and Viewer. A third one, Commenter, used to sit in the menu. It was removed because the server never accepted it.

The Share window itself is written in French for every language. Nothing passes it a translation.

Accepting an invitation

MaShop emails a link that stays valid for 7 days. The person must open it while signed in to MaShop, with the exact address you typed.

Accepting flips their line from invited to active, then sends them to the project address. Five screens can appear instead:

  • Signed in with another address: Mauvaise adresse email. The screen names the address the invitation was issued for.
  • Older than 7 days: Lien expire. Send a new invitation. The old link cannot be revived.
  • A link altered or truncated on the way: Invitation invalide.
  • The invitation was revoked or rewritten after the email left: Invitation introuvable.
  • The project was deleted: Projet indisponible.

Those five screens are written in French for every language. That is a known defect. It does not mean something else went wrong.

What a collaborator can open today

The project workspace loads the project filtered on the owner's account. For any other account it finds nothing.

So an invited person accepts, is sent to the project address, and is bounced back to their own workspace. If they own no project yet, MaShop creates an empty one for them on the spot. The membership itself is real. They appear as an active member, and MaShop checks their role on every request. The project screen does not open for them yet. Settle that with your client or your freelancer before you promise them access.

What each role is allowed to do

The ranking is viewer, then editor, then owner. Every request checks it before answering.

ActionViewerEditorOwner
Read files, versions and differencesYesYesYes
Read deployment status and build logsYesYesYes
Talk to the AI in the chatNoYesYes
Save a file, delete a file, commit to GitHubNoYesYes
Restore a versionNoYesYes
Update the live siteNoYesYes
Publish for the first timeNoNoYes
Invite, change a role, remove a memberNoNoYes
Archive, transfer or delete the projectNoNoYes
Duplicate the projectYesYesYes

Refusals come from the server, so they land after the click. A viewer who writes in the chat is answered Store not found. That is a role refusal, not a missing project.

One detail that surprises teams: an update runs on the Netlify account of whoever clicks. An editor who has never connected Netlify is told Netlify is not connected. The deployment also counts against that person's own daily quota.

Never invite someone you would not trust with a full copy of your project

The server accepts a duplicate request from any member, viewer included. The copy carries every file and every image, and it belongs to the account that clicked. Your repository, your site and your database are left out of it. The code is not. Removing the person later does not remove their copy, and no screen takes it back. No button offers this to a collaborator today, because the project does not open for them. The permission is still what you hand over.

Rights inside Automations

Automations read the same three roles, through their own table of capabilities. The screen and the server read that single table, so an enabled button is an allowed action.

  • Everyone, viewers included, sees the agents and what they spend.
  • Editors and owners activate an agent, edit it, start a run, cancel one, sign an ordinary approval, and edit the memory.
  • Owners alone delete an agent, archive an automation, attach or revoke a connector, change the project time zone, and sign anything that moves money.

The money line is the only one an owner can open. A single project setting lets editors sign an approval that moves money, and it is off by default.

Deleting an agent takes its run history with it, and that history is the record of what was done in your name. That is why it stays with the owner. A connector is credentials: attaching one opens it to every agent on the project, so it stays with the owner too.

Managing members

The Team tab lists every member with a role and a state, invited or active. From there the owner switches someone between Editor and Viewer, or removes them. The next request that person makes already reflects the change.

The owner cannot change their own role and cannot remove themselves. Handing the project to someone else is a transfer, in the project settings, not a line in the member list.

Limits worth knowing

  • An invitation link lives 7 days. Nothing extends it.
  • MaShop accepts 20 invitations per 15 minutes from one connection.
  • Role changes are capped at 20 per minute from one connection.
  • Removing a member deletes the row. Re-inviting starts a fresh 7 day link.
  • You cannot invite your own address. MaShop refuses it.
collaborationrolespermissionsinvitationownereditorviewerteamproject accessshareemail invitation7 daysmember listtransferduplicateautomationsconnectorsapprovalsdeployment rightschat accessworkspacelimits
Was this page helpful?
Your feedback is anonymous.