Delete Subscription Billing Plan
curl --request DELETE \
--url https://api-sandbox.revolv3.com/api/Subscriptions/{subscriptionId}/billing-plans/{subscriptionBillingPlanId} \
--header 'x-revolv3-token: <api-key>'import requests
url = "https://api-sandbox.revolv3.com/api/Subscriptions/{subscriptionId}/billing-plans/{subscriptionBillingPlanId}"
headers = {"x-revolv3-token": "<api-key>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {'x-revolv3-token': '<api-key>'}};
fetch('https://api-sandbox.revolv3.com/api/Subscriptions/{subscriptionId}/billing-plans/{subscriptionBillingPlanId}', 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-sandbox.revolv3.com/api/Subscriptions/{subscriptionId}/billing-plans/{subscriptionBillingPlanId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"x-revolv3-token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api-sandbox.revolv3.com/api/Subscriptions/{subscriptionId}/billing-plans/{subscriptionBillingPlanId}"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("x-revolv3-token", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://api-sandbox.revolv3.com/api/Subscriptions/{subscriptionId}/billing-plans/{subscriptionBillingPlanId}")
.header("x-revolv3-token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-sandbox.revolv3.com/api/Subscriptions/{subscriptionId}/billing-plans/{subscriptionBillingPlanId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["x-revolv3-token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"subscriptionId": 1,
"customerId": 1,
"merchantSubscriptionRefId": "1234-5678-9101",
"networkTransactionId": null,
"billingIntervalType": "Months",
"billingIntervalCount": 1,
"subscriptionStatusType": "Current",
"subscriptionCancelType": "Immediate",
"initialBillDate": "9/1/2026",
"nextBillDate": "10/1/2026",
"taxAddress": null,
"paymentMethodIds": [
1,
2
],
"cancelledAt": null,
"billingPlans": [
{
"subscriptionBillingPlanId": 1,
"subscriptionId": 0,
"name": "Billing Plan 1",
"value": 10.99,
"startDate": "9/1/2026",
"cyclesRemaining": -1,
"cycleCount": 0,
"valueType": "Standard"
},
{
"subscriptionBillingPlanId": 2,
"subscriptionId": 0,
"name": "Billing Plan 2",
"value": 14.99,
"startDate": "10/1/2026",
"cyclesRemaining": 12,
"cycleCount": 0,
"valueType": "Standard"
}
],
"message": null,
"paymentProcessor": null,
"processorMerchantId": null,
"processorRawResponse": null,
"currency": null,
"responseMessage": null,
"responseCode": null
}{
"message": "Attempted to perform an unauthorized operation."
}{
"message": "Unable to find an entity with the provided data."
}Subscriptions
Delete Subscription Billing Plan
Deletes a subscription billing plan that is no longer needed. This operation is allowed only if the plan is not currently associated with any active subscriptions.
It’s typically used during cleanup, testing, or deprecation of old pricing tiers. Attempting to delete a plan that is still in use will result in an error.
DELETE
/
api
/
Subscriptions
/
{subscriptionId}
/
billing-plans
/
{subscriptionBillingPlanId}
Delete Subscription Billing Plan
curl --request DELETE \
--url https://api-sandbox.revolv3.com/api/Subscriptions/{subscriptionId}/billing-plans/{subscriptionBillingPlanId} \
--header 'x-revolv3-token: <api-key>'import requests
url = "https://api-sandbox.revolv3.com/api/Subscriptions/{subscriptionId}/billing-plans/{subscriptionBillingPlanId}"
headers = {"x-revolv3-token": "<api-key>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {'x-revolv3-token': '<api-key>'}};
fetch('https://api-sandbox.revolv3.com/api/Subscriptions/{subscriptionId}/billing-plans/{subscriptionBillingPlanId}', 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-sandbox.revolv3.com/api/Subscriptions/{subscriptionId}/billing-plans/{subscriptionBillingPlanId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"x-revolv3-token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api-sandbox.revolv3.com/api/Subscriptions/{subscriptionId}/billing-plans/{subscriptionBillingPlanId}"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("x-revolv3-token", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://api-sandbox.revolv3.com/api/Subscriptions/{subscriptionId}/billing-plans/{subscriptionBillingPlanId}")
.header("x-revolv3-token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-sandbox.revolv3.com/api/Subscriptions/{subscriptionId}/billing-plans/{subscriptionBillingPlanId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["x-revolv3-token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"subscriptionId": 1,
"customerId": 1,
"merchantSubscriptionRefId": "1234-5678-9101",
"networkTransactionId": null,
"billingIntervalType": "Months",
"billingIntervalCount": 1,
"subscriptionStatusType": "Current",
"subscriptionCancelType": "Immediate",
"initialBillDate": "9/1/2026",
"nextBillDate": "10/1/2026",
"taxAddress": null,
"paymentMethodIds": [
1,
2
],
"cancelledAt": null,
"billingPlans": [
{
"subscriptionBillingPlanId": 1,
"subscriptionId": 0,
"name": "Billing Plan 1",
"value": 10.99,
"startDate": "9/1/2026",
"cyclesRemaining": -1,
"cycleCount": 0,
"valueType": "Standard"
},
{
"subscriptionBillingPlanId": 2,
"subscriptionId": 0,
"name": "Billing Plan 2",
"value": 14.99,
"startDate": "10/1/2026",
"cyclesRemaining": 12,
"cycleCount": 0,
"valueType": "Standard"
}
],
"message": null,
"paymentProcessor": null,
"processorMerchantId": null,
"processorRawResponse": null,
"currency": null,
"responseMessage": null,
"responseCode": null
}{
"message": "Attempted to perform an unauthorized operation."
}{
"message": "Unable to find an entity with the provided data."
}Authorizations
Path Parameters
Required range:
1 <= x <= 1000000000Required range:
1 <= x <= 1000000000Response
OK
Required range:
1 <= x <= 1000000000Required range:
1 <= x <= 1000000000Maximum string length:
100Maximum string length:
100Maximum string length:
50Required range:
1 <= x <= 1000000000Maximum string length:
50Maximum string length:
50Maximum string length:
20Maximum string length:
20Show child attributes
Show child attributes
Maximum string length:
40Show child attributes
Show child attributes
Maximum string length:
500Maximum string length:
100Maximum string length:
100Maximum string length:
10000Maximum string length:
3Maximum string length:
500Maximum string length:
10
