# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Admin API V1 Wish Lists API version: 1.0.0 extends: openapi/optimizely-wishlists-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-10-01' generator: build-phrasing.py label: Generated by API Evangelist operations: 42 - target: $.paths['/api/v1/admin/WishLists'].get update: x-apievangelist-phrasing: intent: List and filter wish lists effect: read questions: - How can I see every wish list in my commerce admin? - Can I filter wish lists by name or sort them by creation date? - Is there a way to count how many wish lists exist without pulling them all? instructions: - text: List all wish lists. - text: List wish lists matching the filter {filter}, top {top} results. slots: filter: query.$filter top: query.$top method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/WishLists'].post update: x-apievangelist-phrasing: intent: Create a wish list effect: write questions: - How do I create a new wish list for a customer through the admin API? - What fields are required when I add a wish list, like name and share option? instructions: - text: Create a wish list named {name} described as {description}, shared by {sharedBy} with share option {shareOption}. slots: name: requestBody.name description: requestBody.description sharedBy: requestBody.sharedBy shareOption: requestBody.shareOption - text: Add a new wish list called {name} for customer {customerId}. slots: name: requestBody.name customerId: requestBody.customerId method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/WishLists({id})'].get update: x-apievangelist-phrasing: intent: Get one wish list by id effect: read questions: - How can I look up a single wish list when I know its id? - Can I expand related products when fetching one wish list? instructions: - text: Show me wish list {id}. slots: id: path.id - text: Fetch wish list {id} with {expand} expanded. slots: id: path.id expand: query.$expand method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/WishLists({id})'].put update: x-apievangelist-phrasing: intent: Replace a wish list entirely effect: write questions: - How do I overwrite every field of an existing wish list in one request? - Will a full replace of a wish list reset fields I leave out? instructions: - text: Replace wish list {id} with name {name}, description {description}, share option {shareOption} and sharer {sharedBy}. slots: id: path.id name: requestBody.name description: requestBody.description shareOption: requestBody.shareOption sharedBy: requestBody.sharedBy - text: Overwrite the whole record of wish list {id}. slots: id: path.id method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/WishLists({id})'].delete update: x-apievangelist-phrasing: intent: Delete one wish list effect: destructive questions: - How do I permanently remove one specific wish list? - Can I guard a wish list delete with an ETag so I don't remove a changed record? instructions: - text: Delete wish list {id}. slots: id: path.id - text: Remove wish list {id} only if its ETag still matches {etag}. slots: id: path.id etag: header.If-Match method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/WishLists({id})'].patch update: x-apievangelist-phrasing: intent: Update some fields of a wish list effect: write questions: - How can I just rename a wish list without resending the whole thing? - Can I change only the activation dates on an existing wish list? instructions: - text: Rename wish list {id} to {name}. slots: id: path.id name: requestBody.name - text: Set wish list {id} to deactivate on {deactivateOn}. slots: id: path.id deactivateOn: requestBody.deactivateOn method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/WishLists/Default.Default()'].get update: x-apievangelist-phrasing: intent: Get default values for a new wish list effect: read questions: - What default values does a brand-new wish list start with? - Where can I get a blank wish list template before creating one? instructions: - text: Fetch the default wish list template. - text: Show the starting defaults the admin API uses for new wish lists. method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/WishLists/Default.archive'].post update: x-apievangelist-phrasing: intent: Archive wish lists with the archive action effect: destructive questions: - How do I archive several wish lists at once using the archive action? - Can I archive old wish lists instead of deleting them outright? instructions: - text: Archive the wish lists {ids} via the archive action. slots: ids: query.ids - text: Call the wish list archive operation for ids {ids}. slots: ids: query.ids method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/WishLists({id})/Default.DynamicProducts()'].get update: x-apievangelist-phrasing: intent: Get a dynamic wish list's products by id effect: read questions: - Which products does a rule-driven dynamic wish list currently resolve to? - How do I call the DynamicProducts function on a wish list id? instructions: - text: Run the DynamicProducts function for wish list {id}. slots: id: path.id - text: Show the rule-generated products of dynamic wish list {id}. slots: id: path.id method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/wishlists({key})/dynamicproducts'].get update: x-apievangelist-phrasing: intent: Get dynamic products via the key route effect: read questions: - Is there a lowercase dynamicproducts route that takes a wish list key? - Can I fetch a dynamic wish list's products by its key instead of the function call? instructions: - text: Get dynamic products for wish list key {key} using the dynamicproducts route. slots: key: path.key - text: Use the key-based route to list products generated for wish list {key}. slots: key: path.key method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/wishlists/archive'].delete update: x-apievangelist-phrasing: intent: Archive wish lists via the DELETE route effect: destructive questions: - Is there a DELETE endpoint that archives wish lists by id list? - Can I archive wish lists with the /wishlists/archive route? instructions: - text: Send the archive DELETE for wish lists {ids}. slots: ids: query.ids - text: Archive wish lists {ids} through the wishlists/archive route. slots: ids: query.ids method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/wishlists/delete'].delete update: x-apievangelist-phrasing: intent: Bulk delete wish lists by ids effect: destructive questions: - How do I delete many wish lists in a single call? - Can I pass a list of ids to wipe multiple wish lists? instructions: - text: Bulk delete wish lists {ids}. slots: ids: query.ids - text: Permanently delete every wish list in {ids}. slots: ids: query.ids method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/wishlists({key})/customeradditions({customerKey})'].get update: x-apievangelist-phrasing: intent: Get a customer addition on a wish list effect: read questions: - How can I check whether a customer was explicitly added to a wish list? - Where do I look up a wish list's customer addition record? instructions: - text: Get customer addition {customerKey} on wish list {key}. slots: key: path.key customerKey: path.customerKey - text: Show whether customer {customerKey} is an added customer of wish list {key}. slots: key: path.key customerKey: path.customerKey method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/wishlists({key})/customerexceptions({customerKey})'].get update: x-apievangelist-phrasing: intent: Get a customer exception on a wish list effect: read questions: - How do I see if a customer is excluded from a wish list? - Can I read one customer exception attached to a specific wish list? instructions: - text: Get customer exception {customerKey} on wish list {key}. slots: key: path.key customerKey: path.customerKey - text: Check if customer {customerKey} is excepted from wish list {key}. slots: key: path.key customerKey: path.customerKey method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/wishlists({key})/customproperties({custompropertyKey})'].get update: x-apievangelist-phrasing: intent: Get a custom property of a wish list effect: read questions: - Where can I read a custom property stored on a wish list? - How do I fetch one custom attribute value from a wish list? instructions: - text: Get custom property {custompropertyKey} of wish list {key}. slots: key: path.key custompropertyKey: path.custompropertyKey - text: Read the custom field {custompropertyKey} on wish list {key}. slots: key: path.key custompropertyKey: path.custompropertyKey method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/wishlists({key})/globalcustomers({customerKey})'].get update: x-apievangelist-phrasing: intent: Get a global customer of a wish list effect: read questions: - How do I look up a customer a global wish list is published to? - Can I verify one global customer assignment on a wish list? instructions: - text: Get global customer {customerKey} for wish list {key}. slots: key: path.key customerKey: path.customerKey - text: Confirm global wish list {key} is assigned to customer {customerKey}. slots: key: path.key customerKey: path.customerKey method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/wishlists({key})/userprofilewishlistfavorites({userprofilewishlistfavoriteKey})'].get update: x-apievangelist-phrasing: intent: Get a user's favorite mark on a wish list effect: read questions: - How can I see whether a user favorited a particular wish list? - Where is a user profile's wish list favorite record stored? instructions: - text: Get favorite record {userprofilewishlistfavoriteKey} on wish list {key}. slots: key: path.key userprofilewishlistfavoriteKey: path.userprofilewishlistfavoriteKey - text: Show the user favorite {userprofilewishlistfavoriteKey} for wish list {key}. slots: key: path.key userprofilewishlistfavoriteKey: path.userprofilewishlistfavoriteKey method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/wishlists({key})/userprofilewishlisthides({userprofilewishlisthideKey})'].get update: x-apievangelist-phrasing: intent: Get a user's hide record on a wish list effect: read questions: - How do I find out if a user has hidden a shared wish list? - Can I read a single wish list hide entry for a user profile? instructions: - text: Get hide record {userprofilewishlisthideKey} on wish list {key}. slots: key: path.key userprofilewishlisthideKey: path.userprofilewishlisthideKey - text: Show whether wish list {key} is hidden by entry {userprofilewishlisthideKey}. slots: key: path.key userprofilewishlisthideKey: path.userprofilewishlisthideKey method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/wishlists({key})/userprofilewishlisttags({userprofilewishlisttagKey})'].get update: x-apievangelist-phrasing: intent: Get a user's tag on a wish list effect: read questions: - Which tag did a user put on a wish list? - How do I read one user profile tag attached to a wish list? instructions: - text: Get tag {userprofilewishlisttagKey} on wish list {key}. slots: key: path.key userprofilewishlisttagKey: path.userprofilewishlisttagKey - text: Show the user tag entry {userprofilewishlisttagKey} for wish list {key}. slots: key: path.key userprofilewishlisttagKey: path.userprofilewishlisttagKey method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/wishlists({key})/wishlistemailschedules({wishlistemailscheduleKey})'].get update: x-apievangelist-phrasing: intent: Get a wish list's email schedule effect: read questions: - When is a wish list scheduled to be emailed out? - How do I read one email schedule configured on a wish list? instructions: - text: Get email schedule {wishlistemailscheduleKey} of wish list {key}. slots: key: path.key wishlistemailscheduleKey: path.wishlistemailscheduleKey - text: Show the send schedule {wishlistemailscheduleKey} for wish list {key}. slots: key: path.key wishlistemailscheduleKey: path.wishlistemailscheduleKey method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/wishlists({key})/wishlistproducts({wishlistproductKey})'].get update: x-apievangelist-phrasing: intent: Get one product line on a wish list effect: read questions: - How can I inspect a single product saved on a wish list? - Where do I read the quantity and details of one wish list product line? instructions: - text: Get product line {wishlistproductKey} on wish list {key}. slots: key: path.key wishlistproductKey: path.wishlistproductKey - text: Show the saved product {wishlistproductKey} in wish list {key}. slots: key: path.key wishlistproductKey: path.wishlistproductKey method: generated generated: '2026-10-01' - target: $.paths['/api/v1/admin/wishlists({key})/wishlistshares({wishlistshareKey})'].get update: x-apievangelist-phrasing: intent: Get a share record of a wish list effect: read questions: - Who has a wish list been shared with? - How do I read one sharing entry on a wish list? instructions: - text: Get share {wishlistshareKey} of wish list {key}. slots: key: path.key wishlistshareKey: path.wishlistshareKey - text: Show the sharing record {wishlistshareKey} for wish list {key}. slots: key: path.key wishlistshareKey: path.wishlistshareKey method: generated generated: '2026-10-01' - target: $.paths['/api/v1/wishlists/{wishListId}/wishlistlines/{wishListLineId}'].get update: x-apievangelist-phrasing: intent: Get one line from a wish list effect: read questions: - Can I look up a single product line saved on a buyer's wish list? - What pricing and availability does one wish list line show? instructions: - text: Show line {wishListLineId} on wish list {wishListId}. slots: wishListLineId: path.wishListLineId wishListId: path.wishListId - text: Get the quantity and price for wish list line {wishListLineId} in list {wishListId}. slots: wishListLineId: path.wishListLineId wishListId: path.wishListId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists/{wishListId}/wishlistlines/{wishListLineId}'].delete update: x-apievangelist-phrasing: intent: Remove one product from a wish list effect: destructive questions: - How do I take a single product off a saved wish list? - Can I delete just one line from a shared list without touching the rest? instructions: - text: Remove line {wishListLineId} from wish list {wishListId}. slots: wishListLineId: path.wishListLineId wishListId: path.wishListId - text: Delete the single wish list line {wishListLineId} in list {wishListId}. slots: wishListLineId: path.wishListLineId wishListId: path.wishListId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists/{wishListId}/wishlistlines/{wishListLineId}'].patch update: x-apievangelist-phrasing: intent: Update one wish list line effect: write questions: - Can I change the quantity or unit of measure on one saved wish list item? - Is it possible to add a note to a single product line on my wish list? instructions: - text: Set the quantity on wish list line {wishListLineId} in list {wishListId} to {qtyOrdered}. slots: wishListLineId: path.wishListLineId wishListId: path.wishListId qtyOrdered: requestBody.qtyOrdered - text: Add note {notes} to line {wishListLineId} of wish list {wishListId}. slots: notes: requestBody.notes wishListLineId: path.wishListLineId wishListId: path.wishListId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists/{wishListId}/wishlistlines/batch/{copyFromWishListId}'].post update: x-apievangelist-phrasing: intent: Copy lines from another wish list effect: write questions: - Can I copy all the products from one wish list into another? - Is there a batch way to add many lines to a wish list from an existing list? instructions: - text: Copy the lines from wish list {copyFromWishListId} into wish list {wishListId}. slots: copyFromWishListId: path.copyFromWishListId wishListId: path.wishListId - text: Batch add lines {wishListLines} to wish list {wishListId}, copying from list {copyFromWishListId}. slots: wishListLines: requestBody.wishListLines wishListId: path.wishListId copyFromWishListId: path.copyFromWishListId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists/{wishListId}/wishlistlines/batch'].delete update: x-apievangelist-phrasing: intent: Remove several lines from a wish list effect: destructive questions: - Can I clear several products from a wish list in one request? - What IDs do I need to bulk remove wish list lines? instructions: - text: Remove lines {wishListLineIds} from wish list {wishListId}. slots: wishListLineIds: query.wishListLineIds wishListId: path.wishListId - text: Bulk delete the wish list lines {wishListLineIds} in list {wishListId}. slots: wishListLineIds: query.wishListLineIds wishListId: path.wishListId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists/{wishListId}/wishlistlines/batch'].patch update: x-apievangelist-phrasing: intent: Update quantities on many wish list lines effect: write questions: - Can I change quantities on several lines of a shared wish list at once? - Is there a batch update for all the lines on a wish list? instructions: - text: Apply the quantity changes {changedSharedListLinesQuantities} to wish list {wishListId}. slots: changedSharedListLinesQuantities: requestBody.changedSharedListLinesQuantities wishListId: path.wishListId - text: Batch update every line quantity on wish list {wishListId}. slots: wishListId: path.wishListId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists/{wishListId}/wishlistlines'].get update: x-apievangelist-phrasing: intent: List the products on a wish list effect: read questions: - How do I see every product saved on a particular wish list? - Can I search and sort the lines inside one wish list? - Is paging supported when a wish list has hundreds of items? instructions: - text: List the lines on wish list {wishListId}. slots: wishListId: path.wishListId - text: Search wish list {wishListId} for items matching {query}, sorted by {sort}. slots: wishListId: path.wishListId query: query.parameter.query sort: query.parameter.sort - text: Show page {page} of wish list {wishListId}'s lines, {pageSize} per page. slots: page: query.parameter.page wishListId: path.wishListId pageSize: query.parameter.pageSize method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists/{wishListId}/wishlistlines'].post update: x-apievangelist-phrasing: intent: Add a product to a wish list effect: write questions: - How do I save a product to a customer's wish list? - Can I pick a unit of measure when adding an item to a list? instructions: - text: Add product {productId} to wish list {wishListId}. slots: productId: requestBody.productId wishListId: path.wishListId - text: Add {qtyOrdered} of product {productId} to wish list {wishListId} in unit {selectedUnitOfMeasure}. slots: qtyOrdered: requestBody.qtyOrdered productId: requestBody.productId wishListId: path.wishListId selectedUnitOfMeasure: requestBody.selectedUnitOfMeasure method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists'].get update: x-apievangelist-phrasing: intent: List my wish lists effect: read questions: - Which wish lists does the signed-in buyer have? - Where can I see all saved lists for the current storefront user? instructions: - text: List all of my wish lists. - text: Show every saved list for the current shopper. method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists'].post update: x-apievangelist-phrasing: intent: Create a wish list effect: write questions: - How do I create a new named wish list on the storefront? - Can I give a new wish list a description when I create it? instructions: - text: Create a wish list called {name}. slots: name: requestBody.name - text: Start a new wish list named {name} described as {description}. slots: name: requestBody.name description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists/{wishListId}'].get update: x-apievangelist-phrasing: intent: Get a wish list's details effect: read questions: - Can I open a single wish list and see who it's shared with? - What can I expand or exclude when fetching one wish list? instructions: - text: Show wish list {wishListId}. slots: wishListId: path.wishListId - text: Get wish list {wishListId} expanding {expand}. slots: wishListId: path.wishListId expand: query.parameter.expand method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists/{wishListId}'].delete update: x-apievangelist-phrasing: intent: Delete a shopper's wish list from the storefront effect: destructive questions: - How does a shopper delete one of their own wish lists on the storefront? - Does removing a list through the website API also drop its saved lines? instructions: - text: Delete the shopper's storefront wish list {wishListId}. slots: wishListId: path.wishListId - text: Remove my list {wishListId} and everything saved on it. slots: wishListId: path.wishListId method: generated generated: '2026-10-01' - target: $.paths['/api/v1/wishlists/{wishListId}'].patch update: x-apievangelist-phrasing: intent: Rename or edit a shopper's storefront wish list effect: write questions: - Can a shopper rename their wish list or change its description on the storefront? - Is it possible to change how a storefront list is shared by editing it? instructions: - text: Give my storefront list {wishListId} the new name {name}. slots: wishListId: path.wishListId name: requestBody.name - text: Change the share option on wish list {wishListId} to {shareOption}. slots: wishListId: path.wishListId shareOption: requestBody.shareOption method: generated generated: '2026-10-01' - target: $.paths['/api/v1/wishlists/{wishListId}/share/{wishListShareId}'].delete update: x-apievangelist-phrasing: intent: Stop sharing a wish list with someone effect: destructive questions: - Can I revoke one person's access to a wish list I shared? - What removes a single share from a shared list? instructions: - text: Remove share {wishListShareId} from wish list {wishListId}. slots: wishListShareId: path.wishListShareId wishListId: path.wishListId - text: Revoke access share {wishListShareId} on list {wishListId}. slots: wishListShareId: path.wishListShareId wishListId: path.wishListId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists/activateinvite'].patch update: x-apievangelist-phrasing: intent: Accept a wish list share invite effect: write questions: - How does a user accept an invitation to a shared wish list? - What do I send to activate a wish list invite code? instructions: - text: Activate wish list invite {invite}. slots: invite: requestBody.invite - text: Accept the shared list invitation {invite}. slots: invite: requestBody.invite method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists/{wishListId}/sendacopy'].patch update: x-apievangelist-phrasing: intent: Email a copy of a wish list effect: write questions: - Can I send someone a copy of my wish list by email? - Is there a way to include a personal message when I send a list copy? instructions: - text: Send a copy of wish list {wishListId} to {recipientEmailAddress}. slots: wishListId: path.wishListId recipientEmailAddress: requestBody.recipientEmailAddress - text: Email wish list {wishListId} to {recipientEmailAddress} with message {message} from {senderName}. slots: wishListId: path.wishListId recipientEmailAddress: requestBody.recipientEmailAddress message: requestBody.message senderName: requestBody.senderName method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists/{wishListId}/schedule'].patch update: x-apievangelist-phrasing: intent: Schedule recurring wish list emails effect: write questions: - Can a wish list be emailed automatically on a weekly or monthly schedule? - Which days of the week or month can a list reminder be sent? instructions: - text: Set the send schedule for wish list {wishListId} to {schedule}. slots: wishListId: path.wishListId schedule: requestBody.schedule - text: Schedule wish list {wishListId} to be emailed to {recipientEmailAddress} on {schedule}. slots: wishListId: path.wishListId recipientEmailAddress: requestBody.recipientEmailAddress schedule: requestBody.schedule method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists/{wishListId}/tags/batch'].post update: x-apievangelist-phrasing: intent: Tag a wish list effect: write questions: - Can I attach tags to a wish list to organize it? - Is there a batch call to add several tags to one list? instructions: - text: Add tags {wishListTags} to wish list {wishListId}. slots: wishListTags: requestBody.wishListTags wishListId: path.wishListId - text: Label wish list {wishListId} with the tags {wishListTags}. slots: wishListId: path.wishListId wishListTags: requestBody.wishListTags method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists/{wishListId}/tags/batch'].delete update: x-apievangelist-phrasing: intent: Remove tags from a wish list effect: destructive questions: - Can I strip several tags off a wish list at once? - What do I pass to untag a saved list? instructions: - text: Remove tags {wishListTagIds} from wish list {wishListId}. slots: wishListTagIds: query.wishListTagIds wishListId: path.wishListId - text: Untag wish list {wishListId}, deleting tag IDs {wishListTagIds}. slots: wishListId: path.wishListId wishListTagIds: query.wishListTagIds method: generated generated: '2026-09-26' - target: $.paths['/api/v1/wishlists/{wishListId}/send-pdf'].post update: x-apievangelist-phrasing: intent: Send a wish list as a PDF effect: write questions: - Can I produce a PDF of a wish list with barcodes on it? - Which layout and display fields can I choose for a wish list PDF? instructions: - text: Send wish list {wishListId} as a PDF. slots: wishListId: path.wishListId - text: Send a PDF of wish list {wishListId} in layout {layout} with {barcodeFormat} barcodes. slots: wishListId: path.wishListId layout: requestBody.layout barcodeFormat: requestBody.barcodeFormat method: generated generated: '2026-09-26'