Get Catalog List
Description
This service retrieves the catalog of available items for a specific mileage activity. The results can be filtered, sorted, and paginated using optional query parameters.
Request
Restrictions
This service requires an authenticated user and can only be called after a successful consumer login.
Endpoint
GET https://<server-url>/api/v4/mileage/{activity_code}/catalog/itemsPath Parameters
activity_code
String
The unique code for the mileage activity (e.g., "MPOINTS").
Parameters
touchpoint
Query / Header
The identifier for the touchpoint. Use Thalamus-Touchpoint for the header.
token
Query / Header
The authentication token for the API session. Use Thalamus-Token for the header.
name
Query
Optional. Filter items by name.
page
Query
Optional. The page number for pagination.
size
Query
Optional. The number of items to return per page.
tags
Query
Optional. A comma-separated string of tags to filter items.
orderby
Query
Optional. The field to order the results by.
allfields
Query
Optional. A boolean to indicate if all fields should be returned.
description1-5
Query
Optional. Filter items by custom description fields.
Full URL Example
https://<server-url>/api/v4/mileage/MPOINTS/catalog/items?page=1&size=10&tags=food,kitchen&orderby=name&touchpoint=test&token=...Request Body
This request does not have a body.
Response
✅ Successful Response: 200 OK
200 OKA JSON object is returned containing an array of catalog items that match the request criteria. Each item in the items array is an object with the following key fields:
code
String
The unique code for the catalog item.
name
String
The display name of the item.
shortDescription
String
A brief description of the item.
longDescription
String
A detailed description of the item.
itemType
String
The type of item (PHYSICAL_ITEM, VIRTUAL_ITEM, VIRTUAL_VOUCHER_ITEM).
price
Number
The cost of the item in points.
availableStock
Number
The current number of items in stock.
available
Boolean
Indicates if the item is currently available for redemption (considers checkout limit and stock).
beginningDate
Number
The "valid from" date and time (in UNIX Time) set for the item.
expirationDate
Number
The "valid to" date and time (in UNIX Time) set for the item.
checkoutLimitReached
Boolean
Indicates if the current user has reached the checkout limit set for the item.
currentQuota
Number
The quantity available to be checked out by the current user (as per checkout limit).
maxQuotaAvailable
Number
The configured max quantity available for checkout per user.
quotaAvailable
Boolean
Indicates if the current item has checkouts available to the user (as per checkout limit).
maxQuotaAvailableInterval
String
The rate at which the user checkout max quota refreshes. If this attribute shows "Lifetime", the quota does not refresh. The rest of the options include a time interval, such as "Week", "Day", etc.
JSON
{
"items": [
{
"code": "CatalogFisicoCode",
"name": "CatalogFisico",
"shortDescription": "Short description",
"longDescription": "Long description",
"tags": "tagtag",
"smallImageURL": "http://image.com/small.jpg",
"mediumImageURL": "http://image.com/medium.jpg",
"largeImageURL": "http://image.com/large.jpg",
"itemType": "PHYSICAL_ITEM",
"price": 0,
"available": true,
"availableStock": 0,
"chance": false,
"checkoutLimitReached": false
},
{
"code": "VirtualVoucherCode",
"name": "VirtualVoucherItem",
"shortDescription": "A description",
"longDescription": "Descriptioon",
"tags": "Tags",
"smallImageURL": "http://image.com/small.jpg",
"mediumImageURL": "http://image.com/medium.jpg",
"largeImageURL": "http://image.com/large.jpg",
"itemType": "VIRTUAL_VOUCHER_ITEM",
"price": 0,
"available": true,
"availableStock": 9999,
"chance": false,
"checkoutLimitReached": false,
"expirationDate": "1494957060000"
}
]
}❌ Unsuccessful Response: 400 Bad Request
400 Bad RequestReturned if the filter, pagination, or sorting parameters are invalid.
JSON
{
"errors": {
"filter": "InvalidPageAndSize",
"tags": "InvalidFormat",
"orderby": "InvalidFormat"
}
}❌ Unsuccessful Response: 404 Not Found
404 Not FoundReturned if the specified activity_code does not exist or no items are found.
JSON
{
"errors": {
"error.message": "NOT_FOUND"
}
}Last updated
Was this helpful?
