Optimizely · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Admin API V1 Rule Clause Products API

10 actions 10 updates phrasing extends openapi/optimizely-rule-clause-products-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 10

$.info
$.paths['/api/v1/admin/RuleClauseProducts'].get
$.paths['/api/v1/admin/RuleClauseProducts'].post
$.paths['/api/v1/admin/RuleClauseProducts({id})'].get
$.paths['/api/v1/admin/RuleClauseProducts({id})'].put
$.paths['/api/v1/admin/RuleClauseProducts({id})'].delete
$.paths['/api/v1/admin/RuleClauseProducts({id})'].patch
$.paths['/api/v1/admin/RuleClauseProducts/Default.Default()'].get
$.paths['/api/v1/admin/ruleclauseproducts/delete'].delete
$.paths['/api/v1/admin/ruleclauseproducts({key})/customproperties({custompropertyKey})'].get

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 Clause Products API
  version: 1.0.0
extends: openapi/optimizely-rule-clause-products-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/RuleClauseProducts'].get
  update:
    x-apievangelist-phrasing:
      intent: List products used in rule clauses
      effect: read
      questions:
      - Which products are referenced by my promotion or pricing rule clauses?
      - Can I filter rule clause products to a single rule clause?
      instructions:
      - text: List all rule clause products.
      - text: List rule clause products matching {filter}.
        slots:
          filter: query.$filter
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauseProducts'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a product to a rule clause
      effect: write
      questions:
      - How do I include a product in a rule clause?
      - What ids does linking a product to a rule clause need?
      instructions:
      - text: Add product {productId} to rule clause {ruleClauseId}.
        slots:
          productId: requestBody.productId
          ruleClauseId: requestBody.ruleClauseId
      - text: Include product {productId} in the conditions of clause {ruleClauseId}.
        slots:
          productId: requestBody.productId
          ruleClauseId: requestBody.ruleClauseId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauseProducts({id})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a rule clause product link
      effect: read
      questions:
      - Which product and rule clause does a given record tie together?
      - Can I fetch one rule clause product by id?
      instructions:
      - text: Get rule clause product {id}.
        slots:
          id: path.id
      - text: Fetch clause-product link {id} returning only {select}.
        slots:
          id: path.id
          select: query.$select
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauseProducts({id})'].put
  update:
    x-apievangelist-phrasing:
      intent: Replace a rule clause product link
      effect: write
      questions:
      - How do I overwrite a rule clause product record entirely?
      - Can I resend both ids to replace a clause-product link?
      instructions:
      - text: Replace rule clause product {id} with product {productId} in clause {ruleClauseId}.
        slots:
          id: path.id
          productId: requestBody.productId
          ruleClauseId: requestBody.ruleClauseId
      - text: Overwrite clause-product record {id} so it references product {productId}.
        slots:
          id: path.id
          productId: requestBody.productId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauseProducts({id})'].delete
  update:
    x-apievangelist-phrasing:
      intent: Remove a product from a rule clause
      effect: destructive
      questions:
      - How do I take a product out of a rule clause?
      - Can a rule clause product delete use an If-Match ETag?
      instructions:
      - text: Delete rule clause product {id}.
        slots:
          id: path.id
      - text: Remove clause-product link {id} only if its ETag is {etag}.
        slots:
          id: path.id
          etag: header.If-Match
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauseProducts({id})'].patch
  update:
    x-apievangelist-phrasing:
      intent: Change the product or clause on a link
      effect: write
      questions:
      - Can I swap only the product on a rule clause product record?
      - How do I move a clause-product link to a different rule clause?
      instructions:
      - text: Switch rule clause product {id} to product {productId}.
        slots:
          id: path.id
          productId: requestBody.productId
      - text: Move clause-product link {id} to rule clause {ruleClauseId}.
        slots:
          id: path.id
          ruleClauseId: requestBody.ruleClauseId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/RuleClauseProducts/Default.Default()'].get
  update:
    x-apievangelist-phrasing:
      intent: Get default values for a new rule clause product
      effect: read
      questions:
      - What defaults does a new rule clause product start with?
      - Is there a blank clause-product template?
      instructions:
      - text: Get the default template for a rule clause product.
      - text: Fetch an empty clause-product link with default values.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/ruleclauseproducts/delete'].delete
  update:
    x-apievangelist-phrasing:
      intent: Bulk delete rule clause products
      effect: destructive
      questions:
      - Can I remove many products from rule clauses in one request?
      - How do I bulk-delete rule clause product links by id?
      instructions:
      - text: Bulk delete rule clause products {ids}.
        slots:
          ids: query.ids
      - text: Permanently remove every clause-product link in {ids}.
        slots:
          ids: query.ids
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/ruleclauseproducts({key})/customproperties({custompropertyKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a custom property on a rule clause product
      effect: read
      questions:
      - What custom property values are stored on a rule clause product?
      - Can I read one custom attribute of a clause-product link?
      instructions:
      - text: Get custom property {custompropertyKey} on rule clause product {key}.
        slots:
          key: path.key
          custompropertyKey: path.custompropertyKey
      - text: Read extra attribute {custompropertyKey} of clause-product link {key}.
        slots:
          key: path.key
          custompropertyKey: path.custompropertyKey
      method: generated
      generated: '2026-09-26'