Analytics API
Read CallListHistory1
Returns a list of changes to Bubblehouse API objects.
| Kind | Read API call |
|---|---|
| Method | GET or POST / OPTIONS |
| URL | https://app.bubblehouse.com/api/v20230601/<shop>/ListHistory1 |
| Authentication | Shop Token |
Note that the output is in a tabular data format determined by the format parameter.
Endpoint is self-documented. You may send OPTIONS request to the endpoint URL to observe full list of supported topics and their fields.
Input
-
topicslist requiredComma-separated list of topics you are interested in.
Each topic corresponds to one or more change kind.
Each topic extends base set of values to accomodate different change kinds (see the "Output" section).
Topics are organized hierarchically, meaning, that if you specify topic that has subtopics, then changes matching subtopics would be included.
Endpoint is self-documented. You may send
OPTIONSrequest to the endpoint URL to observe full list of supported topics and their fields.Non-exhaustive list of topics served here as an example:
pts,pts:earned,pts:earned:src,pts:earned:reward,pts:earned:ref,pts:earned:ref:sent,pts:earned:ref:recv, etc. -
The response format you want: JSON, JSONL or CSV.
-
The earliest time of changes that you're interested in.
-
The latest time of changes that you're interested in.
If
live=true, then streaming would stop at the specified time. -
limitinteger optionalThe number of objects to return.
The default limit is 1000 (unless you're streaming), but feel free to use any number here. You can set the limit to -1 or a very large number to disable it; Bubblehouse will be happy to stream the entire history of the shop. If you picked the JSON output format, be careful when processing a potentially huge response this generates.
If
live=true, then streaming would stop at the specified time. -
liveboolean optionalIf true, live-streams new entries instead of stopping when reaching the newest entry. Requires a streaming-friendly output format (JSONL or CSV).
-
indentboolean optionalApplicable only for JSON and JSONL. If true, dotted field names would be expanded into nested objects.
-
dryboolean optionalReturn only bare-minimum information about each event.
Output
-
Unique ID of the change in the Bubblehouse system.
-
Time when the event was recorded in the Bubblehouse system (RFC3339).
-
An enum defining the shape of the change object (ie which other fields are relevant).
-
Determines the exact change that has occurred.
-
chg.descstring requiredA user-visible description of the change, suitable for a history page
-
Unique ID of the subject of change in the Bubblehouse system.
Typically customer, but may be any other object changes for are tracked by the Bubblehouse system.
Use related
subj.typeto correctly identify subject of change. -
Type of the subject of change in the Bubblehouse system.
Typically customer, but may be any other object changes for are tracked by the Bubblehouse system.
-
subj.*any optionalFields specific for given subject type.
Endpoint is self-documented. You may send
OPTIONSrequest to the endpoint URL to observe full list of supported topics and their fields. -
Unique ID of the object caused the change in the Bubblehouse system.
Change type related object that caused given subject to observe given change.
Use related
obj.typeto correctly identify subject of change.For example: For points earned from points source it would be a points source ID. For points lost due to order refund it would be an order ID.
May be empty if no object is currently exposed for given event.
-
Type of the object of change in the Bubblehouse system.
May be empty if no object is currently exposed for given event.
-
obj.*any optionalFields specific for given object type.
Additional fields vary by object type. For vendible redemptions (
chg.kind="vendible_redemption"), the following product and variant fields may be included:obj.product_bhid- Bubblehouse product ID (hex string) of the product associated with the redeemed vendibleobj.product_shopid- External/ecommerce platform product ID (numeric string)obj.variant_bhid- Bubblehouse variant ID (hex string) of the specific variant associated with the vendibleobj.variant_shopid- External/ecommerce platform variant ID (numeric string)Note: Product and variant fields are only present for vendibles that have an associated product variant configured. They will be null or absent for vendibles without variant associations.
Endpoint is self-documented. You may send
OPTIONSrequest to the endpoint URL to observe full list of supported topics and their fields. -
<i>anything</i>any optionalAny other fields associated with the event.
For example: For points-related events Bubblehouse would provide fields such as
pts.delta,pts.amountand others.Endpoint is self-documented. You may send
OPTIONSrequest to the endpoint URL to observe full list of supported topics and their fields.
Specific Errors
| Status | Error | Reason & Examples |
|---|---|---|
| 401 | bad_request |
Global Errors
| Status | Error | Reason & Examples |
|---|---|---|
| 401 | invalid_token |
The provided authentication token is invalid or has expired. |
| 429 | rate_limit_exceeded |
Your usage is over the rate limit. Ensure that you're not making duplicate calls, and contact our team for a rate limit increase. |