# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for VirtoCommerce. Store API version: 1.0.0 extends: openapi/virto-commerce-store-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: 13 - target: $.paths['/api/store-authentication-schemes/{storeId}'].get update: x-apievangelist-phrasing: intent: Get a store's authentication schemes effect: read questions: - Which sign-in schemes are enabled for a particular store? - Can I check what external login methods a storefront allows? instructions: - text: Show the authentication schemes for store {storeId}. slots: storeId: path.storeId - text: List which login methods store {storeId} accepts. slots: storeId: path.storeId method: generated generated: '2026-09-26' - target: $.paths['/api/store-authentication-schemes/{storeId}'].put update: x-apievangelist-phrasing: intent: Update a store's authentication schemes effect: write questions: - How do I turn a login scheme on or off for one store? - Can each store have its own set of authentication schemes? instructions: - text: Update the authentication schemes for store {storeId}. slots: storeId: path.storeId - text: Change which sign-in methods store {storeId} allows. slots: storeId: path.storeId method: generated generated: '2026-09-26' - target: $.paths['/api/stores/search'].post update: x-apievangelist-phrasing: intent: Search stores effect: read questions: - Which stores do I have in Virto Commerce and what state are they in? - Can I find the store that serves a particular domain? instructions: - text: Find the store for domain {domain}. slots: domain: requestBody.domain - text: Search stores matching {keyword}. slots: keyword: requestBody.keyword - text: List stores that ship from fulfillment centers {centers}. slots: centers: requestBody.fulfillmentCenterIds method: generated generated: '2026-09-26' - target: $.paths['/api/stores/{id}'].get update: x-apievangelist-phrasing: intent: Get a store by id effect: read questions: - What currencies, languages and catalog is a given store set up with? - How do I load the full settings of one store? instructions: - text: Get store {id}. slots: id: path.id - text: Show store {id} with response group {group}. slots: id: path.id group: query.responseGroup method: generated generated: '2026-09-26' - target: $.paths['/api/stores/{id}'].patch update: x-apievangelist-phrasing: intent: Partially update a store effect: write questions: - Can I change just one field on a store without sending the whole record? - Is there a JSON Patch way to edit a store? instructions: - text: Patch store {id} with only the fields I changed. slots: id: path.id - text: Apply a partial update to store {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/stores/outer/{outerId}'].get update: x-apievangelist-phrasing: intent: Get a store by its external id effect: read questions: - How can I find a store using the integration key from my ERP? - Can I look up a store by outer id instead of its Virto id? instructions: - text: Get the store with outer id {outerId}. slots: outerId: path.outerId - text: Look up store by integration key {outerId}. slots: outerId: path.outerId method: generated generated: '2026-09-26' - target: $.paths['/api/stores'].put update: x-apievangelist-phrasing: intent: Update a store effect: write questions: - How do I change a store's default currency or time zone? - Can I replace an existing store's full settings in one call? instructions: - text: Update store {id} to use default currency {currency}. slots: id: requestBody.id currency: requestBody.defaultCurrency - text: Rename existing store {id} to {name}. slots: id: requestBody.id name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/api/stores'].post update: x-apievangelist-phrasing: intent: Create a store effect: write questions: - How do I set up a new storefront with its own catalog and currency? - What does a new store need, like languages, email and fulfillment center? instructions: - text: Create a new store called {name} using catalog {catalog}. slots: name: requestBody.name catalog: requestBody.catalog - text: Set up store {name} with default language {language} and currency {currency}. slots: name: requestBody.name language: requestBody.defaultLanguage currency: requestBody.defaultCurrency method: generated generated: '2026-09-26' - target: $.paths['/api/stores'].delete update: x-apievangelist-phrasing: intent: Delete stores effect: destructive questions: - Can I remove several stores at once? - What do I pass to delete a store permanently? instructions: - text: Delete stores {ids}. slots: ids: query.ids - text: Remove the store {ids} from the platform. slots: ids: query.ids method: generated generated: '2026-09-26' - target: $.paths['/api/stores/send/dynamicnotification'].post update: x-apievangelist-phrasing: intent: Send a custom notification to the store email effect: write questions: - How can I email the store administrator a notification with custom fields? - Can I send a dynamic notification in a specific language to a store's email? instructions: - text: Send a {type} notification to the email of store {storeId}. slots: type: requestBody.type storeId: requestBody.storeId - text: Email store {storeId} a dynamic notification with fields {fields} in {language}. slots: storeId: requestBody.storeId fields: requestBody.fields language: requestBody.language method: generated generated: '2026-09-26' - target: $.paths['/api/stores/{storeId}/accounts/{id}/loginonbehalf'].get update: x-apievangelist-phrasing: intent: Check a contact's login-on-behalf permission effect: read questions: - Is a given account allowed to log in on behalf of customers in a store? - Can I check whether a support agent may impersonate shoppers? instructions: - text: Check whether account {id} can log in on behalf of others in store {storeId}. slots: id: path.id storeId: path.storeId - text: Tell me if contact {id} has login-on-behalf rights for store {storeId}. slots: id: path.id storeId: path.storeId method: generated generated: '2026-09-26' - target: $.paths['/api/stores/allowed/{userId}'].get update: x-apievangelist-phrasing: intent: List stores a user may sign in to effect: read questions: - Which stores is a particular user allowed to sign in to? - What storefronts can this user account access? instructions: - text: List the stores user {userId} can sign in to. slots: userId: path.userId - text: Show allowed stores for user {userId}. slots: userId: path.userId method: generated generated: '2026-09-26' - target: $.paths['/api/stores/{id}/public-settings'].get update: x-apievangelist-phrasing: intent: Get a store's public settings effect: read questions: - Which store settings are safe to expose to the storefront? - How do I read only the public settings of a store? instructions: - text: Get the public settings of store {id}. slots: id: path.id - text: Show the storefront-visible settings for store {id}. slots: id: path.id method: generated generated: '2026-09-26'