# 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 Customer Product Visibility Additions API version: 1.0.0 extends: openapi/optimizely-customer-product-visibility-additions-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/CustomerProductVisibilityAdditions'].get update: x-apievangelist-phrasing: intent: List customer product visibility additions effect: read questions: - How do I see which products have been made visible to specific customers? - Can I filter visibility additions down to one customer? instructions: - text: List customer product visibility additions matching {filter}. slots: filter: query.$filter - text: Count all customer visibility additions. method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/CustomerProductVisibilityAdditions'].post update: x-apievangelist-phrasing: intent: Make a product visible to a customer effect: write questions: - Can I let one customer see a product that's otherwise hidden? - What do I send to grant a customer visibility to an item? instructions: - text: Make product {productId} visible to customer {customerId}. slots: productId: requestBody.productId customerId: requestBody.customerId - text: Add a visibility grant so customer {customerId} can see product {productId}. slots: customerId: requestBody.customerId productId: requestBody.productId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/CustomerProductVisibilityAdditions({id})'].get update: x-apievangelist-phrasing: intent: Get one customer visibility addition effect: read questions: - Where do I look up a single customer visibility addition by id? - Which customer and product does a given visibility addition link? instructions: - text: Get customer visibility addition {id}. slots: id: path.id - text: Show the customer and product on visibility record {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/CustomerProductVisibilityAdditions({id})'].put update: x-apievangelist-phrasing: intent: Replace a customer visibility addition effect: write questions: - How do I overwrite a customer visibility addition with a new customer and product? - Can I fully replace a visibility grant record in one call? instructions: - text: Replace visibility addition {id} with customer {customerId} and product {productId}. slots: id: path.id customerId: requestBody.customerId productId: requestBody.productId - text: Overwrite the entire visibility addition record {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/CustomerProductVisibilityAdditions({id})'].delete update: x-apievangelist-phrasing: intent: Revoke a customer's product visibility effect: destructive questions: - Can I stop a customer from seeing a product I previously made visible to them? - Is an If-Match ETag accepted when removing a visibility addition? instructions: - text: Delete customer visibility addition {id}. slots: id: path.id - text: Remove visibility addition {id} if ETag {etag} still matches. slots: id: path.id etag: header.If-Match method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/CustomerProductVisibilityAdditions({id})'].patch update: x-apievangelist-phrasing: intent: Update a customer visibility addition effect: write questions: - Can I change just the product on an existing customer visibility addition? - How do I move a visibility grant to a different customer without replacing it? instructions: - text: Change visibility addition {id} to product {productId}. slots: id: path.id productId: requestBody.productId - text: Reassign visibility addition {id} to customer {customerId}. slots: id: path.id customerId: requestBody.customerId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/CustomerProductVisibilityAdditions/Default.Default()'].get update: x-apievangelist-phrasing: intent: Call the Default function on visibility additions effect: read questions: - What does the Default function on CustomerProductVisibilityAdditions return? - Where do I get the default customer visibility addition entity? instructions: - text: Call the Default function on CustomerProductVisibilityAdditions. - text: Fetch the default customer visibility addition entity. method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/customerproductvisibilityadditions/delete'].delete update: x-apievangelist-phrasing: intent: Bulk remove customer visibility additions effect: destructive questions: - Can I remove many customer visibility grants at once by id? - Is there a bulk delete for customer product visibility additions? instructions: - text: Bulk delete customer visibility additions {ids}. slots: ids: query.ids - text: Remove every visibility grant in the id list {ids}. slots: ids: query.ids method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/customerproductvisibilityadditions({key})/customproperties({custompropertyKey})'].get update: x-apievangelist-phrasing: intent: Get a custom property on a visibility addition effect: read questions: - How do I read a custom property stored on a customer visibility addition? - Can I fetch one extension field from a visibility grant record? instructions: - text: Get custom property {custompropertyKey} of visibility addition {key}. slots: key: path.key custompropertyKey: path.custompropertyKey - text: Show custom field {custompropertyKey} on customer visibility record {key}. slots: key: path.key custompropertyKey: path.custompropertyKey method: generated generated: '2026-09-26'