---
title: "Updates a claim alias for the company"
method: PUT
path: "/companies/{identifier}/saml/claim-aliases/{aliasId}"
tags: ["companies"]
---

# Updates a claim alias for the company

`PUT /companies/{identifier}/saml/claim-aliases/{aliasId}`

Updates a claim alias for the company, creating it if it doesn't already exist
Requires the privilege [`COMPANY_SAMLCLAIM_ALIAS_WRITE`](https://www.gremlin.com/docs/user-management/access-control/#privileges)

## Path parameters

- `identifier` string, required
- `aliasId` string, required

## Request body

- CreateOrUpdateClaimAliasRequest — Represents a request to create or update a SAML claims alias on behalf of a user
  - `aliasId` string — The unique identifier for the alias
  - `companyRoles` string[] — The list of company-level roles for the alias
  - `teamRoles` object — A mapping of team IDs to the team-level roles for the alias

## Response `200`

- SamlAlias
  - `companyId` string
  - `aliasId` string
  - `companyRoles` string[]
  - `teamRoles` object
  - `createdAt` string, date-time
  - `updatedAt` string, date-time

## Other responses

- `400` — No roles were given, or a given role/team ID is invalid
- `401` — Authorization header missing or malformed. Please provide proper credentials in the authorization header.
- `403` — User requires privilege: COMPANY_SAMLCLAIM_ALIAS_WRITE
- `404` — Company not found

## Changes

- **2026-09-02** `358b43b8f258` — 3 info
  - added the non-success response with the status `400`
  - added the non-success response with the status `404`
  - added the success response with the status `200`

[Change history](https://skmtc.dev/gremlin/apis/gremlin-api/changes/companies/:identifier/saml/claim-aliases/:aliasId/put.md)

---

[API](https://skmtc.dev/gremlin/apis/gremlin-api.md) · [All operations](https://skmtc.dev/gremlin/apis/gremlin-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/gremlin/gremlin-api/revisions/358b43b8f258/schema)
