diff --git a/Integration/Scripted REST Api/Return User Info by Email/README.md b/Integration/Scripted REST Api/Return User Info by Email/README.md new file mode 100644 index 0000000000..d1144c90bd --- /dev/null +++ b/Integration/Scripted REST Api/Return User Info by Email/README.md @@ -0,0 +1,15 @@ +# 🌐 Scripted REST API – Get User Info by Email + +## 📋 Description +This Scripted REST API returns basic user information (name, title, department, location) based on an email address passed as a query parameter. + +## 📦 Files Included +- `ScriptedRESTAPI_GetUserInfo.js` + +## 💡 Use Case +Useful for integrations or external systems needing user data from ServiceNow without exposing full records. + +## 🛠 Setup Instructions +1. Create a new **Scripted REST API** with namespace `x_userinfo`. +2. Add a resource with path `/get_user` and method `GET`. +3. Paste the provided script into the resource script field. diff --git a/Integration/Scripted REST Api/Return User Info by Email/code.js b/Integration/Scripted REST Api/Return User Info by Email/code.js new file mode 100644 index 0000000000..801b483ede --- /dev/null +++ b/Integration/Scripted REST Api/Return User Info by Email/code.js @@ -0,0 +1,18 @@ +(function process(request, response) { + var email = request.queryParams.email; + var userGR = new GlideRecord('sys_user'); + userGR.addQuery('email', email); + userGR.query(); + + if (userGR.next()) { + return { + name: userGR.getValue('name'), + title: userGR.getValue('title'), + department: userGR.getDisplayValue('department'), + location: userGR.getDisplayValue('location') + }; + } else { + response.setStatus(404); + return { error: 'User not found' }; + } +})(request, response);