Loyalty API

Read Call

DataListOptions1

Lists tenant-configured special-date image choices.

Kind Read API call
Method GET or POST
URL https://app.bubblehouse.com/api/v2023061/<shop>/DataListOptions1
Authentication Customer TokenShop Token

Customer and shop tokens may request only special_date_images. Anonymous callers are denied. No customer identity input is needed.

The catalogue uses tenant settings only, not block or theme image overrides. It includes every nonempty configured image slot in numeric slot order, even when special dates are disabled. Gaps are preserved and choices above 6 are supported. An empty catalogue returns an empty options array.

Send an option’s key unchanged as SpecialDate1.image_choice when updating customer details. Image metadata is read-only: customer writes still accept only image_choice, never an image URL. Clearing a configured image removes its option; replacing an image retains its key and changes its metadata. Fetch the catalogue again to see configuration changes.

The catalogue is not paginated. Omit limit or set it to zero; nonzero values are rejected. subject, venue_id, market_key and selected must be omitted or empty.

Input

  • dataset string required

    Must be special_date_images. All other datasets are denied for public callers.

  • include_images boolean optional

    Defaults to false. If true, each option includes read-only Image1 metadata with a tile-usage variant.

  • filter string optional

    Optional case-insensitive substring filter on the title (for example, Image Choice 7). Leading and trailing whitespace is ignored. Omit to retrieve the complete catalogue.

  • limit integer optional

    Must be omitted or zero. Nonzero limits are rejected instead of truncating this unpaginated catalogue.

Output

  • options array of DataOption1 required

    Matching choices in ascending numeric slot order.

Usage Examples

Retrieve image choices

Request

{
  "dataset": "special_date_images",
  "include_images": true
}

Response

{
  "options": [
    {
      "image": {
        "variants": [
          {
            "url": "https://example.com/uploaded/occasion.png",
            "usages": [
              "tile"
            ]
          }
        ]
      },
      "key": "7",
      "t": "Image Choice 7"
    }
  ]
}

Global Errors

Status Error Reason & Examples
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.

401 invalid_token

The provided authentication token is invalid or has expired.

400 invalid_global_api_version

The global API version you are trying to use has never existed.

400 obsolete_global_api_version

The global API version you are trying to use is no longer supported.

400 inaccessible_global_api_version

The global API version you are trying to use is not enabled on your account.

Previous
CustomerReferrals2