Microsoft Dynamics Business Central

This page contains importable postman collection files which are ready to import into Postman for instant testing. This is in JSON format, please copy and save the text in JSON format before importing in Postman.

You'll need to provide the following variables in your postman collection:

VariableDescriptionExample
API_VERSIONRepresents the version of the Alloy Unified API you intend to make calls to. API versions are dated and new versions are released quarterly (in March, June, September, and December).2023-12
connectionIdThe Id of the connection. Call the GET List Connections endpoint to find a connectionId.
apiKeyYour API key. Never share this with anyone.

{
	"info": {
		"_postman_id": "1bc96244-5679-4f0c-8fc9-090ec28e7798",
		"name": "MS Dynamics CRM UAPI",
		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
		"_exporter_id": "19112139",
		"_collection_link": "https://planetary-crater-495600.postman.co/workspace/Alloy-One-New~68c3616b-3ff3-473b-ba08-af2e97a835e5/collection/19112139-1bc96244-5679-4f0c-8fc9-090ec28e7798?action=share&source=collection_link&creator=19112139"
	},
	"item": [
		{
			"name": "Setup UAPI Data",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;\r",
							"\r",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");\r",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;\r",
							" \r",
							"if (contentTypeHeaderExists) {\r",
							"    tests[\"Content-Type is application/json\"] = \r",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");\r",
							"}\r",
							"\r",
							"\r",
							"\r",
							"var jsonData = pm.response.json();\r",
							"console.log(jsonData)\r",
							"let msDynamicsCRMCredentialId = jsonData.msDynamicsCRMCredentialId;\r",
							"postman.setEnvironmentVariable(\"msDynamicsCRMCredentialId\", msDynamicsCRMCredentialId);"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"request": {
				"auth": {
					"type": "noauth"
				},
				"method": "GET",
				"header": [
					{
						"key": "X-Alloy-Auth",
						"value": "1234567890abcdefghijklmnopqrstuvwxyz",
						"type": "text"
					}
				],
				"url": {
					"raw": "{{api_base_url}}/api/testHelpers/setupUapi/MSDYNAMICSCRM",
					"host": [
						"{{api_base_url}}"
					],
					"path": [
						"api",
						"testHelpers",
						"setupUapi",
						"MSDYNAMICSCRM"
					]
				}
			},
			"response": []
		},
		{
			"name": "Create Account",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] accounts is created correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    console.log(jsonData);",
							"    pm.expect(jsonData).to.have.property('account');",
							"    pm.expect(jsonData.account).to.not.be.null;",
							"    pm.expect(jsonData.account).to.have.property('website');",
							"    pm.expect(jsonData.account).to.have.property('industry');",
							"    pm.expect(jsonData.account).to.have.property('addresses');",
							"    pm.expect(jsonData.account).to.have.property('phoneNumbers');",
							"    pm.expect(jsonData.account).to.have.property('remoteId');",
							"    pm.expect(jsonData.account).to.have.property('lastActivityAt');",
							"    pm.expect(jsonData.account).to.have.property('accountOwner');",
							"    pm.expect(jsonData.account).to.have.property('accountName');",
							"    pm.expect(jsonData.account).to.have.property('numberOfEmployees');",
							"    pm.expect(jsonData.account).to.have.property('description');",
							"    pm.expect(jsonData.account).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.account).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.account).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.account).to.have.property('createdAt');",
							"    pm.expect(jsonData.account).to.have.property('updatedAt');",
							"    pm.expect(jsonData.account).to.have.property('id');",
							"});",
							"",
							"",
							"var jsonData = pm.response.json();",
							"let accountId = jsonData.account.id;",
							"postman.setEnvironmentVariable(\"accountId\", accountId);"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "POST",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "{\n   \"accountName\": \"Alloy-{{$guid}}\"\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/accounts?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"accounts"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "List Accounts Filters",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"[ZohoCRM] response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"accounts are listed correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('accounts');",
							"    pm.expect(jsonData.accounts[0]).to.not.be.null;",
							"    pm.expect(jsonData.accounts[0]).to.have.property('website');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('industry');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('addresses');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('phoneNumbers');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('remoteId');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('lastActivityAt');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('accountOwner');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('accountName');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('numberOfEmployees');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('description');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('createdAt');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('updatedAt');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/accounts?credentialId={{msDynamicsCRMCredentialId}}&accountNameContains=Alloy",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"accounts"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						},
						{
							"key": "accountNameContains",
							"value": "Alloy"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Update Account",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] accounts is updated correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('account');",
							"    pm.expect(jsonData.account).to.not.be.null;",
							"    pm.expect(jsonData.account).to.have.property('website');",
							"    pm.expect(jsonData.account).to.have.property('industry');",
							"    pm.expect(jsonData.account).to.have.property('addresses');",
							"    pm.expect(jsonData.account).to.have.property('phoneNumbers');",
							"    pm.expect(jsonData.account).to.have.property('remoteId');",
							"    pm.expect(jsonData.account).to.have.property('lastActivityAt');",
							"    pm.expect(jsonData.account).to.have.property('accountOwner');",
							"    pm.expect(jsonData.account).to.have.property('accountName');",
							"    pm.expect(jsonData.account).to.have.property('numberOfEmployees');",
							"    pm.expect(jsonData.account).to.have.property('description');",
							"    pm.expect(jsonData.account).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.account).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.account).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.account).to.have.property('createdAt');",
							"    pm.expect(jsonData.account).to.have.property('updatedAt');",
							"    pm.expect(jsonData.account).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "PUT",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "{\n    \"description\": \"{{$randomJobDescriptor}}\",\n    \"website\": \"{{$randomDomainName}}\"\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/accounts/{{accountId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"accounts",
						"{{accountId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "List Accounts",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"[ZohoCRM] response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"accounts are listed correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('accounts');",
							"    pm.expect(jsonData.accounts[0]).to.not.be.null;",
							"    pm.expect(jsonData.accounts[0]).to.have.property('website');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('industry');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('addresses');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('phoneNumbers');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('remoteId');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('lastActivityAt');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('accountOwner');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('accountName');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('numberOfEmployees');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('description');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('createdAt');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('updatedAt');",
							"    pm.expect(jsonData.accounts[0]).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/accounts?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"accounts"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Get Account Count",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] accounts count is returned\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('count');",
							"    pm.expect(jsonData.count).to.be.a(\"number\");",
							"});",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/accounts/count?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"accounts",
						"count"
					],
					"query": [
						{
							"key": "page",
							"value": "eyJpdGVtSWQiOnsiUyI6IjEyMCJ9LCJkYXRhQnVja2V0Ijp7IlMiOiI2MmIyYWM5ZGI4NWYzMjAwMTQzMDU5Y2YvYWNjb3VudCJ9fQ==",
							"disabled": true
						},
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Get Account",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"[ZohoCRM] response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] accounts is returned correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('account');",
							"    pm.expect(jsonData.account).to.not.be.null;",
							"    pm.expect(jsonData.account).to.have.property('website');",
							"    pm.expect(jsonData.account).to.have.property('industry');",
							"    pm.expect(jsonData.account).to.have.property('addresses');",
							"    pm.expect(jsonData.account).to.have.property('phoneNumbers');",
							"    pm.expect(jsonData.account).to.have.property('remoteId');",
							"    pm.expect(jsonData.account).to.have.property('lastActivityAt');",
							"    pm.expect(jsonData.account).to.have.property('accountOwner');",
							"    pm.expect(jsonData.account).to.have.property('accountName');",
							"    pm.expect(jsonData.account).to.have.property('numberOfEmployees');",
							"    pm.expect(jsonData.account).to.have.property('description');",
							"    pm.expect(jsonData.account).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.account).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.account).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.account).to.have.property('createdAt');",
							"    pm.expect(jsonData.account).to.have.property('updatedAt');",
							"    pm.expect(jsonData.account).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/accounts/{{accountId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"accounts",
						"{{accountId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Delete Account",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] account deleted correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('message');",
							"    pm.expect(jsonData.message).to.be.a(\"string\")",
							"});",
							"",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "DELETE",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/accounts/{{accountId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"accounts",
						"{{accountId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Create Contact",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] contact is created correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('contact');",
							"    pm.expect(jsonData.contact).to.not.be.null;",
							"    pm.expect(jsonData.contact).to.have.property('remoteId');",
							"    pm.expect(jsonData.contact).to.have.property('lastActivityAt');",
							"    pm.expect(jsonData.contact).to.have.property('emailAddresses');",
							"    pm.expect(jsonData.contact.emailAddresses).is.a('array');",
							"    pm.expect(jsonData.contact).to.have.property('lastName');",
							"    pm.expect(jsonData.contact).to.have.property('account');",
							"    pm.expect(jsonData.contact).to.have.property('addresses');",
							"    pm.expect(jsonData.contact).to.have.property('phoneNumbers');",
							"    pm.expect(jsonData.contact).to.have.property('firstName');",
							"    pm.expect(jsonData.contact).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.contact).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.contact).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.contact).to.have.property('createdAt');",
							"    pm.expect(jsonData.contact).to.have.property('updatedAt');",
							"    pm.expect(jsonData.contact).to.have.property('id');",
							"});",
							"",
							"var jsonData = pm.response.json();",
							"let contactId = jsonData.contact.id;",
							"let contactRemoteId = jsonData.contact.remoteId;",
							"postman.setEnvironmentVariable(\"contactRemoteId\", contactRemoteId);",
							"postman.setEnvironmentVariable(\"contactId\", contactId);"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "POST",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "{\n    \"firstName\": \"Alloy-{{$guid}}\",\n    \"lastName\": \"Test-{{$guid}}\"\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/contacts/?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"contacts",
						""
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "List Contacts Filters",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] contacts are listed correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('contacts');",
							"    pm.expect(jsonData.contacts[0]).to.not.be.null;",
							"    pm.expect(jsonData.contacts[0]).to.have.property('remoteId');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('lastActivityAt');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('emailAddresses');",
							"    pm.expect(jsonData.contacts[0].emailAddresses).is.a('array');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('lastName');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('account');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('addresses');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('phoneNumbers');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('firstName');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('createdAt');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('updatedAt');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/contacts/?credentialId={{msDynamicsCRMCredentialId}}&firstNameContains=Alloy&lastNameContains=Test",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"contacts",
						""
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						},
						{
							"key": "firstNameContains",
							"value": "Alloy"
						},
						{
							"key": "lastNameContains",
							"value": "Test"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Update Contact",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] contact is updated correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('contact');",
							"    pm.expect(jsonData.contact).to.not.be.null;",
							"    pm.expect(jsonData.contact).to.have.property('remoteId');",
							"    pm.expect(jsonData.contact).to.have.property('lastActivityAt');",
							"    pm.expect(jsonData.contact).to.have.property('emailAddresses');",
							"    pm.expect(jsonData.contact.emailAddresses).is.a('array');",
							"    pm.expect(jsonData.contact).to.have.property('lastName');",
							"    pm.expect(jsonData.contact).to.have.property('account');",
							"    pm.expect(jsonData.contact).to.have.property('addresses');",
							"    pm.expect(jsonData.contact).to.have.property('phoneNumbers');",
							"    pm.expect(jsonData.contact).to.have.property('firstName');",
							"    pm.expect(jsonData.contact).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.contact).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.contact).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.contact).to.have.property('createdAt');",
							"    pm.expect(jsonData.contact).to.have.property('updatedAt');",
							"    pm.expect(jsonData.contact).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "PUT",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "{\n    \"addresses\": [\n        {\n            \"country\": \"United States\",\n            \"street1\": \"6649 N Blue Gum St\",\n            \"state\": \"LA\",\n            \"city\": \"New Orleans\",\n            \"addressType\": \"address1\",\n            \"postalCode\": \"70116\"\n        }\n    ]\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/contacts/{{contactId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"contacts",
						"{{contactId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "List Contacts",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] contacts are listed correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('contacts');",
							"    pm.expect(jsonData.contacts[0]).to.not.be.null;",
							"    pm.expect(jsonData.contacts[0]).to.have.property('remoteId');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('lastActivityAt');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('emailAddresses');",
							"    pm.expect(jsonData.contacts[0].emailAddresses).is.a('array');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('lastName');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('account');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('addresses');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('phoneNumbers');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('firstName');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('createdAt');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('updatedAt');",
							"    pm.expect(jsonData.contacts[0]).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/contacts/?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"contacts",
						""
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Get Contact Count",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] contacts count is returned\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('count');",
							"    pm.expect(jsonData.count).to.be.a(\"number\");",
							"});",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/contacts/count?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"contacts",
						"count"
					],
					"query": [
						{
							"key": "page",
							"value": "eyJpdGVtSWQiOnsiUyI6IjEyMCJ9LCJkYXRhQnVja2V0Ijp7IlMiOiI2MmIyYWM5ZGI4NWYzMjAwMTQzMDU5Y2YvYWNjb3VudCJ9fQ==",
							"disabled": true
						},
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Get Contact",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] contact is returned correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('contact');",
							"    pm.expect(jsonData.contact).to.not.be.null;",
							"    pm.expect(jsonData.contact).to.have.property('remoteId');",
							"    pm.expect(jsonData.contact).to.have.property('lastActivityAt');",
							"    pm.expect(jsonData.contact).to.have.property('emailAddresses');",
							"    pm.expect(jsonData.contact.emailAddresses).is.a('array');",
							"    pm.expect(jsonData.contact).to.have.property('lastName');",
							"    pm.expect(jsonData.contact).to.have.property('account');",
							"    pm.expect(jsonData.contact).to.have.property('addresses');",
							"    pm.expect(jsonData.contact).to.have.property('phoneNumbers');",
							"    pm.expect(jsonData.contact).to.have.property('firstName');",
							"    pm.expect(jsonData.contact).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.contact).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.contact).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.contact).to.have.property('createdAt');",
							"    pm.expect(jsonData.contact).to.have.property('updatedAt');",
							"    pm.expect(jsonData.contact).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/contacts/{{contactId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"contacts",
						"{{contactId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Delete Contact",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] contact deleted correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('message');",
							"    pm.expect(jsonData.message).to.be.a(\"string\")",
							"});",
							"",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "DELETE",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/contacts/{{contactId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"contacts",
						"{{contactId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Create Lead",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] lead is created correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('lead');",
							"    pm.expect(jsonData.lead).to.not.be.null;",
							"    pm.expect(jsonData.lead).to.have.property('lastName');",
							"    pm.expect(jsonData.lead).to.have.property('leadOwner');",
							"    pm.expect(jsonData.lead).to.have.property('addresses');",
							"    pm.expect(jsonData.lead).to.have.property('phoneNumbers');",
							"    pm.expect(jsonData.lead).to.have.property('leadTitle');",
							"    pm.expect(jsonData.lead).to.have.property('firstName');",
							"    pm.expect(jsonData.lead).to.have.property('leadSource');",
							"    pm.expect(jsonData.lead).to.have.property('remoteId');",
							"    pm.expect(jsonData.lead).to.have.property('company');",
							"    pm.expect(jsonData.lead).to.have.property('emailAddresses');",
							"    pm.expect(jsonData.lead).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.lead).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.lead).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.lead).to.have.property('createdAt');",
							"    pm.expect(jsonData.lead).to.have.property('updatedAt');",
							"    pm.expect(jsonData.lead).to.have.property('id');",
							"});",
							"",
							"var jsonData = pm.response.json();",
							"let leadId = jsonData.lead.id;",
							"postman.setEnvironmentVariable(\"leadId\", leadId);"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "POST",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "{\n    \"lastName\": \"Alloy-{{$guid}}\",\n    \"company\": \"Alloy-{{$guid}}\"\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/leads?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"leads"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "List Leads Filters",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] leads are listed correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('leads');",
							"    pm.expect(jsonData.leads[0]).to.not.be.null;",
							"    pm.expect(jsonData.leads[0]).to.have.property('lastName');",
							"    pm.expect(jsonData.leads[0]).to.have.property('leadOwner');",
							"    pm.expect(jsonData.leads[0]).to.have.property('addresses');",
							"    pm.expect(jsonData.leads[0]).to.have.property('phoneNumbers');",
							"    pm.expect(jsonData.leads[0]).to.have.property('leadTitle');",
							"    pm.expect(jsonData.leads[0]).to.have.property('firstName');",
							"    pm.expect(jsonData.leads[0]).to.have.property('leadSource');",
							"    pm.expect(jsonData.leads[0]).to.have.property('remoteId');",
							"    pm.expect(jsonData.leads[0]).to.have.property('company');",
							"    pm.expect(jsonData.leads[0]).to.have.property('emailAddresses');",
							"    pm.expect(jsonData.leads[0]).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.leads[0]).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.leads[0]).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.leads[0]).to.have.property('createdAt');",
							"    pm.expect(jsonData.leads[0]).to.have.property('updatedAt');",
							"    pm.expect(jsonData.leads[0]).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/leads?credentialId={{msDynamicsCRMCredentialId}}&lastNameContains=Alloy&companyContains=Alloy",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"leads"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						},
						{
							"key": "lastNameContains",
							"value": "Alloy"
						},
						{
							"key": "companyContains",
							"value": "Alloy"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Update Lead",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] leads are updated correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('lead');",
							"    pm.expect(jsonData.lead).to.not.be.null;",
							"    pm.expect(jsonData.lead).to.have.property('lastName');",
							"    pm.expect(jsonData.lead).to.have.property('leadOwner');",
							"    pm.expect(jsonData.lead).to.have.property('addresses');",
							"    pm.expect(jsonData.lead).to.have.property('phoneNumbers');",
							"    pm.expect(jsonData.lead).to.have.property('leadTitle');",
							"    pm.expect(jsonData.lead).to.have.property('firstName');",
							"    pm.expect(jsonData.lead).to.have.property('leadSource');",
							"    pm.expect(jsonData.lead).to.have.property('remoteId');",
							"    pm.expect(jsonData.lead).to.have.property('company');",
							"    pm.expect(jsonData.lead).to.have.property('emailAddresses');",
							"    pm.expect(jsonData.lead).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.lead).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.lead).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.lead).to.have.property('createdAt');",
							"    pm.expect(jsonData.lead).to.have.property('updatedAt');",
							"    pm.expect(jsonData.lead).to.have.property('id');",
							"});"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "PUT",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "{\n    \"addresses\": [\n        {\n            \"country\": \"United States\",\n            \"street1\": \"6649 N Blue Gum St\",\n            \"state\": \"LA\",\n            \"city\": \"New Orleans\",\n            \"addressType\": \"address1\",\n            \"postalCode\": \"70116\"\n        }\n    ]\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/leads/{{leadId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"leads",
						"{{leadId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "List Leads",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] leads are listed correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('leads');",
							"    pm.expect(jsonData.leads[0]).to.not.be.null;",
							"    pm.expect(jsonData.leads[0]).to.have.property('lastName');",
							"    pm.expect(jsonData.leads[0]).to.have.property('leadOwner');",
							"    pm.expect(jsonData.leads[0]).to.have.property('addresses');",
							"    pm.expect(jsonData.leads[0]).to.have.property('phoneNumbers');",
							"    pm.expect(jsonData.leads[0]).to.have.property('leadTitle');",
							"    pm.expect(jsonData.leads[0]).to.have.property('firstName');",
							"    pm.expect(jsonData.leads[0]).to.have.property('leadSource');",
							"    pm.expect(jsonData.leads[0]).to.have.property('remoteId');",
							"    pm.expect(jsonData.leads[0]).to.have.property('company');",
							"    pm.expect(jsonData.leads[0]).to.have.property('emailAddresses');",
							"    pm.expect(jsonData.leads[0]).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.leads[0]).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.leads[0]).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.leads[0]).to.have.property('createdAt');",
							"    pm.expect(jsonData.leads[0]).to.have.property('updatedAt');",
							"    pm.expect(jsonData.leads[0]).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/leads?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"leads"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Get Lead Count",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] lead count is returned\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('count');",
							"    pm.expect(jsonData.count).to.be.a(\"number\");",
							"});",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/leads/count?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"leads",
						"count"
					],
					"query": [
						{
							"key": "page",
							"value": "eyJpdGVtSWQiOnsiUyI6IjEyMCJ9LCJkYXRhQnVja2V0Ijp7IlMiOiI2MmIyYWM5ZGI4NWYzMjAwMTQzMDU5Y2YvYWNjb3VudCJ9fQ==",
							"disabled": true
						},
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Get Lead",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] lead is returned correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('lead');",
							"    pm.expect(jsonData.lead).to.not.be.null;",
							"    pm.expect(jsonData.lead).to.have.property('lastName');",
							"    pm.expect(jsonData.lead).to.have.property('leadOwner');",
							"    pm.expect(jsonData.lead).to.have.property('addresses');",
							"    pm.expect(jsonData.lead).to.have.property('phoneNumbers');",
							"    pm.expect(jsonData.lead).to.have.property('leadTitle');",
							"    pm.expect(jsonData.lead).to.have.property('firstName');",
							"    pm.expect(jsonData.lead).to.have.property('leadSource');",
							"    pm.expect(jsonData.lead).to.have.property('remoteId');",
							"    pm.expect(jsonData.lead).to.have.property('company');",
							"    pm.expect(jsonData.lead).to.have.property('emailAddresses');",
							"    pm.expect(jsonData.lead).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.lead).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.lead).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.lead).to.have.property('createdAt');",
							"    pm.expect(jsonData.lead).to.have.property('updatedAt');",
							"    pm.expect(jsonData.lead).to.have.property('id');",
							"});"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/leads/{{leadId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"leads",
						"{{leadId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Delete Lead",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] lead deleted correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('message');",
							"    pm.expect(jsonData.message).to.be.a(\"string\")",
							"});",
							"",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "DELETE",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/leads/{{leadId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"leads",
						"{{leadId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Create Task",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] task is created correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('task');",
							"    pm.expect(jsonData.task).to.not.be.null;",
							"    pm.expect(jsonData.task).to.have.property('remoteId');",
							"    pm.expect(jsonData.task).to.have.property('taskContent');",
							"    pm.expect(jsonData.task).to.have.property('taskSubject');",
							"    pm.expect(jsonData.task).to.have.property('taskStatus');",
							"    pm.expect(jsonData.task).to.have.property('dueDate');",
							"    pm.expect(jsonData.task).to.have.property('taskOwner');",
							"    pm.expect(jsonData.task).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.task).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.task).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.task).to.have.property('createdAt');",
							"    pm.expect(jsonData.task).to.have.property('updatedAt');",
							"    pm.expect(jsonData.task).to.have.property('id');",
							"});",
							"",
							"var jsonData = pm.response.json();",
							"let taskId = jsonData.task.id;",
							"postman.setEnvironmentVariable(\"taskId\", taskId);"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "POST",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "{\n    \"taskSubject\": \"Alloy-{{$guid}}\"\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/tasks?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"tasks"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "List Tasks Filters",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] tasks are listed correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('tasks');",
							"    pm.expect(jsonData.tasks[0]).to.not.be.null;",
							"    pm.expect(jsonData.tasks[0]).to.have.property('remoteId');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('taskContent');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('taskSubject');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('taskStatus');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('dueDate');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('taskOwner');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('createdAt');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('updatedAt');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/tasks?credentialId={{msDynamicsCRMCredentialId}}&taskSubjectContains=Alloy",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"tasks"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						},
						{
							"key": "taskSubjectContains",
							"value": "Alloy"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Update Task",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] task is updated correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('task');",
							"    pm.expect(jsonData.task).to.not.be.null;",
							"    pm.expect(jsonData.task).to.have.property('remoteId');",
							"    pm.expect(jsonData.task).to.have.property('taskContent');",
							"    pm.expect(jsonData.task).to.have.property('taskSubject');",
							"    pm.expect(jsonData.task).to.have.property('taskStatus');",
							"    pm.expect(jsonData.task).to.have.property('dueDate');",
							"    pm.expect(jsonData.task).to.have.property('taskOwner');",
							"    pm.expect(jsonData.task).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.task).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.task).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.task).to.have.property('createdAt');",
							"    pm.expect(jsonData.task).to.have.property('updatedAt');",
							"    pm.expect(jsonData.task).to.have.property('id');",
							"});"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "PUT",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "{\n    \"taskContent\": \"{{$randomLoremSentence}}\"\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/tasks/{{taskId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"tasks",
						"{{taskId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "List Tasks",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] tasks are listed correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('tasks');",
							"    pm.expect(jsonData.tasks[0]).to.not.be.null;",
							"    pm.expect(jsonData.tasks[0]).to.have.property('remoteId');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('taskContent');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('taskSubject');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('taskStatus');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('dueDate');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('taskOwner');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('createdAt');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('updatedAt');",
							"    pm.expect(jsonData.tasks[0]).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/tasks?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"tasks"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Get Task Count",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] task count is returned\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('count');",
							"    pm.expect(jsonData.count).to.be.a(\"number\");",
							"});",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/tasks/count?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"tasks",
						"count"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Get Task",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] tasks is returned correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('task');",
							"    pm.expect(jsonData.task).to.not.be.null;",
							"    pm.expect(jsonData.task).to.have.property('remoteId');",
							"    pm.expect(jsonData.task).to.have.property('taskContent');",
							"    pm.expect(jsonData.task).to.have.property('taskSubject');",
							"    pm.expect(jsonData.task).to.have.property('taskStatus');",
							"    pm.expect(jsonData.task).to.have.property('dueDate');",
							"    pm.expect(jsonData.task).to.have.property('taskOwner');",
							"    pm.expect(jsonData.task).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.task).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.task).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.task).to.have.property('createdAt');",
							"    pm.expect(jsonData.task).to.have.property('updatedAt');",
							"    pm.expect(jsonData.task).to.have.property('id');",
							"});"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/tasks/{{taskId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"tasks",
						"{{taskId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Delete Task",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] task deleted correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('message');",
							"    pm.expect(jsonData.message).to.be.a(\"string\")",
							"});",
							"",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "DELETE",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/tasks/{{taskId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"tasks",
						"{{taskId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Create User",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] users is created correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('user');",
							"    pm.expect(jsonData.user).to.not.be.null;",
							"    pm.expect(jsonData.user).to.have.property('remoteId');",
							"    pm.expect(jsonData.user).to.have.property('userLastName');",
							"    pm.expect(jsonData.user).to.have.property('isActive');",
							"    pm.expect(jsonData.user).to.have.property('userEmail');",
							"    pm.expect(jsonData.user).to.have.property('userFirstName');",
							"    pm.expect(jsonData.user).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.user).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.user).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.user).to.have.property('createdAt');",
							"    pm.expect(jsonData.user).to.have.property('updatedAt');",
							"    pm.expect(jsonData.user).to.have.property('id');",
							"});",
							"",
							"var jsonData = pm.response.json();",
							"let userId = jsonData.user.id;",
							"postman.setEnvironmentVariable(\"userId\", userId);"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "POST",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "{\n    \"userFirstName\": \"Alloy-{{$guid}}\",\n    \"userLastName\": \"Test-{{$guid}}\",\n    \"userEmail\": \"{{$guid}}@runalloy.com\"\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/users?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"users"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "List Users Filters",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] users are listed correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('users');",
							"    pm.expect(jsonData.users[0]).to.not.be.null;",
							"    pm.expect(jsonData.users[0]).to.have.property('remoteId');",
							"    pm.expect(jsonData.users[0]).to.have.property('userLastName');",
							"    pm.expect(jsonData.users[0]).to.have.property('isActive');",
							"    pm.expect(jsonData.users[0]).to.have.property('userEmail');",
							"    pm.expect(jsonData.users[0]).to.have.property('userFirstName');",
							"    pm.expect(jsonData.users[0]).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.users[0]).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.users[0]).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.users[0]).to.have.property('createdAt');",
							"    pm.expect(jsonData.users[0]).to.have.property('updatedAt');",
							"    pm.expect(jsonData.users[0]).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/users?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"users"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						},
						{
							"key": "userFirstNameContains",
							"value": "Alloy",
							"disabled": true
						},
						{
							"key": "userLastNameContains",
							"value": "Test",
							"disabled": true
						},
						{
							"key": "userEmailContains",
							"value": "runalloy",
							"disabled": true
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Update User",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"user is updated correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('user');",
							"    pm.expect(jsonData.user).to.not.be.null;",
							"    pm.expect(jsonData.user).to.have.property('remoteId');",
							"    pm.expect(jsonData.user).to.have.property('userLastName');",
							"    pm.expect(jsonData.user).to.have.property('isActive');",
							"    pm.expect(jsonData.user).to.have.property('userEmail');",
							"    pm.expect(jsonData.user).to.have.property('userFirstName');",
							"    pm.expect(jsonData.user).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.user).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.user).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.user).to.have.property('createdAt');",
							"    pm.expect(jsonData.user).to.have.property('updatedAt');",
							"    pm.expect(jsonData.user).to.have.property('id');",
							"});"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "PUT",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "{\n    \"userFirstName\": \"{{$randomFirstName}}\"\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/users/{{userId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"users",
						"{{userId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "List Users",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] users are listed correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('users');",
							"    pm.expect(jsonData.users[0]).to.not.be.null;",
							"    pm.expect(jsonData.users[0]).to.have.property('remoteId');",
							"    pm.expect(jsonData.users[0]).to.have.property('userLastName');",
							"    pm.expect(jsonData.users[0]).to.have.property('isActive');",
							"    pm.expect(jsonData.users[0]).to.have.property('userEmail');",
							"    pm.expect(jsonData.users[0]).to.have.property('userFirstName');",
							"    pm.expect(jsonData.users[0]).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.users[0]).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.users[0]).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.users[0]).to.have.property('createdAt');",
							"    pm.expect(jsonData.users[0]).to.have.property('updatedAt');",
							"    pm.expect(jsonData.users[0]).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/users?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"users"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Get User Count",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] get user count is returned\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('count');",
							"    pm.expect(jsonData.count).to.be.a(\"number\");",
							"});",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/users/count?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"users",
						"count"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Get User",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] users is returned correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('user');",
							"    pm.expect(jsonData.user).to.not.be.null;",
							"    pm.expect(jsonData.user).to.have.property('remoteId');",
							"    pm.expect(jsonData.user).to.have.property('userLastName');",
							"    pm.expect(jsonData.user).to.have.property('isActive');",
							"    pm.expect(jsonData.user).to.have.property('userEmail');",
							"    pm.expect(jsonData.user).to.have.property('userFirstName');",
							"    pm.expect(jsonData.user).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.user).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.user).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.user).to.have.property('createdAt');",
							"    pm.expect(jsonData.user).to.have.property('updatedAt');",
							"    pm.expect(jsonData.user).to.have.property('id');",
							"});"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/users/{{userId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"users",
						"{{userId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Delete User",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"user deleted correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('message');",
							"    pm.expect(jsonData.message).to.be.a(\"string\")",
							"});",
							"",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "DELETE",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/users/{{userId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"users",
						"{{userId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Create Opportunity",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"opportunity is created correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('opportunity');",
							"    pm.expect(jsonData.opportunity).to.not.be.null;",
							"    pm.expect(jsonData.opportunity).to.have.property('opportunityStage');",
							"    pm.expect(jsonData.opportunity).to.have.property('opportunityOwner');",
							"    pm.expect(jsonData.opportunity).to.have.property('remoteId');",
							"    pm.expect(jsonData.opportunity).to.have.property('opportunityName');",
							"    pm.expect(jsonData.opportunity).to.have.property('lastActivityAt');",
							"    pm.expect(jsonData.opportunity).to.have.property('amount');",
							"    pm.expect(jsonData.opportunity).to.have.property('closeDate');",
							"    pm.expect(jsonData.opportunity).to.have.property('opportunityAccount');",
							"    pm.expect(jsonData.opportunity).to.have.property('opportunityDescription');",
							"    pm.expect(jsonData.opportunity).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.opportunity).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.opportunity).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.opportunity).to.have.property('createdAt');",
							"    pm.expect(jsonData.opportunity).to.have.property('updatedAt');",
							"    pm.expect(jsonData.opportunity).to.have.property('id');",
							"});",
							"",
							"",
							"var jsonData = pm.response.json();",
							"let opportunityId = jsonData.opportunity.id;",
							"postman.setEnvironmentVariable(\"opportunityId\", opportunityId);"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "POST",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "{\n    \"opportunityName\": \"Alloy-{{$guid}}\",\n    \"opportunityStage\": \"qualify\",\n    \"closeDate\": \"2023-11-17\"\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/opportunities?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"opportunities"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "List Opportunities Filters",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] opportunities are listed correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('opportunities');",
							"    pm.expect(jsonData.opportunities[0]).to.not.be.null;",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('opportunityStage');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('opportunityOwner');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('remoteId');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('opportunityName');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('lastActivityAt');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('amount');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('closeDate');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('opportunityAccount');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('opportunityDescription');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('createdAt');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('updatedAt');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/opportunities?credentialId={{msDynamicsCRMCredentialId}}&opportunityNameContains=Alloy&opportunityStageContains=qualify",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"opportunities"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						},
						{
							"key": "opportunityNameContains",
							"value": "Alloy"
						},
						{
							"key": "opportunityStageContains",
							"value": "qualify"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Get Opportunity",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] opportunity is created correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('opportunity');",
							"    pm.expect(jsonData.opportunity).to.not.be.null;",
							"    pm.expect(jsonData.opportunity).to.have.property('opportunityStage');",
							"    pm.expect(jsonData.opportunity).to.have.property('opportunityOwner');",
							"    pm.expect(jsonData.opportunity).to.have.property('remoteId');",
							"    pm.expect(jsonData.opportunity).to.have.property('opportunityName');",
							"    pm.expect(jsonData.opportunity).to.have.property('lastActivityAt');",
							"    pm.expect(jsonData.opportunity).to.have.property('amount');",
							"    pm.expect(jsonData.opportunity).to.have.property('closeDate');",
							"    pm.expect(jsonData.opportunity).to.have.property('opportunityAccount');",
							"    pm.expect(jsonData.opportunity).to.have.property('opportunityDescription');",
							"    pm.expect(jsonData.opportunity).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.opportunity).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.opportunity).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.opportunity).to.have.property('createdAt');",
							"    pm.expect(jsonData.opportunity).to.have.property('updatedAt');",
							"    pm.expect(jsonData.opportunity).to.have.property('id');",
							"});"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/opportunities/{{opportunityId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"opportunities",
						"{{opportunityId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Update Opportunity",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"opportunity is updated correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('opportunity');",
							"    pm.expect(jsonData.opportunity).to.not.be.null;",
							"    pm.expect(jsonData.opportunity).to.have.property('opportunityStage');",
							"    pm.expect(jsonData.opportunity).to.have.property('opportunityOwner');",
							"    pm.expect(jsonData.opportunity).to.have.property('remoteId');",
							"    pm.expect(jsonData.opportunity).to.have.property('opportunityName');",
							"    pm.expect(jsonData.opportunity).to.have.property('lastActivityAt');",
							"    pm.expect(jsonData.opportunity).to.have.property('amount');",
							"    pm.expect(jsonData.opportunity).to.have.property('closeDate');",
							"    pm.expect(jsonData.opportunity).to.have.property('opportunityAccount');",
							"    pm.expect(jsonData.opportunity).to.have.property('opportunityDescription');",
							"    pm.expect(jsonData.opportunity).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.opportunity).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.opportunity).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.opportunity).to.have.property('createdAt');",
							"    pm.expect(jsonData.opportunity).to.have.property('updatedAt');",
							"    pm.expect(jsonData.opportunity).to.have.property('id');",
							"});"
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "PUT",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "{\n    \"opportunityName\": \"{{$randomNoun}}\",\n    \"opportunityStage\": \"develop\",\n    \"closeDate\": \"2023-11-17\"\n}",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/opportunities/{{opportunityId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"opportunities",
						"{{opportunityId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Delete Opportunity",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"opportunity deleted correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    console.log(jsonData);",
							"    pm.expect(jsonData).to.have.property('message');",
							"    pm.expect(jsonData.message).to.be.a(\"string\")",
							"});",
							"",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				}
			},
			"request": {
				"method": "DELETE",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/opportunities/{{opportunityId}}?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"opportunities",
						"{{opportunityId}}"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "List Opportunities",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] opportunities are listed correctly\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('opportunities');",
							"    pm.expect(jsonData.opportunities[0]).to.not.be.null;",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('opportunityStage');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('opportunityOwner');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('remoteId');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('opportunityName');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('lastActivityAt');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('amount');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('closeDate');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('opportunityAccount');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('opportunityDescription');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('remoteCreatedAt');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('remoteUpdatedAt');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('remoteDeleted');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('createdAt');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('updatedAt');",
							"    pm.expect(jsonData.opportunities[0]).to.have.property('id');",
							"});",
							""
						],
						"type": "text/javascript",
						"packages": {}
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/opportunities?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"opportunities"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Get Opportunity Count",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"tests[\"Status code is 200\"] = responseCode.code === 200;",
							"",
							"var contentTypeHeaderExists = responseHeaders.hasOwnProperty(\"Content-Type\");",
							"tests[\"Has Content-Type\"] = contentTypeHeaderExists;",
							" ",
							"if (contentTypeHeaderExists) {",
							"    tests[\"Content-Type is application/json\"] = ",
							"      responseHeaders[\"Content-Type\"].has(\"application/json\");",
							"}",
							"",
							"pm.test(\"response should be okay to process\", function () {",
							"    pm.response.to.have.status(200);",
							"    pm.response.to.not.be.error;",
							"    pm.response.to.not.have.jsonBody(\"error\");",
							"});",
							"",
							"pm.test(\"[ZohoCRM] opportunity count is returned\", function () {",
							"    var jsonData = pm.response.json();",
							"    pm.expect(jsonData).to.have.property('count');",
							"    pm.expect(jsonData.count).to.be.a(\"number\");",
							"});",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {
					"accept": true
				},
				"disableBodyPruning": true
			},
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "Authorization",
						"value": "Bearer {{apiKey}}",
						"type": "text"
					},
					{
						"key": "Accept",
						"value": "application/json",
						"type": "text"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "",
					"options": {
						"raw": {
							"language": "json"
						}
					}
				},
				"url": {
					"raw": "{{URL}}/{{API_VERSION}}/one/crm/opportunities/count?credentialId={{msDynamicsCRMCredentialId}}",
					"host": [
						"{{URL}}"
					],
					"path": [
						"{{API_VERSION}}",
						"one",
						"crm",
						"opportunities",
						"count"
					],
					"query": [
						{
							"key": "credentialId",
							"value": "{{msDynamicsCRMCredentialId}}"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "Remove UAPI Data",
			"request": {
				"auth": {
					"type": "noauth"
				},
				"method": "GET",
				"header": [
					{
						"key": "X-Alloy-Auth",
						"value": "1234567890abcdefghijklmnopqrstuvwxyz",
						"type": "text"
					}
				],
				"url": {
					"raw": "{{api_base_url}}/api/testHelpers/finishUapi/MSDYNAMICSCRM",
					"host": [
						"{{api_base_url}}"
					],
					"path": [
						"api",
						"testHelpers",
						"finishUapi",
						"MSDYNAMICSCRM"
					]
				}
			},
			"response": []
		}
	],
	"auth": {
		"type": "bearer",
		"bearer": [
			{
				"key": "token",
				"value": "{{API_KEY}}",
				"type": "string"
			}
		]
	},
	"event": [
		{
			"listen": "prerequest",
			"script": {
				"type": "text/javascript",
				"exec": [
					""
				]
			}
		},
		{
			"listen": "test",
			"script": {
				"type": "text/javascript",
				"exec": [
					""
				]
			}
		}
	],
	"variable": [
		{
			"key": "URL",
			"value": "http://localhost:1234",
			"type": "string"
		},
		{
			"key": "api_base_url",
			"value": "http://localhost:4040",
			"type": "string"
		}
	]
}