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

# Teams and Views — How the Dashboard Is Organised

> Teams group the people who work together; views are saved, shared, filtered lenses on your campaigns. What each one is for, and what changes for the person who opens one.

# Teams and views

Notifizz puts Marketing, Dev and Product on the same platform. That only works if each of them can find their own work in a dashboard that holds everyone's. **Teams** and **views** are how the sidebar is carved up.

<Note>
  **Written for everyone, run by Product/Ops.** Whoever owns the campaign process usually sets the teams and views up once; Marketing and Dev then live inside them.
</Note>

## TL;DR

* A **team** is a named group of people in your organisation. It owns views, and it appears in the sidebar with its own icon.
* A **view** is a saved, filtered lens on your campaigns. It belongs to a team, and every member of that team opens the same one.
* Views are **shared**; subscribing to a view is **personal** — that is what decides who gets notified when a campaign enters or leaves it.
* You only see the teams **you are a member of**. Views inherit that: no team, no views.
* Teams and views change **what you see first**, never **what you are allowed to do**. They are not permissions.
* Views filter **campaigns only** today — no other object type.

## What a team holds

| Field    | What it is                                                                              |
| -------- | --------------------------------------------------------------------------------------- |
| Name     | Free text. Shown in the sidebar.                                                        |
| Icon     | An emoji or a picked icon, so teams are scannable at a glance.                          |
| Members  | People who already belong to your organisation. A non-member is rejected at write time. |
| Position | Where the team sits in the sidebar. Drag to reorder.                                    |

Anyone in an active organisation can create a team, from the **+** beside the sidebar's **Teams** heading — or from the **Create a team** card shown while you have none. The creator becomes its first member. Renaming, re-iconing and deleting live in **Team settings**, on the team row's menu.

<Note>
  **Membership is not yet self-serve.** The dashboard creates a team with its author as the sole member; there is no roster screen in **Team settings** today. Plan your teams accordingly — a team nobody else belongs to is a private workspace, not a shared one.
</Note>

## What a view holds

A view is a **filter with a name on it**. It is defined by up to four dimensions, all of them campaign properties:

| Dimension       | Values                                                                                                           | Typical use                                  |
| --------------- | ---------------------------------------------------------------------------------------------------------------- | -------------------------------------------- |
| Status          | `Editing`, `Implementation`, `Review`, `Live`, `Offline`, `Archived` — see [campaigns](/docs/concepts/campaigns) | What stage of the pipeline this view watches |
| Event           | Any event in your catalog — see [events](/docs/concepts/events)                                                  | Everything triggered by one signal           |
| User flow       | The free-text flow label set on each campaign                                                                    | Onboarding, checkout, renewal…               |
| AARRR objective | Acquisition, Activation, Retention, Revenue, Referral                                                            | The growth stage a campaign serves           |

The rules are the ones you would guess: **several values inside one dimension are an OR**, **several dimensions are an AND**, and a dimension you leave empty adds no constraint. A view with no filter at all is legal — it lists every campaign, which is a perfectly good team home page.

Each view also carries an icon and its own **visible columns**: `Status`, `User flow`, `AARRR`, `Event`, `Sent`, `CTR`. The campaign name is always shown.

You create one from the **+** on a team's row. It starts unfiltered and opens immediately, so the order of operations is: create, then name it and pick its criteria on the page itself.

## What opening a view actually does

1. **The view's filter is applied invisibly.** You do not see its criteria as chips — the list simply starts as the subset the view describes. Hovering the view in the sidebar for a moment pops a preview card with those criteria spelled out.
2. **You can refine on top.** The filter bar on the view page adds constraints *for your session only*; they travel in the URL, so the refined list is a link you can paste to a colleague. Refinement narrows — asking for a status the view excludes gives you an empty table, not a wider one.
3. **List or board.** The same toggle as the campaigns list: a table, or a kanban whose columns are the statuses actually present. The choice is yours alone, remembered per organisation and followed across your devices.
4. **Columns are the view's, not yours.** Toggling a column in list mode saves onto the view, so the whole team sees the change.
5. **Opening a campaign keeps you in the view.** The campaign panel opens over the list, the [activity log](/docs/concepts/activity-log) is one click further, and closing brings you back to the view — not to the global campaigns list.
6. **A campaign that stops matching leaves the table.** Change a status from inside the panel and the row disappears as soon as it falls out of the view's filter.

<Note>
  **Archived campaigns are excluded by default**, whatever the view's filter says. A view built on `Archived` looks empty until you switch **Include archived** on in the filter menu.
</Note>

Editing the view itself — name, icon, criteria — is a click on its title. Saving clears your session refinements, so the table you are left looking at is the new baseline rather than a mix of old and new.

