Optimizely · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Admin API V1 Rule Clauses API

20 actions 20 updates phrasing extends openapi/optimizely-rule-clauses-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Optimizely's API. It is a proposal applied on top of the contract, not a document Optimizely publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 20 · first 16 shown; the file carries all of them

$.info
$.paths['/api/v1/admin/RuleClauses'].get
$.paths['/api/v1/admin/RuleClauses'].post
$.paths['/api/v1/admin/RuleClauses({id})'].get
$.paths['/api/v1/admin/RuleClauses({id})'].put
$.paths['/api/v1/admin/RuleClauses({id})'].delete
$.paths['/api/v1/admin/RuleClauses({id})'].patch
$.paths['/api/v1/admin/RuleClauses/Default.Default()'].get
$.paths['/api/v1/admin/RuleClauses({id})/Default.import'].post
$.paths['/api/v1/admin/RuleClauses({id})/Default.importcustomers'].post
$.paths['/api/v1/admin/RuleClauses/Default.createtemporary'].post
$.paths['/api/v1/admin/RuleClauses/Default.copyfromtemporary'].post
$.paths['/api/v1/admin/ruleclauses/copyfromtemporary'].post
$.paths['/api/v1/admin/ruleclauses/createtemporary'].post
$.paths['/api/v1/admin/ruleclauses({key})/import'].post
$.paths['/api/v1/admin/ruleclauses({key})/importcustomers'].post

OpenAPI Overlay

Raw ↑
# 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 Rule Clauses API
  version: 1.0.0
