> ## Documentation Index
> Fetch the complete documentation index at: https://docs.plerion.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Replace a group

> Full replace, including the complete members list.



## OpenAPI

````yaml /api-reference/scim-openapi.yaml put /v1/organization/scim/v2/Groups/{groupId}
openapi: 3.1.0
info:
  title: Plerion SCIM 2.0 provisioning API
  version: v1
  termsOfService: https://www.plerion.com/terms-and-conditions
  contact:
    name: Plerion Pty Ltd
    url: https://www.plerion.com/contact-us
    email: support@plerion.com
  license:
    name: Plerion Use License
    url: https://www.plerion.com/terms-and-conditions
  description: |-
    The Plerion SCIM 2.0 provisioning API lets an identity provider, a
    script, or any other client create, update, deactivate, and delete users
    in a Plerion organization, and keep its groups in sync as Plerion user
    groups. It follows RFC 7643 (schema) and RFC 7644 (protocol), so any
    SCIM 2.0 client can use it.

    SCIM does not have to be enabled on your single sign-on settings, and
    the organization does not need a SAML connection. The API reads and
    writes every user and every user group in the organization, whoever
    created them.

    A record maintained outside Plerion, by an identity provider sync or
    by calls to this API, is badged SCIM managed in the Plerion console.
    The badge is a marker, not a lock. Do not manage the
    same record from both an identity provider sync and by hand: the next
    sync can overwrite what you wrote.

    SCIM carries users and groups, not roles. Roles are granted in the
    Plerion console, to a user directly or to a user group. A user's
    effective permissions are the union of both.

    Requests are authenticated with a Plerion organization API key sent as
    a bearer token. The organization is resolved from the key, so no request
    names an organization. Write operations need a key with the readWrite
    access level.

    The Plerion console shows the exact SCIM base URL for your organization
    in the SCIM provisioning section of your single sign-on settings. Paste
    that value into your identity provider rather than assembling it by
    hand. For setup instructions, see the SCIM provisioning guides.
servers:
  - url: https://{region}.api.plerion.com
    description: Production API server - Select your preferred region
    variables:
      region:
        default: au
        enum:
          - au
          - sg1
          - in1
          - us1
security:
  - organizationApiKey: []
tags:
  - name: Discovery
    x-displayName: Discovery
    description: >-
      The SCIM discovery endpoints describe what this service supports. Identity
      providers read them automatically when you test a connection, and they
      advertise only the features that are actually available.
  - name: Users
    x-displayName: Users
    description: >-
      Create, read, update, deactivate, and delete users in a Plerion
      organization. Writes need an organization API key with the readWrite
      access level.
  - name: Groups
    x-displayName: Groups
    description: >-
      Create, read, update, and delete user groups and their membership. Every
      user group in the organization is in scope, whether an identity provider
      pushed it or someone created it in the console. Writes need an
      organization API key with the readWrite access level.
paths:
  /v1/organization/scim/v2/Groups/{groupId}:
    parameters:
      - $ref: '#/components/parameters/groupId'
    put:
      tags:
        - Groups
      summary: Replace a group
      description: Full replace, including the complete members list.
      operationId: replaceGroup
      requestBody:
        required: true
        content:
          application/scim+json:
            schema:
              $ref: '#/components/schemas/Group'
          application/json:
            schema:
              $ref: '#/components/schemas/Group'
      responses:
        '200':
          description: The updated group.
          content:
            application/scim+json:
              schema:
                $ref: '#/components/schemas/Group'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/TooManyRequests'
components:
  parameters:
    groupId:
      name: groupId
      in: path
      required: true
      description: The Plerion id of the user group, as returned when it was created.
      schema:
        type: string
        format: uuid
  schemas:
    Group:
      type: object
      description: >-
        SCIM core Group. A Plerion organization admin grants the group its roles
        in the console. A group maintained outside Plerion, by an identity
        provider sync or by calls to this API, is badged SCIM managed there; the
        badge does not stop this API from changing the group, but the next sync
        may overwrite the change.
      properties:
        schemas:
          type: array
          items:
            type: string
          example:
            - urn:ietf:params:scim:schemas:core:2.0:Group
        id:
          type: string
          format: uuid
          readOnly: true
        externalId:
          type: string
          description: The identity provider's identifier for the group. Filterable.
        displayName:
          type: string
          description: Required. Shown as the user group's name in the Plerion console.
        members:
          type: array
          items:
            $ref: '#/components/schemas/GroupMember'
        meta:
          $ref: '#/components/schemas/Meta'
      required:
        - schemas
        - displayName
    GroupMember:
      type: object
      properties:
        $ref: 919ef7db-745b-4cfc-814f-3e0f5197b89c
        value:
          type: string
          format: uuid
          description: >-
            Plerion user id of the member. Any user in the organization can be a
            member; nested groups are not supported.
        display:
          type: string
          readOnly: true
      required:
        - value
    Meta:
      type: object
      readOnly: true
      properties:
        resourceType:
          type: string
          enum:
            - User
            - Group
        created:
          type: string
          format: date-time
        lastModified:
          type: string
          format: date-time
        version:
          type: string
          description: >
            Resource version identifier, for example W/"3". Conditional requests
            (If-Match, If-None-Match) are not supported.
        location:
          type: string
          format: uri
    Error:
      type: object
      description: RFC 7644 §3.12 error response.
      properties:
        schemas:
          type: array
          items:
            type: string
            const: urn:ietf:params:scim:api:messages:2.0:Error
        status:
          type: string
          description: HTTP status code as a string.
          example: '409'
        scimType:
          type: string
          enum:
            - invalidSyntax
            - invalidFilter
            - invalidPath
            - invalidValue
            - mutability
            - uniqueness
        detail:
          type: string
          example: A user with this userName already exists.
      required:
        - schemas
        - status
  responses:
    BadRequest:
      description: >
        Invalid request. The SCIM error body carries scimType invalidSyntax,
        invalidFilter, invalidPath, invalidValue, or mutability.
      content:
        application/scim+json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: >
        Missing or invalid API key. Rejected before the request reaches the SCIM
        service, so the body is plain JSON rather than a SCIM error.
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
            example:
              message: Unauthorized
    Forbidden:
      description: >
        Read-level key on a write operation, or an attempt to deactivate,
        delete, or change the role of a break-glass administrator. The detail
        then reads "A break-glass admin cannot be deactivated through SCIM" or
        "A break-glass admin cannot be deleted through SCIM", and the record is
        left untouched. Every other attribute of a break-glass administrator
        keeps syncing normally.
      content:
        application/scim+json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: Resource not found.
      content:
        application/scim+json:
          schema:
            $ref: '#/components/schemas/Error'
    TooManyRequests:
      description: Rate limited. Honor Retry-After and retry.
      headers:
        Retry-After:
          $ref: '#/components/headers/RetryAfter'
      content:
        application/scim+json:
          schema:
            $ref: '#/components/schemas/Error'
  headers:
    RetryAfter:
      description: Seconds to wait before retrying.
      schema:
        type: integer
  securitySchemes:
    organizationApiKey:
      type: http
      scheme: bearer
      description: >
        Plerion organization API key (plerion_oak_…), created by an organization
        admin in the Plerion console. Write operations require a key with
        readWrite access level; GET and .search work with read access level.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.