Inheritance: CallfireApiClient.Api.Common.Model.Request.FindRequest
        public void CrudOperations()
        {
            var textAutoReply = new TextAutoReply()
            {
                Number = "12132041238",
                Message = "test message",
                Match = "test match"
            };
            var resourceId = Client.TextAutoRepliesApi.Create(textAutoReply);
            Assert.NotNull(resourceId.Id);

            var request = new FindTextAutoRepliesRequest { Number = "12132041238" };
            var textAutoReplies = Client.TextAutoRepliesApi.Find(request);
            Console.WriteLine(textAutoReplies);

            Assert.True(textAutoReplies.TotalCount > 0);
            Assert.AreEqual(textAutoReplies.Items.Count, textAutoReplies.TotalCount);
            var savedTextAutoReply = textAutoReplies.Items[textAutoReplies.Items.Count - 1];
            Assert.AreEqual(resourceId.Id, savedTextAutoReply.Id);
            Assert.AreEqual(textAutoReply.Number, savedTextAutoReply.Number);
            Assert.AreEqual(textAutoReply.Message, savedTextAutoReply.Message);
            Assert.AreEqual(textAutoReply.Match, savedTextAutoReply.Match);

            savedTextAutoReply = Client.TextAutoRepliesApi.Get(resourceId.Id, "number,message");
            Console.WriteLine(savedTextAutoReply);

            Assert.IsNull(savedTextAutoReply.Id);
            Assert.IsNull(savedTextAutoReply.Keyword);
            Assert.AreEqual(textAutoReply.Number, savedTextAutoReply.Number);
            Assert.AreEqual(textAutoReply.Message, savedTextAutoReply.Message);

            Client.TextAutoRepliesApi.Delete(resourceId.Id);

            Assert.Throws<ResourceNotFoundException>(() => Client.TextAutoRepliesApi.Get((long)resourceId.Id));
        }
        public void Find()
        {
            var expectedJson = GetJsonPayload("/campaigns/textAutoRepliesApi/response/findTextAutoReplies.json");
            var restRequest = MockRestResponse(expectedJson);

            var request = new FindTextAutoRepliesRequest
            {
                Number = "1234567890",
                Limit = 5,
                Offset = 0
            };
            var autoReplies = Client.TextAutoRepliesApi.Find(request);
            Assert.That(Serializer.Serialize(autoReplies), Is.EqualTo(expectedJson));

            Assert.AreEqual(Method.GET, restRequest.Value.Method);
            var requestBodyParam = restRequest.Value.Parameters.FirstOrDefault(p => p.Type == ParameterType.RequestBody);
            Assert.IsNull(requestBodyParam);
            Assert.That(restRequest.Value.Parameters, Has.Some.Matches<Parameter>(p => p.Name.Equals("limit") && p.Value.Equals("5")));
            Assert.That(restRequest.Value.Parameters, Has.Some.Matches<Parameter>(p => p.Name.Equals("offset") && p.Value.Equals("0")));
            Assert.That(restRequest.Value.Parameters, Has.Some.Matches<Parameter>(p => p.Name.Equals("number") && p.Value.Equals("1234567890")));
        }
 /// <summary>
 /// Query for text auto replies using optional number
 /// </summary>
 /// <param name="request">request object with filtering options</param>
 /// <returns>page with TextAutoReply objects</returns>
 /// <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 Page<TextAutoReply> Find(FindTextAutoRepliesRequest request)
 {
     return Client.Get<Page<TextAutoReply>>(TEXT_AUTO_REPLIES_PATH, request);
 }