Integração SCIM para SAP

Last Updated agosto 28, 2026

Breve Visão Geral

O Provedor de Serviços WalkMe SCIM permite gerenciar usuários e grupos de forma programática usando um endpoint compatível com SCIM 2.0. O WalkMe expõe uma API REST baseada na especificação do Sistema para Gerenciamento de Identidades entre domínios (SCIM 2.0).

Essa API permite que você faça o seguinte:

  • Crie, leia, atualize, corrija e exclua Usuários e grupos.
  • Pesquise usuários e grupos com filtragem e paginação.
  • Obtenha informações sobre o provedor de serviços WalkMe, esquemas disponíveis e tipos de recursos

Acesso

Acesse no console:

  1. Abra o Console do WalkMe
  2. Vá para a categoria Admin
  3. Selecione o Centro de integração
  4. Selecione Integração SCIM
Observação

  • Você deve ter uma conta do WalkMe.
  • Você deve criar uma integração do SCIM e gerar credenciais

Configurar a Integração SCIM

Observação

Você deve ser um Admin do WalkMe para ativar o SCIM para sua organização.

Ativar SCIM no WalkMe

Antes de ativar o SCIM, você primeiro precisa criar uma integração SCIM no Centro de Administração do WalkMe.

  1. Na página Integração do SCIM, selecione + Criar integração do SCIM

  2. Insira o Nome da Integração para identificar sua integração (por exemplo, "Production" ou "Staging")

  3. Selecione o Tipo de Autorização

    1. Autenticação básica: usa um nome de usuário e senha para autenticação

    2. Bearer Token: usa um token de portador para autenticação

  4. Selecione Gerar Credenciais

  1. Se você selecionou Autenticação Básica, uma janela popup será aberta exibindo as credenciais do SCIM geradas para essa integração:

    1. URL base do SCIM: o URL de ponto final para a configuração SCIM do seu Provedor de Identidade

    2. Nome de usuário: o nome de usuário gerado automaticamente para autenticação

    3. Senha: a senha gerada automaticamente para autenticação

Observações

  • A senha é exibida apenas uma vez, depois de fechar o popup, ela não pode ser recuperada
  • Se você perder a senha, deverá excluir a integração e criar uma nova

  1. Selecione Concluído para concluir a configuração da integração SCIM no WalkMe

  1. Se você selecionou Bearer Token, um pop-up será aberto exibindo as credenciais do SCIM geradas para essa integração:

    1. URL base do SCIM: o URL de ponto final para a configuração SCIM do seu Provedor de Identidade

    2. Bearer Token: o token seguro usado para autenticação

  2. Selecione Concluído para concluir a configuração da integração SCIM no WalkMe

Pontos finais e parâmetros da API SCIM 2.0

Esta API usa o SCIM 2.0. Para obter mais informações, consulte Esquema Principal SCIM (RFC 7643)

URLs de base

Autenticação

Todas as solicitações exigem Autenticação Básica HTTP ou autenticação de Token do Portador:

  • Autenticação básica:

    • Autorização: Basic <base64 (nome de usuário:senha)>

  • Token do portador:

    • Autorização: token de <portador gerado>

Gerenciamento de usuários

EndPoints

  • /Usuários: crie um usuário (POST) ou obtenha uma lista de usuários (GET)

  • /Users/{id}: Obter (GET), atualizar (PUT), aplicar um patch (PATCH) ou excluir (DELETE) um usuário

GET /Usuários

Obtém uma lista de usuários com filtragem e paginação opcionais

Parâmetros de URL:

  • startIndex: índice baseado em 1 do primeiro usuário a retornar. O padrão é 1. (Opcional)

  • contagem: (Opcional) Número de Usuários a retornar por página (máximo de 1000). O padrão é 1000. (Opcional)

  • filtro: expressão do filtro SCIM (Opcional)

    • Operadores suportados: eq, ne, co, sw, ew, gt, ge, lt, le, pr

Observação

A classificação não é suportada (os parâmetros sortBy e sortOrder são ignorados).

Example response
{
    "schemas": ["urn:ietf:params:scim:api:messages:2.0:ListResponse"],
    "totalResults": 1,
    "itemsPerPage": 1000,
    "startIndex": 1,
    "Resources": [
        {
            "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
            "userName": "john.doe@example.com",
            "name": {
                "formatted": "John Doe",
                "familyName": "Doe",
                "givenName": "John"
            },
            "displayName": "John Doe",
            "active": true,
            "emails": [
                {
                    "value": "john.doe@example.com",
                    "type": "work",
                    "primary": true
                }
            ],
            "groups": [],
            "schemas": [
                "urn:ietf:params:scim:schemas:core:2.0:User",
                "urn:ietf:params:scim:schemas:extension:sap:2.0:User"
            ],
            "urn:ietf:params:scim:schemas:extension:sap:2.0:User": {
                "userUuid": "b2c3d4e5-f6a7-8901-bcde-f23456789012"
            },
            "meta": {
                "resourceType": "User",
                "location": "<BASE_URL>/Users/a1b2c3d4-e5f6-7890-abcd-ef1234567890",
                "created": "2025-12-02T11:30:23Z",
                "lastModified": "2025-12-02T11:30:23Z",
                "version": "1.0"
            }
        }
    ]
}

