From 9434793558c847a8eab8e391b7495307d3d53b05 Mon Sep 17 00:00:00 2001 From: Lucifer <108731648+shivamvish160@users.noreply.github.com> Date: Mon, 20 Oct 2025 22:27:32 +0530 Subject: [PATCH 1/2] Create README.md --- .../Return User Info by Email/README.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 Integration/Scripted REST Api/Return User Info by Email/README.md 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. From 2ed0d204e85afd57348c5ef7d558022b06ea9a77 Mon Sep 17 00:00:00 2001 From: Lucifer <108731648+shivamvish160@users.noreply.github.com> Date: Mon, 20 Oct 2025 22:28:06 +0530 Subject: [PATCH 2/2] Create code.js --- .../Return User Info by Email/code.js | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 Integration/Scripted REST Api/Return User Info by Email/code.js 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);