public async Task <IActionResult> GetCustomers(CustomersParametersModel parameters) { if (parameters.Limit < Constants.Configurations.MinLimit || parameters.Limit > Constants.Configurations.MaxLimit) { return(Error(HttpStatusCode.BadRequest, "limit", "Invalid limit parameter")); } if (parameters.Page < Constants.Configurations.DefaultPageValue) { return(Error(HttpStatusCode.BadRequest, "page", "Invalid request parameters")); } var allCustomers = await _customerApiService.GetCustomersDtosAsync(parameters.CreatedAtMin, parameters.CreatedAtMax, parameters.Limit, parameters.Page, parameters.SinceId); var customersRootObject = new CustomersRootObject { Customers = allCustomers }; var json = JsonFieldsSerializer.Serialize(customersRootObject, parameters.Fields); return(new RawJsonActionResult(json)); }