Optimizely · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Admin API V1 Carriers API

17 actions 17 updates phrasing extends openapi/optimizely-carriers-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 17 · first 16 shown; the file carries all of them

$.info
$.paths['/api/v1/admin/Carriers'].get
$.paths['/api/v1/admin/Carriers'].post
$.paths['/api/v1/admin/Carriers({id})'].get
$.paths['/api/v1/admin/Carriers({id})'].put
$.paths['/api/v1/admin/Carriers({id})'].delete
$.paths['/api/v1/admin/Carriers({id})'].patch
$.paths['/api/v1/admin/Carriers/Default.Default()'].get
$.paths['/api/v1/admin/carriers/delete'].delete
$.paths['/api/v1/admin/carriers({key})/carrierpackages({carrierpackageKey})'].get
$.paths['/api/v1/admin/carriers({key})/carrierzones({carrierzoneKey})'].get
$.paths['/api/v1/admin/carriers({key})/customers({customerKey})'].get
$.paths['/api/v1/admin/carriers({key})/customproperties({custompropertyKey})'].get
$.paths['/api/v1/admin/carriers({key})/shipcharges({shipchargeKey})'].get
$.paths['/api/v1/admin/carriers({key})/shiprules({shipruleKey})'].get
$.paths['/api/v1/admin/carriers({key})/shipvias({shipviaKey})'].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 Carriers API
  version: 1.0.0
