curl --request GET \
--url https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products"
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', 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",
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"
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")
.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")
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\": \"List\", \"data\": [ { \"object\": \"Product\", \"id\": \"prod_496968\", \"vid\": \"94f830e53ae99325ff66256ba8a6b5d9af974e82\", \"created\": \"2022-03-31T11:47:21+00:00\", \"status\": \"Active\", \"tax_classification\": \"TaxExempt\", \"prices\": { \"object\": \"List\", \"data\": [ { \"object\": \"ProductPrice\", \"amount\": 2, \"currency\": \"USD\" } ], \"total_count\": 1 } }, { \"object\": \"Product\", \"id\": \"BOOTCAMP_INDIA\", \"vid\": \"57d59f31c92777adfcb4d545f2b9357a51ff35b1\", \"created\": \"2022-04-05T06:58:09+00:00\", \"status\": \"Active\" }, { \"object\": \"Product\", \"id\": \"prod_2234\", \"vid\": \"2462cce831132d80632b91582a4e09c6d6c92ddf\", \"created\": \"2022-04-20T12:02:46+00:00\", \"status\": \"Active\", \"tax_classification\": \"TaxExempt\", \"prices\": { \"object\": \"List\", \"data\": [ { \"object\": \"ProductPrice\", \"amount\": 2, \"currency\": \"USD\" } ], \"total_count\": 1 } }, { \"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 } } ], \"total_count\": 4, \"url\": \"/products\", \"next\": \"/products?starting_after=prod_223456\", \"previous\": \"/products?ending_before=prod_496968\" }"{
"code": "<string>",
"message": "<string>"
}{
"code": "<string>",
"message": "<string>"
}"{ \"object\": \"Error\", \"message\": \"This endpoint does not exist. Check our API docs.\" }"List All Products
Retrieves all Product objects.
curl --request GET \
--url https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/products"
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', 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",
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"
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")
.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")
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\": \"List\", \"data\": [ { \"object\": \"Product\", \"id\": \"prod_496968\", \"vid\": \"94f830e53ae99325ff66256ba8a6b5d9af974e82\", \"created\": \"2022-03-31T11:47:21+00:00\", \"status\": \"Active\", \"tax_classification\": \"TaxExempt\", \"prices\": { \"object\": \"List\", \"data\": [ { \"object\": \"ProductPrice\", \"amount\": 2, \"currency\": \"USD\" } ], \"total_count\": 1 } }, { \"object\": \"Product\", \"id\": \"BOOTCAMP_INDIA\", \"vid\": \"57d59f31c92777adfcb4d545f2b9357a51ff35b1\", \"created\": \"2022-04-05T06:58:09+00:00\", \"status\": \"Active\" }, { \"object\": \"Product\", \"id\": \"prod_2234\", \"vid\": \"2462cce831132d80632b91582a4e09c6d6c92ddf\", \"created\": \"2022-04-20T12:02:46+00:00\", \"status\": \"Active\", \"tax_classification\": \"TaxExempt\", \"prices\": { \"object\": \"List\", \"data\": [ { \"object\": \"ProductPrice\", \"amount\": 2, \"currency\": \"USD\" } ], \"total_count\": 1 } }, { \"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 } } ], \"total_count\": 4, \"url\": \"/products\", \"next\": \"/products?starting_after=prod_223456\", \"previous\": \"/products?ending_before=prod_496968\" }"{
"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.
Query Parameters
A limit on the number of objects to be returned, between 1 and 100.
1 <= x <= 100A cursor for use in pagination. starting_after is an object id that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list.
A cursor for use in pagination. ending_before is an object id that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with obj_bar, your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list.
Filters list for Products by Entitlement id A unique identifier. Optionally, this object can also be identified by its vid. Using a unique custom identifier is strongly encouraged.
128Filters list for Products in a given status
Filters list of Products by Account id or vid that have Purchased that Product A unique identifier. Optionally, this object can also be identified by its vid. Using a unique custom identifier is strongly encouraged.
128If filtering by Account this also returns Children Accounts
Response
JSON A list array with a data property that contains an array of up to limit Products, starting after the specified starting_after Product (or ending before the specified ending_before Product). Each entry in the array is a full Product object. If no more Products are available, the resulting array will be empty. This request should never throw an error. A list of Product objects matching the query. Also:
-
“total_count”: Integer count of the number of Product in the returned list.
-
“url”: The query string provided in the request
-
“next”: The route (partial URL) to the next Product object (string to select the “next”); included vid should match that of the last object returned here
-
“previous”: The route (partial URL) to the previous Product object (string to select the “previous”); included vid should match that of the first object returned here
List Integer count of the number of items in the returned list.
Show child attributes
Show child attributes
The query string provided in the request
The route (partial URL) to the next Product object (string to select the “next”); included id should match that of the last object returned here.
The route (partial URL) to the previous Product object (string to select the “previous”); included id should match that of the first object returned here.

