TaskFlow Documentation

Sign in to the main app first, then come back. Docs are for signed-in team members.

menu_book

Documentation

· Permission sets & access Open TaskFlow ↗

How permissions work

Last updated July 4, 2026

You sign in→ UI shows your role's pages→ Database checks every request
  • Two layers: the interface hides what your role can't use, and row-level security on the server enforces it.
  • Every read/write carries your personal login. The server decides what comes back, not the page.
  • Hand-crafted API calls get the same answer as the UI. There is no way around your role.
Rule of thumb: an empty page or missing section is almost never a bug. It's your permission set.

The six team roles

One role per person, set in Admin Settings → Team. Flags (below) add powers on top.

Admin FULL ACCESS

Everything: tasks, money, Books, settings
Team management + timesheet tools
Other people's personal lists

Super User ALL TASKS

Every task and project
All expenses; vendor bills (read)
Rates, Revenue, The Books, invoices
Most Admin Settings tabs

Internal Team SCOPED

Assigned tasks + lists they're on
Internal-only tasks (on their lists)
Own time + own expenses
Anyone else's data; money pages

External Team MASKED

Assigned tasks + lists they're on
Internal-only tasks, ever
Rates, budgets, money pages

Partner MASKED

Same scope as External Team
Budget visibility via the PM flag (per person)
Our internal rates or costs, ever

CPA / Accountant BOOKS ONLY

The Books, read-only + financial reports
Invoices, vendor bill PDFs, expense receipts
Writes: adjusting journal entries + flag notes
Tasks, time, budgets, rates, payroll, Ada

Flags that modify a role

badge PM flag

Adds Rates, the Budgets page, and work approval on the client's behalf. Grantable to anyone, any role.

shield_person Admin flag

Full access + team management. Owners only.

engineering Contractor flag

Costing info only. Does not change visibility.

lock Personal lists

Private to their owner. Even admins and Ada can't read them.

Access matrix

AreaAdminSuper UserPM flagInternalExternal / PartnerCPA
Tasks & boards✓ all✓ allrole's scopeassigned + memberassigned + member✕
Internal-only tasks✓✓role's scope✓ on their lists✕ never✕
Time (Tick Tock)✓ all + importownownownown✕
Budgets + forecast✓✕✓✕✕✕
Rates✓✕✓✕✕✕
Revenue & client invoices✓✕✕✕✕read
Vendor bills✓read✕✕✕read + PDFs
Expenses✓ all✓ allownownownread all
The Books✓ full✕✕✕✕read + JEs
Admin Settings✓limited✕✕✕✕
Ada assistant✓ own scope✓ own scope✓ own scope✓ own scope✓ own scope✕
Vault✓ team + personalper sharingper sharingper sharingper sharing✕

✓ full · partial (own data / read-only / per grant) · ✕ none. The PM column shows what the flag adds.

Client portal users

Separate system. Not team members. Granted per project.

They see

  • Their projects only: tasks, tickets, Support plan, chat
  • Status reports (once one has been sent)
  • With the Approver grant: approve / request changes on delivered work
  • With the Budget grant: dollars at their contract rates, burndown vs Target, forecast only if enabled per project

They never see

  • Our internal rates or costs
  • Internal-only tasks, other clients, the team app

Paused project = read-only for them (chat stays open). Their assistant is portal Ada, never the team one.

Ada and permissions

  • Ada answers with your permissions. Same question, different role, different answer. By design.
  • Never readable by anyone: the Vault, personal lists.
  • Financial data has an extra gate in Ada's own code. Rates need admin or PM.
  • CPA accounts are declined; the accountant reads The Books directly.