September 2026
1 min
New fields and parameters on existing endpoints
- GET /v3/promotions and GET /v3/members/{memberIdentifier}/promotions - Added a read-only promotionGroup object to the Promotion schema. A promotion belongs to at most one group, so the field is a single nullable object.
- New PromotionGroup schema: promotionGroupId, name, description, statusCode (PromotionGroupStatus), typeCode (PromotionGroupType), limit, and promotions.
- New PromotionGroupEntry schema: promotionId, promotionCode, primaryRule, autoRegister, and displaySequenceNum.
- GET member payment cards - Added a read-only productTypeDescription string, the human-readable description of the credit card product type.
- PATCH /v3/members/{memberIdentifier} (patchMemberProfile) - Added an optional async query parameter (default false). When true, the request runs as a background task and returns 202 Accepted with an identifier to track status. Requires the api:async-task:create scope.
- PATCH /v3/members/{memberIdentifier} (patchMemberProfile) - Added an enrollmentDate field (date, nullable). Setting it to null is ignored and does not clear the existing date. Requires the api:member-enroll-date:modify scope; requests without it return 403.
- GET /v3/segments - Added pageNumber (default 1) and pageSize (default 500, maximum 500) query parameters. The response is now a FindSegmentsResponse object with a pageInfo property instead of a plain array.
- Segment schema - Added read-only fields, including entryBonusRule, cancellationBonusRule, used, createdDate, createUserId, and createUserName.
- Create and update segment - name, typeCode, and statusCode are now required, and statusCode defaults to ACTIVE on create.
- Redemption rule endpoints - The externalCode field and query parameter were renamed to groupCode in requests, responses, and search.
Removed endpoints
Removed | Replacement |
|---|---|
PUT /v3/members/{memberIdentifier}/member-enrollment-date (updateMemberEnrollmentDate) | PATCH /v3/members/{memberIdentifier} with the enrollmentDate field. Requires api:member-enroll-date:modify. |
Entitlement changes
- POST /v3/members (enrollMember) - Now requires api:member:enroll instead of api:member:modify. Users with only api:member:modify can no longer enroll members through the API.
Path parameter renames
- POST /v3/members/{memberIdentifier}/transfer - The path parameter was renamed from accountNumber to memberIdentifier, and the sender can now be any supported member identifier (resolved the same way as other member endpoints). Raw requests are unaffected; SDK-generated clients need to update the parameter name.
Behavior changes without a schema change
- POST /v3/promotion-rules - Boolean fields in the limits object (for example uniqueAcrossAllCycles) now default to false when omitted. Before, omitting them returned a generic 500 IllegalArgumentException.
- PUT /v3/custom-data/{customDataId}/details?externalKey={externalKey} - The query-parameter replacement for the deprecated matrix-parameter path now works.