API SCIM pour WalkMe

Last Updated mars 3, 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

Prérequis

  • Vous devez avoir un compte WalkMe
  • Vous devez créer une intégration SCIM sur le centre Admin WalkMe 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. Connectez-vous au centre d'administration WalkMe

  2. Accédez à la page d'intégration SCIM

  3. Sélectionnez Intégration SCIM

  4. Sélectionnez + Créer une intégration SCIM

  5. Dans le panneau Créer l'intégration SCIM :

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

    2. 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

  6. 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

Notes

  • 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 :

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

  • Jeton de porteur :

    • Authorization: Bearer jeton <bearer généré>

Gestion des utilisateurs

EndPoints

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

  • Utilisateurs {id}: obtenir (GET), mettre à jour (PUT), patcher (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 à renvoyer par page (max 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).

Exemple de réponse
{
 "schemas": ["urn:ietf:params:scim:api:messages:2.0:ListResponse"],
 "totalResults" : 1,
 "itemsPerPage" : 1000,
 "startIndex" : 1,
 « Ressources » : [
 {
 "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": "/Users/a1b2c3d4-e5f6-7890-abcd-ef1234567890",
 "created" : "2025-12-02T11:30:23Z",
 "lastModified" : "2025-12-02T11:30:23Z",
 "version" : "1.0"
 }
 }
 ]
}

Codes de réponse :

  • 200 OK : Succès

  • 400 Mauvaise demande : demande ou filtre non valide

  • 401 Non autorisé : identifiants non valides

  • 403 Interdit : Accès refusé

  • 429 Trop de demandes : la limite de taux dépassée

  • Erreur interne du serveur 500

POST /Utilisateurs

Crée un nouvel utilisateur.

Attributs requis :

  • userName : doit être unique (insensible à la casse)
  • E-mails : doit inclure au moins un e-mail avec comme principal : true

Attributs générés automatiquement :

  • id : UUID généré par le système
  • urn:ietf:params:scim:schemas:extension:sap:2.0:User.userUuid : généré automatiquement si non fourni
Exemple de corps de demande
{
 "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
}

Codes de réponse :

  • 201 Créé : utilisateur créé avec succès

  • 400 Bad Request : attributs requis manquants ou valeurs invalides

  • 401 Non autorisé : identifiants non valides

  • 409 Conflit : userName existe déjà

  • 429 Trop de demandes : la limite de taux dépassée

  • Erreur interne du serveur 500

GET /Utilisateurs/{id}

Obtient un utilisateur spécifique par son identifiant (UUID).

Paramètres du chemin :

  • id : UUID de l'utilisateur (pas userName)

Codes de réponse :

  • 200 OK : Succès
  • 401 Non autorisé : identifiants non valides
  • 404 Introuvable : l'utilisateur n'existe pas
  • 429 Trop de demandes : la limite de taux dépassée
  • Erreur interne du serveur 500

PUT /Utilisateurs/{id}

Remplace tous les attributs de l'utilisateur. Les attributs ReadOnly sont conservés et ne peuvent pas être modifiés.

Paramètres du chemin :

id : UUID de l'utilisateur (pas userName)

Codes de réponse :

  • 200 OK : Utilisateur mis à jour avec succès

  • 400 Bad Request : demande non valide

  • 401 Non autorisé : identifiants non valides

  • 404 Introuvable : l'utilisateur n'existe pas

  • 409 Conflit : conflit userName

  • 429 Trop de demandes : la limite de taux dépassée

  • Erreur interne du serveur 500

PATCH /Utilisateurs/{id}

Paramètres du chemin :

  • id : UUID de l'utilisateur (pas userName)

Opérations prises en charge :

  • ajouter, remplacer, supprimer

exemple de corps de demande
{
 "schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
 « Opérations » : [
 {
 "op": "replace",
 "path": "active",
 "value" : false
 },
 {
 "op": "add",
 "path": "emails",
 "value": [
 {
 "value": "secondary@example.com",
 "type": "home"
 }
 ]
 }
 ]
}

Codes de réponse :

  • 200 OK : Utilisateur mis à jour avec succès

  • 400 Bad Request : Opération ou chemin non valide

  • 401 Non autorisé : identifiants non valides

  • 404 Introuvable : l'utilisateur n'existe pas

  • 429 Trop de demandes : la limite de taux dépassée

  • Erreur interne du serveur 500

DELETE /Utilisateurs{id}

Supprime un utilisateur.

Paramètres du chemin :

  • id : UUID de l'utilisateur (pas userName)

Remarque

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

Codes de réponse :

  • 204 Aucun contenu : l'utilisateur a été supprimé avec succès

  • 401 Non autorisé : identifiants non valides

  • 404 Introuvable : l'utilisateur n'existe pas

  • 429 Trop de demandes : la limite de taux dépassée

  • Erreur interne du serveur 500

Gestion du groupe

EndPoints

  • /Groups : créez un groupe (POST) ou obtenez une liste de groupes (GET)

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

GET /Groups

Obtient une liste des groupes avec un filtrage et une pagination facultatifs.

Paramètres d'URL :

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

  • count : nombre de groupes à renvoyer par page (maximum 1000). La valeur par défaut est 1000. (Optionnel)

  • filtre : expression de filtre SCIM utilisée pour rechercher des groupes spécifiques. La valeur par défaut est aucune. (Optionnel)

