From 05e593b1514bf091c9a4cceebfbb00bd30a2dcd5 Mon Sep 17 00:00:00 2001 From: Abhishek Thakur <146176327+at8807602@users.noreply.github.com> Date: Tue, 1 Oct 2024 07:38:05 -0700 Subject: [PATCH 1/8] Create GetIncident_Details.js This code snippet helps with the basic details required to fetch the incident. --- .../GetIncident_Details.js | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 GraphQL/Sample INC Details GraphQL Code Snippet/GetIncident_Details.js diff --git a/GraphQL/Sample INC Details GraphQL Code Snippet/GetIncident_Details.js b/GraphQL/Sample INC Details GraphQL Code Snippet/GetIncident_Details.js new file mode 100644 index 0000000000..3390454a22 --- /dev/null +++ b/GraphQL/Sample INC Details GraphQL Code Snippet/GetIncident_Details.js @@ -0,0 +1,34 @@ +schema { + query: Query +} + +type Query { + EntersysID(sys_id:ID!):incident +} + +type incident{ + sys_id:DisplayableString + number:DisplayableString + short_description:DisplayableString + caller_id: User @source(value:"caller_id.value") + cmdb_ci: CI @source(value:"cmdb_ci.value") +} + +type User{ + sys_id:DisplayableString + user_name:DisplayableString + first_name:DisplayableString + last_name:DisplayableString + email:DisplayableString +} + +type CI{ + sys_id:DisplayableString + install_status:DisplayableString + name:DisplayableString +} + +type DisplayableString{ + value:String + display_value:String +} From ea4701ff34e43b18adb8510685c1abfb84545d9a Mon Sep 17 00:00:00 2001 From: Abhishek Thakur <146176327+at8807602@users.noreply.github.com> Date: Tue, 1 Oct 2024 07:39:02 -0700 Subject: [PATCH 2/8] Create Incident Resolver.js Incident Resolver --- .../Incident Resolver.js | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 GraphQL/Sample INC Details GraphQL Code Snippet/Incident Resolver.js diff --git a/GraphQL/Sample INC Details GraphQL Code Snippet/Incident Resolver.js b/GraphQL/Sample INC Details GraphQL Code Snippet/Incident Resolver.js new file mode 100644 index 0000000000..d573dde696 --- /dev/null +++ b/GraphQL/Sample INC Details GraphQL Code Snippet/Incident Resolver.js @@ -0,0 +1,10 @@ +(function process(/*ResolverEnvironment*/ env) { + + var sys_id=env.getArguments().sys_id; + var INC = new GlideRecord("incident"); + INC.addQuery("sys_id",sys_id); + INC.query(); + return INC; + + +})(env); From 057e015c8ae7a662660ab04b6dfd7e5098e4c510 Mon Sep 17 00:00:00 2001 From: Abhishek Thakur <146176327+at8807602@users.noreply.github.com> Date: Tue, 1 Oct 2024 07:40:01 -0700 Subject: [PATCH 3/8] Create User Resolver --- .../User Resolver | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 GraphQL/Sample INC Details GraphQL Code Snippet/User Resolver diff --git a/GraphQL/Sample INC Details GraphQL Code Snippet/User Resolver b/GraphQL/Sample INC Details GraphQL Code Snippet/User Resolver new file mode 100644 index 0000000000..04cdb18866 --- /dev/null +++ b/GraphQL/Sample INC Details GraphQL Code Snippet/User Resolver @@ -0,0 +1,10 @@ +(function process(/*ResolverEnvironment*/ env) { + + var user= env.getSource(); + var User = new GlideRecord("sys_user"); + User.addQuery("sys_id",user); + User.query(); + return User; + + +})(env); From ec4468dd9d10d30eab5006d0b19b043a42084e6e Mon Sep 17 00:00:00 2001 From: Abhishek Thakur <146176327+at8807602@users.noreply.github.com> Date: Tue, 1 Oct 2024 07:41:04 -0700 Subject: [PATCH 4/8] Create CMDB Resolver.js CMDB Resolver --- .../CMDB Resolver.js | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 GraphQL/Sample INC Details GraphQL Code Snippet/CMDB Resolver.js diff --git a/GraphQL/Sample INC Details GraphQL Code Snippet/CMDB Resolver.js b/GraphQL/Sample INC Details GraphQL Code Snippet/CMDB Resolver.js new file mode 100644 index 0000000000..85d5cfb71a --- /dev/null +++ b/GraphQL/Sample INC Details GraphQL Code Snippet/CMDB Resolver.js @@ -0,0 +1,10 @@ +(function process(/*ResolverEnvironment*/ env) { + + var user= env.getSource(); + var CI = new GlideRecord("cmdb_ci"); + CI.addQuery("sys_id",CI); + CI.query(); + return CI; + + +})(env); From 7a709960a2cf781086b5d5ca6882e511ba02d079 Mon Sep 17 00:00:00 2001 From: Abhishek Thakur <146176327+at8807602@users.noreply.github.com> Date: Tue, 1 Oct 2024 07:41:46 -0700 Subject: [PATCH 5/8] User Resolver.js --- .../{User Resolver => User Resolver.js} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename GraphQL/Sample INC Details GraphQL Code Snippet/{User Resolver => User Resolver.js} (100%) diff --git a/GraphQL/Sample INC Details GraphQL Code Snippet/User Resolver b/GraphQL/Sample INC Details GraphQL Code Snippet/User Resolver.js similarity index 100% rename from GraphQL/Sample INC Details GraphQL Code Snippet/User Resolver rename to GraphQL/Sample INC Details GraphQL Code Snippet/User Resolver.js From e8a9071f19a16df6ea02ffd0684771d52ef9bc7b Mon Sep 17 00:00:00 2001 From: Abhishek Thakur <146176327+at8807602@users.noreply.github.com> Date: Tue, 1 Oct 2024 07:45:40 -0700 Subject: [PATCH 6/8] Create resolver mapping.js --- .../resolver mapping.js | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 GraphQL/Sample INC Details GraphQL Code Snippet/resolver mapping.js diff --git a/GraphQL/Sample INC Details GraphQL Code Snippet/resolver mapping.js b/GraphQL/Sample INC Details GraphQL Code Snippet/resolver mapping.js new file mode 100644 index 0000000000..6251d7655b --- /dev/null +++ b/GraphQL/Sample INC Details GraphQL Code Snippet/resolver mapping.js @@ -0,0 +1,5 @@ +{ + "incident:cmdb_ci": "CMDB Resolver", + "incident:caller_id": "User Resolver", + "Query:EntersysID":"Incident Resolver" +} From 93bfb59a97e54bc03056aa9bd65b1eae63d1cb94 Mon Sep 17 00:00:00 2001 From: Abhishek Thakur <146176327+at8807602@users.noreply.github.com> Date: Tue, 1 Oct 2024 07:49:21 -0700 Subject: [PATCH 7/8] Create README.md --- GraphQL/Sample INC Details GraphQL Code Snippet/README.md | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 GraphQL/Sample INC Details GraphQL Code Snippet/README.md diff --git a/GraphQL/Sample INC Details GraphQL Code Snippet/README.md b/GraphQL/Sample INC Details GraphQL Code Snippet/README.md new file mode 100644 index 0000000000..7a8cafc3c1 --- /dev/null +++ b/GraphQL/Sample INC Details GraphQL Code Snippet/README.md @@ -0,0 +1,8 @@ +Example of incident query for GraphQL API +The code within this filder is just an example of working and basic implementation of sample incident details schema using GraphQL API in ServiceNow. It consist of: + +1. schema (schema.gql) +2. scripted resolvers (.js extension) +3. json file representing the resolver mappings (key is Path, value is Resolver) +This is just an example +So read it, learn it and explore GraphQL 😊 From ad754927e1e0d1c5d25eada04d38f0cbfb02dcd2 Mon Sep 17 00:00:00 2001 From: Abhishek Thakur <146176327+at8807602@users.noreply.github.com> Date: Tue, 1 Oct 2024 07:53:11 -0700 Subject: [PATCH 8/8] GetIncident_Details.gql --- .../{GetIncident_Details.js => GetIncident_Details.gql} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename GraphQL/Sample INC Details GraphQL Code Snippet/{GetIncident_Details.js => GetIncident_Details.gql} (100%) diff --git a/GraphQL/Sample INC Details GraphQL Code Snippet/GetIncident_Details.js b/GraphQL/Sample INC Details GraphQL Code Snippet/GetIncident_Details.gql similarity index 100% rename from GraphQL/Sample INC Details GraphQL Code Snippet/GetIncident_Details.js rename to GraphQL/Sample INC Details GraphQL Code Snippet/GetIncident_Details.gql