public void OrderNumbers() { var request = new NumberPurchaseRequest { Numbers = new List <string> { "12132212289" }, Zipcode = "90401", LocalCount = 2 }; Assert.That(() => Client.OrdersApi.OrderNumbers(request), Throws.TypeOf <BadRequestException>().With.Property("ApiErrorMessage").With.Property("HttpStatusCode").EqualTo(400) .And.Property("Message").StringContaining("no valid credit card on file")); Assert.Throws <ResourceNotFoundException>(() => Client.OrdersApi.GetOrder(123)); }
public void OrderNumbers() { string requestJson = GetJsonPayload("/account/ordersApi/request/orderNumbers.json"); string responseJson = GetJsonPayload("/account/ordersApi/response/orderNumbers.json"); var restRequest = MockRestResponse(responseJson); var request = new NumberPurchaseRequest { LocalCount = 2, Zipcode = "90401" }; var id = Client.OrdersApi.OrderNumbers(request); Assert.That(Serializer.Serialize(id), Is.EqualTo(responseJson)); Assert.AreEqual(Method.POST, restRequest.Value.Method); var requestBodyParam = restRequest.Value.Parameters.FirstOrDefault(p => p.Type == ParameterType.RequestBody); Assert.That(requestBodyParam.Value, Is.EqualTo(requestJson)); }
public static void Main(string[] args) { var client = new CallfireClient("api_login", "api_password"); // request for buying particular numbers var request1 = new NumberPurchaseRequest { Numbers = new List <string> { "12131234567", "12131234568" } }; ResourceId resourceId1 = client.OrdersApi.OrderNumbers(request1); // request for buying numbers in specific area var request2 = new NumberPurchaseRequest { Zipcode = "90401", LocalCount = 2 }; ResourceId resourceId2 = client.OrdersApi.OrderNumbers(request2); }
/// <summary> /// Purchase numbers. There are many ways to purchase a number. Set either tollFreeCount or localCount /// along with some querying fields to purchase numbers by bulk query. Set the list of numbers /// to purchase by list. Available numbers will be purchased using CallFire credits owned by the user. /// Be sure the account has credits before trying to purchase. /// GET /me/account /// </summary> /// <param name="request">request payload</param> /// <returns>ResourceId with id of created order</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 ResourceId OrderNumbers(NumberPurchaseRequest request) { return(Client.Post <ResourceId>(ORDERS_NUMBERS, request)); }