---
title: "Assign Connection Staff Roles"
method: POST
path: "/api/psa/{team_key}/connection/{connection_key}/staff/assign-roles"
tags: ["psa"]
---

# Assign Connection Staff Roles

`POST /api/psa/{team_key}/connection/{connection_key}/staff/assign-roles`

## Request

- Base URL: `https://api.superit.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.superit.ai/api/psa/{team_key}/connection/{connection_key}/staff/assign-roles`
- Auth: HTTP bearer

Bulk assign roles to staff across managed teams.

## Path parameters

- `connection_key` string, required
- `team_key` string, required

## Request body

- AssignStaffRolesRequest: Bulk assign roles to staff across managed teams.
  - `userKeys` string[], required
  - `assignments` TeamRoleAssignment[], required
    - `managedTeamKey` string, required
    - `role` 'admin' | 'engineer' | 'user' | 'system' | 'inactive', required: Supported membership roles.

## Response `200`

Successful Response

- AssignStaffRolesResponse: Result of bulk staff role assignment.
  - `created` integer, required
  - `updated` integer, required
  - `removed` integer, required
  - `errors` ImportUserError[], required
    - `sourceId` integer, required
    - `reason` string, required

## Other responses

- `400`: Invalid input
- `401`: Not authenticated
- `403`: Forbidden
- `404`: Not found
- `405`: Method not allowed
- `409`: Conflict
- `422`: Validation Error

---

[API](https://skmtc.dev/superit/apis/super-it-api.md) - [All operations](https://skmtc.dev/superit/apis/super-it-api/llms.txt) - [OpenAPI document](https://skmtc.dev/superit/apis/super-it-api/revisions/4944d556c2bb?raw)