extends: openapi/optimizely-rule-clauses-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: 19
- target: $.paths['/api/v1/admin/RuleClauses'].get
  update:
    x-apievangelist-phrasing:
      intent: List rule clauses
      effect: read
      questions:
      - Which rule clauses are configured across my commerce rules?
      - Can I filter rule clauses by criteria type and sort them by execution order?
      instructions:
      - text: List all rule clauses.
      - text: List rule clauses matching {filter}, ordered by {orderby}.
        slots:
          filter: query.$filter
          orderby: query.$orderby
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauses'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a rule clause
      effect: write
      questions:
      - How do I add a new condition clause to a promotion or shipping rule?
      - What comparison operators and values does a new rule clause need?
      instructions:
      - text: Create a rule clause for rule manager {ruleManagerId} checking {criteriaObject}.{criteriaProperty} {comparisonOperator} {simpleValue}.
        slots:
          ruleManagerId: requestBody.ruleManagerId
          criteriaObject: requestBody.criteriaObject
          criteriaProperty: requestBody.criteriaProperty
          comparisonOperator: requestBody.comparisonOperator
          simpleValue: requestBody.simpleValue
      - text: Add a new rule clause of criteria type {criteriaType} with value range {valueMinimum} to {valueMaximum}.
        slots:
          criteriaType: requestBody.criteriaType
          valueMinimum: requestBody.valueMinimum
          valueMaximum: requestBody.valueMaximum
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauses({id})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a rule clause
      effect: read
      questions:
      - How do I look up the condition and values of one specific rule clause?
      - What does a single rule clause compare against?
      instructions:
      - text: Get rule clause {id}.
        slots:
          id: path.id
      - text: Show the criteria and operator of rule clause {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauses({id})'].put
  update:
    x-apievangelist-phrasing:
      intent: Replace a rule clause
      effect: write
      questions:
      - How do I overwrite an entire rule clause definition in one call?
      - Does replacing a rule clause require resending every criteria field?
      instructions:
      - text: Replace rule clause {id} with criteria {criteriaObject}.{criteriaProperty} {comparisonOperator} {simpleValue}.
        slots:
          id: path.id
          criteriaObject: requestBody.criteriaObject
          criteriaProperty: requestBody.criteriaProperty
          comparisonOperator: requestBody.comparisonOperator
          simpleValue: requestBody.simpleValue
      - text: Fully overwrite rule clause {id} with value list {valueList}.
        slots:
          id: path.id
          valueList: requestBody.valueList
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauses({id})'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a rule clause
      effect: destructive
      questions:
      - How do I remove one condition from a rule?
      - Can I delete a rule clause only if its ETag hasn't changed?
      instructions:
      - text: Delete rule clause {id}.
        slots:
          id: path.id
      - text: Delete rule clause {id} if its ETag is {etag}.
        slots:
          id: path.id
          etag: header.If-Match
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauses({id})'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update a rule clause
      effect: write
      questions:
      - How do I change just the comparison value on an existing rule clause?
      - Can I move a rule clause to a different execution group or order?
      instructions:
      - text: Change the simple value of rule clause {id} to {simpleValue}.
        slots:
          id: path.id
          simpleValue: requestBody.simpleValue
      - text: Set execution order of rule clause {id} to {executionOrder} in group {executionGroup}.
        slots:
          id: path.id
          executionOrder: requestBody.executionOrder
          executionGroup: requestBody.executionGroup
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauses/Default.Default()'].get
  update:
    x-apievangelist-phrasing:
      intent: Get the default rule clause template
      effect: read
      questions:
      - What default values does a brand-new rule clause start with?
      - Where can I get a blank rule clause record to fill in?
      instructions:
      - text: Get the default rule clause template.
      - text: Show default values for a new rule clause.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauses({id})/Default.import'].post
  update:
    x-apievangelist-phrasing:
      intent: Import products into a rule clause
      effect: write
      questions:
      - How do I bulk import a product list into a rule clause condition?
      - Can I load products into a rule clause by its id through the OData action?
      instructions:
      - text: Import products into rule clause {id}.
        slots:
          id: path.id
      - text: Run the product import action on rule clause {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauses({id})/Default.importcustomers'].post
  update:
    x-apievangelist-phrasing:
      intent: Import customers into a rule clause
      effect: write
      questions:
      - How do I bulk import customers into a rule clause condition?
      - Can I load a customer list into a rule clause by its id through the OData action?
      instructions:
      - text: Import customers into rule clause {id}.
        slots:
          id: path.id
      - text: Run the customer import action on rule clause {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauses/Default.createtemporary'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a temporary rule clause copy
      effect: write
      questions:
      - How do I create a temporary working copy of a rule clause before editing it?
      - Can I start a temporary rule clause from an existing one for a given rule type option?
      instructions:
      - text: Create a temporary rule clause for rule type {ruleTypeId} and option {ruleTypeOptionId}.
        slots:
          ruleTypeId: requestBody.ruleTypeId
          ruleTypeOptionId: requestBody.ruleTypeOptionId
      - text: Make a temporary copy of rule clause {existingRuleClauseId} for rule type {ruleTypeId}, option {ruleTypeOptionId}.
        slots:
          existingRuleClauseId: requestBody.existingRuleClauseId
          ruleTypeId: requestBody.ruleTypeId
          ruleTypeOptionId: requestBody.ruleTypeOptionId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauses/Default.copyfromtemporary'].post
  update:
    x-apievangelist-phrasing:
      intent: Apply a temporary rule clause
      effect: write
      questions:
      - How do I save my temporary rule clause edits back onto the real clause?
      - Can I copy a temporary rule clause over a target rule clause?
      instructions:
      - text: Copy temporary rule clause {tempRuleClauseId} onto rule clause {targetRuleClauseId}.
        slots:
          tempRuleClauseId: requestBody.tempRuleClauseId
          targetRuleClauseId: requestBody.targetRuleClauseId
      - text: Apply temp clause {tempRuleClauseId} to target {targetRuleClauseId} for entity {entityName}.
        slots:
          tempRuleClauseId: requestBody.tempRuleClauseId
          targetRuleClauseId: requestBody.targetRuleClauseId
          entityName: requestBody.entityName
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/ruleclauses/copyfromtemporary'].post
  update:
    x-apievangelist-phrasing:
      intent: Apply a temporary rule clause (route form)
      effect: write
      questions:
      - Is there a plain-route copyfromtemporary endpoint for rule clauses besides the OData action?
      - What's the non-OData route for committing a temporary rule clause?
      instructions:
      - text: Call the ruleclauses/copyfromtemporary route to commit a temporary rule clause.
      - text: Use the plain route, not the OData action, to copy a temporary rule clause back.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/ruleclauses/createtemporary'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a temporary rule clause (route form)
      effect: write
      questions:
      - Is there a plain-route createtemporary endpoint for rule clauses?
      - What's the non-OData route for starting a temporary rule clause?
      instructions:
      - text: Call the ruleclauses/createtemporary route to start a temporary rule clause.
      - text: Use the plain route, not the OData action, to create a temporary rule clause.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/ruleclauses({key})/import'].post
  update:
    x-apievangelist-phrasing:
      intent: Import products into a rule clause by key
      effect: write
      questions:
      - How do I import products into a rule clause using the plain key-based route?
      - Is there a non-OData import route for rule clause products?
      instructions:
      - text: Import products into rule clause with key {key} via the plain route.
        slots:
          key: path.key
      - text: Run ruleclauses({key})/import to load products.
        slots:
          key: path.key
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/ruleclauses({key})/importcustomers'].post
  update:
    x-apievangelist-phrasing:
      intent: Import customers into a rule clause by key
      effect: write
      questions:
      - Which route bulk-loads a customer list into a rule clause addressed by key?
      - Is there a non-OData importcustomers route for rule clauses?
      instructions:
      - text: Import customers into rule clause with key {key} via the plain route.
        slots:
          key: path.key
      - text: Run ruleclauses({key})/importcustomers to load customers.
        slots:
          key: path.key
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/ruleclauses/delete'].delete
  update:
    x-apievangelist-phrasing:
      intent: Bulk delete rule clauses
      effect: destructive
      questions:
      - How do I delete several rule clauses at once by their ids?
      - Can I remove a batch of rule clauses in one request?
      instructions:
      - text: Delete rule clauses {ids}.
        slots:
          ids: query.ids
      - text: Bulk remove the rule clauses with ids {ids}.
        slots:
          ids: query.ids
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/ruleclauses({key})/customers({customerKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a customer attached to a rule clause
      effect: read
      questions:
      - How do I check whether a specific customer is part of a rule clause?
      - Can I fetch one customer record linked to a rule clause?
      instructions:
      - text: Get customer {customerKey} on rule clause {key}.
        slots:
          customerKey: path.customerKey
          key: path.key
      - text: Show the customer {customerKey} attached to rule clause {key}.
        slots:
          customerKey: path.customerKey
          key: path.key
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/ruleclauses({key})/customproperties({custompropertyKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a rule clause custom property
      effect: read
      questions:
      - How do I read a custom property stored on a rule clause?
      - Where do I find one custom property value for a rule clause?
      instructions:
      - text: Get custom property {custompropertyKey} of rule clause {key}.
        slots:
          custompropertyKey: path.custompropertyKey
          key: path.key
      - text: Show rule clause {key}'s custom property {custompropertyKey}.
        slots:
          custompropertyKey: path.custompropertyKey
          key: path.key
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/ruleclauses({key})/products({productKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a product attached to a rule clause
      effect: read
      questions:
      - How do I check whether a specific product is included in a rule clause?
      - Can I fetch one product record linked to a rule clause?
      instructions:
      - text: Get product {productKey} on rule clause {key}.
        slots:
          productKey: path.productKey
          key: path.key
      - text: Show the product {productKey} attached to rule clause {key}.
        slots:
          productKey: path.productKey
          key: path.key
      method: generated
      generated: '2026-09-26'