curl --request GET \
--url https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products/{product} \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products/{product}"
headers = {"Authorization": "Basic <encoded-value>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Basic <encoded-value>'}};
fetch('https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products/{product}', 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://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products/{product}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>"
],
]);
$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://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products/{product}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Basic <encoded-value>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products/{product}")
.header("Authorization", "Basic <encoded-value>")
.asString();require 'uri'
require 'net/http'
url = URI("https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products/{product}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Basic <encoded-value>'
response = http.request(request)
puts response.read_body"{ \"object\": \"Product\", \"id\": \"prod_223456\", \"vid\": \"0ebd1640dc27319da98249da1c6441cd95aa9727\", \"created\": \"2022-04-20T12:31:16+00:00\", \"status\": \"Active\", \"tax_classification\": \"TaxExempt\", \"prices\": { \"object\": \"List\", \"data\": [ { \"object\": \"ProductPrice\", \"amount\": 2, \"currency\": \"USD\" } ], \"total_count\": 1 } }"{
"code": "<string>",
"message": "<string>"
}{
"code": "<string>",
"message": "<string>"
}"{ \"object\": \"Error\", \"message\": \"This endpoint does not exist. Check our API docs.\" }"Fetch a Specific Product
Retrieves a specific Product.
curl --request GET \
--url https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products/{product} \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products/{product}"
headers = {"Authorization": "Basic <encoded-value>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Basic <encoded-value>'}};
fetch('https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products/{product}', 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://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products/{product}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>"
],
]);
$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://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products/{product}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Basic <encoded-value>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products/{product}")
.header("Authorization", "Basic <encoded-value>")
.asString();require 'uri'
require 'net/http'
url = URI("https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products/{product}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Basic <encoded-value>'
response = http.request(request)
puts response.read_body"{ \"object\": \"Product\", \"id\": \"prod_223456\", \"vid\": \"0ebd1640dc27319da98249da1c6441cd95aa9727\", \"created\": \"2022-04-20T12:31:16+00:00\", \"status\": \"Active\", \"tax_classification\": \"TaxExempt\", \"prices\": { \"object\": \"List\", \"data\": [ { \"object\": \"ProductPrice\", \"amount\": 2, \"currency\": \"USD\" } ], \"total_count\": 1 } }"{
"code": "<string>",
"message": "<string>"
}{
"code": "<string>",
"message": "<string>"
}"{ \"object\": \"Error\", \"message\": \"This endpoint does not exist. Check our API docs.\" }"Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Path Parameters
The id or the vid of the Product to retrieve.
Response
JSON A full Product object.
The Product object represents a unique CSP product, with its own pricing, description and entitlement assignments. The API allows you to create, fetch, and update products. You can retrieve individual Product objects, as well as a list of all.
Value is “Product”
Product A unique identifier. Optionally, this object can also be identified by its vid. Using a unique custom identifier is strongly encouraged.
128Language-specific product/service descriptions
Show child attributes
Show child attributes
CSPs may define whether they want to declare a product as available to offer.
Active, Suspended A Globally Unique Identifier (GUID) for this object. This value is generated by Vindicia.
128The date/time the object was created.
The tax classification or code for this product.
Goods, Services Show child attributes
Show child attributes
Rate Plans represents a pre-defined rating schedule - tier-based pricing for rated products (e.g. usage). Both pre-paid (aka License-based) and post-paid (metered, aka usage-based) services use pre-defined tiers to rate recorded events. Rate Plans support flat and per-unit pricing, volume discounts, standard consumption-based prices, included units with overage, and maximum/minimum charge limits.
Show child attributes
Show child attributes
The date/time after which this product should be treated as out-of-service.
Metadata are sets of key-value pairs and are useful for storing additional, structured information on an object. This object is used to store a list of keys, which you create and associate with text string values. You use these key-value pairs to store custom data for your own internal tracking purposes, or to store CashBox specific data for defined CashBox purposes.
The metadata field supports key-value pairs with the following limitations:
Keys can be up to 256 characters
Keys can be any string that is needed, except only CashBox can prefix keys with vin:
Values can be up to 1024 characters
In some cases metadata from one object will be inherited automatically from one object to another that is spawned from it. e.g. metadata on a Subscription and SubscriptionItem will be inherited by all Transactions and TransactionItems that result from them.
Entitlements granted by active subscriptions using this product on one or more subscription items.
Show child attributes
Show child attributes
If a Product has other products bundled with it, the Entitlements for the Products in the bundle will be returned
Show child attributes
Show child attributes
Optional “soft descriptor” to send to the payment processor for transactions associated with a subscription using this product.
The Credit object represents a service credit granted to an account or subscription, taking the form of either currency, token, or time amounts.
Show child attributes
Show child attributes
Default (i.e. “List”) prices for the product; one price per currency code. Prices can be overridden at purchase or with modification.
Show child attributes
Show child attributes
Other Products considered “bundled” under this one; purchase of this product’s SKU under a single price, grants the entitlements associated with it and with all bundled products (as of the time of creation).

