---
title: "Set the source system for a role"
method: PUT
path: "/management/v1/role/{role_id}/source-system"
tags: ["role"]
---

# Set the source system for a role

`PUT /management/v1/role/{role_id}/source-system`

## Request

- Base URL: `https://localhost`
- URL: `https://localhost/management/v1/role/{role_id}/source-system`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/lakekeeper/apis/lakekeeper-management-api/docs/management/v1/role/:role_id/source-system/put.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `role_id` string, uuid, required

## Headers

- `x-project-id` string, nullable

## Request body

- UpdateRoleSourceSystemRequest
  - `provider-id` string, required: New Provider ID of the role.
  - `source-id` string, required: New Source ID / External ID of the role.

## Response `200`

Role Source System updated successfully

- Role
  - `created-at` string, date-time, required: Timestamp when the role was created
  - `description` string, nullable: Description of the role
  - `id` string, uuid, required: Globally unique UUID identifier
  - `ident` string, required: Composite project-scoped identifier (`provider~source_id`). Unique within a project.
  - `name` string, required: Name of the role
  - `project-id` string, required: Project ID in which the role is created.
  - `provider-id` string, required: Provider that owns this role (e.g. `"lakekeeper"`, `"oidc"`).
  - `source-id` string, required: Identifier of the role in the provider.
  - `updated-at` string, date-time, nullable: Timestamp when the role was last updated

## Other responses

- `4XX`

---

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