Response codes:

  • 200 OK: Success

  • 400 Bad Request: Invalid request or filter

  • 401 Unauthorized: Invalid credentials

  • 403 Forbidden: Access denied

  • 429 Too Many Requests: Rate limit exceeded

  • 500 Internal Server Error

POST /Users

Creates a new user.

Required attributes:

  • userName: Must be unique (case-insensitive)
  • emails: Must include at least one email with primary: true

Auto-generated attributes:

  • id: System-generated UUID
  • urn:ietf:params:scim:schemas:extension:sap:2.0:User.userUuid: Auto-generated if not provided
Example request body
{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:User",
        "urn:ietf:params:scim:schemas:extension:sap:2.0:User"
    ],
    "userName": "john.doe@example.com",
    "name": {
        "formatted": "John Doe",
        "familyName": "Doe",
        "givenName": "John"
    },
    "displayName": "John Doe",
    "emails": [
        {
            "value": "john.doe@example.com",
            "type": "work",
            "primary": true
        }
    ],
    "active": true
}

Response codes:

  • 201 Created: User created successfully

  • 400 Bad Request: Missing required attributes or invalid values

  • 401 Unauthorized: Invalid credentials

  • 409 Conflict: userName already exists

  • 429 Too Many Requests: Rate limit exceeded

  • 500 Internal Server Error

GET /Users/{id}

Gets a specific user by their id (UUID).

Path parameters:

  • id: User UUID (not userName)

Response codes:

  • 200 OK: Success
  • 401 Unauthorized: Invalid credentials
  • 404 Not Found: User does not exist
  • 429 Too Many Requests: Rate limit exceeded
  • 500 Internal Server Error

PUT /Users/{id}

Replaces all user attributes. ReadOnly attributes are preserved and cannot be changed.

Path parameters:

id: User UUID (not userName)

Response codes:

  • 200 OK: User updated successfully

  • 400 Bad Request: Invalid request

  • 401 Unauthorized: Invalid credentials

  • 404 Not Found: User does not exist

  • 409 Conflict: userName conflict

  • 429 Too Many Requests: Rate limit exceeded

  • 500 Internal Server Error

PATCH /Users/{id}

Path parameters:

  • id: User UUID (not userName)

Supported operations:

  • add, replace, remove

example request body
{
    "schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
    "Operations": [
        {
            "op": "replace",
            "path": "active",
            "value": false
        },
        {
            "op": "add",
            "path": "emails",
            "value": [
                {
                    "value": "secondary@example.com",
                    "type": "home"
                }
            ]
        }
    ]
}

Response codes:

  • 200 OK: User updated successfully

  • 400 Bad Request: Invalid operation or path

  • 401 Unauthorized: Invalid credentials

  • 404 Not Found: User does not exist

  • 429 Too Many Requests: Rate limit exceeded

  • 500 Internal Server Error

DELETE /Users{id}

Deletes a user.

Path parameters:

  • id: User UUID (not userName)

Observação

Quando um usuário é excluído, ele é automaticamente removido de todos os grupos aos quais foi atribuído.

Response codes:

  • 204 No Content: User deleted successfully

  • 401 Unauthorized: Invalid credentials

  • 404 Not Found: User does not exist

  • 429 Too Many Requests: Rate limit exceeded

  • 500 Internal Server Error

Group management

EndPoints

  • /Groups: Create a group (POST) or get a list of groups (GET)

  • /Groups/{id}: Get (GET), update (PUT), patch (PATCH), or delete (DELETE) a group

GET /Groups

Gets a list of groups with optional filtering and pagination.

URL parameters:

  • startIndex:1-based index of the first group to return. Default is 1. (Optional)

  • count: Number of groups to return per page (maximum 1000). Default is 1000. (Optional)

  • filter: SCIM filter expression used to search for specific groups. Default is none. (Optional)

