List Products

List the products in the catalog. This provides a little more detail than the summary list, and will take longer to respond.

URL Parameters

PropertyTypeDescriptionRequired
includePricingBooleanFalse by default. If set to true, the returned products will include additional data regarding pricing when available.Optional
includeGlCodeBooleanFalse by default. If set to true, the returned products will include GL code data in the response.Optional

This call supports string filtering (Read More) and datetime/numeric range filtering (Read More)
&query=parameterName:Value

Parameter NameAcceptable ValuesParameter NameAcceptable Values
availableForPurchaseBooleanisTrackingItemsBoolean
avalaraItemCodeStringmodifiedTimestampDate Range
avalaraTaxCodeStringnameString
codeStringnetsuiteItemIdString
createdTimestampDate RangeproductTypePhysicalGood, RecurringService, OneTimecharge
deletableBooleanquantityDecimal Range
descriptionStringsalesforceIdString
glCode.CodeStringstatusActive, Retired
glCode.NameStringtaxExemptBoolean

This call supports pagination (Read More)
&pageSize=100&pageNumber=0
This call supports sorting (Read More)
&sortOrder=Ascending or &sortOrder=Descending
&sortExpression=expression

Examples
curl -X GET "https://secure.fusebill.com/v1/Products" \
	-H "Content-Type: application/json" \
	-H "Authorization: Basic {APIKey}"
//Setup API key
string apiKey = "{APIKey}";
//Configure URI
WebRequest request = WebRequest.Create("HTTPS://secure.fusebill.com/v1/Products?query={query}&pageSize=10&pageNumber=0");
//Add Content type
request.ContentType = "application/json";
//Add Api key authorization
request.Headers.Add(HttpRequestHeader.Authorization, "Basic " + apiKey);
//Set request method
request.Method = "GET";
//Perform the request
var httpResponse = (HttpWebResponse)request.GetResponse();
//Record the response from our request
var result = "";
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
  result = streamReader.ReadToEnd();
}
#Import library Requests
import requests
#Pass in a dictionary to the Headers parameter
headers = {'Authorization' : 'Basic {APIKey}', 'Content-Type' : 'application/json'}
#Pass in your URI and Headers
r = requests.get('https://secure.fusebill.com/v1/Products', headers=headers)
print(r.content)
Response
[
  { 
     "code":"licenses",
     "name":"Licenses",
     "description":null,
     "productType":"RecurringService",
     "status":"Active",
     "taxExempt":false,
     "orderToCashCycle":null,
     "availableForPurchase":false,
     "isTrackingItems":false,
     "quantity":null,
     "avalaraItemCode":null,
     "avalaraTaxCode":"O0000000",
     "glCode":"",
     "deletable":false,
     "id":14935,
     "uri":"https://secure.fusebill.com/v1/Products/14935"
  }
]
{
    "ErrorId": 0,
    "HttpStatusCode": 400,
    "Errors": [
        {
            "Key": "Api Error",
            "Value": "Bad request, the query is not valid.  Please check your request and try again."
        }
    ]
}
Language
Authorization