exemple de demande
GET /Groups?filter=displayName sw "Sales"&count=50
exemple de réponse
{
 "schemas": ["urn:ietf:params:scim:api:messages:2.0:ListResponse"],
 "totalResults" : 1,
 "itemsPerPage" : 1000,
 "startIndex" : 1,
 « Ressources » : [
 {
 "id" : "d737377c-f8ba-4df7-b290-78b9a2bff8e9",
 "displayName": "Sales Team",
 "members" : [
 {
 "value": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
 "$ref": "/Users/a1b2c3d4-e5f6-7890-abcd-ef1234567890",
 "type": "User"
 }
 ],
 "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
 "meta": {
 "resourceType" : "Group",
 "location": "/Groups/d737377c-f8ba-4df7-b290-78b9a2bff8e9", 

Codes de réponse :

  • 200 OK : Succès
  • 400 Mauvaise demande : filtre non valide
  • 401 Non autorisé : identifiants non valides
  • 429 Trop de demandes : la limite de taux dépassée
  • Erreur interne du serveur 500

POST /Groups

Crée un nouveau groupe.

Paramètres d'URL :

  • displayName : nom lisible par l'homme (non requis, non unique : plusieurs groupes peuvent avoir le même nom) (Obligatoire)

  • membres : tableau d'objets des membres (facultatif)

exemple de corps de demande
{
 "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
 "displayName": "Engineering Team",
 "members" : [
 {
 "value": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
 "type": "User"
 }
 ]
}
exemple de réponse
{
 "id" : "e8f9a0b1-c2d3-4567-89ab-cdef01234567",
 "displayName": "Engineering Team",
 "members" : [
 {
 "value": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
 "$ref": "/Users/a1b2c3d4-e5f6-7890-abcd-ef1234567890",
 "type": "User"
 }
 ],
 "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
 "meta": {
 "resourceType" : "Group",
 "location": "/Groups/e8f9a0b1-c2d3-4567-89ab-cdef01234567",
 "created" : "2025-12-02T11:30:23Z",
 "lastModified" : "2025-12-02T11:30:23Z",
 "version" : "1.0"
 }
}

Codes de réponse :

  • 201 Créé : groupe créé avec succès

  • 400 Bad Request : demande non valide

  • 401 Non autorisé : identifiants non valides

  • 429 Trop de demandes : la limite de taux dépassée

  • Erreur interne du serveur 500

GET /Groups/{id}

Obtient un groupe spécifique par UUID.

Paramètres du chemin :

  • id : UUID de groupe

Codes de réponse :

  • 200 OK : Succès

  • 401 Non autorisé : identifiants non valides

  • 404 Introuvable : le groupe n'existe pas

  • 429 Trop de demandes : la limite de taux dépassée

  • Erreur interne du serveur 500

PUT /Groups/{id}

Remplace tous les attributs du groupe, y compris les membres.

Paramètres du chemin :

  • id : UUID de groupe

Codes de réponse :

  • 200 OK : Groupe mis à jour avec succès

  • 400 Bad Request : opération non valide

  • 401 Non autorisé : identifiants non valides

  • 404 Introuvable : le groupe n'existe pas

  • 429 Trop de demandes : la limite de taux dépassée

  • Erreur interne du serveur 500

PATCH /Groups/{id}

Met à jour partiellement un groupe. Couramment utilisé pour ajouter/supprimer des membres.

Paramètres du chemin :

  • id - UUID de groupe
Exemple de corps de demande : Ajouter un membre au groupe
{
 "schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
 « Opérations » : [
 {
 "op": "add",
 "path": "members",
 "value": [
 {
 "value": "user-uuid-here",
 "type": "User"
 }
 ]
 }
 ]
}
Exemple de corps de demande : Supprimer le membre du groupe
{
 "schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
 « Opérations » : [
 {
 "op" : "remove",
 "path": "members[value eq \"user-uuid-here\"]"
 }
 ]
}

Codes de réponse :

  • 200 OK : Groupe mis à jour avec succès

  • 400 Bad Request : opération non valide

  • 401 Non autorisé : identifiants non valides

  • 404 Introuvable : le groupe n'existe pas

  • 429 Trop de demandes : la limite de taux dépassée

  • Erreur interne du serveur 500

DELETE /Groups/{id}

Supprime un groupe.

Paramètres du chemin :

  • id : UUID de groupe

Codes de réponse :

  • 204 Aucun contenu : groupe supprimé avec succès

  • 401 Non autorisé : identifiants non valides

  • 404 Introuvable : le groupe n'existe pas

  • 429 Trop de demandes : la limite de taux dépassée

  • Erreur interne du serveur 500

Informations sur le fournisseur de services

EndPoints

  • /ServiceProviderConfig : Obtenir des informations sur le fournisseur de services

  • /Schemas : obtenir des informations sur les schémas utilisés pour la gestion des utilisateurs et des groupes

GET /ServiceProviderConfig

Obtient des informations sur les capacités du fournisseur de services SCIM.

Exemple de réponse
{
 "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" : "Schéma d'authentification de base",
 "specUri" : "https://www.ietf.org/rfc/rfc2617",
 "primary" : true,
 "type" : "Authentification de base"
 }
 ],
 "meta": {
 "location": "/ServiceProviderConfig",
 "resourceType" : "ServiceProviderConfig"
 }
}

GET /Schemas

Obtient des informations sur tous les schémas SCIM pris en charge.

Schémas pris en charge :

  • 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
×