curl --request POST \
--url https://api.withorb.com/v1/plans \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"currency": "<string>",
"prices": [
{
"price": {
"model_type": "unit",
"unit_config": {
"unit_amount": "<string>",
"prorated": false
},
"name": "<string>",
"item_id": "<string>",
"metadata": {},
"external_price_id": "<string>",
"dimensional_price_configuration": {
"dimension_values": [
"<string>"
],
"dimensional_price_group_id": "<string>",
"external_dimensional_price_group_id": "<string>"
},
"license_type_id": "<string>",
"billable_metric_id": "<string>",
"billed_in_advance": true,
"fixed_price_quantity": 123,
"invoice_grouping_key": "<string>",
"billing_cycle_configuration": {
"duration": 123
},
"invoicing_cycle_configuration": {
"duration": 123
},
"conversion_rate": 123,
"conversion_rate_config": {
"conversion_rate_type": "unit",
"unit_config": {
"unit_amount": "<string>"
}
},
"currency": "<string>",
"reference_id": "<string>"
},
"allocation_price": {
"currency": "<string>",
"amount": "<string>",
"metadata": {},
"expires_at_end_of_cadence": true,
"custom_expiration": {
"duration": 123
},
"filters": [
{
"field": "item_id",
"values": [
"<string>"
]
}
],
"per_unit_cost_basis": "0.00",
"item_id": "<string>",
"license_type_id": "<string>"
},
"license_allocation_price": {
"model_type": "unit",
"unit_config": {
"unit_amount": "<string>",
"prorated": false
},
"name": "<string>",
"item_id": "<string>",
"license_allocations": [
{
"currency": "<string>",
"amount": "<string>",
"write_off_overage": true
}
],
"metadata": {},
"external_price_id": "<string>",
"dimensional_price_configuration": {
"dimension_values": [
"<string>"
],
"dimensional_price_group_id": "<string>",
"external_dimensional_price_group_id": "<string>"
},
"license_type_id": "<string>",
"billable_metric_id": "<string>",
"billed_in_advance": true,
"fixed_price_quantity": 123,
"invoice_grouping_key": "<string>",
"billing_cycle_configuration": {
"duration": 123
},
"invoicing_cycle_configuration": {
"duration": 123
},
"conversion_rate": 123,
"conversion_rate_config": {
"conversion_rate_type": "unit",
"unit_config": {
"unit_amount": "<string>"
}
},
"currency": "<string>",
"reference_id": "<string>"
},
"plan_phase_order": 123
}
],
"metadata": {},
"description": "<string>",
"default_invoice_memo": "<string>",
"net_terms": 182,
"external_plan_id": "<string>",
"status": "active",
"plan_phases": [
{
"order": 123,
"duration": 1,
"align_billing_with_phase_start_date": false
}
],
"adjustments": [
{
"adjustment": {
"adjustment_type": "percentage_discount",
"percentage_discount": 123,
"applies_to_price_ids": [
"price_1",
"price_2"
],
"applies_to_item_ids": [
"item_1",
"item_2"
],
"applies_to_all": true,
"filters": [
{
"values": [
"<string>"
]
}
],
"currency": [
"USD",
"JPY",
"credits"
],
"is_invoice_level": true
},
"plan_phase_order": 123
}
]
}
'import requests
url = "https://api.withorb.com/v1/plans"
payload = {
"name": "<string>",
"currency": "<string>",
"prices": [
{
"price": {
"model_type": "unit",
"unit_config": {
"unit_amount": "<string>",
"prorated": False
},
"name": "<string>",
"item_id": "<string>",
"metadata": {},
"external_price_id": "<string>",
"dimensional_price_configuration": {
"dimension_values": ["<string>"],
"dimensional_price_group_id": "<string>",
"external_dimensional_price_group_id": "<string>"
},
"license_type_id": "<string>",
"billable_metric_id": "<string>",
"billed_in_advance": True,
"fixed_price_quantity": 123,
"invoice_grouping_key": "<string>",
"billing_cycle_configuration": { "duration": 123 },
"invoicing_cycle_configuration": { "duration": 123 },
"conversion_rate": 123,
"conversion_rate_config": {
"conversion_rate_type": "unit",
"unit_config": { "unit_amount": "<string>" }
},
"currency": "<string>",
"reference_id": "<string>"
},
"allocation_price": {
"currency": "<string>",
"amount": "<string>",
"metadata": {},
"expires_at_end_of_cadence": True,
"custom_expiration": { "duration": 123 },
"filters": [
{
"field": "item_id",
"values": ["<string>"]
}
],
"per_unit_cost_basis": "0.00",
"item_id": "<string>",
"license_type_id": "<string>"
},
"license_allocation_price": {
"model_type": "unit",
"unit_config": {
"unit_amount": "<string>",
"prorated": False
},
"name": "<string>",
"item_id": "<string>",
"license_allocations": [
{
"currency": "<string>",
"amount": "<string>",
"write_off_overage": True
}
],
"metadata": {},
"external_price_id": "<string>",
"dimensional_price_configuration": {
"dimension_values": ["<string>"],
"dimensional_price_group_id": "<string>",
"external_dimensional_price_group_id": "<string>"
},
"license_type_id": "<string>",
"billable_metric_id": "<string>",
"billed_in_advance": True,
"fixed_price_quantity": 123,
"invoice_grouping_key": "<string>",
"billing_cycle_configuration": { "duration": 123 },
"invoicing_cycle_configuration": { "duration": 123 },
"conversion_rate": 123,
"conversion_rate_config": {
"conversion_rate_type": "unit",
"unit_config": { "unit_amount": "<string>" }
},
"currency": "<string>",
"reference_id": "<string>"
},
"plan_phase_order": 123
}
],
"metadata": {},
"description": "<string>",
"default_invoice_memo": "<string>",
"net_terms": 182,
"external_plan_id": "<string>",
"status": "active",
"plan_phases": [
{
"order": 123,
"duration": 1,
"align_billing_with_phase_start_date": False
}
],
"adjustments": [
{
"adjustment": {
"adjustment_type": "percentage_discount",
"percentage_discount": 123,
"applies_to_price_ids": ["price_1", "price_2"],
"applies_to_item_ids": ["item_1", "item_2"],
"applies_to_all": True,
"filters": [{ "values": ["<string>"] }],
"currency": ["USD", "JPY", "credits"],
"is_invoice_level": True
},
"plan_phase_order": 123
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
currency: '<string>',
prices: [
{
price: {
model_type: 'unit',
unit_config: {unit_amount: '<string>', prorated: false},
name: '<string>',
item_id: '<string>',
metadata: {},
external_price_id: '<string>',
dimensional_price_configuration: {
dimension_values: ['<string>'],
dimensional_price_group_id: '<string>',
external_dimensional_price_group_id: '<string>'
},
license_type_id: '<string>',
billable_metric_id: '<string>',
billed_in_advance: true,
fixed_price_quantity: 123,
invoice_grouping_key: '<string>',
billing_cycle_configuration: {duration: 123},
invoicing_cycle_configuration: {duration: 123},
conversion_rate: 123,
conversion_rate_config: {conversion_rate_type: 'unit', unit_config: {unit_amount: '<string>'}},
currency: '<string>',
reference_id: '<string>'
},
allocation_price: {
currency: '<string>',
amount: '<string>',
metadata: {},
expires_at_end_of_cadence: true,
custom_expiration: {duration: 123},
filters: [{field: 'item_id', values: ['<string>']}],
per_unit_cost_basis: '0.00',
item_id: '<string>',
license_type_id: '<string>'
},
license_allocation_price: {
model_type: 'unit',
unit_config: {unit_amount: '<string>', prorated: false},
name: '<string>',
item_id: '<string>',
license_allocations: [{currency: '<string>', amount: '<string>', write_off_overage: true}],
metadata: {},
external_price_id: '<string>',
dimensional_price_configuration: {
dimension_values: ['<string>'],
dimensional_price_group_id: '<string>',
external_dimensional_price_group_id: '<string>'
},
license_type_id: '<string>',
billable_metric_id: '<string>',
billed_in_advance: true,
fixed_price_quantity: 123,
invoice_grouping_key: '<string>',
billing_cycle_configuration: {duration: 123},
invoicing_cycle_configuration: {duration: 123},
conversion_rate: 123,
conversion_rate_config: {conversion_rate_type: 'unit', unit_config: {unit_amount: '<string>'}},
currency: '<string>',
reference_id: '<string>'
},
plan_phase_order: 123
}
],
metadata: {},
description: '<string>',
default_invoice_memo: '<string>',
net_terms: 182,
external_plan_id: '<string>',
status: 'active',
plan_phases: [{order: 123, duration: 1, align_billing_with_phase_start_date: false}],
adjustments: [
{
adjustment: {
adjustment_type: 'percentage_discount',
percentage_discount: 123,
applies_to_price_ids: ['price_1', 'price_2'],
applies_to_item_ids: ['item_1', 'item_2'],
applies_to_all: true,
filters: [{values: ['<string>']}],
currency: ['USD', 'JPY', 'credits'],
is_invoice_level: true
},
plan_phase_order: 123
}
]
})
};
fetch('https://api.withorb.com/v1/plans', 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.withorb.com/v1/plans",
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' => '<string>',
'currency' => '<string>',
'prices' => [
[
'price' => [
'model_type' => 'unit',
'unit_config' => [
'unit_amount' => '<string>',
'prorated' => false
],
'name' => '<string>',
'item_id' => '<string>',
'metadata' => [
],
'external_price_id' => '<string>',
'dimensional_price_configuration' => [
'dimension_values' => [
'<string>'
],
'dimensional_price_group_id' => '<string>',
'external_dimensional_price_group_id' => '<string>'
],
'license_type_id' => '<string>',
'billable_metric_id' => '<string>',
'billed_in_advance' => true,
'fixed_price_quantity' => 123,
'invoice_grouping_key' => '<string>',
'billing_cycle_configuration' => [
'duration' => 123
],
'invoicing_cycle_configuration' => [
'duration' => 123
],
'conversion_rate' => 123,
'conversion_rate_config' => [
'conversion_rate_type' => 'unit',
'unit_config' => [
'unit_amount' => '<string>'
]
],
'currency' => '<string>',
'reference_id' => '<string>'
],
'allocation_price' => [
'currency' => '<string>',
'amount' => '<string>',
'metadata' => [
],
'expires_at_end_of_cadence' => true,
'custom_expiration' => [
'duration' => 123
],
'filters' => [
[
'field' => 'item_id',
'values' => [
'<string>'
]
]
],
'per_unit_cost_basis' => '0.00',
'item_id' => '<string>',
'license_type_id' => '<string>'
],
'license_allocation_price' => [
'model_type' => 'unit',
'unit_config' => [
'unit_amount' => '<string>',
'prorated' => false
],
'name' => '<string>',
'item_id' => '<string>',
'license_allocations' => [
[
'currency' => '<string>',
'amount' => '<string>',
'write_off_overage' => true
]
],
'metadata' => [
],
'external_price_id' => '<string>',
'dimensional_price_configuration' => [
'dimension_values' => [
'<string>'
],
'dimensional_price_group_id' => '<string>',
'external_dimensional_price_group_id' => '<string>'
],
'license_type_id' => '<string>',
'billable_metric_id' => '<string>',
'billed_in_advance' => true,
'fixed_price_quantity' => 123,
'invoice_grouping_key' => '<string>',
'billing_cycle_configuration' => [
'duration' => 123
],
'invoicing_cycle_configuration' => [
'duration' => 123
],
'conversion_rate' => 123,
'conversion_rate_config' => [
'conversion_rate_type' => 'unit',
'unit_config' => [
'unit_amount' => '<string>'
]
],
'currency' => '<string>',
'reference_id' => '<string>'
],
'plan_phase_order' => 123
]
],
'metadata' => [
],
'description' => '<string>',
'default_invoice_memo' => '<string>',
'net_terms' => 182,
'external_plan_id' => '<string>',
'status' => 'active',
'plan_phases' => [
[
'order' => 123,
'duration' => 1,
'align_billing_with_phase_start_date' => false
]
],
'adjustments' => [
[
'adjustment' => [
'adjustment_type' => 'percentage_discount',
'percentage_discount' => 123,
'applies_to_price_ids' => [
'price_1',
'price_2'
],
'applies_to_item_ids' => [
'item_1',
'item_2'
],
'applies_to_all' => true,
'filters' => [
[
'values' => [
'<string>'
]
]
],
'currency' => [
'USD',
'JPY',
'credits'
],
'is_invoice_level' => true
],
'plan_phase_order' => 123
]
]
]),
CURLOPT_HTTPHEADER => [
"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.withorb.com/v1/plans"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"currency\": \"<string>\",\n \"prices\": [\n {\n \"price\": {\n \"model_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\",\n \"prorated\": false\n },\n \"name\": \"<string>\",\n \"item_id\": \"<string>\",\n \"metadata\": {},\n \"external_price_id\": \"<string>\",\n \"dimensional_price_configuration\": {\n \"dimension_values\": [\n \"<string>\"\n ],\n \"dimensional_price_group_id\": \"<string>\",\n \"external_dimensional_price_group_id\": \"<string>\"\n },\n \"license_type_id\": \"<string>\",\n \"billable_metric_id\": \"<string>\",\n \"billed_in_advance\": true,\n \"fixed_price_quantity\": 123,\n \"invoice_grouping_key\": \"<string>\",\n \"billing_cycle_configuration\": {\n \"duration\": 123\n },\n \"invoicing_cycle_configuration\": {\n \"duration\": 123\n },\n \"conversion_rate\": 123,\n \"conversion_rate_config\": {\n \"conversion_rate_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\"\n }\n },\n \"currency\": \"<string>\",\n \"reference_id\": \"<string>\"\n },\n \"allocation_price\": {\n \"currency\": \"<string>\",\n \"amount\": \"<string>\",\n \"metadata\": {},\n \"expires_at_end_of_cadence\": true,\n \"custom_expiration\": {\n \"duration\": 123\n },\n \"filters\": [\n {\n \"field\": \"item_id\",\n \"values\": [\n \"<string>\"\n ]\n }\n ],\n \"per_unit_cost_basis\": \"0.00\",\n \"item_id\": \"<string>\",\n \"license_type_id\": \"<string>\"\n },\n \"license_allocation_price\": {\n \"model_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\",\n \"prorated\": false\n },\n \"name\": \"<string>\",\n \"item_id\": \"<string>\",\n \"license_allocations\": [\n {\n \"currency\": \"<string>\",\n \"amount\": \"<string>\",\n \"write_off_overage\": true\n }\n ],\n \"metadata\": {},\n \"external_price_id\": \"<string>\",\n \"dimensional_price_configuration\": {\n \"dimension_values\": [\n \"<string>\"\n ],\n \"dimensional_price_group_id\": \"<string>\",\n \"external_dimensional_price_group_id\": \"<string>\"\n },\n \"license_type_id\": \"<string>\",\n \"billable_metric_id\": \"<string>\",\n \"billed_in_advance\": true,\n \"fixed_price_quantity\": 123,\n \"invoice_grouping_key\": \"<string>\",\n \"billing_cycle_configuration\": {\n \"duration\": 123\n },\n \"invoicing_cycle_configuration\": {\n \"duration\": 123\n },\n \"conversion_rate\": 123,\n \"conversion_rate_config\": {\n \"conversion_rate_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\"\n }\n },\n \"currency\": \"<string>\",\n \"reference_id\": \"<string>\"\n },\n \"plan_phase_order\": 123\n }\n ],\n \"metadata\": {},\n \"description\": \"<string>\",\n \"default_invoice_memo\": \"<string>\",\n \"net_terms\": 182,\n \"external_plan_id\": \"<string>\",\n \"status\": \"active\",\n \"plan_phases\": [\n {\n \"order\": 123,\n \"duration\": 1,\n \"align_billing_with_phase_start_date\": false\n }\n ],\n \"adjustments\": [\n {\n \"adjustment\": {\n \"adjustment_type\": \"percentage_discount\",\n \"percentage_discount\": 123,\n \"applies_to_price_ids\": [\n \"price_1\",\n \"price_2\"\n ],\n \"applies_to_item_ids\": [\n \"item_1\",\n \"item_2\"\n ],\n \"applies_to_all\": true,\n \"filters\": [\n {\n \"values\": [\n \"<string>\"\n ]\n }\n ],\n \"currency\": [\n \"USD\",\n \"JPY\",\n \"credits\"\n ],\n \"is_invoice_level\": true\n },\n \"plan_phase_order\": 123\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
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.withorb.com/v1/plans")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"currency\": \"<string>\",\n \"prices\": [\n {\n \"price\": {\n \"model_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\",\n \"prorated\": false\n },\n \"name\": \"<string>\",\n \"item_id\": \"<string>\",\n \"metadata\": {},\n \"external_price_id\": \"<string>\",\n \"dimensional_price_configuration\": {\n \"dimension_values\": [\n \"<string>\"\n ],\n \"dimensional_price_group_id\": \"<string>\",\n \"external_dimensional_price_group_id\": \"<string>\"\n },\n \"license_type_id\": \"<string>\",\n \"billable_metric_id\": \"<string>\",\n \"billed_in_advance\": true,\n \"fixed_price_quantity\": 123,\n \"invoice_grouping_key\": \"<string>\",\n \"billing_cycle_configuration\": {\n \"duration\": 123\n },\n \"invoicing_cycle_configuration\": {\n \"duration\": 123\n },\n \"conversion_rate\": 123,\n \"conversion_rate_config\": {\n \"conversion_rate_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\"\n }\n },\n \"currency\": \"<string>\",\n \"reference_id\": \"<string>\"\n },\n \"allocation_price\": {\n \"currency\": \"<string>\",\n \"amount\": \"<string>\",\n \"metadata\": {},\n \"expires_at_end_of_cadence\": true,\n \"custom_expiration\": {\n \"duration\": 123\n },\n \"filters\": [\n {\n \"field\": \"item_id\",\n \"values\": [\n \"<string>\"\n ]\n }\n ],\n \"per_unit_cost_basis\": \"0.00\",\n \"item_id\": \"<string>\",\n \"license_type_id\": \"<string>\"\n },\n \"license_allocation_price\": {\n \"model_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\",\n \"prorated\": false\n },\n \"name\": \"<string>\",\n \"item_id\": \"<string>\",\n \"license_allocations\": [\n {\n \"currency\": \"<string>\",\n \"amount\": \"<string>\",\n \"write_off_overage\": true\n }\n ],\n \"metadata\": {},\n \"external_price_id\": \"<string>\",\n \"dimensional_price_configuration\": {\n \"dimension_values\": [\n \"<string>\"\n ],\n \"dimensional_price_group_id\": \"<string>\",\n \"external_dimensional_price_group_id\": \"<string>\"\n },\n \"license_type_id\": \"<string>\",\n \"billable_metric_id\": \"<string>\",\n \"billed_in_advance\": true,\n \"fixed_price_quantity\": 123,\n \"invoice_grouping_key\": \"<string>\",\n \"billing_cycle_configuration\": {\n \"duration\": 123\n },\n \"invoicing_cycle_configuration\": {\n \"duration\": 123\n },\n \"conversion_rate\": 123,\n \"conversion_rate_config\": {\n \"conversion_rate_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\"\n }\n },\n \"currency\": \"<string>\",\n \"reference_id\": \"<string>\"\n },\n \"plan_phase_order\": 123\n }\n ],\n \"metadata\": {},\n \"description\": \"<string>\",\n \"default_invoice_memo\": \"<string>\",\n \"net_terms\": 182,\n \"external_plan_id\": \"<string>\",\n \"status\": \"active\",\n \"plan_phases\": [\n {\n \"order\": 123,\n \"duration\": 1,\n \"align_billing_with_phase_start_date\": false\n }\n ],\n \"adjustments\": [\n {\n \"adjustment\": {\n \"adjustment_type\": \"percentage_discount\",\n \"percentage_discount\": 123,\n \"applies_to_price_ids\": [\n \"price_1\",\n \"price_2\"\n ],\n \"applies_to_item_ids\": [\n \"item_1\",\n \"item_2\"\n ],\n \"applies_to_all\": true,\n \"filters\": [\n {\n \"values\": [\n \"<string>\"\n ]\n }\n ],\n \"currency\": [\n \"USD\",\n \"JPY\",\n \"credits\"\n ],\n \"is_invoice_level\": true\n },\n \"plan_phase_order\": 123\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.withorb.com/v1/plans")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"currency\": \"<string>\",\n \"prices\": [\n {\n \"price\": {\n \"model_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\",\n \"prorated\": false\n },\n \"name\": \"<string>\",\n \"item_id\": \"<string>\",\n \"metadata\": {},\n \"external_price_id\": \"<string>\",\n \"dimensional_price_configuration\": {\n \"dimension_values\": [\n \"<string>\"\n ],\n \"dimensional_price_group_id\": \"<string>\",\n \"external_dimensional_price_group_id\": \"<string>\"\n },\n \"license_type_id\": \"<string>\",\n \"billable_metric_id\": \"<string>\",\n \"billed_in_advance\": true,\n \"fixed_price_quantity\": 123,\n \"invoice_grouping_key\": \"<string>\",\n \"billing_cycle_configuration\": {\n \"duration\": 123\n },\n \"invoicing_cycle_configuration\": {\n \"duration\": 123\n },\n \"conversion_rate\": 123,\n \"conversion_rate_config\": {\n \"conversion_rate_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\"\n }\n },\n \"currency\": \"<string>\",\n \"reference_id\": \"<string>\"\n },\n \"allocation_price\": {\n \"currency\": \"<string>\",\n \"amount\": \"<string>\",\n \"metadata\": {},\n \"expires_at_end_of_cadence\": true,\n \"custom_expiration\": {\n \"duration\": 123\n },\n \"filters\": [\n {\n \"field\": \"item_id\",\n \"values\": [\n \"<string>\"\n ]\n }\n ],\n \"per_unit_cost_basis\": \"0.00\",\n \"item_id\": \"<string>\",\n \"license_type_id\": \"<string>\"\n },\n \"license_allocation_price\": {\n \"model_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\",\n \"prorated\": false\n },\n \"name\": \"<string>\",\n \"item_id\": \"<string>\",\n \"license_allocations\": [\n {\n \"currency\": \"<string>\",\n \"amount\": \"<string>\",\n \"write_off_overage\": true\n }\n ],\n \"metadata\": {},\n \"external_price_id\": \"<string>\",\n \"dimensional_price_configuration\": {\n \"dimension_values\": [\n \"<string>\"\n ],\n \"dimensional_price_group_id\": \"<string>\",\n \"external_dimensional_price_group_id\": \"<string>\"\n },\n \"license_type_id\": \"<string>\",\n \"billable_metric_id\": \"<string>\",\n \"billed_in_advance\": true,\n \"fixed_price_quantity\": 123,\n \"invoice_grouping_key\": \"<string>\",\n \"billing_cycle_configuration\": {\n \"duration\": 123\n },\n \"invoicing_cycle_configuration\": {\n \"duration\": 123\n },\n \"conversion_rate\": 123,\n \"conversion_rate_config\": {\n \"conversion_rate_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\"\n }\n },\n \"currency\": \"<string>\",\n \"reference_id\": \"<string>\"\n },\n \"plan_phase_order\": 123\n }\n ],\n \"metadata\": {},\n \"description\": \"<string>\",\n \"default_invoice_memo\": \"<string>\",\n \"net_terms\": 182,\n \"external_plan_id\": \"<string>\",\n \"status\": \"active\",\n \"plan_phases\": [\n {\n \"order\": 123,\n \"duration\": 1,\n \"align_billing_with_phase_start_date\": false\n }\n ],\n \"adjustments\": [\n {\n \"adjustment\": {\n \"adjustment_type\": \"percentage_discount\",\n \"percentage_discount\": 123,\n \"applies_to_price_ids\": [\n \"price_1\",\n \"price_2\"\n ],\n \"applies_to_item_ids\": [\n \"item_1\",\n \"item_2\"\n ],\n \"applies_to_all\": true,\n \"filters\": [\n {\n \"values\": [\n \"<string>\"\n ]\n }\n ],\n \"currency\": [\n \"USD\",\n \"JPY\",\n \"credits\"\n ],\n \"is_invoice_level\": true\n },\n \"plan_phase_order\": 123\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"metadata": {},
"id": "<string>",
"name": "<string>",
"description": "<string>",
"maximum_amount": "<string>",
"minimum_amount": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"maximum": {
"maximum_amount": "<string>",
"filters": [
{
"values": [
"<string>"
]
}
],
"applies_to_price_ids": [
"<string>"
]
},
"minimum": {
"minimum_amount": "<string>",
"filters": [
{
"values": [
"<string>"
]
}
],
"applies_to_price_ids": [
"<string>"
]
},
"discount": {
"discount_type": "percentage",
"percentage_discount": 0.5,
"applies_to_price_ids": [
"h74gfhdjvn7ujokd",
"7hfgtgjnbvc3ujkl"
],
"filters": [
{
"values": [
"<string>"
]
}
],
"reason": "<string>"
},
"product": {
"created_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"name": "<string>"
},
"version": 123,
"trial_config": {
"trial_period": 123,
"trial_period_unit": "days"
},
"plan_phases": [
{
"id": "<string>",
"description": "<string>",
"duration": 123,
"name": "<string>",
"order": 123,
"minimum": {
"minimum_amount": "<string>",
"filters": [
{
"values": [
"<string>"
]
}
],
"applies_to_price_ids": [
"<string>"
]
},
"maximum": {
"maximum_amount": "<string>",
"filters": [
{
"values": [
"<string>"
]
}
],
"applies_to_price_ids": [
"<string>"
]
},
"maximum_amount": "<string>",
"minimum_amount": "<string>",
"discount": {
"discount_type": "percentage",
"percentage_discount": 0.5,
"applies_to_price_ids": [
"h74gfhdjvn7ujokd",
"7hfgtgjnbvc3ujkl"
],
"filters": [
{
"values": [
"<string>"
]
}
],
"reason": "<string>"
}
}
],
"base_plan": {
"id": "m2t5akQeh2obwxeU",
"external_plan_id": "m2t5akQeh2obwxeU",
"name": "Example plan"
},
"base_plan_id": "<string>",
"external_plan_id": "<string>",
"currency": "<string>",
"invoicing_currency": "<string>",
"net_terms": 123,
"default_invoice_memo": "<string>",
"prices": [
{
"model_type": "unit",
"unit_config": {
"unit_amount": "<string>",
"prorated": false
},
"metadata": {},
"id": "<string>",
"name": "<string>",
"external_price_id": "<string>",
"replaces_price_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"billing_cycle_configuration": {
"duration": 123
},
"invoicing_cycle_configuration": {
"duration": 123
},
"billable_metric": {
"id": "<string>"
},
"fixed_price_quantity": 123,
"plan_phase_order": 123,
"currency": "<string>",
"conversion_rate": 123,
"conversion_rate_config": {
"conversion_rate_type": "unit",
"unit_config": {
"unit_amount": "<string>"
}
},
"item": {
"id": "<string>",
"name": "<string>"
},
"credit_allocation": {
"currency": "<string>",
"allows_rollover": true,
"custom_expiration": {
"duration": 123
},
"filters": [
{
"values": [
"<string>"
]
}
],
"license_type_id": "<string>"
},
"composite_price_filters": [
{
"values": [
"<string>"
]
}
],
"invoice_grouping_key": "<string>",
"discount": {
"discount_type": "percentage",
"percentage_discount": 0.5,
"applies_to_price_ids": [
"h74gfhdjvn7ujokd",
"7hfgtgjnbvc3ujkl"
],
"filters": [
{
"values": [
"<string>"
]
}
],
"reason": "<string>"
},
"minimum": {
"minimum_amount": "<string>",
"filters": [
{
"values": [
"<string>"
]
}
],
"applies_to_price_ids": [
"<string>"
]
},
"minimum_amount": "<string>",
"maximum": {
"maximum_amount": "<string>",
"filters": [
{
"values": [
"<string>"
]
}
],
"applies_to_price_ids": [
"<string>"
]
},
"maximum_amount": "<string>",
"dimensional_price_configuration": {
"dimensional_price_group_id": "<string>",
"dimension_values": [
"<string>"
]
},
"license_type": {
"id": "<string>",
"name": "<string>",
"grouping_key": "<string>"
}
}
],
"adjustments": [
{
"id": "<string>",
"is_invoice_level": true,
"filters": [
{
"values": [
"<string>"
]
}
],
"applies_to_price_ids": [
"<string>"
],
"reason": "<string>",
"replaces_adjustment_id": "<string>",
"adjustment_type": "usage_discount",
"usage_discount": 123,
"plan_phase_order": 123
}
]
}{
"type": "https://docs.withorb.com/reference/error-responses#400-constraint-violation",
"status": 400,
"detail": "<string>",
"title": "<string>"
}{
"type": "https://docs.withorb.com/reference/error-responses#401-authentication-error",
"status": 401,
"detail": "<string>",
"title": "<string>"
}{
"type": "https://docs.withorb.com/reference/error-responses#404-feature-not-available",
"status": 400,
"detail": "<string>",
"title": "<string>"
}{
"type": "https://docs.withorb.com/reference/error-responses#409-resource-conflict",
"status": 409,
"detail": "<string>",
"title": "<string>"
}{
"type": "https://docs.withorb.com/reference/error-responses#413-request-too-large",
"status": 413,
"detail": "<string>",
"title": "<string>"
}{
"type": "https://docs.withorb.com/reference/error-responses#429-too-many-requests",
"status": 429,
"detail": "<string>",
"title": "<string>"
}{
"type": "https://docs.withorb.com/reference/error-responses#500-internal-server-error",
"status": 123,
"detail": "<string>",
"title": "<string>"
}Create plan
This endpoint allows creation of plans including their prices.
curl --request POST \
--url https://api.withorb.com/v1/plans \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"currency": "<string>",
"prices": [
{
"price": {
"model_type": "unit",
"unit_config": {
"unit_amount": "<string>",
"prorated": false
},
"name": "<string>",
"item_id": "<string>",
"metadata": {},
"external_price_id": "<string>",
"dimensional_price_configuration": {
"dimension_values": [
"<string>"
],
"dimensional_price_group_id": "<string>",
"external_dimensional_price_group_id": "<string>"
},
"license_type_id": "<string>",
"billable_metric_id": "<string>",
"billed_in_advance": true,
"fixed_price_quantity": 123,
"invoice_grouping_key": "<string>",
"billing_cycle_configuration": {
"duration": 123
},
"invoicing_cycle_configuration": {
"duration": 123
},
"conversion_rate": 123,
"conversion_rate_config": {
"conversion_rate_type": "unit",
"unit_config": {
"unit_amount": "<string>"
}
},
"currency": "<string>",
"reference_id": "<string>"
},
"allocation_price": {
"currency": "<string>",
"amount": "<string>",
"metadata": {},
"expires_at_end_of_cadence": true,
"custom_expiration": {
"duration": 123
},
"filters": [
{
"field": "item_id",
"values": [
"<string>"
]
}
],
"per_unit_cost_basis": "0.00",
"item_id": "<string>",
"license_type_id": "<string>"
},
"license_allocation_price": {
"model_type": "unit",
"unit_config": {
"unit_amount": "<string>",
"prorated": false
},
"name": "<string>",
"item_id": "<string>",
"license_allocations": [
{
"currency": "<string>",
"amount": "<string>",
"write_off_overage": true
}
],
"metadata": {},
"external_price_id": "<string>",
"dimensional_price_configuration": {
"dimension_values": [
"<string>"
],
"dimensional_price_group_id": "<string>",
"external_dimensional_price_group_id": "<string>"
},
"license_type_id": "<string>",
"billable_metric_id": "<string>",
"billed_in_advance": true,
"fixed_price_quantity": 123,
"invoice_grouping_key": "<string>",
"billing_cycle_configuration": {
"duration": 123
},
"invoicing_cycle_configuration": {
"duration": 123
},
"conversion_rate": 123,
"conversion_rate_config": {
"conversion_rate_type": "unit",
"unit_config": {
"unit_amount": "<string>"
}
},
"currency": "<string>",
"reference_id": "<string>"
},
"plan_phase_order": 123
}
],
"metadata": {},
"description": "<string>",
"default_invoice_memo": "<string>",
"net_terms": 182,
"external_plan_id": "<string>",
"status": "active",
"plan_phases": [
{
"order": 123,
"duration": 1,
"align_billing_with_phase_start_date": false
}
],
"adjustments": [
{
"adjustment": {
"adjustment_type": "percentage_discount",
"percentage_discount": 123,
"applies_to_price_ids": [
"price_1",
"price_2"
],
"applies_to_item_ids": [
"item_1",
"item_2"
],
"applies_to_all": true,
"filters": [
{
"values": [
"<string>"
]
}
],
"currency": [
"USD",
"JPY",
"credits"
],
"is_invoice_level": true
},
"plan_phase_order": 123
}
]
}
'import requests
url = "https://api.withorb.com/v1/plans"
payload = {
"name": "<string>",
"currency": "<string>",
"prices": [
{
"price": {
"model_type": "unit",
"unit_config": {
"unit_amount": "<string>",
"prorated": False
},
"name": "<string>",
"item_id": "<string>",
"metadata": {},
"external_price_id": "<string>",
"dimensional_price_configuration": {
"dimension_values": ["<string>"],
"dimensional_price_group_id": "<string>",
"external_dimensional_price_group_id": "<string>"
},
"license_type_id": "<string>",
"billable_metric_id": "<string>",
"billed_in_advance": True,
"fixed_price_quantity": 123,
"invoice_grouping_key": "<string>",
"billing_cycle_configuration": { "duration": 123 },
"invoicing_cycle_configuration": { "duration": 123 },
"conversion_rate": 123,
"conversion_rate_config": {
"conversion_rate_type": "unit",
"unit_config": { "unit_amount": "<string>" }
},
"currency": "<string>",
"reference_id": "<string>"
},
"allocation_price": {
"currency": "<string>",
"amount": "<string>",
"metadata": {},
"expires_at_end_of_cadence": True,
"custom_expiration": { "duration": 123 },
"filters": [
{
"field": "item_id",
"values": ["<string>"]
}
],
"per_unit_cost_basis": "0.00",
"item_id": "<string>",
"license_type_id": "<string>"
},
"license_allocation_price": {
"model_type": "unit",
"unit_config": {
"unit_amount": "<string>",
"prorated": False
},
"name": "<string>",
"item_id": "<string>",
"license_allocations": [
{
"currency": "<string>",
"amount": "<string>",
"write_off_overage": True
}
],
"metadata": {},
"external_price_id": "<string>",
"dimensional_price_configuration": {
"dimension_values": ["<string>"],
"dimensional_price_group_id": "<string>",
"external_dimensional_price_group_id": "<string>"
},
"license_type_id": "<string>",
"billable_metric_id": "<string>",
"billed_in_advance": True,
"fixed_price_quantity": 123,
"invoice_grouping_key": "<string>",
"billing_cycle_configuration": { "duration": 123 },
"invoicing_cycle_configuration": { "duration": 123 },
"conversion_rate": 123,
"conversion_rate_config": {
"conversion_rate_type": "unit",
"unit_config": { "unit_amount": "<string>" }
},
"currency": "<string>",
"reference_id": "<string>"
},
"plan_phase_order": 123
}
],
"metadata": {},
"description": "<string>",
"default_invoice_memo": "<string>",
"net_terms": 182,
"external_plan_id": "<string>",
"status": "active",
"plan_phases": [
{
"order": 123,
"duration": 1,
"align_billing_with_phase_start_date": False
}
],
"adjustments": [
{
"adjustment": {
"adjustment_type": "percentage_discount",
"percentage_discount": 123,
"applies_to_price_ids": ["price_1", "price_2"],
"applies_to_item_ids": ["item_1", "item_2"],
"applies_to_all": True,
"filters": [{ "values": ["<string>"] }],
"currency": ["USD", "JPY", "credits"],
"is_invoice_level": True
},
"plan_phase_order": 123
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
currency: '<string>',
prices: [
{
price: {
model_type: 'unit',
unit_config: {unit_amount: '<string>', prorated: false},
name: '<string>',
item_id: '<string>',
metadata: {},
external_price_id: '<string>',
dimensional_price_configuration: {
dimension_values: ['<string>'],
dimensional_price_group_id: '<string>',
external_dimensional_price_group_id: '<string>'
},
license_type_id: '<string>',
billable_metric_id: '<string>',
billed_in_advance: true,
fixed_price_quantity: 123,
invoice_grouping_key: '<string>',
billing_cycle_configuration: {duration: 123},
invoicing_cycle_configuration: {duration: 123},
conversion_rate: 123,
conversion_rate_config: {conversion_rate_type: 'unit', unit_config: {unit_amount: '<string>'}},
currency: '<string>',
reference_id: '<string>'
},
allocation_price: {
currency: '<string>',
amount: '<string>',
metadata: {},
expires_at_end_of_cadence: true,
custom_expiration: {duration: 123},
filters: [{field: 'item_id', values: ['<string>']}],
per_unit_cost_basis: '0.00',
item_id: '<string>',
license_type_id: '<string>'
},
license_allocation_price: {
model_type: 'unit',
unit_config: {unit_amount: '<string>', prorated: false},
name: '<string>',
item_id: '<string>',
license_allocations: [{currency: '<string>', amount: '<string>', write_off_overage: true}],
metadata: {},
external_price_id: '<string>',
dimensional_price_configuration: {
dimension_values: ['<string>'],
dimensional_price_group_id: '<string>',
external_dimensional_price_group_id: '<string>'
},
license_type_id: '<string>',
billable_metric_id: '<string>',
billed_in_advance: true,
fixed_price_quantity: 123,
invoice_grouping_key: '<string>',
billing_cycle_configuration: {duration: 123},
invoicing_cycle_configuration: {duration: 123},
conversion_rate: 123,
conversion_rate_config: {conversion_rate_type: 'unit', unit_config: {unit_amount: '<string>'}},
currency: '<string>',
reference_id: '<string>'
},
plan_phase_order: 123
}
],
metadata: {},
description: '<string>',
default_invoice_memo: '<string>',
net_terms: 182,
external_plan_id: '<string>',
status: 'active',
plan_phases: [{order: 123, duration: 1, align_billing_with_phase_start_date: false}],
adjustments: [
{
adjustment: {
adjustment_type: 'percentage_discount',
percentage_discount: 123,
applies_to_price_ids: ['price_1', 'price_2'],
applies_to_item_ids: ['item_1', 'item_2'],
applies_to_all: true,
filters: [{values: ['<string>']}],
currency: ['USD', 'JPY', 'credits'],
is_invoice_level: true
},
plan_phase_order: 123
}
]
})
};
fetch('https://api.withorb.com/v1/plans', 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.withorb.com/v1/plans",
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' => '<string>',
'currency' => '<string>',
'prices' => [
[
'price' => [
'model_type' => 'unit',
'unit_config' => [
'unit_amount' => '<string>',
'prorated' => false
],
'name' => '<string>',
'item_id' => '<string>',
'metadata' => [
],
'external_price_id' => '<string>',
'dimensional_price_configuration' => [
'dimension_values' => [
'<string>'
],
'dimensional_price_group_id' => '<string>',
'external_dimensional_price_group_id' => '<string>'
],
'license_type_id' => '<string>',
'billable_metric_id' => '<string>',
'billed_in_advance' => true,
'fixed_price_quantity' => 123,
'invoice_grouping_key' => '<string>',
'billing_cycle_configuration' => [
'duration' => 123
],
'invoicing_cycle_configuration' => [
'duration' => 123
],
'conversion_rate' => 123,
'conversion_rate_config' => [
'conversion_rate_type' => 'unit',
'unit_config' => [
'unit_amount' => '<string>'
]
],
'currency' => '<string>',
'reference_id' => '<string>'
],
'allocation_price' => [
'currency' => '<string>',
'amount' => '<string>',
'metadata' => [
],
'expires_at_end_of_cadence' => true,
'custom_expiration' => [
'duration' => 123
],
'filters' => [
[
'field' => 'item_id',
'values' => [
'<string>'
]
]
],
'per_unit_cost_basis' => '0.00',
'item_id' => '<string>',
'license_type_id' => '<string>'
],
'license_allocation_price' => [
'model_type' => 'unit',
'unit_config' => [
'unit_amount' => '<string>',
'prorated' => false
],
'name' => '<string>',
'item_id' => '<string>',
'license_allocations' => [
[
'currency' => '<string>',
'amount' => '<string>',
'write_off_overage' => true
]
],
'metadata' => [
],
'external_price_id' => '<string>',
'dimensional_price_configuration' => [
'dimension_values' => [
'<string>'
],
'dimensional_price_group_id' => '<string>',
'external_dimensional_price_group_id' => '<string>'
],
'license_type_id' => '<string>',
'billable_metric_id' => '<string>',
'billed_in_advance' => true,
'fixed_price_quantity' => 123,
'invoice_grouping_key' => '<string>',
'billing_cycle_configuration' => [
'duration' => 123
],
'invoicing_cycle_configuration' => [
'duration' => 123
],
'conversion_rate' => 123,
'conversion_rate_config' => [
'conversion_rate_type' => 'unit',
'unit_config' => [
'unit_amount' => '<string>'
]
],
'currency' => '<string>',
'reference_id' => '<string>'
],
'plan_phase_order' => 123
]
],
'metadata' => [
],
'description' => '<string>',
'default_invoice_memo' => '<string>',
'net_terms' => 182,
'external_plan_id' => '<string>',
'status' => 'active',
'plan_phases' => [
[
'order' => 123,
'duration' => 1,
'align_billing_with_phase_start_date' => false
]
],
'adjustments' => [
[
'adjustment' => [
'adjustment_type' => 'percentage_discount',
'percentage_discount' => 123,
'applies_to_price_ids' => [
'price_1',
'price_2'
],
'applies_to_item_ids' => [
'item_1',
'item_2'
],
'applies_to_all' => true,
'filters' => [
[
'values' => [
'<string>'
]
]
],
'currency' => [
'USD',
'JPY',
'credits'
],
'is_invoice_level' => true
],
'plan_phase_order' => 123
]
]
]),
CURLOPT_HTTPHEADER => [
"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.withorb.com/v1/plans"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"currency\": \"<string>\",\n \"prices\": [\n {\n \"price\": {\n \"model_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\",\n \"prorated\": false\n },\n \"name\": \"<string>\",\n \"item_id\": \"<string>\",\n \"metadata\": {},\n \"external_price_id\": \"<string>\",\n \"dimensional_price_configuration\": {\n \"dimension_values\": [\n \"<string>\"\n ],\n \"dimensional_price_group_id\": \"<string>\",\n \"external_dimensional_price_group_id\": \"<string>\"\n },\n \"license_type_id\": \"<string>\",\n \"billable_metric_id\": \"<string>\",\n \"billed_in_advance\": true,\n \"fixed_price_quantity\": 123,\n \"invoice_grouping_key\": \"<string>\",\n \"billing_cycle_configuration\": {\n \"duration\": 123\n },\n \"invoicing_cycle_configuration\": {\n \"duration\": 123\n },\n \"conversion_rate\": 123,\n \"conversion_rate_config\": {\n \"conversion_rate_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\"\n }\n },\n \"currency\": \"<string>\",\n \"reference_id\": \"<string>\"\n },\n \"allocation_price\": {\n \"currency\": \"<string>\",\n \"amount\": \"<string>\",\n \"metadata\": {},\n \"expires_at_end_of_cadence\": true,\n \"custom_expiration\": {\n \"duration\": 123\n },\n \"filters\": [\n {\n \"field\": \"item_id\",\n \"values\": [\n \"<string>\"\n ]\n }\n ],\n \"per_unit_cost_basis\": \"0.00\",\n \"item_id\": \"<string>\",\n \"license_type_id\": \"<string>\"\n },\n \"license_allocation_price\": {\n \"model_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\",\n \"prorated\": false\n },\n \"name\": \"<string>\",\n \"item_id\": \"<string>\",\n \"license_allocations\": [\n {\n \"currency\": \"<string>\",\n \"amount\": \"<string>\",\n \"write_off_overage\": true\n }\n ],\n \"metadata\": {},\n \"external_price_id\": \"<string>\",\n \"dimensional_price_configuration\": {\n \"dimension_values\": [\n \"<string>\"\n ],\n \"dimensional_price_group_id\": \"<string>\",\n \"external_dimensional_price_group_id\": \"<string>\"\n },\n \"license_type_id\": \"<string>\",\n \"billable_metric_id\": \"<string>\",\n \"billed_in_advance\": true,\n \"fixed_price_quantity\": 123,\n \"invoice_grouping_key\": \"<string>\",\n \"billing_cycle_configuration\": {\n \"duration\": 123\n },\n \"invoicing_cycle_configuration\": {\n \"duration\": 123\n },\n \"conversion_rate\": 123,\n \"conversion_rate_config\": {\n \"conversion_rate_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\"\n }\n },\n \"currency\": \"<string>\",\n \"reference_id\": \"<string>\"\n },\n \"plan_phase_order\": 123\n }\n ],\n \"metadata\": {},\n \"description\": \"<string>\",\n \"default_invoice_memo\": \"<string>\",\n \"net_terms\": 182,\n \"external_plan_id\": \"<string>\",\n \"status\": \"active\",\n \"plan_phases\": [\n {\n \"order\": 123,\n \"duration\": 1,\n \"align_billing_with_phase_start_date\": false\n }\n ],\n \"adjustments\": [\n {\n \"adjustment\": {\n \"adjustment_type\": \"percentage_discount\",\n \"percentage_discount\": 123,\n \"applies_to_price_ids\": [\n \"price_1\",\n \"price_2\"\n ],\n \"applies_to_item_ids\": [\n \"item_1\",\n \"item_2\"\n ],\n \"applies_to_all\": true,\n \"filters\": [\n {\n \"values\": [\n \"<string>\"\n ]\n }\n ],\n \"currency\": [\n \"USD\",\n \"JPY\",\n \"credits\"\n ],\n \"is_invoice_level\": true\n },\n \"plan_phase_order\": 123\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
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.withorb.com/v1/plans")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"currency\": \"<string>\",\n \"prices\": [\n {\n \"price\": {\n \"model_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\",\n \"prorated\": false\n },\n \"name\": \"<string>\",\n \"item_id\": \"<string>\",\n \"metadata\": {},\n \"external_price_id\": \"<string>\",\n \"dimensional_price_configuration\": {\n \"dimension_values\": [\n \"<string>\"\n ],\n \"dimensional_price_group_id\": \"<string>\",\n \"external_dimensional_price_group_id\": \"<string>\"\n },\n \"license_type_id\": \"<string>\",\n \"billable_metric_id\": \"<string>\",\n \"billed_in_advance\": true,\n \"fixed_price_quantity\": 123,\n \"invoice_grouping_key\": \"<string>\",\n \"billing_cycle_configuration\": {\n \"duration\": 123\n },\n \"invoicing_cycle_configuration\": {\n \"duration\": 123\n },\n \"conversion_rate\": 123,\n \"conversion_rate_config\": {\n \"conversion_rate_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\"\n }\n },\n \"currency\": \"<string>\",\n \"reference_id\": \"<string>\"\n },\n \"allocation_price\": {\n \"currency\": \"<string>\",\n \"amount\": \"<string>\",\n \"metadata\": {},\n \"expires_at_end_of_cadence\": true,\n \"custom_expiration\": {\n \"duration\": 123\n },\n \"filters\": [\n {\n \"field\": \"item_id\",\n \"values\": [\n \"<string>\"\n ]\n }\n ],\n \"per_unit_cost_basis\": \"0.00\",\n \"item_id\": \"<string>\",\n \"license_type_id\": \"<string>\"\n },\n \"license_allocation_price\": {\n \"model_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\",\n \"prorated\": false\n },\n \"name\": \"<string>\",\n \"item_id\": \"<string>\",\n \"license_allocations\": [\n {\n \"currency\": \"<string>\",\n \"amount\": \"<string>\",\n \"write_off_overage\": true\n }\n ],\n \"metadata\": {},\n \"external_price_id\": \"<string>\",\n \"dimensional_price_configuration\": {\n \"dimension_values\": [\n \"<string>\"\n ],\n \"dimensional_price_group_id\": \"<string>\",\n \"external_dimensional_price_group_id\": \"<string>\"\n },\n \"license_type_id\": \"<string>\",\n \"billable_metric_id\": \"<string>\",\n \"billed_in_advance\": true,\n \"fixed_price_quantity\": 123,\n \"invoice_grouping_key\": \"<string>\",\n \"billing_cycle_configuration\": {\n \"duration\": 123\n },\n \"invoicing_cycle_configuration\": {\n \"duration\": 123\n },\n \"conversion_rate\": 123,\n \"conversion_rate_config\": {\n \"conversion_rate_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\"\n }\n },\n \"currency\": \"<string>\",\n \"reference_id\": \"<string>\"\n },\n \"plan_phase_order\": 123\n }\n ],\n \"metadata\": {},\n \"description\": \"<string>\",\n \"default_invoice_memo\": \"<string>\",\n \"net_terms\": 182,\n \"external_plan_id\": \"<string>\",\n \"status\": \"active\",\n \"plan_phases\": [\n {\n \"order\": 123,\n \"duration\": 1,\n \"align_billing_with_phase_start_date\": false\n }\n ],\n \"adjustments\": [\n {\n \"adjustment\": {\n \"adjustment_type\": \"percentage_discount\",\n \"percentage_discount\": 123,\n \"applies_to_price_ids\": [\n \"price_1\",\n \"price_2\"\n ],\n \"applies_to_item_ids\": [\n \"item_1\",\n \"item_2\"\n ],\n \"applies_to_all\": true,\n \"filters\": [\n {\n \"values\": [\n \"<string>\"\n ]\n }\n ],\n \"currency\": [\n \"USD\",\n \"JPY\",\n \"credits\"\n ],\n \"is_invoice_level\": true\n },\n \"plan_phase_order\": 123\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.withorb.com/v1/plans")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"currency\": \"<string>\",\n \"prices\": [\n {\n \"price\": {\n \"model_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\",\n \"prorated\": false\n },\n \"name\": \"<string>\",\n \"item_id\": \"<string>\",\n \"metadata\": {},\n \"external_price_id\": \"<string>\",\n \"dimensional_price_configuration\": {\n \"dimension_values\": [\n \"<string>\"\n ],\n \"dimensional_price_group_id\": \"<string>\",\n \"external_dimensional_price_group_id\": \"<string>\"\n },\n \"license_type_id\": \"<string>\",\n \"billable_metric_id\": \"<string>\",\n \"billed_in_advance\": true,\n \"fixed_price_quantity\": 123,\n \"invoice_grouping_key\": \"<string>\",\n \"billing_cycle_configuration\": {\n \"duration\": 123\n },\n \"invoicing_cycle_configuration\": {\n \"duration\": 123\n },\n \"conversion_rate\": 123,\n \"conversion_rate_config\": {\n \"conversion_rate_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\"\n }\n },\n \"currency\": \"<string>\",\n \"reference_id\": \"<string>\"\n },\n \"allocation_price\": {\n \"currency\": \"<string>\",\n \"amount\": \"<string>\",\n \"metadata\": {},\n \"expires_at_end_of_cadence\": true,\n \"custom_expiration\": {\n \"duration\": 123\n },\n \"filters\": [\n {\n \"field\": \"item_id\",\n \"values\": [\n \"<string>\"\n ]\n }\n ],\n \"per_unit_cost_basis\": \"0.00\",\n \"item_id\": \"<string>\",\n \"license_type_id\": \"<string>\"\n },\n \"license_allocation_price\": {\n \"model_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\",\n \"prorated\": false\n },\n \"name\": \"<string>\",\n \"item_id\": \"<string>\",\n \"license_allocations\": [\n {\n \"currency\": \"<string>\",\n \"amount\": \"<string>\",\n \"write_off_overage\": true\n }\n ],\n \"metadata\": {},\n \"external_price_id\": \"<string>\",\n \"dimensional_price_configuration\": {\n \"dimension_values\": [\n \"<string>\"\n ],\n \"dimensional_price_group_id\": \"<string>\",\n \"external_dimensional_price_group_id\": \"<string>\"\n },\n \"license_type_id\": \"<string>\",\n \"billable_metric_id\": \"<string>\",\n \"billed_in_advance\": true,\n \"fixed_price_quantity\": 123,\n \"invoice_grouping_key\": \"<string>\",\n \"billing_cycle_configuration\": {\n \"duration\": 123\n },\n \"invoicing_cycle_configuration\": {\n \"duration\": 123\n },\n \"conversion_rate\": 123,\n \"conversion_rate_config\": {\n \"conversion_rate_type\": \"unit\",\n \"unit_config\": {\n \"unit_amount\": \"<string>\"\n }\n },\n \"currency\": \"<string>\",\n \"reference_id\": \"<string>\"\n },\n \"plan_phase_order\": 123\n }\n ],\n \"metadata\": {},\n \"description\": \"<string>\",\n \"default_invoice_memo\": \"<string>\",\n \"net_terms\": 182,\n \"external_plan_id\": \"<string>\",\n \"status\": \"active\",\n \"plan_phases\": [\n {\n \"order\": 123,\n \"duration\": 1,\n \"align_billing_with_phase_start_date\": false\n }\n ],\n \"adjustments\": [\n {\n \"adjustment\": {\n \"adjustment_type\": \"percentage_discount\",\n \"percentage_discount\": 123,\n \"applies_to_price_ids\": [\n \"price_1\",\n \"price_2\"\n ],\n \"applies_to_item_ids\": [\n \"item_1\",\n \"item_2\"\n ],\n \"applies_to_all\": true,\n \"filters\": [\n {\n \"values\": [\n \"<string>\"\n ]\n }\n ],\n \"currency\": [\n \"USD\",\n \"JPY\",\n \"credits\"\n ],\n \"is_invoice_level\": true\n },\n \"plan_phase_order\": 123\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"metadata": {},
"id": "<string>",
"name": "<string>",
"description": "<string>",
"maximum_amount": "<string>",
"minimum_amount": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"maximum": {
"maximum_amount": "<string>",
"filters": [
{
"values": [
"<string>"
]
}
],
"applies_to_price_ids": [
"<string>"
]
},
"minimum": {
"minimum_amount": "<string>",
"filters": [
{
"values": [
"<string>"
]
}
],
"applies_to_price_ids": [
"<string>"
]
},
"discount": {
"discount_type": "percentage",
"percentage_discount": 0.5,
"applies_to_price_ids": [
"h74gfhdjvn7ujokd",
"7hfgtgjnbvc3ujkl"
],
"filters": [
{
"values": [
"<string>"
]
}
],
"reason": "<string>"
},
"product": {
"created_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"name": "<string>"
},
"version": 123,
"trial_config": {
"trial_period": 123,
"trial_period_unit": "days"
},
"plan_phases": [
{
"id": "<string>",
"description": "<string>",
"duration": 123,
"name": "<string>",
"order": 123,
"minimum": {
"minimum_amount": "<string>",
"filters": [
{
"values": [
"<string>"
]
}
],
"applies_to_price_ids": [
"<string>"
]
},
"maximum": {
"maximum_amount": "<string>",
"filters": [
{
"values": [
"<string>"
]
}
],
"applies_to_price_ids": [
"<string>"
]
},
"maximum_amount": "<string>",
"minimum_amount": "<string>",
"discount": {
"discount_type": "percentage",
"percentage_discount": 0.5,
"applies_to_price_ids": [
"h74gfhdjvn7ujokd",
"7hfgtgjnbvc3ujkl"
],
"filters": [
{
"values": [
"<string>"
]
}
],
"reason": "<string>"
}
}
],
"base_plan": {
"id": "m2t5akQeh2obwxeU",
"external_plan_id": "m2t5akQeh2obwxeU",
"name": "Example plan"
},
"base_plan_id": "<string>",
"external_plan_id": "<string>",
"currency": "<string>",
"invoicing_currency": "<string>",
"net_terms": 123,
"default_invoice_memo": "<string>",
"prices": [
{
"model_type": "unit",
"unit_config": {
"unit_amount": "<string>",
"prorated": false
},
"metadata": {},
"id": "<string>",
"name": "<string>",
"external_price_id": "<string>",
"replaces_price_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"billing_cycle_configuration": {
"duration": 123
},
"invoicing_cycle_configuration": {
"duration": 123
},
"billable_metric": {
"id": "<string>"
},
"fixed_price_quantity": 123,
"plan_phase_order": 123,
"currency": "<string>",
"conversion_rate": 123,
"conversion_rate_config": {
"conversion_rate_type": "unit",
"unit_config": {
"unit_amount": "<string>"
}
},
"item": {
"id": "<string>",
"name": "<string>"
},
"credit_allocation": {
"currency": "<string>",
"allows_rollover": true,
"custom_expiration": {
"duration": 123
},
"filters": [
{
"values": [
"<string>"
]
}
],
"license_type_id": "<string>"
},
"composite_price_filters": [
{
"values": [
"<string>"
]
}
],
"invoice_grouping_key": "<string>",
"discount": {
"discount_type": "percentage",
"percentage_discount": 0.5,
"applies_to_price_ids": [
"h74gfhdjvn7ujokd",
"7hfgtgjnbvc3ujkl"
],
"filters": [
{
"values": [
"<string>"
]
}
],
"reason": "<string>"
},
"minimum": {
"minimum_amount": "<string>",
"filters": [
{
"values": [
"<string>"
]
}
],
"applies_to_price_ids": [
"<string>"
]
},
"minimum_amount": "<string>",
"maximum": {
"maximum_amount": "<string>",
"filters": [
{
"values": [
"<string>"
]
}
],
"applies_to_price_ids": [
"<string>"
]
},
"maximum_amount": "<string>",
"dimensional_price_configuration": {
"dimensional_price_group_id": "<string>",
"dimension_values": [
"<string>"
]
},
"license_type": {
"id": "<string>",
"name": "<string>",
"grouping_key": "<string>"
}
}
],
"adjustments": [
{
"id": "<string>",
"is_invoice_level": true,
"filters": [
{
"values": [
"<string>"
]
}
],
"applies_to_price_ids": [
"<string>"
],
"reason": "<string>",
"replaces_adjustment_id": "<string>",
"adjustment_type": "usage_discount",
"usage_discount": 123,
"plan_phase_order": 123
}
]
}{
"type": "https://docs.withorb.com/reference/error-responses#400-constraint-violation",
"status": 400,
"detail": "<string>",
"title": "<string>"
}{
"type": "https://docs.withorb.com/reference/error-responses#401-authentication-error",
"status": 401,
"detail": "<string>",
"title": "<string>"
}{
"type": "https://docs.withorb.com/reference/error-responses#404-feature-not-available",
"status": 400,
"detail": "<string>",
"title": "<string>"
}{
"type": "https://docs.withorb.com/reference/error-responses#409-resource-conflict",
"status": 409,
"detail": "<string>",
"title": "<string>"
}{
"type": "https://docs.withorb.com/reference/error-responses#413-request-too-large",
"status": 413,
"detail": "<string>",
"title": "<string>"
}{
"type": "https://docs.withorb.com/reference/error-responses#429-too-many-requests",
"status": 429,
"detail": "<string>",
"title": "<string>"
}{
"type": "https://docs.withorb.com/reference/error-responses#500-internal-server-error",
"status": 123,
"detail": "<string>",
"title": "<string>"
}Authorizations
API Keys can be issued in the Orb's web application.
Body
An ISO 4217 currency string for invoices generated by subscriptions on this plan.
Prices for this plan. If the plan has phases, this includes prices across all phases of the plan.
Show child attributes
Show child attributes
User-specified key/value pairs for the resource. Individual keys can be removed by setting the value to null, and the entire metadata mapping can be cleared by setting metadata to null.
Show child attributes
Show child attributes
An optional user-defined description of the plan.
Free-form text which is available on the invoice PDF and the Orb invoice portal.
The net terms determines the difference between the invoice date and the issue date for the invoice. If you intend the invoice to be due on issue, set this to 0.
0 <= x <= 365The status of the plan to create (either active or draft). If not specified, this defaults to active.
active, draft Configuration of pre-defined phases, each with their own prices and adjustments. Leave unspecified for plans with a single phase.
Show child attributes
Show child attributes
Adjustments for this plan. If the plan has phases, this includes adjustments across all phases of the plan.
Show child attributes
Show child attributes
Response
Created
The Plan resource represents a plan that can be subscribed to by a customer. Plans define the billing behavior of the subscription. You can see more about how to configure prices in the Price resource.
User specified key-value pairs for the resource. If not present, this defaults to an empty dictionary. Individual keys can be removed by setting the value to null, and the entire metadata mapping can be cleared by setting metadata to null.
Show child attributes
Show child attributes
active, archived, draft Show child attributes
Show child attributes
Show child attributes
Show child attributes
- PercentageDiscount
- TrialDiscount
- UsageDiscount
- AmountDiscount
- TieredPercentageDiscount
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Legacy field representing the parent plan if the current plan is a 'child plan', overriding prices from the parent.
Show child attributes
Show child attributes
Legacy field representing the parent plan ID if the current plan is a 'child plan', overriding prices from the parent.
An optional user-defined ID for this plan resource, used throughout the system as an alias for this Plan. Use this field to identify a plan by an existing identifier in your system.
An ISO 4217 currency string or custom pricing unit (credits) for this plan's prices.
An ISO 4217 currency string for which this plan is billed in. Matches currency unless currency is a custom pricing unit.
Determines the difference between the invoice issue date and the due date. A value of "0" here signifies that invoices are due on issue, whereas a value of "30" means that the customer has a month to pay the invoice before its overdue. Note that individual subscriptions or invoices may set a different net terms configuration.
The default memo text on the invoices corresponding to subscriptions on this plan. Note that each subscription may configure its own memo.
Prices for this plan. If the plan has phases, this includes prices across all phases of the plan.
The Price resource represents a price that can be billed on a subscription, resulting in a charge on an invoice in the form of an invoice line item. Prices take a quantity and determine an amount to bill.
Orb supports a few different pricing models out of the box. Each of these models is serialized differently in a given Price object. The model_type field determines the key for the configuration object that is present.
For more on the types of prices, see the core concepts documentation
- UnitPrice
- TieredPrice
- BulkPrice
- BulkWithFiltersPrice
- PackagePrice
- MatrixPrice
- ThresholdTotalAmountPrice
- TieredPackagePrice
- TieredWithMinimumPrice
- GroupedTieredPrice
- GroupedTieredMatrixPrice
- TieredPackageWithMinimumPrice
- PackageWithAllocationPrice
- UnitWithPercentPrice
- MatrixWithAllocationPrice
- MatrixWithThresholdDiscountsPrice
- TieredWithProrationPrice
- UnitWithProrationPrice
- GroupedAllocationPrice
- BulkWithProrationPrice
- GroupedWithProratedMinimumPrice
- GroupedWithMeteredMinimumPrice
- GroupedWithMinMaxThresholdsPrice
- MatrixWithDisplayNamePrice
- GroupedTieredPackagePrice
- MaxGroupTieredPackagePrice
- ScalableMatrixWithUnitPricingPrice
- ScalableMatrixWithTieredPricingPrice
- CumulativeGroupedBulkPrice
- CumulativeGroupedAllocationPrice
- DailyCreditAllowancePrice
- MeteredAllowancePrice
- MinimumCompositePrice
- PercentCompositePrice
- EventOutputPrice
Show child attributes
Show child attributes
Adjustments for this plan. If the plan has phases, this includes adjustments across all phases of the plan.
- PlanPhaseUsageDiscountAdjustment
- PlanPhaseAmountDiscountAdjustment
- PlanPhasePercentageDiscountAdjustment
- PlanPhaseTieredPercentageDiscountAdjustment
- PlanPhaseMinimumAdjustment
- PlanPhaseMaximumAdjustment
Show child attributes
Show child attributes
Was this page helpful?