Intégration SCIM pour SAP

Last Updated août 28, 2026

Aperçu rapide

Le fournisseur de service WalkMe SCIM vous permet de gérer par programmation les utilisateurs et les groupes à l'aide d'un point de terminaison conforme à SCIM 2.0. WalkMe expose une API REST basée sur la spécification du système pour la gestion des identités inter-domaines (SCIM 2.0).

Cette API vous permet de faire les opérations suivantes :

  • Créez, lisez, mettez à jour, appliquez des correctifs et supprimez des utilisateurs et des groupes.
  • Recherchez des utilisateurs et des groupes avec le filtrage et la pagination.
  • Obtenez des informations sur le fournisseur de services WalkMe, les schémas disponibles et les types de ressources

Accès

Accédez dans la console :

  1. Ouvrez la console WalkMe
  2. Accédez à la catégorie Admin
  3. Sélectionnez Centre d'intégration
  4. Sélectionnez Intégration SCIM
Remarque

  • Vous devez avoir un compte WalkMe
  • Vous devez créer une intégration SCIM et générer des informations d'identification

Configurer l'intégration SCIM

Remarque

Vous devez être un administrateur WalkMe pour activer SCIM pour votre organisation.

Activez SCIM dans WalkMe

Avant d'activer SCIM, vous devez d'abord créer une intégration SCIM dans le centre d'administration WalkMe.

  1. Sur la page Intégration SCIM, sélectionnez + Créer une intégration SCIM

  2. Saisissez le nom de l'intégration pour identifier votre intégration (par exemple, « Production » ou « Staging »)

  3. Sélectionnez le type d'autorisation

    1. Authentification de base : utilise un nom d'utilisateur et un mot de passe pour l'authentification

    2. Jeton de porteur : utilise un jeton de porteur pour l'authentification

  4. Sélectionnez Générer des identifiants

  1. Si vous avez sélectionné Authentification de base, une fenêtre contextuelle s'ouvre affichant les identifiants SCIM générés pour cette intégration :

    1. URL de base SCIM : l'URL du point de terminaison pour la configuration SCIM de votre fournisseur d'identité

    2. Nom d'utilisateur : le nom d'utilisateur généré automatiquement pour l'authentification

    3. Mot de passe : le mot de passe généré automatiquement pour l'authentification

Remarques

  • Le mot de passe est affiché une seule fois, après la fermeture de la fenêtre contextuelle, il ne peut pas être récupéré
  • Si vous perdez le mot de passe, vous devez supprimer l'intégration et en créer une nouvelle

  1. Sélectionnez Terminé pour terminer la configuration de l'intégration SCIM dans WalkMe

  1. Si vous avez sélectionné Bearer Token, une fenêtre contextuelle s'ouvre affichant les identifiants SCIM générés pour cette intégration :

    1. URL de base SCIM : l'URL du point de terminaison pour la configuration SCIM de votre fournisseur d'identité

    2. Jeton de porteur : le jeton sécurisé utilisé pour l'authentification

  2. Sélectionnez Terminé pour terminer la configuration de l'intégration SCIM dans WalkMe

Points de terminaison et paramètres de l'API SCIM 2.0

Cette API utilise SCIM 2.0. Pour plus d'informations, consultez le schéma de base SCIM (RFC 7643)

URL de base

Authentification

Toutes les demandes nécessitent une authentification de base HTTP ou une authentification par jeton de porteur :

  • Authentification de base :

    • Autorisation : Basic <base64 (nom d'utilisateur : mot de passe)>

  • Jeton de porteur :

    • Autorisation : jeton de porteur <généré par le porteur>

Gestion des utilisateurs

EndPoints

  • /Utilisateurs : créez un utilisateur (POST) ou obtenez une liste des utilisateurs (GET)

  • /Utilisateurs/{id} : Obtenir (GET), mettre à jour (PUT), corriger (PATCH) ou supprimer (DELETE) un utilisateur

GET /Utilisateurs

Obtient une liste des utilisateurs avec un filtrage et une pagination facultatifs

Paramètres d'URL :

  • startIndex : index basé sur 1 du premier utilisateur à renvoyer. La valeur par défaut est 1. (Optionnel)

  • count : (facultatif) nombre d'utilisateurs à revenir par page (maximum 1000). La valeur par défaut est 1000. (Optionnel)

  • filtre : expression de filtre SCIM (facultatif)

    • Opérateurs pris en charge : eq, ne, co, sw, ew, gt, ge, lt, le, pr

Remarque

Le tri n'est pas pris en charge (les paramètres sortBy et sortOrder sont ignorés).

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)

Remarque

Lorsqu'un utilisateur est supprimé, il est automatiquement supprimé de tous les groupes auxquels il a été attribué.

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

Cet article a-t-il été utile?

Merci pour votre avis!

Be part of something bigger.

Engage with peers, ask questions, share ideas

Ask the Community
×
×