Dmitrii Metelkin
Maintainer
Moodle core provides a comprehensive list of webservices to create, update or delete users (core_user_create_users, core_user_update_users and core_user_delete_users). However, in those services you must use an internal user ID to identify users. In some systems with configured SSO integration, an identity provider doesn't know about internal user ID and find users using different fields (e.g. username, idnumber or unique custom profile field). In this case, it's not possible to use core webservices.
This plugin provides a single API endpoint (tool_userupsert_upsert_users) for managing users. You can select a field that will be used for matching users, including unique custom profile fields. Also, you can customise a list of required fields for your web service.