example request
GET /Groups?filter=displayName sw "Sales"&count=50
example response
{
    "schemas": ["urn:ietf:params:scim:api:messages:2.0:ListResponse"],
    "totalResults": 1,
    "itemsPerPage": 1000,
    "startIndex": 1,
    "Resources": [
        {
            "id": "d737377c-f8ba-4df7-b290-78b9a2bff8e9",
            "displayName": "Sales Team",
            "members": [
                {
                    "value": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
                    "$ref": "<BASE_URL>/Users/a1b2c3d4-e5f6-7890-abcd-ef1234567890",
                    "type": "User"
                }
            ],
            "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
            "meta": {
                "resourceType": "Group",
                "location": "<BASE_URL>/Groups/d737377c-f8ba-4df7-b290-78b9a2bff8e9", 

Response codes:

  • 200 OK: Success
  • 400 Bad Request: Invalid filter
  • 401 Unauthorized: Invalid credentials
  • 429 Too Many Requests: Rate limit exceeded
  • 500 Internal Server Error

POST /Groups

Creates a new group.

URL parameters:

  • displayName: Human-readable name (not required, not unique - multiple groups can have the same name) (Required)

  • members: Array of member objects (Optional)

example request body
{
    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
    "displayName": "Engineering Team",
    "members": [
        {
            "value": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
            "type": "User"
        }
    ]
}
example response
{
    "id": "e8f9a0b1-c2d3-4567-89ab-cdef01234567",
    "displayName": "Engineering Team",
    "members": [
        {
            "value": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
            "$ref": "<BASE_URL>/Users/a1b2c3d4-e5f6-7890-abcd-ef1234567890",
            "type": "User"
        }
    ],
    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
    "meta": {
        "resourceType": "Group",
        "location": "<BASE_URL>/Groups/e8f9a0b1-c2d3-4567-89ab-cdef01234567",
        "created": "2025-12-02T11:30:23Z",
        "lastModified": "2025-12-02T11:30:23Z",
        "version": "1.0"
    }
}

Response codes:

  • 201 Created: Group created successfully

  • 400 Bad Request: Invalid request

  • 401 Unauthorized: Invalid credentials

  • 429 Too Many Requests: Rate limit exceeded

  • 500 Internal Server Error

GET /Groups/{id}

Gets a specific group by UUID.

Path parameters:

  • id: Group UUID

Response codes:

  • 200 OK: Success

  • 401 Unauthorized: Invalid credentials

  • 404 Not Found: Group does not exist

  • 429 Too Many Requests: Rate limit exceeded

  • 500 Internal Server Error

PUT /Groups/{id}

Replaces all group attributes including members.

Path parameters:

  • id: Group UUID

Response codes:

  • 200 OK: Group updated successfully

  • 400 Bad Request: Invalid operation

  • 401 Unauthorized: Invalid credentials

  • 404 Not Found: Group does not exist

  • 429 Too Many Requests: Rate limit exceeded

  • 500 Internal Server Error

PATCH /Groups/{id}

Partially updates a group. Commonly used to add/remove members.

Path parameters:

id - Group UUID

Example request body: Add member to group
{
    "schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
    "Operations": [
        {
            "op": "add",
            "path": "members",
            "value": [
                {
                    "value": "user-uuid-here",
                    "type": "User"
                }
            ]
        }
    ]
}
Example request body: Remove member from the group
{
    "schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
    "Operations": [
        {
            "op": "remove",
            "path": "members[value eq \"user-uuid-here\"]"
        }
    ]
}

Response codes:

  • 200 OK: Group updated successfully

  • 400 Bad Request: Invalid operation

  • 401 Unauthorized: Invalid credentials

  • 404 Not Found: Group does not exist

  • 429 Too Many Requests: Rate limit exceeded

  • 500 Internal Server Error

DELETE /Groups/{id}

Deletes a group.

Path Parameters:

  • id: Group UUID

Response codes:

  • 204 No Content: Group deleted successfully

  • 401 Unauthorized: Invalid credentials

  • 404 Not Found: Group does not exist

  • 429 Too Many Requests: Rate limit exceeded

  • 500 Internal Server Error

Service provider information

EndPoints

  • /ServiceProviderConfig: Get information about the Service Provider

  • /Schemas: Get information on the schemas used for user and group management

GET /ServiceProviderConfig

Gets information about the SCIM service provider capabilities.

Example response
{
    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:ServiceProviderConfig"],
    "patch": {
        "supported": true
    },
    "bulk": {
        "supported": false
    },
    "filter": {
        "supported": true,
        "maxResults": 1000
    },
    "changePassword": {
        "supported": false
    },
    "sort": {
        "supported": false
    },
    "etag": {
        "supported": false
    },
    "authenticationSchemes": [
        {
            "name": "HTTP Basic",
            "description": "Basic authentication scheme",
            "specUri": "https://www.ietf.org/rfc/rfc2617",
            "primary": true,
            "type": "Basic authentication"
        }
    ],
    "meta": {
        "location": "<BASE_URL>/ServiceProviderConfig",
        "resourceType": "ServiceProviderConfig"
    }
}

GET /Schemas

Gets information on all supported SCIM schemas.

Supported schemas:

  • urn:ietf:params:scim:schemas:core:2.0:User

  • urn:ietf:params:scim:schemas:extension:enterprise:2.0:User

  • urn:ietf:params:scim:schemas:extension:sap:2.0:User

  • urn:ietf:params:scim:schemas:core:2.0:Group

Was this article helpful?

Thanks for your feedback!

Faça parte de algo maior.

Interaja com colegas, tire dúvidas e compartilhe ideias.

Explore nossa comunidade
×
×