---
title: "For a firm: Connect step 2, and the settings table afterwards: bind the system's employees to members"
method: PUT
path: "/v1/admin/tenants/{tenant}/connector/team"
tags: ["admin"]
---

# For a firm: Connect step 2, and the settings table afterwards: bind the system's employees to members

`PUT /v1/admin/tenants/{tenant}/connector/team`

## Request

- Base URL: `https://api.sixminute.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.sixminute.ai/v1/admin/tenants/{tenant}/connector/team`
- Auth: HTTP bearer

One line per employee, a member or nobody. A member bound to two employees is a 409: one employee of the practice system is one person here. A connector waiting on its team (`pending_mapping`) becomes `connected`; any other status, and its `last_error`, is left as it is. Where the firm's first read is done (the sync a client sends after the connect ran it while the connector waited on this step) the read made here is by change and quick; where it never ran it is made here, whole; and a read that is running already is not waited for, the summary being answered with what is in so far. The sync runs inline and the summary is the answer. The same route edits the table afterwards, where a new employee the sync found appears unbound. 404 for a kind whose identity is a per-user sign-in: nobody is shown a table there, and each person's own authorisation fills their row (D-166). A firm connected to a system this service carries no adapter for answers the not-available 422.

Operator mount: an operator acting for the firm named in the path, as its oldest active admin, else its oldest active billing member; `X-Six-Minute-Acting-As` names them. 404 for no such firm, 409 `urn:six-minute:problem:no-acting-member` for one with neither.

## Path parameters

- `tenant` string, required

## Request body

- object[]
  - `external_ref` string, required
  - `member_id` string, nullable, required

## Response `200`

The connector after the confirmation and the first sync.

- object
  - `kind` 'urios' | 'legalsense' | 'fake', required
  - `status` 'pending_mapping' | 'connected' | 'needs_reconnect' | 'disabled', required
  - `capabilities` object, required
    - `accepts_by` 'billing' | 'approval', required
    - `identity` 'mapping' | 'sign_in', required
    - `change_feed` 'modified_since' | 'full_list', required
    - `narrative_max_chars` integer, nullable, required
    - `note_max_chars` integer, nullable
    - `insolvency_groups` false, required
    - `matter_visibility` 'firm' | 'member'
    - `reviewer` 'self' | 'configurable'
    - `fields` object[], required
      - `key` string, required
      - `label` string, required
      - `scope` 'firm' | 'matter', required
      - `required` boolean, required
      - `standard` 'utbms_task' | 'utbms_activity', nullable, required
  - `settings` object, nullable
    - `notation` string, nullable
    - `reviewer` union
      - object
        - `mode` 'timekeeper', required
      - object
        - `mode` 'person', required
        - `external_ref` string, required
        - `name` string, required
      - unknown
    - `auto_approve` string[]
  - `counts` object, required
    - `matters` integer, required
    - `clients` integer, required
    - `timekeepers` integer, required
    - `options` integer, required
  - `team_bound` integer, required
  - `team_unbound` integer, required
  - `last_sync_at` string, date-time, nullable
  - `last_error` string, nullable

## Other responses

- `400`: The body, query or path did not validate; `errors` lists the fields.
- `401`: No bearer token, or one that does not verify or has expired.
- `403`: The token verified but may not do this: no organisation, not provisioned, wrong role, or a device problem.
- `404`: No such row for this tenant.
- `409`: The id or the email already belongs to something else.
- `422`: The request is well-formed but cannot be carried out as it stands.
- `503`: A capability this service was not configured with, or a practice system that could not be reached; the `type` says which.

---

[API](https://skmtc.dev/sixminute/apis/sixminute-api.md) - [All operations](https://skmtc.dev/sixminute/apis/sixminute-api/llms.txt) - [OpenAPI document](https://skmtc.dev/sixminute/apis/sixminute-api/revisions/605577eadc10?raw)