extends: openapi/optimizely-carriers-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: 16
- target: $.paths['/api/v1/admin/Carriers'].get
  update:
    x-apievangelist-phrasing:
      intent: List shipping carriers
      effect: read
      questions:
      - Which shipping carriers are configured in Optimizely Commerce?
      - Can I narrow the carrier list to only enabled, live carriers?
      instructions:
      - text: List all shipping carriers.
      - text: Show carriers matching {filter}.
        slots:
          filter: query.$filter
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/Carriers'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a shipping carrier
      effect: write
      questions:
      - What credentials and URLs do I need to register a new carrier?
      - Can a new carrier authenticate with OAuth client credentials instead of a password?
      instructions:
      - text: Create carrier {name} with account number {accountNumber} and rating service {ratingService}.
        slots:
          name: requestBody.name
          accountNumber: requestBody.accountNumber
          ratingService: requestBody.ratingService
      - text: Add carrier {name} using tracking URL {trackingUrl} and contact email {contactEmail}.
        slots:
          name: requestBody.name
          trackingUrl: requestBody.trackingUrl
          contactEmail: requestBody.contactEmail
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/Carriers({id})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one shipping carrier
      effect: read
      questions:
      - What settings are stored for a single carrier?
      - Can I look up a carrier's live and test URLs by its id?
      instructions:
      - text: Fetch carrier {id}.
        slots:
          id: path.id
      - text: Show the configuration of carrier {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/Carriers({id})'].put
  update:
    x-apievangelist-phrasing:
      intent: Replace a shipping carrier's full setup
      effect: write
      questions:
      - Can I overwrite a carrier's entire configuration in one call?
      - Does replacing a carrier mean resending every required credential field?
      instructions:
      - text: Replace carrier {id} with name {name} and live URL {liveUrl}.
        slots:
          id: path.id
          name: requestBody.name
          liveUrl: requestBody.liveUrl
      - text: Overwrite the whole record of carrier {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/Carriers({id})'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete one shipping carrier
      effect: destructive
      questions:
      - How do I remove a single shipping carrier?
      - Can deleting a carrier be guarded by an ETag check?
      instructions:
      - text: Delete carrier {id}.
        slots:
          id: path.id
      - text: Delete carrier {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/Carriers({id})'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update selected carrier settings
      effect: write
      questions:
      - Can I switch a carrier from test to live mode without resending everything?
      - Is there a way to set a backup carrier for an existing one?
      instructions:
      - text: Set carrier {id} live flag to {isLive}.
        slots:
          id: path.id
          isLive: requestBody.isLive
      - text: Make {backUpCarrierId} the backup for carrier {id}.
        slots:
          id: path.id
          backUpCarrierId: requestBody.backUpCarrierId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/Carriers/Default.Default()'].get
  update:
    x-apievangelist-phrasing:
      intent: Get default values for a new carrier
      effect: read
      questions:
      - What defaults does a new carrier record start with?
      - Is there a blank carrier template to fill in?
      instructions:
      - text: Get the default field values for a new carrier.
      - text: Show the empty carrier template.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/carriers/delete'].delete
  update:
    x-apievangelist-phrasing:
      intent: Bulk delete shipping carriers
      effect: destructive
      questions:
      - Can I remove several carriers in one request?
      - Is there a batch delete for carriers by a list of ids?
      instructions:
      - text: Bulk delete carriers {ids}.
        slots:
          ids: query.ids
      - text: Permanently delete every carrier in {ids}.
        slots:
          ids: query.ids
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/carriers({key})/carrierpackages({carrierpackageKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a package type offered by a carrier
      effect: read
      questions:
      - Which package definitions belong to a carrier?
      - Can I read one carrier package record through its carrier?
      instructions:
      - text: Get package {carrierpackageKey} of carrier {key}.
        slots:
          key: path.key
          carrierpackageKey: path.carrierpackageKey
      - text: Show carrier package {carrierpackageKey} under carrier {key}.
        slots:
          key: path.key
          carrierpackageKey: path.carrierpackageKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/carriers({key})/carrierzones({carrierzoneKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a shipping zone of a carrier
      effect: read
      questions:
      - What shipping zones has a carrier been set up with?
      - Can I fetch a single carrier zone by key?
      instructions:
      - text: Get zone {carrierzoneKey} of carrier {key}.
        slots:
          key: path.key
          carrierzoneKey: path.carrierzoneKey
      - text: Show carrier zone {carrierzoneKey} for carrier {key}.
        slots:
          key: path.key
          carrierzoneKey: path.carrierzoneKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/carriers({key})/customers({customerKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a customer assigned to a carrier
      effect: read
      questions:
      - Which customers are linked to a particular carrier?
      - Can I check one customer's association with a carrier?
      instructions:
      - text: Get customer {customerKey} assigned to carrier {key}.
        slots:
          key: path.key
          customerKey: path.customerKey
      - text: Show customer {customerKey} linked to carrier {key}.
        slots:
          key: path.key
          customerKey: path.customerKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/carriers({key})/customproperties({custompropertyKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a custom property on a carrier
      effect: read
      questions:
      - How can I read a custom property stored on a carrier?
      - Can I fetch one custom field value from a carrier record?
      instructions:
      - text: Get custom property {custompropertyKey} of carrier {key}.
        slots:
          key: path.key
          custompropertyKey: path.custompropertyKey
      - text: Show the {custompropertyKey} custom property on carrier {key}.
        slots:
          key: path.key
          custompropertyKey: path.custompropertyKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/carriers({key})/shipcharges({shipchargeKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a shipping charge of a carrier
      effect: read
      questions:
      - What shipping charges are defined for a carrier?
      - Can I look up one ship charge entry through its carrier?
      instructions:
      - text: Get ship charge {shipchargeKey} of carrier {key}.
        slots:
          key: path.key
          shipchargeKey: path.shipchargeKey
      - text: Show shipping charge {shipchargeKey} for carrier {key}.
        slots:
          key: path.key
          shipchargeKey: path.shipchargeKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/carriers({key})/shiprules({shipruleKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a shipping rule of a carrier
      effect: read
      questions:
      - Which shipping rules apply to a carrier?
      - Can I read one ship rule attached to a carrier?
      instructions:
      - text: Get ship rule {shipruleKey} of carrier {key}.
        slots:
          key: path.key
          shipruleKey: path.shipruleKey
      - text: Show shipping rule {shipruleKey} under carrier {key}.
        slots:
          key: path.key
          shipruleKey: path.shipruleKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/carriers({key})/shipvias({shipviaKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a ship via service of a carrier
      effect: read
      questions:
      - What ship via service levels does a carrier offer?
      - Can I fetch one ship via option, like ground or overnight, for a carrier?
      instructions:
      - text: Get ship via {shipviaKey} of carrier {key}.
        slots:
          key: path.key
          shipviaKey: path.shipviaKey
      - text: Show ship via service {shipviaKey} offered by carrier {key}.
        slots:
          key: path.key
          shipviaKey: path.shipviaKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/carriers({key})/websites({websiteKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a website that uses a carrier
      effect: read
      questions:
      - Which storefront websites is a carrier enabled on?
      - Can I check whether one website is linked to a carrier?
      instructions:
      - text: Get website {websiteKey} linked to carrier {key}.
        slots:
          key: path.key
          websiteKey: path.websiteKey
      - text: Show website {websiteKey} that uses carrier {key}.
        slots:
          key: path.key
          websiteKey: path.websiteKey
      method: generated
      generated: '2026-09-26'