## Following a view

A view has a **subscribe control** in its header, showing everyone currently following it. The person who creates a view is subscribed automatically; everyone else opts in.

Subscribers are notified in Notifizz when a campaign **enters** or **leaves** the view:

| Transition | When it fires                                                                                                              |
| ---------- | -------------------------------------------------------------------------------------------------------------------------- |
| Entered    | The campaign did not match the view's filter, and now does — including a campaign that has just been created or duplicated |
| Exited     | The campaign matched, and no longer does                                                                                   |

These are **transitions, not edits**. Renaming a campaign that already matched notifies nobody. Promoting one from `Review` to `Live`, on the other hand, may fire an exit on one view and an entry on another — which is precisely the handover signal the pair of views exists to produce.

Two cascades are worth knowing: removing someone from a team **unsubscribes them from that team's views**, and deleting a view or a team **deletes the subscriptions with it**.

## How three roles share one sidebar

The pattern that works is one team per role, and one view per waiting state — a view should answer *what is on my plate right now*, not *everything my team has ever shipped*.

| Team                  | View                 | Filter behind it                     |
| --------------------- | -------------------- | ------------------------------------ |
| Lifecycle (Marketing) | Drafts in progress   | Status `Editing`                     |
| Lifecycle (Marketing) | Waiting for approval | Status `Review`                      |
| Platform (Dev)        | Needs implementation | Status `Implementation`              |
| Platform (Dev)        | Checkout signals     | Event `order.paid`, `cart.abandoned` |
| Growth (Product)      | Live retention       | Status `Live`, AARRR `Retention`     |

Marketing subscribes to *Waiting for approval*; Dev subscribes to *Needs implementation*. When Marketing promotes a campaign, it lands in Dev's view, and Dev is told — no ticket, no mention, no standing meeting. That is the collaboration [why the whole team](/docs/why/whole-team) argues for, made concrete.

<Warning>
  **A view is not access control.** It hides nothing: any campaign a view filters out is still reachable from the campaigns list, and any member of your organisation can open it. Teams and views organise attention; they do not restrict it.
</Warning>

## Housekeeping

* **Reorder** teams and views by dragging their rows. Dropping a view onto another team **moves** it there.
* **Which teams are expanded** is remembered per organisation and follows you across devices.
* **Deleting a view** removes it and its subscriptions. **Deleting a team** removes every view it owns, and theirs. Neither is reversible.

## FAQ

<AccordionGroup>
  <Accordion title="Can a view show something other than campaigns?">
    Not today. The filter is defined against campaigns, and campaigns are the only object type a view resolves. The four dimensions above are the whole vocabulary.
  </Accordion>

  <Accordion title="Why can I not see the team a colleague mentioned?">
    Because you are not one of its members — the sidebar lists only the teams you belong to, and a team's views are only reachable through it. Since membership is fixed at creation today, the practical answer is to have the team re-created with the right people, or to keep shared work in a team everyone was in from the start.
  </Accordion>

  <Accordion title="I changed a view's filter. What happens to my teammates?">
    They see the new filter the next time they open it — a view is one shared object, not a copy per person. What is *not* shared is the refinement you add from the filter bar during a session: that lives in your URL and disappears when you leave.
  </Accordion>

  <Accordion title="Do view notifications reach me by email?">
    They arrive in Notifizz itself, on the notification bell in the dashboard. A view is a working signal for people already in the product, not a mailing.
  </Accordion>

  <Accordion title="Two of my views overlap. Will I be notified twice?">
    Yes — once per view you subscribe to, because each one is a separate entry. Overlapping views are useful (a campaign can be both *in review* and *retention*), but subscribe deliberately.
  </Accordion>

  <Accordion title="Does a view slow down as we accumulate campaigns?">
    No. The view resolves its filter when you open it; there is no stored list to keep in sync, and nothing is duplicated per view. That is also why a view always reflects the current state of a campaign rather than a snapshot.
  </Accordion>
</AccordionGroup>

## See also

<CardGroup cols={2}>
  <Card title="Why the whole team" icon="people-group" href="/docs/why/whole-team">
    The argument teams and views implement.
  </Card>

  <Card title="Campaigns" icon="diagram-project" href="/docs/concepts/campaigns">
    The statuses a view filters on.
  </Card>

  <Card title="Activity log" icon="clock-rotate-left" href="/docs/concepts/activity-log">
    Per-campaign history, one click from any view.
  </Card>

  <Card title="Glossary" icon="book" href="/docs/resources/glossary">
    Team, view, and every other term in one place.
  </Card>
</CardGroup>
