By the end of this page you will be able to:
- invite a contractor with a limited access term;
- understand what a contractor reads and writes;
- extend or remove the term and know when the seat is freed.
Example: Vera is an outside developer whom Northwind hired for 60 days to integrate Client X’s API.
What a contractor sees
Section titled “What a contractor sees”The Contractor role is limited in scope, not just in time:
| Contractor | |
|---|---|
| Reads | Only their own records and records with “project” visibility |
| Does not see | “Unit” and “whole organization” records, other people’s drafts |
| New records | Get “project” visibility right away |
| Keys | Issues their own, like a member |
| People list | Only themselves |
This way Vera and the in-house developers on the project share project knowledge, while the company’s internal agreements stay out of Vera’s view.
Invite with a term
Section titled “Invite with a term”-
The admin opens People → “Invite a person”.
-
They enter Vera’s email, the unit, the Contractor role and “Access term, days”: 60. Allowed values are 1 to 365 days.
-
They pass Vera the invitation link, valid for 7 days. See Invitations and keys.
-
The access term starts when Vera accepts the invitation, not when it is created.
In the people list, Vera’s row shows “access until 2026-12-04”.
When the term ends
Section titled “When the term ends”The server checks the term on every request. After it ends:
- Vera can no longer read or write — neither in the account nor through an agent; the server answers
access_expired, and the account says “Your access to this organization has expired. Contact the admin.”; - the organization disappears from her space switcher;
- the admin’s people list shows “access expired” next to her;
- her seat is no longer billed.
Records Vera created stay in the organization with “project” visibility.
Extend or remove the term
Section titled “Extend or remove the term”-
The admin opens People and clicks “Extend” next to the contractor.
-
They enter how many days from today the access should last (1–365). The new term replaces the old one rather than adding to it.
-
If the term had already ended, access returns immediately.
To remove the limit entirely, update the member through the account API with "access_days": null. Every term change is written to the audit log as access_term_changed with the new end date.
Seats and billing
Section titled “Seats and billing”| Contractor state | Seat |
|---|---|
| Access active | Taken |
| Term ended | Not taken |
| Left (offboarding completed) | Not taken |
See Organization billing.