/pricing/modeling/price-modeling
1 min
POST
https://app.amberflo.io/pricing/modeling/price-modeling
Body Parameters
- bodycom.amberflo.analysis.modeling.price_modeling.PricingPlansModelingRequest.in
- segmentscom.amberflo.analysis.segmentation.AccountUsageClusterSegment.in[]Description
- meterUsageClusterSegmentscom.amberflo.analysis.segmentation.MeterUsageClusterSegment.in[]Description
- meterApiNamestringDescription
- groupInfopayment.meters.GroupInfo.inDescription
- gimap<string, string>
- usageBucketListcom.amberflo.analysis.segmentation.MeterUsageSegmentBucket.in[]Description
- usagenumberDescription
- amountOfCustomersnumberDescription
- monthlyCustomerTrendnumberDescription
- averageUsagenumberDescription
- customersInSegmentinteger<int32>Description
- productItemConstraintsmap<string, com.amberflo.analysis.modeling.price_modeling.constraint.PricingPlansModelingProductItemConstraint.in>Description
- segmentConstraintscom.amberflo.analysis.modeling.price_modeling.constraint.PricingPlansModelingSegmentConstraint.in[]Description
- flatRatePricecom.amberflo.analysis.modeling.price_modeling.constraint.MinMaxConstraint.inDescription
- minnumberDescription
- maxnumberDescription
- revenuecom.amberflo.analysis.modeling.price_modeling.constraint.MinMaxConstraint.inDescription
- minnumberDescription
- maxnumberDescription
- constraintcom.amberflo.analysis.modeling.price_modeling.constraint.PricingPlansModelingConstraint.inDescription
- amountOfTierscom.amberflo.analysis.modeling.price_modeling.constraint.MinMaxConstraint.inDescription
- minnumberDescription
- maxnumberDescription
- itemUsageRevenueWeightcom.amberflo.analysis.modeling.price_modeling.constraint.MinMaxConstraint.inDescription
- minnumberDescription
- maxnumberDescription
- itemUsageRevenuecom.amberflo.analysis.modeling.price_modeling.constraint.MinMaxConstraint.inDescription
- minnumberDescription
- maxnumberDescription
- flatRateRevenueWeightcom.amberflo.analysis.modeling.price_modeling.constraint.MinMaxConstraint.inDescription
- minnumberDescription
- maxnumberDescription
- flatRateRevenuecom.amberflo.analysis.modeling.price_modeling.constraint.MinMaxConstraint.inDescription
- minnumberDescription
- maxnumberDescription
- revenuecom.amberflo.analysis.modeling.price_modeling.constraint.MinMaxConstraint.inDescription
- minnumberDescription
- maxnumberDescription
- trendTimeRangepayment.common.TimeRange.inDescription
- startTimeInSecondsinteger<int64>
- endTimeInSecondsinteger<int64>
Responses
200
- com.amberflo.analysis.modeling.price_modeling.PricingPlansModelingResponse.out
- recommendationscom.amberflo.analysis.modeling.price_modeling.PricingPlansModelingRecommendation.out[]Description
- segmentPricingPlanscom.amberflo.analysis.modeling.price_modeling.PricingPlansModelingSegmentResponse.out[]Description
- segmentcom.amberflo.analysis.segmentation.AccountUsageClusterSegment.outDescription
- meterUsageClusterSegmentscom.amberflo.analysis.segmentation.MeterUsageClusterSegment.out[]Description
- meterApiNamestringDescription
- groupInfopayment.meters.GroupInfo.outDescription
- gimap<string, string>
- usageBucketListcom.amberflo.analysis.segmentation.MeterUsageSegmentBucket.out[]Description
- usagenumberDescription
- amountOfCustomersnumberDescription
- monthlyCustomerTrendnumberDescription
- averageUsagenumberDescription
- customersInSegmentinteger<int32>Description
- flatRatePricenumberDescription
- meterTierPricesmap<string, object>Description
- meterDimensionTierPricescom.amberflo.analysis.modeling.price_modeling.MeterUsageDimensionTieredPrice.out[]Description
- meterApiNamestringDescription
- groupInfopayment.meters.GroupInfo.outDescription
- gimap<string, string>
- tierPricesmap<string, number>Description
- revenuenumberDescription
- averageRevenuePerCustomernumberDescription
- flatRateRevenuenumberDescription
- flatRateRevenueWeightnumberDescription
- itemUsageRevenuenumberDescription
- itemUsageRevenueWeightnumberDescription
- trendscom.amberflo.analysis.modeling.price_modeling.PricingPlansModelingSegmentTrend.out[]Description
- startTimeInSecondsinteger<int64>Description
- segmentcom.amberflo.analysis.segmentation.AccountUsageClusterSegment.outDescription
- meterUsageClusterSegmentscom.amberflo.analysis.segmentation.MeterUsageClusterSegment.out[]Description
- meterApiNamestringDescription
- groupInfopayment.meters.GroupInfo.outDescription
- Max depth limit reached
- usageBucketListcom.amberflo.analysis.segmentation.MeterUsageSegmentBucket.out[]Description
- Max depth limit reached
- averageUsagenumberDescription
- customersInSegmentinteger<int32>Description
- revenuenumberDescription
- revenuenumberDescription
- averageRevenuePerCustomernumberDescription
- flatRateRevenuenumberDescription
- flatRateRevenueWeightnumberDescription
- itemUsageRevenuenumberDescription
- itemUsageRevenueWeightnumberDescription
curl
curl --location 'https://app.amberflo.io/pricing/modeling/price-modeling' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{
"segments": [
{
"meterUsageClusterSegments": [
{
"meterApiName": "",
"groupInfo": {
"gi": ""
},
"usageBucketList": [
{
"usage": 0,
"amountOfCustomers": 0,
"monthlyCustomerTrend": 0
}
],
"averageUsage": 0
}
],
"customersInSegment": 0
}
],
"productItemConstraints": "",
"segmentConstraints": [
{
"flatRatePrice": {
"min": 0,
"max": 0
},
"revenue": {
"min": 0,
"max": 0
}
}
],
"constraint": {
"amountOfTiers": {
"min": 0,
"max": 0
},
"itemUsageRevenueWeight": {
"min": 0,
"max": 0
},
"itemUsageRevenue": {
"min": 0,
"max": 0
},
"flatRateRevenueWeight": {
"min": 0,
"max": 0
},
"flatRateRevenue": {
"min": 0,
"max": 0
},
"revenue": {
"min": 0,
"max": 0
}
},
"trendTimeRange": {
"startTimeInSeconds": 0,
"endTimeInSeconds": 0
}
}'javascript
var myHeaders = new Headers();
myHeaders.append("Accept", "application/json");
myHeaders.append("Content-Type", "application/json");
var raw = JSON.stringify({
"segments": [
{
"meterUsageClusterSegments": [
{
"meterApiName": "",
"groupInfo": {
"gi": ""
},
"usageBucketList": [
{
"usage": 0,
"amountOfCustomers": 0,
"monthlyCustomerTrend": 0
}
],
"averageUsage": 0
}
],
"customersInSegment": 0
}
],
"productItemConstraints": "",
"segmentConstraints": [
{
"flatRatePrice": {
"min": 0,
"max": 0
},
"revenue": {
"min": 0,
"max": 0
}
}
],
"constraint": {
"amountOfTiers": {
"min": 0,
"max": 0
},
"itemUsageRevenueWeight": {
"min": 0,
"max": 0
},
"itemUsageRevenue": {
"min": 0,
"max": 0
},
"flatRateRevenueWeight": {
"min": 0,
"max": 0
},
"flatRateRevenue": {
"min": 0,
"max": 0
},
"revenue": {
"min": 0,
"max": 0
}
},
"trendTimeRange": {
"startTimeInSeconds": 0,
"endTimeInSeconds": 0
}
});
var requestOptions = {
method: 'POST',
headers: myHeaders,
body: raw,
redirect: 'follow'
};
fetch("https://app.amberflo.io/pricing/modeling/price-modeling", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));ruby
require "uri"
require "json"
require "net/http"
url = URI("https://app.amberflo.io/pricing/modeling/price-modeling")
https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Accept"] = "application/json"
request["Content-Type"] = "application/json"
request.body = JSON.dump({
"segments": [
{
"meterUsageClusterSegments": [
{
"meterApiName": "",
"groupInfo": {
"gi": ""
},
"usageBucketList": [
{
"usage": 0,
"amountOfCustomers": 0,
"monthlyCustomerTrend": 0
}
],
"averageUsage": 0
}
],
"customersInSegment": 0
}
],
"productItemConstraints": "",
"segmentConstraints": [
{
"flatRatePrice": {
"min": 0,
"max": 0
},
"revenue": {
"min": 0,
"max": 0
}
}
],
"constraint": {
"amountOfTiers": {
"min": 0,
"max": 0
},
"itemUsageRevenueWeight": {
"min": 0,
"max": 0
},
"itemUsageRevenue": {
"min": 0,
"max": 0
},
"flatRateRevenueWeight": {
"min": 0,
"max": 0
},
"flatRateRevenue": {
"min": 0,
"max": 0
},
"revenue": {
"min": 0,
"max": 0
}
},
"trendTimeRange": {
"startTimeInSeconds": 0,
"endTimeInSeconds": 0
}
})
response = https.request(request)
puts response.read_body
python
import requests
import json
url = "https://app.amberflo.io/pricing/modeling/price-modeling"
payload = json.dumps({
"segments": [
{
"meterUsageClusterSegments": [
{
"meterApiName": "",
"groupInfo": {
"gi": ""
},
"usageBucketList": [
{
"usage": 0,
"amountOfCustomers": 0,
"monthlyCustomerTrend": 0
}
],
"averageUsage": 0
}
],
"customersInSegment": 0
}
],
"productItemConstraints": "",
"segmentConstraints": [
{
"flatRatePrice": {
"min": 0,
"max": 0
},
"revenue": {
"min": 0,
"max": 0
}
}
],
"constraint": {
"amountOfTiers": {
"min": 0,
"max": 0
},
"itemUsageRevenueWeight": {
"min": 0,
"max": 0
},
"itemUsageRevenue": {
"min": 0,
"max": 0
},
"flatRateRevenueWeight": {
"min": 0,
"max": 0
},
"flatRateRevenue": {
"min": 0,
"max": 0
},
"revenue": {
"min": 0,
"max": 0
}
},
"trendTimeRange": {
"startTimeInSeconds": 0,
"endTimeInSeconds": 0
}
})
headers = {
'Accept': 'application/json',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
200
// Successful request
{
"recommendations": [
{
"segmentPricingPlans": [
{
"segment": {
"meterUsageClusterSegments": [
{
"meterApiName": "",
"groupInfo": {
"gi": ""
},
"usageBucketList": [
{
"usage": 0,
"amountOfCustomers": 0,
"monthlyCustomerTrend": 0
}
],
"averageUsage": 0
}
],
"customersInSegment": ""
},
"flatRatePrice": 0,
"meterTierPrices": "",
"meterDimensionTierPrices": [
{
"meterApiName": "",
"groupInfo": {
"gi": ""
},
"tierPrices": ""
}
],
"revenue": 0,
"averageRevenuePerCustomer": 0,
"flatRateRevenue": 0,
"flatRateRevenueWeight": 0,
"itemUsageRevenue": 0,
"itemUsageRevenueWeight": 0,
"trends": [
{
"startTimeInSeconds": "",
"segment": {
"meterUsageClusterSegments": [
{
"meterApiName": "",
"groupInfo": {
"": ""
},
"usageBucketList": [
{
"": ""
}
],
"averageUsage": 0
}
],
"customersInSegment": ""
},
"revenue": 0
}
]
}
],
"revenue": 0,
"averageRevenuePerCustomer": 0,
"flatRateRevenue": 0,
"flatRateRevenueWeight": 0,
"itemUsageRevenue": 0,
"itemUsageRevenueWeight": 0
}
]
}