# Project Privacy

{% hint style="success" %}
Since [`isabl_web@0.3.23`](https://www.npmjs.com/package/@papaemmelab/isabl-web/v/0.3.23) and [`isabl_api@1.1.0`](https://github.com/papaemmelab/isabl_api/releases/tag/v1.1.0) isabl supports project privacy.&#x20;
{% endhint %}

Projects now have an icon :lock: or `:share:` next to their title, that will show if a project is `private 🔒` or `public` , respectively.

<figure><img src="/files/pbV7RVq6ucuRReaVOsOw" alt="" width="389"><figcaption><p> Icon <span data-gb-custom-inline data-tag="emoji" data-code="1f512">🔒</span> showing the project is Private.</p></figcaption></figure>

And this will be *blue* and *active* if the current user can modify its sharing permissions. When clicking the icon a modal to modify sharing settings will open:

<figure><img src="/files/rZDgQgnpJ7vmHN1TIchS" alt="" width="500"><figcaption><p>Project Sharing Settings Modal, when clicking the <span data-gb-custom-inline data-tag="emoji" data-code="1f512">🔒</span>icon.</p></figcaption></figure>

This will allow to configure which users **can view** and who **can share** permissions:

* By default: every superuser and the project owner can always view and share. And change the project **visibility** (Public/Private).
* The ones that **can view** can see all project metadata, experiments, analyses, submissions, etc.
* The ones that **can share** can modify the project settings, by adding new users to view and/or share.

Similarly, a **Project's Sharing Settings** can be optionally defined when creating a new project. It will be `public` always by default (In the screenshot shows `private` to show the available options in the form when private is selected).

<figure><img src="/files/kIuVahO2fwTY43oWI1sr" alt="" width="375"><figcaption></figcaption></figure>

**What metadata can be private?**

{% hint style="success" %}
In practical terms, the metadata of any model (`Individual`, `Sample`, `Aliquot`, `Submission, Analysis)` linked to an `Experiment` that belongs exclusively to private `Projects`, it will look like if **it doesn't exist in the database** for a user that doesn't have access to any of those private projects.
{% endhint %}

**Example:**&#x20;

There are 5 samples, where some belong to `Project 1` (🔒Private) and `Project 2` (📖 Public)

<figure><img src="/files/aYGHUZfcodMynVOgHDCV" alt="" width="563"><figcaption></figcaption></figure>

* An user **with access** to the private `Project 1` will see all the `Experiments` with the following **Individual Tree**:

<figure><img src="/files/SRCbTkbbwBIEP67OVptK" alt="" width="563"><figcaption></figcaption></figure>

* An user **without access** to the private `Project 1` will see only see the `Experiments` that belong to the public `Project 2` , with the following **Individual Tree**:

<figure><img src="/files/iHD0ykISY0ohaPfCKB7p" alt="" width="563"><figcaption></figcaption></figure>


---

# Agent Instructions: 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:

```
GET https://docs.isabl.io/project-privacy.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
