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); diff --git a/GraphQL/Sample INC Details GraphQL Code Snippet/GetIncident_Details.gql b/GraphQL/Sample INC Details GraphQL Code Snippet/GetIncident_Details.gql new file mode 100644 index 0000000000..3390454a22 --- /dev/null +++ b/GraphQL/Sample INC Details GraphQL Code Snippet/GetIncident_Details.gql @@ -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 +} 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); 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 😊 diff --git a/GraphQL/Sample INC Details GraphQL Code Snippet/User Resolver.js b/GraphQL/Sample INC Details GraphQL Code Snippet/User Resolver.js new file mode 100644 index 0000000000..04cdb18866 --- /dev/null +++ b/GraphQL/Sample INC Details GraphQL Code Snippet/User Resolver.js @@ -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); 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" +}