{
	"info": {
		"_postman_id": "b22d00e3-8e40-4d6f-872c-0aaeda6a496d",
		"name": "KPN ServiceNow Connect",
		"description": "Version 1.0\n\n27 March 2025\n\nThis collection contains samples of the API calls towards the KPN ServiceNow Connect API.\n\nTo use it:\n\n- Put the correct client_id and client_secret in de body of the \"GetAccessToken\" request.\n    \n- Update the \"refStart\" variable in this collection with the value you want to use to start your reference number with. Referencenumber will be made in the format:  \n    \"refStart-YYYYMMDD-Counter\"\n    \n\nOn ticket creation the customer_reference_number and returned kpn_ticket_number will be stored to be used in the patch actions.\n\nIf a new ticket or task is retrieved the kpn_ticket_number will be stored and a customer_reference_number will be generated and stored.\n\nTo authorize, use the POST /GetAccessToken request to get the oAuth token. Then the other requests can be used to create or update tickets, retrieve updates etc...",
		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
		"_exporter_id": "12365112",
		"_collection_link": "https://crimson-moon-531566.postman.co/workspace/0867d518-e488-49c5-8a0b-28aaf406d8cb/collection/12365112-b22d00e3-8e40-4d6f-872c-0aaeda6a496d?action=share&source=collection_link&creator=12365112"
	},
	"item": [
		{
			"name": "GetAccessToken",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"// Script to store token\r",
							"//\r",
							"var jsonData = pm.response.json();\r",
							"// Check on 200 OK\r",
							"pm.test(\"Status code is 200, with json body\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    pm.response.to.be.withBody;\r",
							"    pm.response.to.be.json;\r",
							"});\r",
							"//Store token\r",
							"pm.test(\"Store token to globals\", function () {\r",
							"    pm.collectionVariables.set(\"PortalToken\", pm.response.json().access_token);\r",
							"});\r",
							"//Set the date for the ref number\r",
							"pm.test(\"Preperation: Increase reference_number in global variable\", function () {\r",
							"    var currentdate = new Date(); \r",
							"    var refNoDate= \"\" + currentdate.getFullYear() \r",
							"                + (\"0\"+(currentdate.getMonth()+1)).slice(-2)  \r",
							"                + (\"0\"+currentdate.getDate()).slice(-2);\r",
							"    var oldRefNoDate = pm.collectionVariables.get(\"Date\")\r",
							"    if(refNoDate != oldRefNoDate){\r",
							"        // Set new Date & reset \r",
							"        pm.collectionVariables.set(\"Date\",refNoDate);\r",
							"        pm.collectionVariables.set(\"reference_counter\",0);\r",
							"    }\r",
							"    \r",
							"});"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"request": {
				"auth": {
					"type": "noauth"
				},
				"method": "POST",
				"header": [],
				"body": {
					"mode": "urlencoded",
					"urlencoded": [
						{
							"key": "client_id",
							"value": "<<Your Client_ID>>",
							"type": "text"
						},
						{
							"key": "client_secret",
							"value": "<<Your CLient Secret>>",
							"type": "text"
						}
					]
				},
				"url": {
					"raw": "https://api-prd.kpn.com/oauth/client_credential/accesstoken?grant_type=client_credentials",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"oauth",
						"client_credential",
						"accesstoken"
					],
					"query": [
						{
							"key": "grant_type",
							"value": "client_credentials"
						}
					]
				},
				"description": "This POST action can be used to get the oAuth token. The retrieved token will be stored in a collection variable to be used in the other actions.\n\nTo use this actionm add your client_id and client_secret in the parameters tab."
			},
			"response": []
		},
		{
			"name": "Ticket (Incident)",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"// Test script to store ticketNumber & reference_number\r",
							"//\r",
							"var jsonData = pm.response.json();\r",
							"// Check on 200 OK\r",
							"pm.test(\"Status code is 200, with json body\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    pm.response.to.be.withBody;\r",
							"    pm.response.to.be.json;\r",
							"});\r",
							"//Store tickenr\r",
							"pm.test(\"Store ticket  to globals\", function () {\r",
							"    pm.collectionVariables.set(\"KPNTicket\", pm.response.json().kpn_ticket_number);\r",
							"});"
						],
						"type": "text/javascript",
						"packages": {}
					}
				},
				{
					"listen": "prerequest",
					"script": {
						"exec": [
							"//Define & Store reference number\r",
							"var refCounter = parseInt(pm.collectionVariables.get(\"reference_counter\"))+1\r",
							"const refNo = pm.collectionVariables.get(\"refStart\")+\"-\"+pm.collectionVariables.get(\"Date\")+\"-\"+refCounter;\r",
							"pm.collectionVariables.set(\"CustTicket\", refNo); \r",
							"pm.collectionVariables.set(\"reference_counter\", refCounter);"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"request": {
				"method": "POST",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"customer_reference_number\":\"{{CustTicket}}\",\r\n    \"ticket_type\":\"incident\",\r\n    \"short_description\":\"test\",\r\n    \"description\":\"test\",\r\n    \"service\":\"CPESXT-VN32.deze.ken.ik.niet\",\r\n    \"contact\":\"benno.folkerts@kpn.com\",\r\n    \"user\":\"cor.paarlberg@kpn.com\",\r\n    \"priority\":\"3 - Moderate\",\r\n    \"attachments\": [\r\n      {\r\n        \"name\": \"Note1.txt\",\r\n        \"content\": \"VGVzdGluZyBpbnRlcmZhY2U=\"\r\n      }\r\n    ]\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Ticket",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Ticket"
					]
				},
				"description": "This is a sample message to create in ticket for the **incident** process.\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication.\n\nAfter a successfull request, the kpn_ticket_number and the Customer_reference_number will be stored into collection variables to be used in the PATCH actions.\n"
			},
			"response": []
		},
		{
			"name": "Ticket (Request for Information)",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"// Test script to store ticketNumber & reference_number\r",
							"//\r",
							"var jsonData = pm.response.json();\r",
							"// Check on 200 OK\r",
							"pm.test(\"Status code is 200, with json body\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    pm.response.to.be.withBody;\r",
							"    pm.response.to.be.json;\r",
							"});\r",
							"//Store tickenr\r",
							"pm.test(\"Store ticket  to globals\", function () {\r",
							"    pm.collectionVariables.set(\"KPNTicket\", pm.response.json().kpn_ticket_number);\r",
							"});"
						],
						"type": "text/javascript",
						"packages": {}
					}
				},
				{
					"listen": "prerequest",
					"script": {
						"exec": [
							"//Define & Store reference number\r",
							"var refCounter = parseInt(pm.collectionVariables.get(\"reference_counter\"))+1\r",
							"const refNo = pm.collectionVariables.get(\"refStart\")+\"-\"+pm.collectionVariables.get(\"Date\")+\"-\"+refCounter;\r",
							"pm.collectionVariables.set(\"CustTicket\", refNo); \r",
							"pm.collectionVariables.set(\"reference_counter\", refCounter);"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"request": {
				"method": "POST",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"customer_reference_number\":\"{{CustTicket}}\",\r\n    \"ticket_type\":\"Request for Information\",\r\n    \"short_description\":\"test\",\r\n    \"description\":\"test\",\r\n    \"service\":\"Test\",\r\n    \"contact\":\"test\",\r\n    \"user\":\"test\",\r\n    \"attachments\": [\r\n      {\r\n        \"name\": \"Note1.txt\",\r\n        \"content\": \"VGVzdGluZyBpbnRlcmZhY2U=\"\r\n      }\r\n    ]\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Ticket",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Ticket"
					]
				},
				"description": "This is a sample message to create in ticket for the **incident** process.\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication.\n\nAfter a successfull request, the kpn_ticket_number and the Customer_reference_number will be stored into collection variables to be used in the PATCH actions.\n"
			},
			"response": []
		},
		{
			"name": "Ticket (Change Request)",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"// Test script to store ticketNumber & reference_number\r",
							"//\r",
							"var jsonData = pm.response.json();\r",
							"// Check on 200 OK\r",
							"pm.test(\"Status code is 200, with json body\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    pm.response.to.be.withBody;\r",
							"    pm.response.to.be.json;\r",
							"});\r",
							"//Store tickenr\r",
							"pm.test(\"Store ticket  to globals\", function () {\r",
							"    pm.collectionVariables.set(\"KPNTicket\", pm.response.json().kpn_ticket_number);\r",
							"});"
						],
						"type": "text/javascript",
						"packages": {}
					}
				},
				{
					"listen": "prerequest",
					"script": {
						"exec": [
							"//Define & Store reference number\r",
							"var refCounter = parseInt(pm.collectionVariables.get(\"reference_counter\"))+1\r",
							"const refNo = pm.collectionVariables.get(\"refStart\")+\"-\"+pm.collectionVariables.get(\"Date\")+\"-\"+refCounter;\r",
							"pm.collectionVariables.set(\"CustTicket\", refNo); \r",
							"pm.collectionVariables.set(\"reference_counter\", refCounter);"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"request": {
				"method": "POST",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"customer_reference_number\":\"{{CustTicket}}\",\r\n    \"ticket_type\":\"Change Request\",\r\n    \"short_description\":\"test\",\r\n    \"description\":\"test\",\r\n    \"service\":\"Test\",\r\n    \"contact\":\"test\",\r\n    \"user\":\"test\",\r\n    \"attachments\": [\r\n      {\r\n        \"name\": \"Note1.txt\",\r\n        \"content\": \"VGVzdGluZyBpbnRlcmZhY2U=\"\r\n      }\r\n    ]\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Ticket",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Ticket"
					]
				},
				"description": "This is a sample message to create in ticket for the **Change** process.\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication.\n\nAfter a successfull request, the kpn_ticket_number and the Customer_reference_number will be stored into collection variables to be used in the PATCH actions."
			},
			"response": []
		},
		{
			"name": "Ticket (Service Request)",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"// Test script to store ticketNumber & reference_number\r",
							"//\r",
							"var jsonData = pm.response.json();\r",
							"// Check on 200 OK\r",
							"pm.test(\"Status code is 200, with json body\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    pm.response.to.be.withBody;\r",
							"    pm.response.to.be.json;\r",
							"});\r",
							"//Store tickenr\r",
							"pm.test(\"Store ticket  to globals\", function () {\r",
							"    pm.collectionVariables.set(\"KPNTicket\", pm.response.json().kpn_ticket_number);\r",
							"});"
						],
						"type": "text/javascript",
						"packages": {}
					}
				},
				{
					"listen": "prerequest",
					"script": {
						"exec": [
							"//Define & Store reference number\r",
							"var refCounter = parseInt(pm.collectionVariables.get(\"reference_counter\"))+1\r",
							"const refNo = pm.collectionVariables.get(\"refStart\")+\"-\"+pm.collectionVariables.get(\"Date\")+\"-\"+refCounter;\r",
							"pm.collectionVariables.set(\"CustTicket\", refNo); \r",
							"pm.collectionVariables.set(\"reference_counter\", refCounter);"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"request": {
				"method": "POST",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"customer_reference_number\": \"{{CustTicket}}\",\r\n    \"ticket_type\": \"Service Request\",\r\n    \"short_description\": \"test short description\",\r\n    \"description\": \"test long description\",\r\n    \"service\":\"Decommissioning Firewall\",\r\n    \"contact\": \"joost.bakker@acme.com\",\r\n    \"user\": \"automicso@kpn.com\",\r\n    \"order_items\": [\r\n        {\r\n            \"item\": \"510.400 - NIO ICT Automation\",\r\n            \"customer_order_item_id\": \"{{CustTicket}}\",\r\n            \"item_attributes\": {\r\n                \"Item_description\": \"We have decommissioned server 12345. \\nPlease remove the firewall rules and objects for 12345 with following IP details:\\n1.2.3.4 \\n\",\r\n                \"u_company\": \"KPN B.V.\",\r\n                \"contact_type\": \"Integration\"\r\n            }\r\n        }\r\n    ],\r\n    \"attachments\": [\r\n        {\r\n            \"name\": \"Note1.txt\",\r\n            \"content\": \"VGVzdGluZyBpbnRlcmZhY2U=\"\r\n        }\r\n    ]\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Ticket",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Ticket"
					]
				},
				"description": "This is a sample message to create in ticket for the **Request** process.\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication.\n\nAfter a successfull request, the kpn_ticket_number and the Customer_reference_number will be stored into collection variables to be used in the PATCH actions."
			},
			"response": []
		},
		{
			"name": "Ticket - Comment",
			"request": {
				"method": "PATCH",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"action\":\"comment\",\r\n    \"kpn_ticket_number\":\"{{KPNTicket}}\",\r\n    \"customer_reference_number\":\"{{CustTicket}}\",\r\n    \"comment\":\"test comment with attachment\",\r\n    \"attachments\": [\r\n      {\r\n        \"name\": \"Note2.txt\",\r\n        \"content\": \"VGVzdGluZyBpbnRlcmZhY2U=\",\r\n        \"Content_type\":\"text/plain\"\r\n      }\r\n    ]\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Ticket",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Ticket"
					]
				},
				"description": "This is an example message to add a **Comment** to an existing ticket\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication.\n\nThe stored KPN ticket number & customer reference number from the POST request can be used or overwritten with other existing values.\n\nThe attachment section is optional. If an attachment issend, the comment field is optional."
			},
			"response": []
		},
		{
			"name": "Ticket - Response Success",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"// Test script to store ticketNumber & reference_number\r",
							"//\r",
							"var jsonData = pm.response.json();\r",
							"// Check on 200 OK\r",
							"pm.test(\"Status code is 200, with json body\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    pm.response.to.be.withBody;\r",
							"    pm.response.to.be.json;\r",
							"});\r",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"request": {
				"method": "PATCH",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"action\":\"Response\",\r\n    \"kpn_ticket_number\":\"{{KPNTicket}}\",\r\n    \"customer_reference_number\":\"{{CustTicket}}\",\r\n    \"transaction_id\": \"{{TransactionId}}\",\r\n    \"status\":\"Success\"\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Ticket",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Ticket"
					]
				},
				"description": "This is an example for a **Response Success** message for a New ticket created by KPN. The customer_reference_number will be stored in the KPN ServiceNow ticket.\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication.\n\nThe status field, the customer_reference_number and the transaction_id are mandatory."
			},
			"response": []
		},
		{
			"name": "Ticket - Response Failure",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"// Test script to store ticketNumber & reference_number\r",
							"//\r",
							"var jsonData = pm.response.json();\r",
							"// Check on 200 OK\r",
							"pm.test(\"Status code is 200, with json body\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    pm.response.to.be.withBody;\r",
							"    pm.response.to.be.json;\r",
							"});\r",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"request": {
				"method": "PATCH",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"action\":\"Response\",\r\n    \"kpn_ticket_number\":\"{{KPNTicket}}\",\r\n    \"customer_reference_number\":\"{{CustTicket}}\",\r\n    \"transaction_id\": \"{{TransactionId}}\",\r\n    \"error_details\":\"Sample error\",\r\n    \"status\":\"Failure\"\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Ticket",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Ticket"
					]
				},
				"description": "This is an example for a **Response Failure** message for a New ticket created by KPN.\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication.\n\nThe status field and the transaction_id are mandatory."
			},
			"response": []
		},
		{
			"name": "TicketUpdates",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"// Test script to store ticketNumber & reference_number\r",
							"//\r",
							"var jsonData = pm.response.json();\r",
							"// Check on 200 OK\r",
							"pm.test(\"Status code is 200, with json body\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    pm.response.to.be.withBody;\r",
							"    pm.response.to.be.json;\r",
							"});\r",
							"\r",
							"// Check if the array is not empty\r",
							"if (Array.isArray(jsonData) && jsonData.length > 0) {\r",
							"    // Find the object where action is \"New\"\r",
							"    const result = jsonData.find(item => item.action === \"New\");\r",
							"    if (result){\r",
							"        // Extract the ticket_number & transaction_id\r",
							"        const ticket_number = result ? result.kpn_ticket_number : null;\r",
							"        const transaction_id = result ? result.transaction_id : null;\r",
							"        // define reference number\r",
							"        var refCounter = parseInt(pm.collectionVariables.get(\"reference_counter\"))+1\r",
							"        const refNo = pm.collectionVariables.get(\"refStart\")+\"-\"+pm.collectionVariables.get(\"Date\")+\"-\"+refCounter;\r",
							"        //Store ticket&ref nr\r",
							"        if(ticket_number.includes(\"TASK\")){\r",
							"            //store task numbers\r",
							"            pm.test(\"Store ticket  to globals\", function () {\r",
							"                pm.collectionVariables.set(\"KPNTask\", ticket_number);\r",
							"                pm.collectionVariables.set(\"CustTask\", refNo);\r",
							"            });\r",
							"\r",
							"        } else {\r",
							"            //store ticket numbers\r",
							"            pm.test(\"Store ticket  to globals\", function () {\r",
							"                pm.collectionVariables.set(\"KPNTicket\", ticket_number);\r",
							"                pm.collectionVariables.set(\"CustTicket\", refNo);\r",
							"            });\r",
							"        };\r",
							"        pm.collectionVariables.set(\"reference_counter\", refCounter);\r",
							"        pm.collectionVariables.set(\"TransactionId\", transaction_id);\r",
							"    }\r",
							"\r",
							"}\r",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "test",
						"value": "just a test header",
						"type": "text"
					}
				],
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/TicketUpdates",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"TicketUpdates"
					]
				},
				"description": "This is an example of the GET request to the /TicketUpdates operation.\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication.\n\nThis wil return an array with all the ticket updates available. A separate document with all possible ticket updates is available."
			},
			"response": []
		},
		{
			"name": "GetAttachment",
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/GetAttachment/5bd1bfafc34d9e90855c31ca0501319d",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"GetAttachment",
						"5bd1bfafc34d9e90855c31ca0501319d"
					]
				},
				"description": "This is the GET request to get attachments as provided via the GET TicketUpdates operation.\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication."
			},
			"response": []
		},
		{
			"name": "ListOpenTickets",
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/ListOpenTickets",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"ListOpenTickets"
					]
				},
				"description": "This is an example of the GET request to the /ListOpenTickets operation to get an overview of all active tickets.\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication.\n\nThis will return an array with alle the active tickets."
			},
			"response": []
		},
		{
			"name": "TicketGet - Details",
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Ticket?kpn_ticket_number=INC%2311306222",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Ticket"
					],
					"query": [
						{
							"key": "kpn_ticket_number",
							"value": "INC%2311306222"
						}
					]
				},
				"description": "This is an example of the GET request to the /Ticket operation to query details of a specific ticket.\n\n**Note:** The kpn_ticket_number must be url_encoded!\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication."
			},
			"response": []
		},
		{
			"name": "Task - Response Success",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"// Test script to store ticketNumber & reference_number\r",
							"//\r",
							"var jsonData = pm.response.json();\r",
							"// Check on 200 OK\r",
							"pm.test(\"Status code is 200, with json body\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    pm.response.to.be.withBody;\r",
							"    pm.response.to.be.json;\r",
							"});\r",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"request": {
				"method": "PATCH",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"action\":\"Response\",\r\n    \"kpn_ticket_number\":\"{{KPNTask}}\",\r\n    \"customer_reference_number\":\"{{CustTask}}\",\r\n    \"transaction_id\": \"{{TransactionId}}\",\r\n    \"status\":\"Success\"\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Ticket",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Ticket"
					]
				},
				"description": "This is an example for a **Response Success** message for a New taskcreated by KPN. The customer_reference_number will be stored in the KPN ServiceNow task.\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication.\n\nThe status field, the customer_reference_number and the transaction_id are mandatory."
			},
			"response": []
		},
		{
			"name": "Task - Response Failure",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"// Test script to store ticketNumber & reference_number\r",
							"//\r",
							"var jsonData = pm.response.json();\r",
							"// Check on 200 OK\r",
							"pm.test(\"Status code is 200, with json body\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    pm.response.to.be.withBody;\r",
							"    pm.response.to.be.json;\r",
							"});\r",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"request": {
				"method": "PATCH",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"action\":\"Response\",\r\n    \"kpn_ticket_number\":\"{{KPNTicket}}\",\r\n    \"customer_reference_number\":\"{{CustTicket}}\",\r\n    \"transaction_id\": \"{{TransactionId}}\",\r\n    \"error_details\":\"Sample error\",\r\n    \"status\":\"Failure\"\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Task",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Task"
					]
				},
				"description": "This is an example for a **Response Failure** message for a New ticket created by KPN.\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication.\n\nThe status field and the transaction_id are mandatory."
			},
			"response": []
		},
		{
			"name": "Task - In Progress",
			"request": {
				"method": "PATCH",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"action\":\"In Progress\",\r\n    \"kpn_ticket_number\":\"{{KPNTask}}\",\r\n    \"customer_reference_number\":\"{{CustTask}}\",\r\n    \"worknotes\":\"test worknote for In Progress action\"\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Task",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Task"
					]
				},
				"description": "This is an example of a PATCH action to the /Task operation. The task will beplaced in the In Progress state in KPN ServiceNow\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication."
			},
			"response": []
		},
		{
			"name": "Task - On Hold",
			"request": {
				"method": "PATCH",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"action\":\"On Hold\",\r\n    \"kpn_ticket_number\":\"{{KPNTask}}\",\r\n    \"customer_reference_number\":\"{{CustTask}}\",\r\n    \"worknotes\":\"reason why put on hold\"\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Task",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Task"
					]
				},
				"description": "This is an example of a PATCH action to the /Task operation. The task will beplaced in the Pending state in KPN ServiceNow\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication."
			},
			"response": []
		},
		{
			"name": "Task - Worknote",
			"request": {
				"method": "PATCH",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"action\":\"Worknote\",\r\n    \"kpn_ticket_number\":\"{{KPNTask}}\",\r\n    \"customer_reference_number\":\"{{CustTask}}\",\r\n    \"worknotes\":\"test worknote\"\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Task",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Task"
					]
				},
				"description": "This is an example of a PATCH action to the /Task operation. This operation will add a worknote to the task in KPN ServiceNow. A worknote is not customer visible, but visible for the ServiceDesk.\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication."
			},
			"response": []
		},
		{
			"name": "Task - Comment",
			"request": {
				"method": "PATCH",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"action\":\"Comment\",\r\n    \"kpn_ticket_number\":\"{{KPNTask}}\",\r\n    \"customer_reference_number\":\"{{CustTask}}\",\r\n    \"comment\":\"test comment with attachment\",\r\n    \"attachments\": [\r\n      {\r\n        \"name\": \"Note2.txt\",\r\n        \"content\": \"VGVzdGluZyBpbnRlcmZhY2U=\",\r\n        \"Content_type\":\"text/plain\"\r\n      }\r\n    ]\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Task",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Task"
					]
				},
				"description": "This is an example of a PATCH action to the /Task operation. This operration will add a comment to the task in KPN ServiceNow. A comment is customer visible.\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication."
			},
			"response": []
		},
		{
			"name": "Task - Closed Complete",
			"request": {
				"method": "PATCH",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"action\":\"Closed Complete\",\r\n    \"kpn_ticket_number\":\"{{KPNTask}}\",\r\n    \"customer_reference_number\":\"{{CustTask}}\",\r\n    \"close_notes\":\"Some notes why task is closed\"\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Task",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Task"
					]
				},
				"description": "This is an example of a PATCH action to the /Task operation. The task will beplaced in the Closed Complete state in KPN ServiceNow\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication."
			},
			"response": []
		},
		{
			"name": "Task - Closed Incomplete",
			"request": {
				"method": "PATCH",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"action\":\"Closed Incomplete\",\r\n    \"kpn_ticket_number\":\"{{KPNTask}}\",\r\n    \"customer_reference_number\":\"{{CustTask}}\",\r\n    \"close_notes\":\"Some notes why task is closed\"\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Task",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Task"
					]
				},
				"description": "This is an example of a PATCH action to the /Task operation. The task will beplaced in the Closed Incomplete state in KPN ServiceNow\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication."
			},
			"response": []
		},
		{
			"name": "Task - Closed Skipped",
			"request": {
				"method": "PATCH",
				"header": [],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"action\":\"Closed Skipped\",\r\n    \"kpn_ticket_number\":\"{{KPNTask}}\",\r\n    \"customer_reference_number\":\"{{CustTask}}\",\r\n    \"close_notes\":\"Some notes why task is closed\"\r\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "https://api-prd.kpn.com/network/kpn/servicenow/Task",
					"protocol": "https",
					"host": [
						"api-prd",
						"kpn",
						"com"
					],
					"path": [
						"network",
						"kpn",
						"servicenow",
						"Task"
					]
				},
				"description": "This is an example of a PATCH action to the /Task operation. The task will beplaced in the Closed Skipped state in KPN ServiceNow\n\nThe retrieved oAuth token from the GetAccessToken request is used for authentication."
			},
			"response": []
		}
	],
	"auth": {
		"type": "bearer",
		"bearer": [
			{
				"key": "token",
				"value": "{{PortalToken}}",
				"type": "string"
			}
		]
	},
	"event": [
		{
			"listen": "prerequest",
			"script": {
				"type": "text/javascript",
				"packages": {},
				"exec": [
					""
				]
			}
		},
		{
			"listen": "test",
			"script": {
				"type": "text/javascript",
				"packages": {},
				"exec": [
					""
				]
			}
		}
	],
	"variable": [
		{
			"key": "PortalToken",
			"value": "",
			"type": "string"
		},
		{
			"key": "Date",
			"value": ""
		},
		{
			"key": "KPNTicket",
			"value": ""
		},
		{
			"key": "CustTicket",
			"value": ""
		},
		{
			"key": "KPNTask",
			"value": "",
			"type": "string"
		},
		{
			"key": "CustTask",
			"value": "",
			"type": "string"
		},
		{
			"key": "reference_counter",
			"value": "",
			"type": "string"
		},
		{
			"key": "refStart",
			"value": "<<YOUR START>>",
			"type": "string"
		},
		{
			"key": "TransactionId",
			"value": "",
			"type": "string"
		}
	]
}