/// <summary> /// Add DNC list items to list /// </summary> /// <param name="request">request object with DNC items to add</param> /// <exception cref="BadRequestException"> in case HTTP response code is 400 - Bad request, the request was formatted improperly.</exception> /// <exception cref="UnauthorizedException"> in case HTTP response code is 401 - Unauthorized, API Key missing or invalid.</exception> /// <exception cref="AccessForbiddenException"> in case HTTP response code is 403 - Forbidden, insufficient permissions.</exception> /// <exception cref="ResourceNotFoundException"> in case HTTP response code is 404 - NOT FOUND, the resource requested does not exist.</exception> /// <exception cref="InternalServerErrorException"> in case HTTP response code is 500 - Internal Server Error.</exception> /// <exception cref="CallfireApiException"> in case HTTP response code is something different from codes listed above.</exception> /// <exception cref="CallfireClientException"> in case error has occurred in client.</exception> public void AddListItems(AddDncListItemsRequest <DoNotContact> request) { Validate.NotBlank(request.ContactListId.ToString(), "request.contactListId cannot be null"); string path = DNC_LISTS_LIST_ITEMS_PATH.ReplaceFirst(ClientConstants.PLACEHOLDER, request.ContactListId.ToString()); Client.Post <object>(path, request.Contacts); }
public void AddDncItems() { string requestJson = GetJsonPayload("/contacts/dncApi/request/addDncItems.json"); var restRequest = MockRestResponse(); var dncs = new List <DoNotContact>(); var dnc = new DoNotContact { ListId = TEST_LONG, Number = TEST_LONG.ToString() }; dncs.Add(dnc); var request = new AddDncListItemsRequest <DoNotContact>(); request.ContactListId = TEST_LONG; request.Contacts = dncs; Client.DncListsApi.AddListItems(request); Assert.AreEqual(Method.POST, restRequest.Value.Method); Assert.That(restRequest.Value.Resource, Is.StringContaining("/" + TEST_LONG)); var requestBodyParam = restRequest.Value.Parameters.FirstOrDefault(p => p.Type == ParameterType.RequestBody); Assert.That(requestBodyParam.Value, Is.EqualTo(requestJson)); }
public void TestDncContactListWithItemsCRUD() { //test add and get dnc list DncList dncList = new DncList { Name = "dncList1" }; ResourceId dncListId = Client.DncListsApi.Create(dncList); DncList created = Client.DncListsApi.Get(dncListId.Id); Assert.AreEqual("dncList1", created.Name); Assert.Greater(created.Created, DateTime.Now.AddMinutes(-3)); //test find dnc list FindDncListsRequest findRequest = new FindDncListsRequest { Name = "dncList1" }; Page <DncList> doNotCallLists = Client.DncListsApi.Find(findRequest); Assert.Greater(doNotCallLists.TotalCount, 0); Console.WriteLine("Page of dnc list:" + doNotCallLists); //test add dnc list items DoNotContact dnc1 = new DoNotContact { Number = "12135543211", Text = true, Call = false }; DoNotContact dnc2 = new DoNotContact { Number = "12135543212", Text = true, Call = false }; DoNotContact dnc3 = new DoNotContact { Number = "12135543213", Text = true, Call = false }; AddDncListItemsRequest <DoNotContact> addItemsRequest = new AddDncListItemsRequest <DoNotContact> { ContactListId = dncListId.Id, Contacts = new List <DoNotContact> { dnc1, dnc2, dnc3 } }; Client.DncListsApi.AddListItems(addItemsRequest); //test get dnc list items GetByIdRequest getItemsRequest = new GetByIdRequest { Id = dncListId.Id }; Page <DoNotContact> dncListItems = Client.DncListsApi.GetListItems(getItemsRequest); IList <DoNotContact> items = dncListItems.Items; Assert.AreEqual(3, items.Count); //test remove dnc list items Client.DncListsApi.RemoveListItem(dncListId.Id, "12135543211"); dncListItems = Client.DncListsApi.GetListItems(getItemsRequest); items = dncListItems.Items; Assert.AreEqual(2, items.Count); Client.DncListsApi.RemoveListItems(dncListId.Id, new List <string> { "12135543212", "12135543213" }); dncListItems = Client.DncListsApi.GetListItems(getItemsRequest); Assert.AreEqual(null, dncListItems.Items); Assert.AreEqual(0, dncListItems.TotalCount); // test delete dnc list Client.DncListsApi.Delete(dncListId.Id); // test get UniversalDncNumber IList <UniversalDnc> universalDncNumber = Client.DncListsApi.GetUniversalDncNumber("12135543212"); Console.WriteLine("universal:" + universalDncNumber); }