Skip to content

Commit 6e77c78

Browse files
author
p16089
committed
Lab3-Create API
1 parent 1cd7745 commit 6e77c78

2 files changed

Lines changed: 68 additions & 1 deletion

File tree

‎checksum.txt‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
TzZPqkKMF04_FKdfP1YSm1UotD9-aHa7bWPssN1h_vnFjzfn_-zTqTeuuPh2cTGRSz8aQf-g4Y_O-vhOgt1a3C9vQOmD5pBp36nk8t2tucEeaKe1h0LsS98pvaQNmkU0J7zGWvtvwQEqWe9bZVQQ7lKAfMAdIzhf3fqKJwXxGywXcMIOP0DkB3jLl7fU6yB3tWOubYQZSQrhUAKhRNlefpgcRBsDzTvjkNHlS9w08ntm2oS32n2Bl7OaTFbUy1ZRe02xvWU3gP4Jv1vU8NiKaLyzDJZF-BLOtNQzo5tyZgRbywmnGia93OrCBLypdwmbSPO9CoxkipTxtmU3luPbbVodQWvaPGKTeTsnKMt0-m3Qnn2pcAe-eOW2X9CzfYvnoP0A28hl6B3571bbgvMvu52BReygrisB1Gp0o2fTT4GEikq3dNL39SeGoQYLsAJjRD1nym5rsgo36mFrda0HXg6OUbt11SjauaD3gF-RchSOV5_k4kfJMBKc8r127uTRW95lKTNvxyjM5TUmH4QsyA4ugNKu3FWoHf_1Sg6A5U0hMbrBsQhZGAR3hB8go0tDd0ri2FCWC35Ynn8-EH6ALdRnbn-85Yi0I7JvCYbRSdTct2eYGL9hRuZYHHIMh1ILUiiK4Pub95t94YoFxZwC64Vu57srtY3KMGrvRnkt_RQ
1+
SZ7idefJ0Cw0SYCJdt9Pt31sF7qyYg7o2gjMaubx-faqzG35qopo-7nK_zYfrI-9nmqD2W6dXxrI-FlcVnZUuR9kntSZE1-caQhg1K-Eo7yORTYG2cYfapgh8exI0DwKB0uN2YGqJSVfNPtJsdIz4ulbQrog_ywB2S2Vbyj7jARY-LM7tS0OVODW0p2OJGWszt8ddeCDcD4JhkjTvOqMWUuovWtHjNP84zF5P1FMJxAnzRVTxJUUW45lhS2nu9pa35uyZXz6wvvGb8I3WssX3Digr-bgxBZYC_GzO3b5Va9Mhs-BDQdte2Ae6ARi1-pEfm8gvV7OkhGBxpJjk-zsRluxwIHgOCLDzYmG3kimDxjbI8NjPbsd3NMuG2hfXTJ-KgMpn5uKe9MH7mR5iBbPgIQ3c9SRP4zp858T17X83NSsMEb9Z1ZnADugb94LRysZo5ujkia8i4Ug2lXau2ManKbhv_rrEeiGKC_n0ewRo8MODJrFNEhGPxvcj3wlzfZSOtYu3lUykoePi50EXlUDiEUuXgDkUm9MNEdKxxjkM6i-P1viP3xgeHen1EFlvXrw09NTMwl3ZvJTz1bkOUNhpvZ9mipyvD-HUUizPRKaxOQq2sGyebXAlWGBZ8DnS10c5dGPZFYZQaaJWfgEct-Civ1OvT8TuwWNDLxZpa56hs4
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<record_update table="sys_ws_operation">
3+
<sys_ws_operation action="INSERT_OR_UPDATE">
4+
<active>true</active>
5+
<consumes>application/json,application/xml,text/xml</consumes>
6+
<consumes_customized>false</consumes_customized>
7+
<default_operation_uri/>
8+
<enforce_acl/>
9+
<http_method>POST</http_method>
10+
<name>Create Poll</name>
11+
<operation_script><![CDATA[(function process( /*RESTAPIRequest*/ request, /*RESTAPIResponse*/ response) {
12+
var data = request.body.data;
13+
var pollHelper = new x_snc_polls.PollData_Creator();
14+
var groupId = getUserGroupId(data.usergroup);
15+
16+
// Create Poll record
17+
var pollRecord = pollHelper.createPoll(data, groupId);
18+
19+
// Create question record and choices
20+
var questionData = data.questions;
21+
pollHelper.createQuestions(questionData, pollRecord.getUniqueValue());
22+
23+
// Set Response Details
24+
var pollDetail = {
25+
number: pollRecord.number,
26+
name: pollRecord.name
27+
};
28+
response.setStatus(201);
29+
response.setLocation(request.url + "/" + pollRecord.getUniqueValue());
30+
response.setBody(pollDetail);
31+
32+
// Helper function
33+
function getUserGroupId(groupName) {
34+
var groupRec = new GlideRecord("sys_user_group");
35+
groupRec.addQuery("name", groupName);
36+
groupRec.query();
37+
groupRec.next();
38+
return groupRec.getUniqueValue();
39+
}
40+
41+
})(request, response);]]></operation_script>
42+
<operation_uri>/api/x_snc_polls/v1/poll</operation_uri>
43+
<produces>application/json,application/xml,text/xml</produces>
44+
<produces_customized>false</produces_customized>
45+
<relative_path>/</relative_path>
46+
<request_example/>
47+
<requires_acl_authorization>false</requires_acl_authorization>
48+
<requires_authentication>true</requires_authentication>
49+
<short_description/>
50+
<sys_class_name>sys_ws_operation</sys_class_name>
51+
<sys_created_by>admin</sys_created_by>
52+
<sys_created_on>2016-04-30 22:20:02</sys_created_on>
53+
<sys_customer_update>true</sys_customer_update>
54+
<sys_id>2ec79ee6134b1200ed373d62f244b0ea</sys_id>
55+
<sys_mod_count>0</sys_mod_count>
56+
<sys_name>Create Poll</sys_name>
57+
<sys_package display_value="Polls" source="x_snc_polls">cd1f2766133e1200ed373d62f244b082</sys_package>
58+
<sys_policy/>
59+
<sys_replace_on_upgrade>false</sys_replace_on_upgrade>
60+
<sys_scope display_value="Polls">cd1f2766133e1200ed373d62f244b082</sys_scope>
61+
<sys_update_name>sys_ws_operation_2ec79ee6134b1200ed373d62f244b0ea</sys_update_name>
62+
<sys_updated_by>admin</sys_updated_by>
63+
<sys_updated_on>2016-04-30 22:20:02</sys_updated_on>
64+
<web_service_definition display_value="Poll">e917dee6134b1200ed373d62f244b08f</web_service_definition>
65+
<web_service_version display_value="v1">a227dee6134b1200ed373d62f244b0cd</web_service_version>
66+
</sys_ws_operation>
67+
</record_update>

0 commit comments

Comments
 (0)