Product Bundles
Create a product bundle
Creates a new product bundle. Product bundles group multiple priced products together so they can be referenced by a single ID in subscriptions, plans, and quotes.
POST
/
bundles
Create a product bundle
curl --request POST \
--url https://api.alguna.io/bundles \
--header 'Alguna-Version: <alguna-version>' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Standard Plan",
"prices": [
{
"billing_direction": "arrears",
"charge_on_contract_start": true,
"fee_type": "fixed",
"product_id": "<string>",
"type": "unit",
"billing_interval": "monthly",
"billing_interval_count": 3,
"billing_interval_unit": "month",
"discount": {
"amount": "<string>",
"duration_unit": "<string>",
"duration_value": 123
},
"display_order": 123,
"expression_pricing_model": {
"charges": [
{
"description": "<string>",
"quantity_expression": "<string>",
"unit_price_expression": "<string>"
}
],
"metric_bindings": [
{
"alias": "api_calls",
"metric_id": "<string>"
}
]
},
"fixed_pricing_model": {
"price_per_unit": "<string>",
"total": "<string>",
"units": 123
},
"graduated_percentage_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"percentage": "<string>"
}
]
},
"graduated_tiered_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
],
"units": 123
},
"maximum_spend": {
"amount": "<string>",
"period": "<string>"
},
"metric_ids": [
"<string>"
],
"minimum_spend": {
"amount": "<string>",
"period": "<string>"
},
"prepaid_fixed_tiered_pricing_model": {
"overages_charge_interval": "<string>",
"prepaid_units": 123,
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
]
},
"prepaid_tiered_pricing_model": {
"prepaid_units": 123,
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
]
},
"recurring_instalment_interval_count": 1,
"recurring_instalment_interval_unit": "month",
"tiered_percentage_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"percentage": "<string>"
}
]
},
"tiered_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
],
"units": 123
},
"trial_period_days": 123,
"unit_pricing_model": {
"price_per_unit": "<string>"
},
"volume_percentage_pricing_model": {
"percentage": "<string>",
"price_per_unit": "<string>",
"fixed_fee": "<string>"
}
}
],
"description": "Our standard plan bundle"
}
'import requests
url = "https://api.alguna.io/bundles"
payload = {
"name": "Standard Plan",
"prices": [
{
"billing_direction": "arrears",
"charge_on_contract_start": True,
"fee_type": "fixed",
"product_id": "<string>",
"type": "unit",
"billing_interval": "monthly",
"billing_interval_count": 3,
"billing_interval_unit": "month",
"discount": {
"amount": "<string>",
"duration_unit": "<string>",
"duration_value": 123
},
"display_order": 123,
"expression_pricing_model": {
"charges": [
{
"description": "<string>",
"quantity_expression": "<string>",
"unit_price_expression": "<string>"
}
],
"metric_bindings": [
{
"alias": "api_calls",
"metric_id": "<string>"
}
]
},
"fixed_pricing_model": {
"price_per_unit": "<string>",
"total": "<string>",
"units": 123
},
"graduated_percentage_pricing_model": { "tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"percentage": "<string>"
}
] },
"graduated_tiered_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
],
"units": 123
},
"maximum_spend": {
"amount": "<string>",
"period": "<string>"
},
"metric_ids": ["<string>"],
"minimum_spend": {
"amount": "<string>",
"period": "<string>"
},
"prepaid_fixed_tiered_pricing_model": {
"overages_charge_interval": "<string>",
"prepaid_units": 123,
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
]
},
"prepaid_tiered_pricing_model": {
"prepaid_units": 123,
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
]
},
"recurring_instalment_interval_count": 1,
"recurring_instalment_interval_unit": "month",
"tiered_percentage_pricing_model": { "tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"percentage": "<string>"
}
] },
"tiered_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
],
"units": 123
},
"trial_period_days": 123,
"unit_pricing_model": { "price_per_unit": "<string>" },
"volume_percentage_pricing_model": {
"percentage": "<string>",
"price_per_unit": "<string>",
"fixed_fee": "<string>"
}
}
],
"description": "Our standard plan bundle"
}
headers = {
"Alguna-Version": "<alguna-version>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Alguna-Version': '<alguna-version>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: 'Standard Plan',
prices: [
{
billing_direction: 'arrears',
charge_on_contract_start: true,
fee_type: 'fixed',
product_id: '<string>',
type: 'unit',
billing_interval: 'monthly',
billing_interval_count: 3,
billing_interval_unit: 'month',
discount: {amount: '<string>', duration_unit: '<string>', duration_value: 123},
display_order: 123,
expression_pricing_model: {
charges: [
{
description: '<string>',
quantity_expression: '<string>',
unit_price_expression: '<string>'
}
],
metric_bindings: [{alias: 'api_calls', metric_id: '<string>'}]
},
fixed_pricing_model: {price_per_unit: '<string>', total: '<string>', units: 123},
graduated_percentage_pricing_model: {
tiers: [
{min_units: 123, fixed_fee: '<string>', max_units: 123, percentage: '<string>'}
]
},
graduated_tiered_pricing_model: {
tiers: [
{
min_units: 123,
fixed_fee: '<string>',
max_units: 123,
price_per_unit: '<string>'
}
],
units: 123
},
maximum_spend: {amount: '<string>', period: '<string>'},
metric_ids: ['<string>'],
minimum_spend: {amount: '<string>', period: '<string>'},
prepaid_fixed_tiered_pricing_model: {
overages_charge_interval: '<string>',
prepaid_units: 123,
tiers: [
{
min_units: 123,
fixed_fee: '<string>',
max_units: 123,
price_per_unit: '<string>'
}
]
},
prepaid_tiered_pricing_model: {
prepaid_units: 123,
tiers: [
{
min_units: 123,
fixed_fee: '<string>',
max_units: 123,
price_per_unit: '<string>'
}
]
},
recurring_instalment_interval_count: 1,
recurring_instalment_interval_unit: 'month',
tiered_percentage_pricing_model: {
tiers: [
{min_units: 123, fixed_fee: '<string>', max_units: 123, percentage: '<string>'}
]
},
tiered_pricing_model: {
tiers: [
{
min_units: 123,
fixed_fee: '<string>',
max_units: 123,
price_per_unit: '<string>'
}
],
units: 123
},
trial_period_days: 123,
unit_pricing_model: {price_per_unit: '<string>'},
volume_percentage_pricing_model: {percentage: '<string>', price_per_unit: '<string>', fixed_fee: '<string>'}
}
],
description: 'Our standard plan bundle'
})
};
fetch('https://api.alguna.io/bundles', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.alguna.io/bundles",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => 'Standard Plan',
'prices' => [
[
'billing_direction' => 'arrears',
'charge_on_contract_start' => true,
'fee_type' => 'fixed',
'product_id' => '<string>',
'type' => 'unit',
'billing_interval' => 'monthly',
'billing_interval_count' => 3,
'billing_interval_unit' => 'month',
'discount' => [
'amount' => '<string>',
'duration_unit' => '<string>',
'duration_value' => 123
],
'display_order' => 123,
'expression_pricing_model' => [
'charges' => [
[
'description' => '<string>',
'quantity_expression' => '<string>',
'unit_price_expression' => '<string>'
]
],
'metric_bindings' => [
[
'alias' => 'api_calls',
'metric_id' => '<string>'
]
]
],
'fixed_pricing_model' => [
'price_per_unit' => '<string>',
'total' => '<string>',
'units' => 123
],
'graduated_percentage_pricing_model' => [
'tiers' => [
[
'min_units' => 123,
'fixed_fee' => '<string>',
'max_units' => 123,
'percentage' => '<string>'
]
]
],
'graduated_tiered_pricing_model' => [
'tiers' => [
[
'min_units' => 123,
'fixed_fee' => '<string>',
'max_units' => 123,
'price_per_unit' => '<string>'
]
],
'units' => 123
],
'maximum_spend' => [
'amount' => '<string>',
'period' => '<string>'
],
'metric_ids' => [
'<string>'
],
'minimum_spend' => [
'amount' => '<string>',
'period' => '<string>'
],
'prepaid_fixed_tiered_pricing_model' => [
'overages_charge_interval' => '<string>',
'prepaid_units' => 123,
'tiers' => [
[
'min_units' => 123,
'fixed_fee' => '<string>',
'max_units' => 123,
'price_per_unit' => '<string>'
]
]
],
'prepaid_tiered_pricing_model' => [
'prepaid_units' => 123,
'tiers' => [
[
'min_units' => 123,
'fixed_fee' => '<string>',
'max_units' => 123,
'price_per_unit' => '<string>'
]
]
],
'recurring_instalment_interval_count' => 1,
'recurring_instalment_interval_unit' => 'month',
'tiered_percentage_pricing_model' => [
'tiers' => [
[
'min_units' => 123,
'fixed_fee' => '<string>',
'max_units' => 123,
'percentage' => '<string>'
]
]
],
'tiered_pricing_model' => [
'tiers' => [
[
'min_units' => 123,
'fixed_fee' => '<string>',
'max_units' => 123,
'price_per_unit' => '<string>'
]
],
'units' => 123
],
'trial_period_days' => 123,
'unit_pricing_model' => [
'price_per_unit' => '<string>'
],
'volume_percentage_pricing_model' => [
'percentage' => '<string>',
'price_per_unit' => '<string>',
'fixed_fee' => '<string>'
]
]
],
'description' => 'Our standard plan bundle'
]),
CURLOPT_HTTPHEADER => [
"Alguna-Version: <alguna-version>",
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.alguna.io/bundles"
payload := strings.NewReader("{\n \"name\": \"Standard Plan\",\n \"prices\": [\n {\n \"billing_direction\": \"arrears\",\n \"charge_on_contract_start\": true,\n \"fee_type\": \"fixed\",\n \"product_id\": \"<string>\",\n \"type\": \"unit\",\n \"billing_interval\": \"monthly\",\n \"billing_interval_count\": 3,\n \"billing_interval_unit\": \"month\",\n \"discount\": {\n \"amount\": \"<string>\",\n \"duration_unit\": \"<string>\",\n \"duration_value\": 123\n },\n \"display_order\": 123,\n \"expression_pricing_model\": {\n \"charges\": [\n {\n \"description\": \"<string>\",\n \"quantity_expression\": \"<string>\",\n \"unit_price_expression\": \"<string>\"\n }\n ],\n \"metric_bindings\": [\n {\n \"alias\": \"api_calls\",\n \"metric_id\": \"<string>\"\n }\n ]\n },\n \"fixed_pricing_model\": {\n \"price_per_unit\": \"<string>\",\n \"total\": \"<string>\",\n \"units\": 123\n },\n \"graduated_percentage_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"percentage\": \"<string>\"\n }\n ]\n },\n \"graduated_tiered_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ],\n \"units\": 123\n },\n \"maximum_spend\": {\n \"amount\": \"<string>\",\n \"period\": \"<string>\"\n },\n \"metric_ids\": [\n \"<string>\"\n ],\n \"minimum_spend\": {\n \"amount\": \"<string>\",\n \"period\": \"<string>\"\n },\n \"prepaid_fixed_tiered_pricing_model\": {\n \"overages_charge_interval\": \"<string>\",\n \"prepaid_units\": 123,\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ]\n },\n \"prepaid_tiered_pricing_model\": {\n \"prepaid_units\": 123,\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ]\n },\n \"recurring_instalment_interval_count\": 1,\n \"recurring_instalment_interval_unit\": \"month\",\n \"tiered_percentage_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"percentage\": \"<string>\"\n }\n ]\n },\n \"tiered_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ],\n \"units\": 123\n },\n \"trial_period_days\": 123,\n \"unit_pricing_model\": {\n \"price_per_unit\": \"<string>\"\n },\n \"volume_percentage_pricing_model\": {\n \"percentage\": \"<string>\",\n \"price_per_unit\": \"<string>\",\n \"fixed_fee\": \"<string>\"\n }\n }\n ],\n \"description\": \"Our standard plan bundle\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Alguna-Version", "<alguna-version>")
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.alguna.io/bundles")
.header("Alguna-Version", "<alguna-version>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Standard Plan\",\n \"prices\": [\n {\n \"billing_direction\": \"arrears\",\n \"charge_on_contract_start\": true,\n \"fee_type\": \"fixed\",\n \"product_id\": \"<string>\",\n \"type\": \"unit\",\n \"billing_interval\": \"monthly\",\n \"billing_interval_count\": 3,\n \"billing_interval_unit\": \"month\",\n \"discount\": {\n \"amount\": \"<string>\",\n \"duration_unit\": \"<string>\",\n \"duration_value\": 123\n },\n \"display_order\": 123,\n \"expression_pricing_model\": {\n \"charges\": [\n {\n \"description\": \"<string>\",\n \"quantity_expression\": \"<string>\",\n \"unit_price_expression\": \"<string>\"\n }\n ],\n \"metric_bindings\": [\n {\n \"alias\": \"api_calls\",\n \"metric_id\": \"<string>\"\n }\n ]\n },\n \"fixed_pricing_model\": {\n \"price_per_unit\": \"<string>\",\n \"total\": \"<string>\",\n \"units\": 123\n },\n \"graduated_percentage_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"percentage\": \"<string>\"\n }\n ]\n },\n \"graduated_tiered_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ],\n \"units\": 123\n },\n \"maximum_spend\": {\n \"amount\": \"<string>\",\n \"period\": \"<string>\"\n },\n \"metric_ids\": [\n \"<string>\"\n ],\n \"minimum_spend\": {\n \"amount\": \"<string>\",\n \"period\": \"<string>\"\n },\n \"prepaid_fixed_tiered_pricing_model\": {\n \"overages_charge_interval\": \"<string>\",\n \"prepaid_units\": 123,\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ]\n },\n \"prepaid_tiered_pricing_model\": {\n \"prepaid_units\": 123,\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ]\n },\n \"recurring_instalment_interval_count\": 1,\n \"recurring_instalment_interval_unit\": \"month\",\n \"tiered_percentage_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"percentage\": \"<string>\"\n }\n ]\n },\n \"tiered_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ],\n \"units\": 123\n },\n \"trial_period_days\": 123,\n \"unit_pricing_model\": {\n \"price_per_unit\": \"<string>\"\n },\n \"volume_percentage_pricing_model\": {\n \"percentage\": \"<string>\",\n \"price_per_unit\": \"<string>\",\n \"fixed_fee\": \"<string>\"\n }\n }\n ],\n \"description\": \"Our standard plan bundle\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.alguna.io/bundles")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Alguna-Version"] = '<alguna-version>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"Standard Plan\",\n \"prices\": [\n {\n \"billing_direction\": \"arrears\",\n \"charge_on_contract_start\": true,\n \"fee_type\": \"fixed\",\n \"product_id\": \"<string>\",\n \"type\": \"unit\",\n \"billing_interval\": \"monthly\",\n \"billing_interval_count\": 3,\n \"billing_interval_unit\": \"month\",\n \"discount\": {\n \"amount\": \"<string>\",\n \"duration_unit\": \"<string>\",\n \"duration_value\": 123\n },\n \"display_order\": 123,\n \"expression_pricing_model\": {\n \"charges\": [\n {\n \"description\": \"<string>\",\n \"quantity_expression\": \"<string>\",\n \"unit_price_expression\": \"<string>\"\n }\n ],\n \"metric_bindings\": [\n {\n \"alias\": \"api_calls\",\n \"metric_id\": \"<string>\"\n }\n ]\n },\n \"fixed_pricing_model\": {\n \"price_per_unit\": \"<string>\",\n \"total\": \"<string>\",\n \"units\": 123\n },\n \"graduated_percentage_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"percentage\": \"<string>\"\n }\n ]\n },\n \"graduated_tiered_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ],\n \"units\": 123\n },\n \"maximum_spend\": {\n \"amount\": \"<string>\",\n \"period\": \"<string>\"\n },\n \"metric_ids\": [\n \"<string>\"\n ],\n \"minimum_spend\": {\n \"amount\": \"<string>\",\n \"period\": \"<string>\"\n },\n \"prepaid_fixed_tiered_pricing_model\": {\n \"overages_charge_interval\": \"<string>\",\n \"prepaid_units\": 123,\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ]\n },\n \"prepaid_tiered_pricing_model\": {\n \"prepaid_units\": 123,\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ]\n },\n \"recurring_instalment_interval_count\": 1,\n \"recurring_instalment_interval_unit\": \"month\",\n \"tiered_percentage_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"percentage\": \"<string>\"\n }\n ]\n },\n \"tiered_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ],\n \"units\": 123\n },\n \"trial_period_days\": 123,\n \"unit_pricing_model\": {\n \"price_per_unit\": \"<string>\"\n },\n \"volume_percentage_pricing_model\": {\n \"percentage\": \"<string>\",\n \"price_per_unit\": \"<string>\",\n \"fixed_fee\": \"<string>\"\n }\n }\n ],\n \"description\": \"Our standard plan bundle\"\n}"
response = http.request(request)
puts response.read_body{
"id": "bnd_01H1VECT",
"name": "Standard Plan",
"prices": [
{
"billing_direction": "arrears",
"charge_on_contract_start": true,
"created_at": "2023-11-07T05:31:56Z",
"currency": "USD",
"fee_type": "fixed",
"id": "<string>",
"product": {
"description": "<string>",
"fee_type": "fixed",
"id": "<string>",
"name": "Platform Fee",
"payment_terms": "arrears",
"metric_ids": [
"<string>"
]
},
"product_id": "<string>",
"type": "unit",
"updated_at": "2023-11-07T05:31:56Z",
"billing_frequency": "recurring",
"billing_interval": "monthly",
"billing_interval_count": 3,
"billing_interval_unit": "month",
"discount": {
"amount": "<string>",
"duration_unit": "<string>",
"duration_value": 123
},
"display_order": 123,
"expression_pricing_model": {
"charges": [
{
"description": "<string>",
"quantity_expression": "<string>",
"unit_price_expression": "<string>"
}
],
"metric_bindings": [
{
"alias": "api_calls",
"metric_id": "<string>"
}
]
},
"fixed_pricing_model": {
"price_per_unit": "<string>",
"total": "<string>",
"units": 123
},
"graduated_percentage_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"percentage": "<string>"
}
]
},
"graduated_tiered_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
],
"units": 123
},
"maximum_spend": {
"amount": "<string>",
"period": "<string>"
},
"metric_ids": [
"<string>"
],
"minimum_spend": {
"amount": "<string>",
"period": "<string>"
},
"prepaid_fixed_tiered_pricing_model": {
"overages_charge_interval": "<string>",
"prepaid_units": 123,
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
]
},
"prepaid_tiered_pricing_model": {
"prepaid_units": 123,
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
]
},
"tiered_percentage_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"percentage": "<string>"
}
]
},
"tiered_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
],
"units": 123
},
"trial_period_days": 123,
"unit_pricing_model": {
"price_per_unit": "<string>"
},
"volume_percentage_pricing_model": {
"percentage": "<string>",
"price_per_unit": "<string>",
"fixed_fee": "<string>"
}
}
],
"description": "Our standard plan bundle"
}{
"detail": "<string>",
"status": 123
}{
"detail": "<string>",
"status": 123
}{
"detail": "<string>",
"status": 123
}{
"detail": "<string>",
"status": 123
}{
"detail": "<string>",
"status": 123
}{
"detail": "<string>",
"status": 123
}Authorizations
API key authentication. Pass your API key as a Bearer token.
Headers
Available options:
2026-04-01 A unique string used to ensure the request is processed exactly once. If you retry a request with the same idempotency key within 24 hours, the original response is returned without re-executing the operation.
Maximum string length:
255Example:
"ik_a1b2c3d4e5f6"
Body
application/json
Response
Success
Unique identifier for the bundle
Example:
"bnd_01H1VECT"
The name of the bundle
Example:
"Standard Plan"
Prices included in this bundle
Show child attributes
Show child attributes
A brief description of the bundle
Example:
"Our standard plan bundle"
Previous
Get a product bundleFetches a single product bundle by ID, including its default prices.
Next
⌘I
Create a product bundle
curl --request POST \
--url https://api.alguna.io/bundles \
--header 'Alguna-Version: <alguna-version>' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Standard Plan",
"prices": [
{
"billing_direction": "arrears",
"charge_on_contract_start": true,
"fee_type": "fixed",
"product_id": "<string>",
"type": "unit",
"billing_interval": "monthly",
"billing_interval_count": 3,
"billing_interval_unit": "month",
"discount": {
"amount": "<string>",
"duration_unit": "<string>",
"duration_value": 123
},
"display_order": 123,
"expression_pricing_model": {
"charges": [
{
"description": "<string>",
"quantity_expression": "<string>",
"unit_price_expression": "<string>"
}
],
"metric_bindings": [
{
"alias": "api_calls",
"metric_id": "<string>"
}
]
},
"fixed_pricing_model": {
"price_per_unit": "<string>",
"total": "<string>",
"units": 123
},
"graduated_percentage_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"percentage": "<string>"
}
]
},
"graduated_tiered_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
],
"units": 123
},
"maximum_spend": {
"amount": "<string>",
"period": "<string>"
},
"metric_ids": [
"<string>"
],
"minimum_spend": {
"amount": "<string>",
"period": "<string>"
},
"prepaid_fixed_tiered_pricing_model": {
"overages_charge_interval": "<string>",
"prepaid_units": 123,
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
]
},
"prepaid_tiered_pricing_model": {
"prepaid_units": 123,
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
]
},
"recurring_instalment_interval_count": 1,
"recurring_instalment_interval_unit": "month",
"tiered_percentage_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"percentage": "<string>"
}
]
},
"tiered_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
],
"units": 123
},
"trial_period_days": 123,
"unit_pricing_model": {
"price_per_unit": "<string>"
},
"volume_percentage_pricing_model": {
"percentage": "<string>",
"price_per_unit": "<string>",
"fixed_fee": "<string>"
}
}
],
"description": "Our standard plan bundle"
}
'import requests
url = "https://api.alguna.io/bundles"
payload = {
"name": "Standard Plan",
"prices": [
{
"billing_direction": "arrears",
"charge_on_contract_start": True,
"fee_type": "fixed",
"product_id": "<string>",
"type": "unit",
"billing_interval": "monthly",
"billing_interval_count": 3,
"billing_interval_unit": "month",
"discount": {
"amount": "<string>",
"duration_unit": "<string>",
"duration_value": 123
},
"display_order": 123,
"expression_pricing_model": {
"charges": [
{
"description": "<string>",
"quantity_expression": "<string>",
"unit_price_expression": "<string>"
}
],
"metric_bindings": [
{
"alias": "api_calls",
"metric_id": "<string>"
}
]
},
"fixed_pricing_model": {
"price_per_unit": "<string>",
"total": "<string>",
"units": 123
},
"graduated_percentage_pricing_model": { "tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"percentage": "<string>"
}
] },
"graduated_tiered_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
],
"units": 123
},
"maximum_spend": {
"amount": "<string>",
"period": "<string>"
},
"metric_ids": ["<string>"],
"minimum_spend": {
"amount": "<string>",
"period": "<string>"
},
"prepaid_fixed_tiered_pricing_model": {
"overages_charge_interval": "<string>",
"prepaid_units": 123,
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
]
},
"prepaid_tiered_pricing_model": {
"prepaid_units": 123,
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
]
},
"recurring_instalment_interval_count": 1,
"recurring_instalment_interval_unit": "month",
"tiered_percentage_pricing_model": { "tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"percentage": "<string>"
}
] },
"tiered_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
],
"units": 123
},
"trial_period_days": 123,
"unit_pricing_model": { "price_per_unit": "<string>" },
"volume_percentage_pricing_model": {
"percentage": "<string>",
"price_per_unit": "<string>",
"fixed_fee": "<string>"
}
}
],
"description": "Our standard plan bundle"
}
headers = {
"Alguna-Version": "<alguna-version>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Alguna-Version': '<alguna-version>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: 'Standard Plan',
prices: [
{
billing_direction: 'arrears',
charge_on_contract_start: true,
fee_type: 'fixed',
product_id: '<string>',
type: 'unit',
billing_interval: 'monthly',
billing_interval_count: 3,
billing_interval_unit: 'month',
discount: {amount: '<string>', duration_unit: '<string>', duration_value: 123},
display_order: 123,
expression_pricing_model: {
charges: [
{
description: '<string>',
quantity_expression: '<string>',
unit_price_expression: '<string>'
}
],
metric_bindings: [{alias: 'api_calls', metric_id: '<string>'}]
},
fixed_pricing_model: {price_per_unit: '<string>', total: '<string>', units: 123},
graduated_percentage_pricing_model: {
tiers: [
{min_units: 123, fixed_fee: '<string>', max_units: 123, percentage: '<string>'}
]
},
graduated_tiered_pricing_model: {
tiers: [
{
min_units: 123,
fixed_fee: '<string>',
max_units: 123,
price_per_unit: '<string>'
}
],
units: 123
},
maximum_spend: {amount: '<string>', period: '<string>'},
metric_ids: ['<string>'],
minimum_spend: {amount: '<string>', period: '<string>'},
prepaid_fixed_tiered_pricing_model: {
overages_charge_interval: '<string>',
prepaid_units: 123,
tiers: [
{
min_units: 123,
fixed_fee: '<string>',
max_units: 123,
price_per_unit: '<string>'
}
]
},
prepaid_tiered_pricing_model: {
prepaid_units: 123,
tiers: [
{
min_units: 123,
fixed_fee: '<string>',
max_units: 123,
price_per_unit: '<string>'
}
]
},
recurring_instalment_interval_count: 1,
recurring_instalment_interval_unit: 'month',
tiered_percentage_pricing_model: {
tiers: [
{min_units: 123, fixed_fee: '<string>', max_units: 123, percentage: '<string>'}
]
},
tiered_pricing_model: {
tiers: [
{
min_units: 123,
fixed_fee: '<string>',
max_units: 123,
price_per_unit: '<string>'
}
],
units: 123
},
trial_period_days: 123,
unit_pricing_model: {price_per_unit: '<string>'},
volume_percentage_pricing_model: {percentage: '<string>', price_per_unit: '<string>', fixed_fee: '<string>'}
}
],
description: 'Our standard plan bundle'
})
};
fetch('https://api.alguna.io/bundles', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.alguna.io/bundles",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => 'Standard Plan',
'prices' => [
[
'billing_direction' => 'arrears',
'charge_on_contract_start' => true,
'fee_type' => 'fixed',
'product_id' => '<string>',
'type' => 'unit',
'billing_interval' => 'monthly',
'billing_interval_count' => 3,
'billing_interval_unit' => 'month',
'discount' => [
'amount' => '<string>',
'duration_unit' => '<string>',
'duration_value' => 123
],
'display_order' => 123,
'expression_pricing_model' => [
'charges' => [
[
'description' => '<string>',
'quantity_expression' => '<string>',
'unit_price_expression' => '<string>'
]
],
'metric_bindings' => [
[
'alias' => 'api_calls',
'metric_id' => '<string>'
]
]
],
'fixed_pricing_model' => [
'price_per_unit' => '<string>',
'total' => '<string>',
'units' => 123
],
'graduated_percentage_pricing_model' => [
'tiers' => [
[
'min_units' => 123,
'fixed_fee' => '<string>',
'max_units' => 123,
'percentage' => '<string>'
]
]
],
'graduated_tiered_pricing_model' => [
'tiers' => [
[
'min_units' => 123,
'fixed_fee' => '<string>',
'max_units' => 123,
'price_per_unit' => '<string>'
]
],
'units' => 123
],
'maximum_spend' => [
'amount' => '<string>',
'period' => '<string>'
],
'metric_ids' => [
'<string>'
],
'minimum_spend' => [
'amount' => '<string>',
'period' => '<string>'
],
'prepaid_fixed_tiered_pricing_model' => [
'overages_charge_interval' => '<string>',
'prepaid_units' => 123,
'tiers' => [
[
'min_units' => 123,
'fixed_fee' => '<string>',
'max_units' => 123,
'price_per_unit' => '<string>'
]
]
],
'prepaid_tiered_pricing_model' => [
'prepaid_units' => 123,
'tiers' => [
[
'min_units' => 123,
'fixed_fee' => '<string>',
'max_units' => 123,
'price_per_unit' => '<string>'
]
]
],
'recurring_instalment_interval_count' => 1,
'recurring_instalment_interval_unit' => 'month',
'tiered_percentage_pricing_model' => [
'tiers' => [
[
'min_units' => 123,
'fixed_fee' => '<string>',
'max_units' => 123,
'percentage' => '<string>'
]
]
],
'tiered_pricing_model' => [
'tiers' => [
[
'min_units' => 123,
'fixed_fee' => '<string>',
'max_units' => 123,
'price_per_unit' => '<string>'
]
],
'units' => 123
],
'trial_period_days' => 123,
'unit_pricing_model' => [
'price_per_unit' => '<string>'
],
'volume_percentage_pricing_model' => [
'percentage' => '<string>',
'price_per_unit' => '<string>',
'fixed_fee' => '<string>'
]
]
],
'description' => 'Our standard plan bundle'
]),
CURLOPT_HTTPHEADER => [
"Alguna-Version: <alguna-version>",
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.alguna.io/bundles"
payload := strings.NewReader("{\n \"name\": \"Standard Plan\",\n \"prices\": [\n {\n \"billing_direction\": \"arrears\",\n \"charge_on_contract_start\": true,\n \"fee_type\": \"fixed\",\n \"product_id\": \"<string>\",\n \"type\": \"unit\",\n \"billing_interval\": \"monthly\",\n \"billing_interval_count\": 3,\n \"billing_interval_unit\": \"month\",\n \"discount\": {\n \"amount\": \"<string>\",\n \"duration_unit\": \"<string>\",\n \"duration_value\": 123\n },\n \"display_order\": 123,\n \"expression_pricing_model\": {\n \"charges\": [\n {\n \"description\": \"<string>\",\n \"quantity_expression\": \"<string>\",\n \"unit_price_expression\": \"<string>\"\n }\n ],\n \"metric_bindings\": [\n {\n \"alias\": \"api_calls\",\n \"metric_id\": \"<string>\"\n }\n ]\n },\n \"fixed_pricing_model\": {\n \"price_per_unit\": \"<string>\",\n \"total\": \"<string>\",\n \"units\": 123\n },\n \"graduated_percentage_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"percentage\": \"<string>\"\n }\n ]\n },\n \"graduated_tiered_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ],\n \"units\": 123\n },\n \"maximum_spend\": {\n \"amount\": \"<string>\",\n \"period\": \"<string>\"\n },\n \"metric_ids\": [\n \"<string>\"\n ],\n \"minimum_spend\": {\n \"amount\": \"<string>\",\n \"period\": \"<string>\"\n },\n \"prepaid_fixed_tiered_pricing_model\": {\n \"overages_charge_interval\": \"<string>\",\n \"prepaid_units\": 123,\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ]\n },\n \"prepaid_tiered_pricing_model\": {\n \"prepaid_units\": 123,\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ]\n },\n \"recurring_instalment_interval_count\": 1,\n \"recurring_instalment_interval_unit\": \"month\",\n \"tiered_percentage_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"percentage\": \"<string>\"\n }\n ]\n },\n \"tiered_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ],\n \"units\": 123\n },\n \"trial_period_days\": 123,\n \"unit_pricing_model\": {\n \"price_per_unit\": \"<string>\"\n },\n \"volume_percentage_pricing_model\": {\n \"percentage\": \"<string>\",\n \"price_per_unit\": \"<string>\",\n \"fixed_fee\": \"<string>\"\n }\n }\n ],\n \"description\": \"Our standard plan bundle\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Alguna-Version", "<alguna-version>")
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.alguna.io/bundles")
.header("Alguna-Version", "<alguna-version>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Standard Plan\",\n \"prices\": [\n {\n \"billing_direction\": \"arrears\",\n \"charge_on_contract_start\": true,\n \"fee_type\": \"fixed\",\n \"product_id\": \"<string>\",\n \"type\": \"unit\",\n \"billing_interval\": \"monthly\",\n \"billing_interval_count\": 3,\n \"billing_interval_unit\": \"month\",\n \"discount\": {\n \"amount\": \"<string>\",\n \"duration_unit\": \"<string>\",\n \"duration_value\": 123\n },\n \"display_order\": 123,\n \"expression_pricing_model\": {\n \"charges\": [\n {\n \"description\": \"<string>\",\n \"quantity_expression\": \"<string>\",\n \"unit_price_expression\": \"<string>\"\n }\n ],\n \"metric_bindings\": [\n {\n \"alias\": \"api_calls\",\n \"metric_id\": \"<string>\"\n }\n ]\n },\n \"fixed_pricing_model\": {\n \"price_per_unit\": \"<string>\",\n \"total\": \"<string>\",\n \"units\": 123\n },\n \"graduated_percentage_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"percentage\": \"<string>\"\n }\n ]\n },\n \"graduated_tiered_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ],\n \"units\": 123\n },\n \"maximum_spend\": {\n \"amount\": \"<string>\",\n \"period\": \"<string>\"\n },\n \"metric_ids\": [\n \"<string>\"\n ],\n \"minimum_spend\": {\n \"amount\": \"<string>\",\n \"period\": \"<string>\"\n },\n \"prepaid_fixed_tiered_pricing_model\": {\n \"overages_charge_interval\": \"<string>\",\n \"prepaid_units\": 123,\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ]\n },\n \"prepaid_tiered_pricing_model\": {\n \"prepaid_units\": 123,\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ]\n },\n \"recurring_instalment_interval_count\": 1,\n \"recurring_instalment_interval_unit\": \"month\",\n \"tiered_percentage_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"percentage\": \"<string>\"\n }\n ]\n },\n \"tiered_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ],\n \"units\": 123\n },\n \"trial_period_days\": 123,\n \"unit_pricing_model\": {\n \"price_per_unit\": \"<string>\"\n },\n \"volume_percentage_pricing_model\": {\n \"percentage\": \"<string>\",\n \"price_per_unit\": \"<string>\",\n \"fixed_fee\": \"<string>\"\n }\n }\n ],\n \"description\": \"Our standard plan bundle\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.alguna.io/bundles")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Alguna-Version"] = '<alguna-version>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"Standard Plan\",\n \"prices\": [\n {\n \"billing_direction\": \"arrears\",\n \"charge_on_contract_start\": true,\n \"fee_type\": \"fixed\",\n \"product_id\": \"<string>\",\n \"type\": \"unit\",\n \"billing_interval\": \"monthly\",\n \"billing_interval_count\": 3,\n \"billing_interval_unit\": \"month\",\n \"discount\": {\n \"amount\": \"<string>\",\n \"duration_unit\": \"<string>\",\n \"duration_value\": 123\n },\n \"display_order\": 123,\n \"expression_pricing_model\": {\n \"charges\": [\n {\n \"description\": \"<string>\",\n \"quantity_expression\": \"<string>\",\n \"unit_price_expression\": \"<string>\"\n }\n ],\n \"metric_bindings\": [\n {\n \"alias\": \"api_calls\",\n \"metric_id\": \"<string>\"\n }\n ]\n },\n \"fixed_pricing_model\": {\n \"price_per_unit\": \"<string>\",\n \"total\": \"<string>\",\n \"units\": 123\n },\n \"graduated_percentage_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"percentage\": \"<string>\"\n }\n ]\n },\n \"graduated_tiered_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ],\n \"units\": 123\n },\n \"maximum_spend\": {\n \"amount\": \"<string>\",\n \"period\": \"<string>\"\n },\n \"metric_ids\": [\n \"<string>\"\n ],\n \"minimum_spend\": {\n \"amount\": \"<string>\",\n \"period\": \"<string>\"\n },\n \"prepaid_fixed_tiered_pricing_model\": {\n \"overages_charge_interval\": \"<string>\",\n \"prepaid_units\": 123,\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ]\n },\n \"prepaid_tiered_pricing_model\": {\n \"prepaid_units\": 123,\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ]\n },\n \"recurring_instalment_interval_count\": 1,\n \"recurring_instalment_interval_unit\": \"month\",\n \"tiered_percentage_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"percentage\": \"<string>\"\n }\n ]\n },\n \"tiered_pricing_model\": {\n \"tiers\": [\n {\n \"min_units\": 123,\n \"fixed_fee\": \"<string>\",\n \"max_units\": 123,\n \"price_per_unit\": \"<string>\"\n }\n ],\n \"units\": 123\n },\n \"trial_period_days\": 123,\n \"unit_pricing_model\": {\n \"price_per_unit\": \"<string>\"\n },\n \"volume_percentage_pricing_model\": {\n \"percentage\": \"<string>\",\n \"price_per_unit\": \"<string>\",\n \"fixed_fee\": \"<string>\"\n }\n }\n ],\n \"description\": \"Our standard plan bundle\"\n}"
response = http.request(request)
puts response.read_body{
"id": "bnd_01H1VECT",
"name": "Standard Plan",
"prices": [
{
"billing_direction": "arrears",
"charge_on_contract_start": true,
"created_at": "2023-11-07T05:31:56Z",
"currency": "USD",
"fee_type": "fixed",
"id": "<string>",
"product": {
"description": "<string>",
"fee_type": "fixed",
"id": "<string>",
"name": "Platform Fee",
"payment_terms": "arrears",
"metric_ids": [
"<string>"
]
},
"product_id": "<string>",
"type": "unit",
"updated_at": "2023-11-07T05:31:56Z",
"billing_frequency": "recurring",
"billing_interval": "monthly",
"billing_interval_count": 3,
"billing_interval_unit": "month",
"discount": {
"amount": "<string>",
"duration_unit": "<string>",
"duration_value": 123
},
"display_order": 123,
"expression_pricing_model": {
"charges": [
{
"description": "<string>",
"quantity_expression": "<string>",
"unit_price_expression": "<string>"
}
],
"metric_bindings": [
{
"alias": "api_calls",
"metric_id": "<string>"
}
]
},
"fixed_pricing_model": {
"price_per_unit": "<string>",
"total": "<string>",
"units": 123
},
"graduated_percentage_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"percentage": "<string>"
}
]
},
"graduated_tiered_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
],
"units": 123
},
"maximum_spend": {
"amount": "<string>",
"period": "<string>"
},
"metric_ids": [
"<string>"
],
"minimum_spend": {
"amount": "<string>",
"period": "<string>"
},
"prepaid_fixed_tiered_pricing_model": {
"overages_charge_interval": "<string>",
"prepaid_units": 123,
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
]
},
"prepaid_tiered_pricing_model": {
"prepaid_units": 123,
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
]
},
"tiered_percentage_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"percentage": "<string>"
}
]
},
"tiered_pricing_model": {
"tiers": [
{
"min_units": 123,
"fixed_fee": "<string>",
"max_units": 123,
"price_per_unit": "<string>"
}
],
"units": 123
},
"trial_period_days": 123,
"unit_pricing_model": {
"price_per_unit": "<string>"
},
"volume_percentage_pricing_model": {
"percentage": "<string>",
"price_per_unit": "<string>",
"fixed_fee": "<string>"
}
}
],
"description": "Our standard plan bundle"
}{
"detail": "<string>",
"status": 123
}{
"detail": "<string>",
"status": 123
}{
"detail": "<string>",
"status": 123
}{
"detail": "<string>",
"status": 123
}{
"detail": "<string>",
"status": 123
}{
"detail": "<string>",
"status": 123
}