Download OpenAPI specification:
(v1.0) LS Central member API for Dynamics 365 Business Central. Published by the LS Central AL API pages at /api/lsRetail/member/v1.0.
Read-only projection of the item lines on a wish list. Line mutation (insert, update, remove) is not available through this part — it is done exclusively through the itemModify and modifyQtyUsed bound actions on the parent wishLists entity, which carry the same validation and response codes as the legacy WishListItemModify/WishListModifyQtyUsed SOAP web services.
| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| $top | number <int64> >= 0 Example: $top=50 Show only the first n items |
| $skip | number <int64> >= 0 Skip the first n items |
| $search | string Search items by search phrases |
| $filter | string Filter items by property values |
| $count | boolean Include count of items |
| $orderby | Array of strings unique Order items by property values |
| $select | Array of strings unique Items Enum: "id" "wishListNo" "lineNo" "itemNo" "variantCode" "quantity" "unitOfMeasureCode" "isDeal" "barcode" "purchasedQty" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Items Value: "wishList" Expand related entities |
{- "value": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- { }
], - "wishListLinks": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
]
}
}
]
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| wishListLine-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of wishListLine |
| $select | Array of strings unique Items Enum: "id" "wishListNo" "lineNo" "itemNo" "variantCode" "quantity" "unitOfMeasureCode" "isDeal" "barcode" "purchasedQty" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Items Value: "wishList" Expand related entities |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- { }
], - "wishListLinks": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
]
}
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| wishList-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of wishList |
| $top | number <int64> >= 0 Example: $top=50 Show only the first n items |
| $skip | number <int64> >= 0 Skip the first n items |
| $search | string Search items by search phrases |
| $filter | string Filter items by property values |
| $count | boolean Include count of items |
| $orderby | Array of strings unique Order items by property values |
| $select | Array of strings unique Items Enum: "id" "wishListNo" "lineNo" "itemNo" "variantCode" "quantity" "unitOfMeasureCode" "isDeal" "barcode" "purchasedQty" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Items Value: "wishList" Expand related entities |
{- "value": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- { }
], - "wishListLinks": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
]
}
}
]
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| wishList-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of wishList |
| wishListLine-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of wishListLine |
| $select | Array of strings unique Items Enum: "id" "wishListNo" "lineNo" "itemNo" "variantCode" "quantity" "unitOfMeasureCode" "isDeal" "barcode" "purchasedQty" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Items Value: "wishList" Expand related entities |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- { }
], - "wishListLinks": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
]
}
}Read-only projection of the member/card links on a wish list. Link mutation (insert, update) is not available through this part — it is done exclusively through the linking bound action on the parent wishLists entity, which carries the same validation as the legacy WishListLinking SOAP web service. Note: owner here is a Boolean ownership flag — a different meaning than the derived owner name Text field on the parent wishLists entity. cardNo is filterable and is the intended way to look up which wish lists a given card is linked to: query this entity with $filter=cardNo eq ''...'' to get the matching wish list numbers, then follow up with a wishLists?$filter=no in (...) call (optionally adding $expand=wishListLines,wishListLinks for full detail) to retrieve those wish lists.
| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| $top | number <int64> >= 0 Example: $top=50 Show only the first n items |
| $skip | number <int64> >= 0 Skip the first n items |
| $search | string Search items by search phrases |
| $filter | string Filter items by property values |
| $count | boolean Include count of items |
| $orderby | Array of strings unique Order items by property values |
| $select | Array of strings unique Items Enum: "id" "wishListNo" "cardNo" "owner" "status" "canEdit" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Items Value: "wishList" Expand related entities |
{- "value": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
], - "wishListLinks": [
- { }
]
}
}
]
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| wishListLink-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of wishListLink |
| $select | Array of strings unique Items Enum: "id" "wishListNo" "cardNo" "owner" "status" "canEdit" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Items Value: "wishList" Expand related entities |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
], - "wishListLinks": [
- { }
]
}
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| wishList-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of wishList |
| $top | number <int64> >= 0 Example: $top=50 Show only the first n items |
| $skip | number <int64> >= 0 Skip the first n items |
| $search | string Search items by search phrases |
| $filter | string Filter items by property values |
| $count | boolean Include count of items |
| $orderby | Array of strings unique Order items by property values |
| $select | Array of strings unique Items Enum: "id" "wishListNo" "cardNo" "owner" "status" "canEdit" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Items Value: "wishList" Expand related entities |
{- "value": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
], - "wishListLinks": [
- { }
]
}
}
]
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| wishList-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of wishList |
| wishListLink-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of wishListLink |
| $select | Array of strings unique Items Enum: "id" "wishListNo" "cardNo" "owner" "status" "canEdit" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Items Value: "wishList" Expand related entities |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
], - "wishListLinks": [
- { }
]
}
}Exposes member wish lists — header, item lines, and member/card links — as an OData v4 entity, replacing the legacy WishListGet/WishListCreate/WishListDeleteByID/WishListItemModify/WishListLinking/WishListModifyQtyUsed SOAP web services (all six remain available unchanged for the duration of the coexistence window). All reads and writes delegate to the same "LSC Wish List Service" facade the legacy services use, so persisted results and validation match exactly. Six behaviors are non-standard for a REST API and are called out here so consumers are not surprised: (1) GET wishLists(id) is a MUTATING read — fetching a single wish list by id increments its noOfTimesVisited counter, exactly as the legacy WishListGet.GetWishListByID does; a list GET (no key) does not increment. A PATCH wishLists(id) (rename) resolves the entity via the identical key-based fetch as GET wishLists(id) — there is no separate code path that binds fields before that fetch runs — so a successful PATCH also increments noOfTimesVisited, in addition to persisting the name change; live HTTP testing confirmed (reproducibly, twice) this is by +3 per PATCH, not +1, because BC''s real OData PATCH-by-key pipeline performs multiple internal record fetches (key resolution, If-Match/ETag validation, response-body construction), each independently triggering the same mutating-read side effect as a GET. The exact magnitude (3, on this platform version) is a platform implementation detail, not a guaranteed, stable API contract — callers should not hard-code an assumption of exactly 3, only that the counter advances by more than the single-GET amount on a rename. This is expected, accepted behavior, not a bug; callers should not be surprised to see the counter advance on a rename. (2) Creation is a TWO-CALL model: POST wishLists creates the header plus a single owner link from the required cardNo input, then item lines are added afterwards via the itemModify action — there is no single-call deep-insert of lines. (3) The lines and links parts are READ-ONLY projections ($expand only); all line and link mutation is done exclusively through the itemModify and linking bound actions, which carry the same validation and response codes as the legacy operations. The linking action''s status parameter is passed as a plain string matching one of the enum value names — Requesting, Active, Blocked, or Remove — not an OData enum member. (4) The word "owner" means two different things on two different entities: on the header, owner is a derived Text name of the wish list owner (read-only); on a link, owner is a Boolean ownership flag. They are separate OData entity types so there is no schema collision, but callers should not assume the same shape. (5) PATCH is allowed (ModifyAllowed = true) but ONLY name is actually mutable this way — renaming an existing wish list mirrors the interactive Wish List Card page, which has always allowed editing Name post-creation. calculationType and cardNo are both writable ONLY at create time (POST), via a conditional Editable flag that switches to false the moment the record is fetched for view/modify (OnAfterGetRecord) — so neither is actually changeable via PATCH, even though the entity as a whole now accepts it. (6) To find all wish lists linked to a given membership card, do NOT attempt a single-call $filter on this entity for a linked card — Business Central OData v4 has no lambda/any() support, so filtering a header entity by a field on a related child entity in one call is not possible. Instead use a two-call pattern: first GET wishListLinks?$filter=cardNo eq ''...'' to retrieve the matching wish list numbers, then GET this entity with $filter=no in (...) using those numbers (this requires the $schemaversion=2.1 query parameter — e.g. ?$schemaversion=2.1&$filter=no in (...) — omitting it causes BC to reject the request with ''The OData filter expression is not supported'') — add $expand=wishListLines,wishListLinks to the same call for full detail (lines and links), or omit it for a headers-only result.
| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| $top | number <int64> >= 0 Example: $top=50 Show only the first n items |
| $skip | number <int64> >= 0 Skip the first n items |
| $search | string Search items by search phrases |
| $filter | string Filter items by property values |
| $count | boolean Include count of items |
| $orderby | Array of strings unique Order items by property values |
| $select | Array of strings unique Items Enum: "id" "no" "calculationType" "name" "noOfTimesVisited" "barcode" "contactNo" "owner" "dateCreated" "lastModifiedDateTime" "cardNo" Select properties to be returned |
| $expand | Array of strings unique Items Enum: "wishListLines" "wishListLinks" Expand related entities |
{- "value": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
], - "wishListLinks": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
]
}
]
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
New navigation property
| id | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... |
| no | string <= 20 characters |
(lscWishListCalculationType (null or string)) | |
| name | null or string <= 100 characters |
| noOfTimesVisited | null or number <int32> [ -2147483648 .. 2147483647 ] |
| barcode | null or string <= 22 characters |
| contactNo | null or string <= 20 characters |
| owner | null or string <= 100 characters |
| dateCreated | null or string <date-time> ^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|... |
| lastModifiedDateTime | null or string <date-time> ^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|... |
| cardNo | null or string |
Array of objects (wishListLine) | |
Array of objects (wishListLink) |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
], - "wishListLinks": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
]
}{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
], - "wishListLinks": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
]
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| wishList-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of wishList |
| $select | Array of strings unique Items Enum: "id" "no" "calculationType" "name" "noOfTimesVisited" "barcode" "contactNo" "owner" "dateCreated" "lastModifiedDateTime" "cardNo" Select properties to be returned |
| $expand | Array of strings unique Items Enum: "wishListLines" "wishListLinks" Expand related entities |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
], - "wishListLinks": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
]
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| wishList-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of wishList |
New navigation property values
| id | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... |
| no | string <= 20 characters |
(lscWishListCalculationType (null or string)) | |
| name | null or string <= 100 characters |
| noOfTimesVisited | null or number <int32> [ -2147483648 .. 2147483647 ] |
| barcode | null or string <= 22 characters |
| contactNo | null or string <= 20 characters |
| owner | null or string <= 100 characters |
| dateCreated | null or string <date-time> ^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|... |
| lastModifiedDateTime | null or string <date-time> ^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|... |
| cardNo | null or string |
Array of objects (wishListLine) | |
Array of objects (wishListLink) |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
], - "wishListLinks": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
]
}{- "error": {
- "code": "string",
- "message": "string",
- "target": null,
- "details": [
- {
- "code": "string",
- "message": "string",
- "target": null
}
], - "innerError": { }
}
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| wishList-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of wishList |
| If-Match | string ETag |
{- "error": {
- "code": "string",
- "message": "string",
- "target": null,
- "details": [
- {
- "code": "string",
- "message": "string",
- "target": null
}
], - "innerError": { }
}
}Adds, updates, or removes a wish list item line. Pass lineNo to update or remove an existing line; omit or pass 0 to insert a new line. Errors when the wish list or the affected line cannot be resolved.
| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| wishList-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of wishList |
Action parameters
| itemNo | null or string |
| lineNo | null or number <int32> [ -2147483648 .. 2147483647 ] |
| variantCode | null or string |
| unitOfMeasureCode | null or string |
| quantity | null or number <decimal> |
| barcode | null or string |
| remove | null or boolean Default: false |
{- "itemNo": null,
- "lineNo": null,
- "variantCode": null,
- "unitOfMeasureCode": null,
- "quantity": null,
- "barcode": null,
- "remove": false
}{- "error": {
- "code": "string",
- "message": "string",
- "target": null,
- "details": [
- {
- "code": "string",
- "message": "string",
- "target": null
}
], - "innerError": { }
}
}Inserts or updates a member card link on the wish list (status, edit rights, and contact number). cardNo is required. status must be passed as a plain string matching one of the enum value names: Requesting, Active, Blocked, Remove. Errors when the wish list cannot be resolved.
| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| wishList-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of wishList |
Action parameters
| cardNo | null or string |
| status | null or string |
| canEdit | null or boolean Default: false |
| contactNo | null or string |
{- "cardNo": null,
- "status": null,
- "canEdit": false,
- "contactNo": null
}{- "error": {
- "code": "string",
- "message": "string",
- "target": null,
- "details": [
- {
- "code": "string",
- "message": "string",
- "target": null
}
], - "innerError": { }
}
}Adds a purchased-quantity delta to the wish list line matching itemNo (and variantCode, if provided). Errors when the wish list cannot be resolved.
| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| wishList-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of wishList |
Action parameters
| itemNo | null or string |
| variantCode | null or string |
| purchasedQty | null or number <decimal> |
{- "itemNo": null,
- "variantCode": null,
- "purchasedQty": null
}{- "error": {
- "code": "string",
- "message": "string",
- "target": null,
- "details": [
- {
- "code": "string",
- "message": "string",
- "target": null
}
], - "innerError": { }
}
}Read-only replacement for the SOAP GetCrossSelling operation, which remains available unchanged. Both storeNo and originalItemNo are required scoping inputs; only the eq operator with a single literal value is supported on either - any other operator errors, naming the field. Omitting either required filter raises an error (400 Bad Request) - it does NOT return an empty collection. itemNo is the cross-selling item found for originalItemNo, the item asked about. Results are already filtered to items distributed to storeNo. An unknown storeNo or originalItemNo raises an error carrying the legacy SOAP message verbatim, which also surfaces as 400 Bad Request - not 404 - because BC OData cannot return distinct HTTP status codes from AL Error() calls. id is generated per request - it is not a stable identifier and must not be used for change detection or as an etag.
| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| $top | number <int64> >= 0 Example: $top=50 Show only the first n items |
| $skip | number <int64> >= 0 Skip the first n items |
| $search | string Search items by search phrases |
| $filter | string Filter items by property values |
| $count | boolean Include count of items |
| $orderby | Array of strings unique Order items by property values |
| $select | Array of strings unique Items Enum: "id" "storeNo" "originalItemNo" "itemNo" "itemHasAssemblyBom" Select properties to be returned |
| $expand | Array of strings unique Expand related entities |
{- "value": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "storeNo": null,
- "originalItemNo": null,
- "itemNo": null,
- "itemHasAssemblyBom": null
}
]
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| crossSellingItem-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of crossSellingItem |
| $select | Array of strings unique Items Enum: "id" "storeNo" "originalItemNo" "itemNo" "itemHasAssemblyBom" Select properties to be returned |
| $expand | Array of strings unique Expand related entities |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "storeNo": null,
- "originalItemNo": null,
- "itemNo": null,
- "itemHasAssemblyBom": null
}This entity exposes Member Attribute setup — the reusable attribute definitions (code, description, data type, default value, and whether the attribute is mandatory) used to capture custom member data — as a read-only OData v4 entity, replacing the generic RetailWebServices GET_TABLE_DATA reflection-based read of table "LSC Member Attribute" for LS Omni (the legacy SOAP service remains available unchanged for the duration of the coexistence window). This is a read-only projection: Insert, Modify, and Delete are not supported over the API — attributes continue to be maintained through the LS Central back-office UI.
| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| $top | number <int64> >= 0 Example: $top=50 Show only the first n items |
| $skip | number <int64> >= 0 Skip the first n items |
| $search | string Search items by search phrases |
| $filter | string Filter items by property values |
| $count | boolean Include count of items |
| $orderby | Array of strings unique Order items by property values |
| $select | Array of strings unique Items Enum: "id" "code" "description" "attributeType" "defaultValue" "mandatory" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Expand related entities |
{- "value": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": "string",
- "description": null,
- "attributeType": null,
- "defaultValue": null,
- "mandatory": null,
- "lastModifiedDateTime": null
}
]
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| memberAttribute-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of memberAttribute |
| $select | Array of strings unique Items Enum: "id" "code" "description" "attributeType" "defaultValue" "mandatory" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Expand related entities |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": "string",
- "description": null,
- "attributeType": null,
- "defaultValue": null,
- "mandatory": null,
- "lastModifiedDateTime": null
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| mobilePosProfile-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of mobilePosProfile |
| $select | Array of strings unique Items Enum: "id" "code" "description" "attributeType" "defaultValue" "mandatory" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Expand related entities |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": "string",
- "description": null,
- "attributeType": null,
- "defaultValue": null,
- "mandatory": null,
- "lastModifiedDateTime": null
}This entity exposes Member Device registrations — the devices (e.g. mobile apps) registered against a member for authenticated self-service access, including status (Active/Blocked) and blocking details — as a read-only OData v4 entity, replacing the generic RetailWebServices GET_TABLE_DATA reflection-based read of table "LSC Member Device" for LS Omni (the legacy SOAP service remains available unchanged for the duration of the coexistence window). This is a read-only projection: Insert, Modify, and Delete are not supported over the API — devices continue to be maintained through the LS Central back-office UI. IMPORTANT: securityToken carries the device''s live authentication credential. This projection exposes it at parity with the legacy SOAP service, which already exposed the same value via reflection, for the duration of the coexistence window. This codebase currently has a single all-encompassing permission set (LSCentralPermissions) with no narrower grant available for this page alone; assigning that set to an integration principal grants broad LS Central access, not just device-read access. Treat assignment of this permission set as a high-trust grant, not a scoped one, until a dedicated narrower permission set exists.
| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| $top | number <int64> >= 0 Example: $top=50 Show only the first n items |
| $skip | number <int64> >= 0 Skip the first n items |
| $search | string Search items by search phrases |
| $filter | string Filter items by property values |
| $count | boolean Include count of items |
| $orderby | Array of strings unique Order items by property values |
| $select | Array of strings unique Items Enum: "id" "deviceId" "securityToken" "friendlyName" "status" "reasonBlocked" "dateBlocked" "blockedBy" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Expand related entities |
{- "value": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "deviceId": null,
- "securityToken": null,
- "friendlyName": null,
- "status": null,
- "reasonBlocked": null,
- "dateBlocked": null,
- "blockedBy": null,
- "lastModifiedDateTime": null
}
]
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| memberDevice-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of memberDevice |
| $select | Array of strings unique Items Enum: "id" "deviceId" "securityToken" "friendlyName" "status" "reasonBlocked" "dateBlocked" "blockedBy" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Expand related entities |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "deviceId": null,
- "securityToken": null,
- "friendlyName": null,
- "status": null,
- "reasonBlocked": null,
- "dateBlocked": null,
- "blockedBy": null,
- "lastModifiedDateTime": null
}This entity exposes the member loyalty point ledger — the point sale, redemption, expiry, positive and negative adjustment, and transfer entries of a membership card, with their source document, point and remaining-point amounts, expiration date, and the club, scheme, store and POS terminal they originated from — as a read-only OData v4 entity, replacing the generic RetailWebServices GET_TABLE_DATA reflection-based read of table "LSC Member Point Entry". The legacy SOAP service remains available unchanged for the duration of the coexistence window. This is a Phase 1, read-only entity: Insert, Modify and Delete are not supported over the API. Point entries are generated by LS Central''s own point posting routines — POS transaction, sales invoice, credit memo, customer order and point journal posting — and by expiration and point-transfer processing; writing them directly over the API would bypass the point register and remaining-point bookkeeping those routines maintain. All 26 columns of the source table are projected, so every field list a GET_TABLE_DATA caller can request today is available here (31 properties in total, once the id/lastModifiedDateTime system fields and the three ordinal companions below are counted). The legacy GET_TABLE_DATA operation serializes its Option/Enum fields as their numeric ordinal, while this OData entity serializes sourceType, entryType and pointType by member name (platform behavior for OData). To let a consumer migrating off GET_TABLE_DATA keep an ordinal-based mapping, sourceTypeOrdinal, entryTypeOrdinal and pointTypeOrdinal are also projected alongside their named counterparts; these three are computed in memory per row and are not filterable or sortable over OData — filter and sort on the named field instead. This is a transactional ledger that grows without bound, so callers are expected to scope every request: normally $filter on cardNo or accountNo, optionally narrowed by date, with $top for paging. An unfiltered GET returns the entire ledger.
| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| $top | number <int64> >= 0 Example: $top=50 Show only the first n items |
| $skip | number <int64> >= 0 Skip the first n items |
| $search | string Search items by search phrases |
| $filter | string Filter items by property values |
| $count | boolean Include count of items |
| $orderby | Array of strings unique Order items by property values |
| $select | Array of strings unique Items Enum: "id" "entryNo" "sourceType" "sourceTypeOrdinal" "documentNo" "date" "accountNo" "contactNo" "cardNo" "entryType" "entryTypeOrdinal" "pointType" "pointTypeOrdinal" "points" "pointValue" "postingValue" "open" "remainingPoints" "closedByEntry" "closedByPoints" "expirationDate" "memberClub" "memberScheme" "storeNo" "posTerminalNo" "transactionNo" "reasonCode" "postedToGL" "replicationCounter" "description" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Expand related entities |
{- "value": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "entryNo": null,
- "sourceType": "POS_x0020_Transaction",
- "sourceTypeOrdinal": null,
- "documentNo": null,
- "date": null,
- "accountNo": null,
- "contactNo": null,
- "cardNo": null,
- "entryType": null,
- "entryTypeOrdinal": null,
- "pointType": "Award_x0020_Points",
- "pointTypeOrdinal": null,
- "points": null,
- "pointValue": null,
- "postingValue": null,
- "open": null,
- "remainingPoints": null,
- "closedByEntry": null,
- "closedByPoints": null,
- "expirationDate": null,
- "memberClub": null,
- "memberScheme": null,
- "storeNo": null,
- "posTerminalNo": null,
- "transactionNo": null,
- "reasonCode": null,
- "postedToGL": null,
- "replicationCounter": null,
- "description": null,
- "lastModifiedDateTime": null
}
]
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| memberPointEntry-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of memberPointEntry |
| $select | Array of strings unique Items Enum: "id" "entryNo" "sourceType" "sourceTypeOrdinal" "documentNo" "date" "accountNo" "contactNo" "cardNo" "entryType" "entryTypeOrdinal" "pointType" "pointTypeOrdinal" "points" "pointValue" "postingValue" "open" "remainingPoints" "closedByEntry" "closedByPoints" "expirationDate" "memberClub" "memberScheme" "storeNo" "posTerminalNo" "transactionNo" "reasonCode" "postedToGL" "replicationCounter" "description" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Expand related entities |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "entryNo": null,
- "sourceType": "POS_x0020_Transaction",
- "sourceTypeOrdinal": null,
- "documentNo": null,
- "date": null,
- "accountNo": null,
- "contactNo": null,
- "cardNo": null,
- "entryType": null,
- "entryTypeOrdinal": null,
- "pointType": "Award_x0020_Points",
- "pointTypeOrdinal": null,
- "points": null,
- "pointValue": null,
- "postingValue": null,
- "open": null,
- "remainingPoints": null,
- "closedByEntry": null,
- "closedByPoints": null,
- "expirationDate": null,
- "memberClub": null,
- "memberScheme": null,
- "storeNo": null,
- "posTerminalNo": null,
- "transactionNo": null,
- "reasonCode": null,
- "postedToGL": null,
- "replicationCounter": null,
- "description": null,
- "lastModifiedDateTime": null
}This entity exposes Member Scheme setup and configuration — the loyalty scheme record that governs card numbering, discount and price group defaults, club linkage, and upgrade/downgrade thresholds — as a read-only OData v4 entity, replacing the generic RetailWebServices GET_TABLE_DATA reflection-based read of table "LSC Member Scheme" (the legacy SOAP service remains available unchanged for the duration of the coexistence window). This is a Phase 1, read-only entity: Insert, Modify, and Delete are not supported over the API — schemes continue to be maintained through the LS Central back-office UI. Point-balance totals (issued, used, expired, and transferred points) are intentionally NOT exposed by this entity; they are out of scope for this release and may be added later, potentially via a separate action or query. clubDescription is a convenience field resolved by looking up clubCode against "LSC Member Club" — it is not a stored field on "LSC Member Scheme" and will be blank when clubCode is blank or does not resolve to an existing club.
| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| $top | number <int64> >= 0 Example: $top=50 Show only the first n items |
| $skip | number <int64> >= 0 Skip the first n items |
| $search | string Search items by search phrases |
| $filter | string Filter items by property values |
| $count | boolean Include count of items |
| $orderby | Array of strings unique Order items by property values |
| $select | Array of strings unique Items Enum: "id" "code" "description" "startingCardNo" "cardNoLength" "barcodeMask" "clubCode" "clubDescription" "defaultCustDiscGroup" "defaultPriceGroup" "cardNumberSeries" "updateSequence" "minPointForUpgrade" "whenCheckForUpgraded" "bufferDaysBeforeExpire" "pointLimitForDowngrade" "nextScheme" "nextSchemeBenefits" "contactHandling" "cardRegistration" "cardSetupType" "noOfAccounts" "noOfContacts" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Expand related entities |
{- "value": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": "string",
- "description": null,
- "startingCardNo": null,
- "cardNoLength": null,
- "barcodeMask": null,
- "clubCode": null,
- "clubDescription": null,
- "defaultCustDiscGroup": null,
- "defaultPriceGroup": null,
- "cardNumberSeries": null,
- "updateSequence": null,
- "minPointForUpgrade": null,
- "whenCheckForUpgraded": null,
- "bufferDaysBeforeExpire": null,
- "pointLimitForDowngrade": null,
- "nextScheme": null,
- "nextSchemeBenefits": null,
- "contactHandling": "Member_x0020_Contacts_x0020_Only",
- "cardRegistration": "None",
- "cardSetupType": "Club",
- "noOfAccounts": null,
- "noOfContacts": null,
- "lastModifiedDateTime": null
}
]
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| memberScheme-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of memberScheme |
| $select | Array of strings unique Items Enum: "id" "code" "description" "startingCardNo" "cardNoLength" "barcodeMask" "clubCode" "clubDescription" "defaultCustDiscGroup" "defaultPriceGroup" "cardNumberSeries" "updateSequence" "minPointForUpgrade" "whenCheckForUpgraded" "bufferDaysBeforeExpire" "pointLimitForDowngrade" "nextScheme" "nextSchemeBenefits" "contactHandling" "cardRegistration" "cardSetupType" "noOfAccounts" "noOfContacts" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Expand related entities |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": "string",
- "description": null,
- "startingCardNo": null,
- "cardNoLength": null,
- "barcodeMask": null,
- "clubCode": null,
- "clubDescription": null,
- "defaultCustDiscGroup": null,
- "defaultPriceGroup": null,
- "cardNumberSeries": null,
- "updateSequence": null,
- "minPointForUpgrade": null,
- "whenCheckForUpgraded": null,
- "bufferDaysBeforeExpire": null,
- "pointLimitForDowngrade": null,
- "nextScheme": null,
- "nextSchemeBenefits": null,
- "contactHandling": "Member_x0020_Contacts_x0020_Only",
- "cardRegistration": "None",
- "cardSetupType": "Club",
- "noOfAccounts": null,
- "noOfContacts": null,
- "lastModifiedDateTime": null
}Exposes Mobile POS Profiles (table "LSC Member Attribute Setup") as a read-only OData v4 entity. Replaces the legacy RetailWebServices SOAP MobileGetProfiles(profileID, clubID) call; the legacy operation remains available unchanged during the coexistence window. An always-applied filter matches the legacy behavior: Visible Type = Private, Attribute Type = Boolean, and Lookup Type = None. The legacy profileID parameter maps to $filter=code eq ''...'' and the legacy clubID parameter maps to $filter=clubCode eq ''...''; unlike legacy, this entity does not fall back to the Mobile Default Club Code setup value when no club is supplied — callers must filter by an explicit club code. This entity is read-only. Row granularity is one row per (clubCode, code) pair, which can differ from the legacy call''s code-only deduplication for an attribute set up across multiple clubs; parity holds for the club-scoped call real clients make. lastModifiedDateTime reflects only changes to this Setup row''s own fields, not edits to the underlying Member Attribute record — do not build incremental sync on this field without accounting for that gap.
| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| $top | number <int64> >= 0 Example: $top=50 Show only the first n items |
| $skip | number <int64> >= 0 Skip the first n items |
| $search | string Search items by search phrases |
| $filter | string Filter items by property values |
| $count | boolean Include count of items |
| $orderby | Array of strings unique Order items by property values |
| $select | Array of strings unique Items Enum: "id" "code" "clubCode" "description" "attributeType" "defaultValue" "mandatory" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Items Value: "memberAttribute" Expand related entities |
{- "value": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": null,
- "clubCode": null,
- "description": null,
- "attributeType": null,
- "defaultValue": null,
- "mandatory": null,
- "lastModifiedDateTime": null,
- "memberAttribute": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": "string",
- "description": null,
- "attributeType": null,
- "defaultValue": null,
- "mandatory": null,
- "lastModifiedDateTime": null
}
}
]
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| mobilePosProfile-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of mobilePosProfile |
| $select | Array of strings unique Items Enum: "id" "code" "clubCode" "description" "attributeType" "defaultValue" "mandatory" "lastModifiedDateTime" Select properties to be returned |
| $expand | Array of strings unique Items Value: "memberAttribute" Expand related entities |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": null,
- "clubCode": null,
- "description": null,
- "attributeType": null,
- "defaultValue": null,
- "mandatory": null,
- "lastModifiedDateTime": null,
- "memberAttribute": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": "string",
- "description": null,
- "attributeType": null,
- "defaultValue": null,
- "mandatory": null,
- "lastModifiedDateTime": null
}
}| $top | number <int64> >= 0 Example: $top=50 Show only the first n items |
| $skip | number <int64> >= 0 Skip the first n items |
| $search | string Search items by search phrases |
| $filter | string Filter items by property values |
| $count | boolean Include count of items |
| $orderby | Array of strings unique Order items by property values |
| $select | Array of strings unique Items Enum: "id" "systemVersion" "timestamp" "name" "displayName" "businessProfileId" "systemCreatedAt" "systemCreatedBy" "systemModifiedAt" "systemModifiedBy" Select properties to be returned |
| $expand | Array of strings unique Items Enum: "wishLists" "wishListLines" "wishListLinks" "memberSchemes" "memberPointEntries" "mobilePosProfiles" "memberAttributes" "memberDevices" "crossSellingItems" Expand related entities |
{- "value": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "systemVersion": null,
- "timestamp": null,
- "name": null,
- "displayName": null,
- "businessProfileId": null,
- "systemCreatedAt": null,
- "systemCreatedBy": null,
- "systemModifiedAt": null,
- "systemModifiedBy": null,
- "wishLists": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
], - "wishListLinks": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
]
}
], - "wishListLines": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- { }
], - "wishListLinks": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
]
}
}
], - "wishListLinks": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
], - "wishListLinks": [
- { }
]
}
}
], - "memberSchemes": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": "string",
- "description": null,
- "startingCardNo": null,
- "cardNoLength": null,
- "barcodeMask": null,
- "clubCode": null,
- "clubDescription": null,
- "defaultCustDiscGroup": null,
- "defaultPriceGroup": null,
- "cardNumberSeries": null,
- "updateSequence": null,
- "minPointForUpgrade": null,
- "whenCheckForUpgraded": null,
- "bufferDaysBeforeExpire": null,
- "pointLimitForDowngrade": null,
- "nextScheme": null,
- "nextSchemeBenefits": null,
- "contactHandling": "Member_x0020_Contacts_x0020_Only",
- "cardRegistration": "None",
- "cardSetupType": "Club",
- "noOfAccounts": null,
- "noOfContacts": null,
- "lastModifiedDateTime": null
}
], - "memberPointEntries": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "entryNo": null,
- "sourceType": "POS_x0020_Transaction",
- "sourceTypeOrdinal": null,
- "documentNo": null,
- "date": null,
- "accountNo": null,
- "contactNo": null,
- "cardNo": null,
- "entryType": null,
- "entryTypeOrdinal": null,
- "pointType": "Award_x0020_Points",
- "pointTypeOrdinal": null,
- "points": null,
- "pointValue": null,
- "postingValue": null,
- "open": null,
- "remainingPoints": null,
- "closedByEntry": null,
- "closedByPoints": null,
- "expirationDate": null,
- "memberClub": null,
- "memberScheme": null,
- "storeNo": null,
- "posTerminalNo": null,
- "transactionNo": null,
- "reasonCode": null,
- "postedToGL": null,
- "replicationCounter": null,
- "description": null,
- "lastModifiedDateTime": null
}
], - "mobilePosProfiles": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": null,
- "clubCode": null,
- "description": null,
- "attributeType": null,
- "defaultValue": null,
- "mandatory": null,
- "lastModifiedDateTime": null,
- "memberAttribute": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": "string",
- "description": null,
- "attributeType": null,
- "defaultValue": null,
- "mandatory": null,
- "lastModifiedDateTime": null
}
}
], - "memberAttributes": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": "string",
- "description": null,
- "attributeType": null,
- "defaultValue": null,
- "mandatory": null,
- "lastModifiedDateTime": null
}
], - "memberDevices": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "deviceId": null,
- "securityToken": null,
- "friendlyName": null,
- "status": null,
- "reasonBlocked": null,
- "dateBlocked": null,
- "blockedBy": null,
- "lastModifiedDateTime": null
}
], - "crossSellingItems": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "storeNo": null,
- "originalItemNo": null,
- "itemNo": null,
- "itemHasAssemblyBom": null
}
]
}
]
}| company-id required | string <uuid> ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}... The unique identifier of company |
| $select | Array of strings unique Items Enum: "id" "systemVersion" "timestamp" "name" "displayName" "businessProfileId" "systemCreatedAt" "systemCreatedBy" "systemModifiedAt" "systemModifiedBy" Select properties to be returned |
| $expand | Array of strings unique Items Enum: "wishLists" "wishListLines" "wishListLinks" "memberSchemes" "memberPointEntries" "mobilePosProfiles" "memberAttributes" "memberDevices" "crossSellingItems" Expand related entities |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "systemVersion": null,
- "timestamp": null,
- "name": null,
- "displayName": null,
- "businessProfileId": null,
- "systemCreatedAt": null,
- "systemCreatedBy": null,
- "systemModifiedAt": null,
- "systemModifiedBy": null,
- "wishLists": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
], - "wishListLinks": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
]
}
], - "wishListLines": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- { }
], - "wishListLinks": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
]
}
}
], - "wishListLinks": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "cardNo": null,
- "owner": null,
- "status": "Requesting",
- "canEdit": null,
- "lastModifiedDateTime": null,
- "wishList": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "no": "string",
- "calculationType": "Basket",
- "name": null,
- "noOfTimesVisited": null,
- "barcode": null,
- "contactNo": null,
- "owner": null,
- "dateCreated": null,
- "lastModifiedDateTime": null,
- "cardNo": null,
- "wishListLines": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "wishListNo": null,
- "lineNo": null,
- "itemNo": null,
- "variantCode": null,
- "quantity": null,
- "unitOfMeasureCode": null,
- "isDeal": null,
- "barcode": null,
- "purchasedQty": null,
- "lastModifiedDateTime": null,
- "wishList": { }
}
], - "wishListLinks": [
- { }
]
}
}
], - "memberSchemes": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": "string",
- "description": null,
- "startingCardNo": null,
- "cardNoLength": null,
- "barcodeMask": null,
- "clubCode": null,
- "clubDescription": null,
- "defaultCustDiscGroup": null,
- "defaultPriceGroup": null,
- "cardNumberSeries": null,
- "updateSequence": null,
- "minPointForUpgrade": null,
- "whenCheckForUpgraded": null,
- "bufferDaysBeforeExpire": null,
- "pointLimitForDowngrade": null,
- "nextScheme": null,
- "nextSchemeBenefits": null,
- "contactHandling": "Member_x0020_Contacts_x0020_Only",
- "cardRegistration": "None",
- "cardSetupType": "Club",
- "noOfAccounts": null,
- "noOfContacts": null,
- "lastModifiedDateTime": null
}
], - "memberPointEntries": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "entryNo": null,
- "sourceType": "POS_x0020_Transaction",
- "sourceTypeOrdinal": null,
- "documentNo": null,
- "date": null,
- "accountNo": null,
- "contactNo": null,
- "cardNo": null,
- "entryType": null,
- "entryTypeOrdinal": null,
- "pointType": "Award_x0020_Points",
- "pointTypeOrdinal": null,
- "points": null,
- "pointValue": null,
- "postingValue": null,
- "open": null,
- "remainingPoints": null,
- "closedByEntry": null,
- "closedByPoints": null,
- "expirationDate": null,
- "memberClub": null,
- "memberScheme": null,
- "storeNo": null,
- "posTerminalNo": null,
- "transactionNo": null,
- "reasonCode": null,
- "postedToGL": null,
- "replicationCounter": null,
- "description": null,
- "lastModifiedDateTime": null
}
], - "mobilePosProfiles": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": null,
- "clubCode": null,
- "description": null,
- "attributeType": null,
- "defaultValue": null,
- "mandatory": null,
- "lastModifiedDateTime": null,
- "memberAttribute": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": "string",
- "description": null,
- "attributeType": null,
- "defaultValue": null,
- "mandatory": null,
- "lastModifiedDateTime": null
}
}
], - "memberAttributes": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "code": "string",
- "description": null,
- "attributeType": null,
- "defaultValue": null,
- "mandatory": null,
- "lastModifiedDateTime": null
}
], - "memberDevices": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "deviceId": null,
- "securityToken": null,
- "friendlyName": null,
- "status": null,
- "reasonBlocked": null,
- "dateBlocked": null,
- "blockedBy": null,
- "lastModifiedDateTime": null
}
], - "crossSellingItems": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "storeNo": null,
- "originalItemNo": null,
- "itemNo": null,
- "itemHasAssemblyBom": null
}
]
}