Your account
Teams
A team is your organisation on IwiConnect. It owns the projects, the tokens and the people. Your API key belongs to exactly one.
Roles
| Role | Can do |
|---|---|
OWNER | Everything a Member can, plus invite and remove people, change roles, rename the team, buy tokens and manage API keys. |
MEMBER | Create, send and respond to projects, add notes, manage groups, read receipts and reports. |
Read the team
Members and pending invitations in one call. Get the team id from GET /user.
{
"success": true,
"message": "Team retrieved",
"status_code": 200,
"response_object": {
"id": "3f1b0c77-9a5d-4d0b-8c3e-1f2a4b6c8d90",
"name": "Kāpiti Coast District Council",
"users": [
{
"id": "0b6a51d2-...",
"first_name": "Aroha",
"last_name": "Rangi",
"email": "aroha.rangi@example.govt.nz",
"role": "OWNER",
"org_department": "resource_consents",
"org_role": "Consents Planner",
"created_on": "2026-02-11T20:00:00.000Z"
}
],
"invitations": [
{
"id": "44ba...",
"name": "Hemi Walker",
"email": "hemi.walker@example.govt.nz",
"status": "PENDING",
"role": "MEMBER",
"created_on": "2026-09-15T02:10:00.000Z",
"expired_on": "2026-09-22T02:10:00.000Z"
}
]
}
}
Rename the team
Takes a single name field. The new name appears on projects you have already sent, since it is the same organisation, so use the name iwi would recognise rather than an internal business unit code.
Change a role
Promotes or demotes a member, and updates their department and role details at the same time.
| Field | Type | Notes | |
|---|---|---|---|
user_id | uuid | required | The member to change. |
role | string | required | OWNER or MEMBER. |
org_department | string | optional | Department value for your organisation type. |
org_department_other | string | optional | Free text when the department is other. |
org_role | string | optional | Job title. |
org_role_other | string | optional | Free text when the role is other. |
Revoke access
Removes a member. Takes user_id in the body. Their projects, responses and notes stay where they are with their name on them, because the record of who said what has to survive someone changing jobs.
If the person leaving created API keys, revoke those separately. Removing a user does not revoke keys they made, and an orphaned key still works.
Receipts, reports and invoices
Submission receipts, paged, each with a receipt number, submission number, project name and a document_id you can turn into a download link. These are the proof-of-engagement records a consent authority may ask for.
Engagement reports generated through POST /projects/{id}/report. Reports build asynchronously, so a report requested a moment ago may not be listed yet.
Stripe invoices for token purchases, newest first. See tokens and billing.
Organisations on projects
An organisation is the entity a project is about: the developer, the contractor, the applicant. It is separate from your team, because a council sends projects on behalf of many organisations.
Organisations your team has created. Fetch one with GET /organisations/{id}, update with PUT, remove with DELETE. Deleting one leaves existing projects intact.
When you create a project you either reference an existing organisation by organisation_id or pass an organisation object to create it inline. Passing an object creates a new organisation each time, so hold onto the id if the same entity comes up again.