# 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 Website Product Cross Sells API version: 1.0.0 extends: openapi/optimizely-website-product-cross-sells-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-26' generator: build-phrasing.py label: Generated by API Evangelist operations: 9 - target: $.paths['/api/v1/admin/WebsiteProductCrossSells'].get update: x-apievangelist-phrasing: intent: List website product cross-sells effect: read questions: - Which products are set up as cross-sells on each website? - Can I filter cross-sell records to one website? instructions: - text: List all website product cross-sells. - text: Show website cross-sells matching {filter}. slots: filter: query.$filter method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/WebsiteProductCrossSells'].post update: x-apievangelist-phrasing: intent: Add a product as a website cross-sell effect: write questions: - How do I promote a product as a cross-sell on one storefront? - Can I set up site-wide cross-sell products per website? instructions: - text: Add product {productId} as a cross-sell on website {websiteId}. slots: websiteId: requestBody.websiteId productId: requestBody.productId - text: Create a website cross-sell for {productId} on site {websiteId}. slots: websiteId: requestBody.websiteId productId: requestBody.productId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/WebsiteProductCrossSells({id})'].get update: x-apievangelist-phrasing: intent: Get a website cross-sell record effect: read questions: - Which product and website does a cross-sell record point to? - Can I look up one website cross-sell by ID? instructions: - text: Get website cross-sell {id}. slots: id: path.id - text: Show the product and site for cross-sell {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/WebsiteProductCrossSells({id})'].put update: x-apievangelist-phrasing: intent: Replace a website cross-sell record effect: write questions: - How do I overwrite a website cross-sell completely? - Can I fully replace the product and website on a cross-sell? instructions: - text: Replace website cross-sell {id} with product {productId} on website {websiteId}. slots: websiteId: requestBody.websiteId productId: requestBody.productId id: path.id - text: Overwrite all fields of website cross-sell {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/WebsiteProductCrossSells({id})'].delete update: x-apievangelist-phrasing: intent: Remove a website cross-sell effect: destructive questions: - How do I stop cross-selling a product on a website? - Does deleting a website cross-sell support If-Match? instructions: - text: Delete website cross-sell {id}. slots: id: path.id - text: Remove website cross-sell {id} if its ETag is {ifMatch}. slots: id: path.id ifMatch: header.If-Match method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/WebsiteProductCrossSells({id})'].patch update: x-apievangelist-phrasing: intent: Swap the product on a website cross-sell effect: write questions: - How do I change which product an existing cross-sell promotes? - Can I move a cross-sell record to another website? instructions: - text: Swap the product on existing cross-sell {id} to {productId}. slots: id: path.id productId: requestBody.productId - text: Move website cross-sell {id} to website {websiteId}. slots: id: path.id websiteId: requestBody.websiteId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/WebsiteProductCrossSells/Default.Default()'].get update: x-apievangelist-phrasing: intent: Get defaults for a new website cross-sell effect: read questions: - What defaults does a new website cross-sell start with? - Is there a blank website cross-sell template? instructions: - text: Get the default field values for a new website cross-sell. - text: Show a blank website cross-sell record. method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/websiteproductcrosssells/delete'].delete update: x-apievangelist-phrasing: intent: Delete several website cross-sells effect: destructive questions: - How do I bulk remove website cross-sell records? - Can I delete many website cross-sells in one request? instructions: - text: Bulk delete website cross-sells {ids}. slots: ids: query.ids - text: Permanently delete every website cross-sell in {ids}. slots: ids: query.ids method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/websiteproductcrosssells({key})/customproperties({custompropertyKey})'].get update: x-apievangelist-phrasing: intent: Get a custom property on a website cross-sell effect: read questions: - How do I read a custom property on a website cross-sell? - Can I fetch one custom field value from a cross-sell record? instructions: - text: Get custom property {custompropertyKey} of website cross-sell {key}. slots: key: path.key custompropertyKey: path.custompropertyKey - text: Show the {custompropertyKey} custom property on website cross-sell {key}. slots: key: path.key custompropertyKey: path.custompropertyKey method: generated generated: '2026-09-26'