naftiko: 1.0.0-alpha2 info: label: Coveo Commerce API — Listing Rule Preview description: 'Coveo Commerce API — Listing Rule Preview. 3 operations. Lead operation: Preview the Impact of Creating a Listing Rule on a Config.. Self-contained Naftiko capability covering one Coveo business surface.' tags: - Coveo - Commerce - Listing Rule Preview created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: COVEO_SEARCH_TOKEN: COVEO_SEARCH_TOKEN capability: consumes: - type: http namespace: commerce-listing-rule-preview baseUri: https://platform.cloud.coveo.com description: Coveo Commerce API — Listing Rule Preview business capability. Self-contained, no shared references. authentication: type: bearer token: '{{env.COVEO_SEARCH_TOKEN}}' resources: - name: rest-organizations-organizationId-commerce-v2-listing-preview-rules path: /rest/organizations/{organizationId}/commerce/v2/listing/preview/rules operations: - name: previewimpactofcreatingrule method: POST description: Preview the Impact of Creating a Listing Rule on a Config. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: organizationId in: path type: string description: The unique identifier of the target [organization](https://docs.coveo.com/en/185/).
**Example:** `acmecorporation8tp8wu3` required: true - name: isEditingGlobal in: query type: boolean description: Whether the rule is for the global config. - name: body in: body type: object description: Request body (JSON). required: true - name: rest-organizations-organizationId-commerce-v2-listing-preview-rules-id path: /rest/organizations/{organizationId}/commerce/v2/listing/preview/rules/{id} operations: - name: previewimpactofrule method: GET description: Preview the Impact of a Listing Rule. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: organizationId in: path type: string description: The unique identifier of the target [organization](https://docs.coveo.com/en/185/).
**Example:** `acmecorporation8tp8wu3` required: true - name: id in: path type: string description: The unique identifier of the rule. required: true - name: previewUrl in: query type: string description: The URL used to retrieve the products listings. required: true - name: listingName in: query type: string description: The name of the listing configuration. required: true - name: listingId in: query type: string description: The unique identifier of the listing configuration. required: true - name: trackingId in: query type: string description: The unique identifier of the tracking target. required: true - name: language in: query type: string description: An ISO 639-1 language code. required: true - name: country in: query type: string description: An ISO 3166-1 alpha-2 country code. required: true - name: currency in: query type: string description: An ISO 4217 currency code. required: true - name: page in: query type: integer description: The page of products to request. - name: perPage in: query type: integer description: The number of products per page. Note that a value greater than 100 may be rejected in the future. - name: isEditingGlobal in: query type: boolean description: Whether the rule is for the global config. - name: debug in: query type: boolean description: Whether to include the execution report on a successful response. - name: previewimpactofupdatingrule method: PUT description: Preview the Impact of an Updated Listing Rule Vs Not Having the Rule, or If compareWithPreviousState Is True, the Impact of a Rule Update Vs the Previous State of the Rule. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: organizationId in: path type: string description: The unique identifier of the target [organization](https://docs.coveo.com/en/185/).
**Example:** `acmecorporation8tp8wu3` required: true - name: id in: path type: string description: The unique identifier of the rule. required: true - name: isEditingGlobal in: query type: boolean description: Whether the rule is for the global config. - name: compareWithPreviousState in: query type: boolean description: When previewing an update to a rule, whether to compare the preview results against those from one executed with the previous state of the rule, or against a on - name: body in: body type: object description: Request body (JSON). required: true exposes: - type: rest namespace: commerce-listing-rule-preview-rest port: 8080 description: REST adapter for Coveo Commerce API — Listing Rule Preview. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/organizations/{organizationid}/commerce/v2/listing/preview/rules name: rest-organizations-organizationid-commerce-v2-listing-preview-rules description: REST surface for rest-organizations-organizationId-commerce-v2-listing-preview-rules. operations: - method: POST name: previewimpactofcreatingrule description: Preview the Impact of Creating a Listing Rule on a Config. call: commerce-listing-rule-preview.previewimpactofcreatingrule with: organizationId: rest.organizationId isEditingGlobal: rest.isEditingGlobal body: rest.body outputParameters: - type: object mapping: $. - path: /v1/organizations/{organizationid}/commerce/v2/listing/preview/rules/{id} name: rest-organizations-organizationid-commerce-v2-listing-preview-rules-id description: REST surface for rest-organizations-organizationId-commerce-v2-listing-preview-rules-id. operations: - method: GET name: previewimpactofrule description: Preview the Impact of a Listing Rule. call: commerce-listing-rule-preview.previewimpactofrule with: organizationId: rest.organizationId id: rest.id previewUrl: rest.previewUrl listingName: rest.listingName listingId: rest.listingId trackingId: rest.trackingId language: rest.language country: rest.country currency: rest.currency page: rest.page perPage: rest.perPage isEditingGlobal: rest.isEditingGlobal debug: rest.debug outputParameters: - type: object mapping: $. - method: PUT name: previewimpactofupdatingrule description: Preview the Impact of an Updated Listing Rule Vs Not Having the Rule, or If compareWithPreviousState Is True, the Impact of a Rule Update Vs the Previous State of the Rule. call: commerce-listing-rule-preview.previewimpactofupdatingrule with: organizationId: rest.organizationId id: rest.id isEditingGlobal: rest.isEditingGlobal compareWithPreviousState: rest.compareWithPreviousState body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: commerce-listing-rule-preview-mcp port: 9090 transport: http description: MCP adapter for Coveo Commerce API — Listing Rule Preview. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: preview-impact-creating-listing-rule description: Preview the Impact of Creating a Listing Rule on a Config. hints: readOnly: false destructive: false idempotent: false call: commerce-listing-rule-preview.previewimpactofcreatingrule with: organizationId: tools.organizationId isEditingGlobal: tools.isEditingGlobal body: tools.body outputParameters: - type: object mapping: $. - name: preview-impact-listing-rule description: Preview the Impact of a Listing Rule. hints: readOnly: true destructive: false idempotent: true call: commerce-listing-rule-preview.previewimpactofrule with: organizationId: tools.organizationId id: tools.id previewUrl: tools.previewUrl listingName: tools.listingName listingId: tools.listingId trackingId: tools.trackingId language: tools.language country: tools.country currency: tools.currency page: tools.page perPage: tools.perPage isEditingGlobal: tools.isEditingGlobal debug: tools.debug outputParameters: - type: object mapping: $. - name: preview-impact-updated-listing-rule description: Preview the Impact of an Updated Listing Rule Vs Not Having the Rule, or If compareWithPreviousState Is True, the Impact of a Rule Update Vs the Previous State of the Rule. hints: readOnly: false destructive: false idempotent: true call: commerce-listing-rule-preview.previewimpactofupdatingrule with: organizationId: tools.organizationId id: tools.id isEditingGlobal: tools.isEditingGlobal compareWithPreviousState: tools.compareWithPreviousState body: tools.body outputParameters: - type: object mapping: $.