If you’re a company that sells multiple product lines then each product line or service is an item family in the Chargebee API. For example, if you are a SaaS company that offers separate products for project management, content collaboration, and customer support. Each of those can be an item family under which the various plans, addons and charges can be the items.
Item families compartmentalize items such that only items belonging to the same family can be part of any given subscription.
Note:
You must have the Product Families enabled for your site to be able to set up item families.
Sample item family [ JSON ]
{
"description": "Acme Inc Family",
"id": "acme-inc",
"name": "Acme Inc Family",
"resource_version": 1576400459324,
"updated_at": 1576400459
}
API Index URL GET
https://{site}.chargebee.com/api/v2/item_families
Model Class
ChargeBee.Models.ItemFamily
string, max chars=50 The identifier for the item family. It is unique and immutable.
string, max chars=50 A unique display name for the item family. This is visible only in Chargebee and not to customers.
optional, string, max chars=500 Description of the item family. This is visible only in Chargebee and not to customers.
optional, enumerated string Status of the item family. Possible values are
ActiveThe item family is active and can be used to create new items.DeletedThe item family has been deleted and cannot be used to create new items. The id
and name
can be reused to create a new item family.
ActiveThe item family is active and can be used to create new items.DeletedThe item family has been deleted and cannot be used to create new items. The id
and name
can be reused to create a new item family.
Show all values[+]
optional, long The version number of this resource. For every change made to the resource, resource_version
is updated with a new timestamp in milliseconds.
optional, timestamp(UTC) in seconds When the item family was last updated.
optional, enumerated string The subscription channel this object originated from and is maintained in. Possible values are
WebThe object was created (and is maintained) for the web channel directly in Chargebee via API or UI.AppStoreThe object data is synchronized with data from in-app subscription(s) created in Apple App Store. Direct manipulation of this object via UI or API is disallowed.PlayStoreThe object data is synchronized with data from in-app subscription(s) created in Google Play Store. Direct manipulation of this object via UI or API is disallowed. WebThe object was created (and is maintained) for the web channel directly in Chargebee via API or UI.AppStoreThe object data is synchronized with data from in-app subscription(s) created in Apple App Store. Direct manipulation of this object via UI or API is disallowed.PlayStoreThe object data is synchronized with data from in-app subscription(s) created in Google Play Store. Direct manipulation of this object via UI or API is disallowed. Show all values[+]
optional, string, max chars=50 The unique ID of the
business entity of this item_family
. This is applicable only when multiple business entities have been created for the site. The value of this attribute indicates that the resource is specific to the given business entity.
boolean Indicates whether the item family has been deleted or not.
string, max chars=50 The identifier for the item family. It is unique and immutable.
string, max chars=50 A unique display name for the item family. This is visible only in Chargebee and not to customers.
optional, string, max chars=500 Description of the item family. This is visible only in Chargebee and not to customers.
optional, enumerated string Status of the item family. Possible values are
ActiveThe item family is active and can be used to create new items.DeletedThe item family has been deleted and cannot be used to create new items. The id
and name
can be reused to create a new item family.
ActiveThe item family is active and can be used to create new items.DeletedThe item family has been deleted and cannot be used to create new items. The id
and name
can be reused to create a new item family.
Show all values[+]
optional, long The version number of this resource. For every change made to the resource, resource_version
is updated with a new timestamp in milliseconds.
optional, timestamp(UTC) in seconds When the item family was last updated.
optional, enumerated string The subscription channel this object originated from and is maintained in. Possible values are
WebThe object was created (and is maintained) for the web channel directly in Chargebee via API or UI.AppStoreThe object data is synchronized with data from in-app subscription(s) created in Apple App Store. Direct manipulation of this object via UI or API is disallowed.PlayStoreThe object data is synchronized with data from in-app subscription(s) created in Google Play Store. Direct manipulation of this object via UI or API is disallowed. WebThe object was created (and is maintained) for the web channel directly in Chargebee via API or UI.AppStoreThe object data is synchronized with data from in-app subscription(s) created in Apple App Store. Direct manipulation of this object via UI or API is disallowed.PlayStoreThe object data is synchronized with data from in-app subscription(s) created in Google Play Store. Direct manipulation of this object via UI or API is disallowed. Show all values[+]
optional, string, max chars=50 The unique ID of the
business entity of this item_family
. This is applicable only when multiple business entities have been created for the site. The value of this attribute indicates that the resource is specific to the given business entity.
boolean Indicates whether the item family has been deleted or not. This endpoint creates an item family for your product line or service.
This API is not enabled for live sites by default. Please contact
support to get this enabled.
Sample Codes
using ChargeBee.Api;
using ChargeBee.Models;
ApiConfig.Configure("{site}","{site_api_key}");
EntityResult result = ItemFamily.Create()
.Id("acme-inc")
.Description("Acme Inc Family")
.Name("Acme Inc Family")
.Request();
ItemFamily itemFamily = result.ItemFamily;
using ChargeBee.Api;
using ChargeBee.Models;
ApiConfig.Configure("{site}","{site_api_key}");
EntityResult result = ItemFamily.Create()
.Id("acme-inc")
.Description("Acme Inc Family")
.Name("Acme Inc Family")
.Request();
ItemFamily itemFamily = result.ItemFamily;
using ChargeBee.Api;
using ChargeBee.Models;
ApiConfig.Configure("{site}","{site_api_key}");
EntityResult result = ItemFamily.Create()
.Id("acme-inc")
.Description("Acme Inc Family")
.Name("Acme Inc Family")
.Request();
ItemFamily itemFamily = result.ItemFamily;
Sample Result [ JSON ]
Show more...
{
"item_family": {
"description": "Acme Inc Family",
"id": "acme-inc",
"name": "Acme Inc Family",
"resource_version": 1576400459324,
"updated_at": 1576400459
}
}
URL Format
POST
https://{site}.chargebee.com/api/v2/item_families
required, string, max chars=50 The identifier for the item family. Must be unique and is immutable.
required, string, max chars=50 The display name for the item family. Must be unique. This is visible only in Chargebee and not to customers.
optional, string, max chars=500 Description of the item family. This is visible only in Chargebee and not to customers. BusinessEntityId[(val)](val)
optional, string, max chars=50 The unique ID of the business entity for this item_family
. This is applicable only when multiple business entities have been created for the site. When provided, the operation will read or write data associated with the specified business entity. If not provided, the resource will be created at the site level, and the business_entity_id
will not be included in the API response. .
always returned required
Resource object representing item_family
Sample admin console URL
https://{site}.chargebee.com/admin-console/item_families/123x
This endpoint retrieves an item family based on the item family id.
This API is not enabled for live sites by default. Please contact
support to get this enabled.
Sample Codes
using ChargeBee.Api;
using ChargeBee.Models;
ApiConfig.Configure("{site}","{site_api_key}");
EntityResult result = ItemFamily.Retrieve("acme-inc").Request();
ItemFamily itemFamily = result.ItemFamily;
using ChargeBee.Api;
using ChargeBee.Models;
ApiConfig.Configure("{site}","{site_api_key}");
EntityResult result = ItemFamily.Retrieve("acme-inc").Request();
ItemFamily itemFamily = result.ItemFamily;
using ChargeBee.Api;
using ChargeBee.Models;
ApiConfig.Configure("{site}","{site_api_key}");
EntityResult result = ItemFamily.Retrieve("acme-inc").Request();
ItemFamily itemFamily = result.ItemFamily;
Sample Result [ JSON ]
Show more...
{
"item_family": {
"description": "Acme Inc Family",
"id": "acme-inc",
"name": "Acme Inc Family",
"resource_version": 1576400460009,
"updated_at": 1576400460
}
}
URL Format
GET
https://{site}.chargebee.com/api/v2/item_families/{item-family-id}
Method
ItemFamily.Retrieve(<item_family_id>)
always returned required
Resource object representing item_family
Sample admin console URL
https://{site}.chargebee.com/admin-console/item_families/123x
Returns a list of item families satisfying all the conditions specified in the filter parameters below. The list is sorted by date of creation, in descending order.
This API is not enabled for live sites by default. Please contact
support to get this enabled.
Sample Codes
using ChargeBee.Api;
using ChargeBee.Models;
ApiConfig.Configure("{site}","{site_api_key}");
ListResult result = ItemFamily.List()
.Limit(5)
.Request();
foreach (var item in result.List){
ItemFamily itemFamily = item.ItemFamily;
}
using ChargeBee.Api;
using ChargeBee.Models;
ApiConfig.Configure("{site}","{site_api_key}");
ListResult result = ItemFamily.List()
.Limit(5)
.Request();
foreach (var item in result.List){
ItemFamily itemFamily = item.ItemFamily;
}
using ChargeBee.Api;
using ChargeBee.Models;
ApiConfig.Configure("{site}","{site_api_key}");
ListResult result = ItemFamily.List()
.Limit(5)
.Request();
foreach (var item in result.List){
ItemFamily itemFamily = item.ItemFamily;
}
Sample Result [ JSON ]
Show more...
{
"list": [
{
"item_family": {
"description": "Acme Inc Family",
"id": "acme-inc",
"name": "Acme Inc Family",
"resource_version": 1576400459324,
"updated_at": 1576400459
}
},
{..}
]
}
URL Format
GET
https://{site}.chargebee.com/api/v2/item_families
optional, integer, default=10, min=1, max=100 The number of resources to be returned.
optional, string, max chars=1000 Determines your position in the list for pagination. To ensure that the next page is retrieved correctly, always set offset
to the value of next_offset
obtained in the previous iteration of the API call.
optional, string filter
The identifier for the item family. It is unique and immutable. Possible values are :
Supported operators : Is, IsNot, StartsWith, In, NotIn
Example → Id().Is(family-id)
The identifier for the item family. It is unique and immutable.
methods are prefixed like Id<param name>().<operator>(val)
optional, string, min chars=1 filter
Possible values are :
Supported operators :
Example →
IdIsNot().<operator>(val) IdIsNot().<operator>(val) optional, string, min chars=1 filter
Possible values are :
Supported operators :
Example →
IdStartsWith().<operator>(val) IdStartsWith().<operator>(val) optional, string, min chars=1 filter
Possible values are :
Supported operators :
Example →
optional, string filter
Possible values are :
Supported operators :
Example →
IdNotIn().<operator>(val) IdNotIn().<operator>(val) optional, string filter
Possible values are :
Supported operators :
Example →
optional, string filter
A unique display name for the item family. This is visible only in Chargebee and not to customers. Possible values are :
Supported operators : Is, IsNot, StartsWith
Example → Name().Is(family-name)
A unique display name for the item family. This is visible only in Chargebee and not to customers.
methods are prefixed like Name<param name>().<operator>(val)
optional, string, min chars=1 filter
Possible values are :
Supported operators :
Example →
NameIsNot().<operator>(val) NameIsNot().<operator>(val) optional, string, min chars=1 filter
Possible values are :
Supported operators :
Example →
NameStartsWith().<operator>(val) NameStartsWith().<operator>(val) optional, string, min chars=1 filter
Possible values are :
Supported operators :
Example →
UpdatedAt().<operator>(val) UpdatedAt().<operator>(val) optional, timestamp(UTC) in seconds filter
When the item family was last updated. Possible values are :
Supported operators : After, Before, On, Between
Example → UpdatedAt().After(1243545465)
When the item family was last updated.
methods are prefixed like UpdatedAt<param name>().<operator>(val)
UpdatedAtAfter().<operator>(val) UpdatedAtAfter().<operator>(val) optional, timestamp(UTC) in seconds filter
Possible values are :
Supported operators :
Example →
UpdatedAtBefore().<operator>(val) UpdatedAtBefore().<operator>(val) optional, timestamp(UTC) in seconds filter
Possible values are :
Supported operators :
Example →
UpdatedAtOn().<operator>(val) UpdatedAtOn().<operator>(val) optional, timestamp(UTC) in seconds filter
Possible values are :
Supported operators :
Example →
UpdatedAtBetween().<operator>(val) UpdatedAtBetween().<operator>(val) optional, string filter
Possible values are :
Supported operators :
Example →
BusinessEntityId().<operator>(val) BusinessEntityId().<operator>(val) optional, enumerated string filter The unique ID of the
business entity of this item_family
. Learn more about all the scenarios before using this filter.
Possible values are : True, False Supported operators : IsPresent, Is
Example → BusinessEntityId().IsPresent(business_entity_id) The unique ID of the
business entity of this item_family
. Learn more about all the scenarios before using this filter.
methods are prefixed like BusinessEntityId<param name>().<operator>(val) BusinessEntityIdIsPresent().<operator>(val) BusinessEntityIdIsPresent().<operator>(val) optional, enumerated string filter
Possible values are : True, False
Supported operators :
Example →
BusinessEntityIdIs().<operator>(val) BusinessEntityIdIs().<operator>(val) optional, string, min chars=1 filter
Possible values are :
Supported operators :
Example →
IncludeSiteLevelResources().<operator>(val) IncludeSiteLevelResources().<operator>(val) optional, enumerated string filter Default value is true
. To exclude site-level resources in specific cases, set this parameter to false
.
Possible values are : True, False Supported operators : Is
Example → IncludeSiteLevelResources().Is(null) +
IncludeSiteLevelResources
Default value is true
. To exclude site-level resources in specific cases, set this parameter to false
.
methods are prefixed like IncludeSiteLevelResources<param name>().<operator>(val) IncludeSiteLevelResourcesIs().<operator>(val) IncludeSiteLevelResourcesIs().<operator>(val) optional, enumerated string filter
Possible values are : True, False
Supported operators :
Example →
always returned required
Resource object representing item_family
always returned optional, string, max chars=1000
This attribute is returned only if more resources are present. To fetch the next set of resources use this value for the input parameter `offset`.
Sample admin console URL
https://{site}.chargebee.com/admin-console/item_families/123x
This endpoint updates the name and/or description of the item family.
This API is not enabled for live sites by default. Please contact
support to get this enabled.
Sample Codes
using ChargeBee.Api;
using ChargeBee.Models;
ApiConfig.Configure("{site}","{site_api_key}");
EntityResult result = ItemFamily.Update("acme-inc")
.Description("Acme Inc Family")
.Request();
ItemFamily itemFamily = result.ItemFamily;
using ChargeBee.Api;
using ChargeBee.Models;
ApiConfig.Configure("{site}","{site_api_key}");
EntityResult result = ItemFamily.Update("acme-inc")
.Description("Acme Inc Family")
.Request();
ItemFamily itemFamily = result.ItemFamily;
using ChargeBee.Api;
using ChargeBee.Models;
ApiConfig.Configure("{site}","{site_api_key}");
EntityResult result = ItemFamily.Update("acme-inc")
.Description("Acme Inc Family")
.Request();
ItemFamily itemFamily = result.ItemFamily;
Sample Result [ JSON ]
Show more...
{
"item_family": {
"description": "Acme Inc Family",
"id": "acme-inc",
"name": "Acme Inc Family",
"resource_version": 1576400460281,
"updated_at": 1576400460
}
}
URL Format
POST
https://{site}.chargebee.com/api/v2/item_families/{item-family-id}
Method
ItemFamily.Update(<item_family_id>)
optional, string, max chars=50 The display name for the item family. Must be unique. This is visible only in Chargebee and not to customers.
optional, string, max chars=500 Description of the item family. This is visible only in Chargebee and not to customers.
always returned required
Resource object representing item_family
Sample admin console URL
https://{site}.chargebee.com/admin-console/item_families/123x
Deletes an item family, marking its status
as deleted
. This is not allowed if there are active
items under the item family. Once deleted, the id
and name
of the item family can be reused to create a new item family.
This API is not enabled for live sites by default. Please contact
support to get this enabled.
Sample Codes
using ChargeBee.Api;
using ChargeBee.Models;
ApiConfig.Configure("{site}","{site_api_key}");
EntityResult result = ItemFamily.Delete("acme-inc").Request();
ItemFamily itemFamily = result.ItemFamily;
using ChargeBee.Api;
using ChargeBee.Models;
ApiConfig.Configure("{site}","{site_api_key}");
EntityResult result = ItemFamily.Delete("acme-inc").Request();
ItemFamily itemFamily = result.ItemFamily;
using ChargeBee.Api;
using ChargeBee.Models;
ApiConfig.Configure("{site}","{site_api_key}");
EntityResult result = ItemFamily.Delete("acme-inc").Request();
ItemFamily itemFamily = result.ItemFamily;
Sample Result [ JSON ]
Show more...
{
"item_family": {
"description": "Acme Inc Family",
"id": "acme-inc",
"name": "Acme Inc Family",
"object": "item_family",
"resource_version": 1591686231210,
"status": "deleted",
"updated_at": 1591686231
}
}
URL Format
POST
https://{site}.chargebee.com/api/v2/item_families/{item-family-id}/delete
Method
ItemFamily.Delete(<item_family_id>)
always returned required
Resource object representing item_family
Sample admin console URL
https://{site}.chargebee.com/admin-console/item_families/123x