Optimizely · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Admin API V1 User Profile Passwords API

10 actions 10 updates phrasing extends openapi/optimizely-user-profile-passwords-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/UserProfilePasswords'].get
$.paths['/api/v1/admin/UserProfilePasswords'].post
$.paths['/api/v1/admin/UserProfilePasswords({id})'].get
$.paths['/api/v1/admin/UserProfilePasswords({id})'].put
$.paths['/api/v1/admin/UserProfilePasswords({id})'].delete
$.paths['/api/v1/admin/UserProfilePasswords({id})'].patch
$.paths['/api/v1/admin/UserProfilePasswords/Default.Default()'].get
$.paths['/api/v1/admin/userprofilepasswords/delete'].delete
$.paths['/api/v1/admin/userprofilepasswords({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 User Profile Passwords API
  version: 1.0.0
extends: openapi/optimizely-user-profile-passwords-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/UserProfilePasswords'].get
  update:
    x-apievangelist-phrasing:
      intent: List stored user password records
      effect: read
      questions:
      - How do I list the password history records kept for user profiles in Optimizely Configured Commerce?
      - Can I filter password records to one user profile?
      instructions:
      - text: List all user profile password records.
      - text: List user profile passwords matching {filter}, newest first by {orderby}.
        slots:
          filter: query.$filter
          orderby: query.$orderby
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/UserProfilePasswords'].post
  update:
    x-apievangelist-phrasing:
      intent: Store a password hash for a user
      effect: write
      questions:
      - Can I add a password hash record for a user profile?
      - Does the password record track when the password was changed?
      instructions:
      - text: Create a password record for user profile {userProfileId} with hash {passwordHash}.
        slots:
          userProfileId: requestBody.userProfileId
          passwordHash: requestBody.passwordHash
      - text: Store hash {passwordHash} for user {userProfileId}, changed on {passwordChangedOn}.
        slots:
          passwordHash: requestBody.passwordHash
          userProfileId: requestBody.userProfileId
          passwordChangedOn: requestBody.passwordChangedOn
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/UserProfilePasswords({id})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one user password record
      effect: read
      questions:
      - How can I read a single user profile password record by ID?
      - Can I select only the change date from one password record?
      instructions:
      - text: Show user profile password record {id}.
        slots:
          id: path.id
      - text: Get password record {id} returning only {select}.
        slots:
          id: path.id
          select: query.$select
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/UserProfilePasswords({id})'].put
  update:
    x-apievangelist-phrasing:
      intent: Replace a user password record
      effect: write
      questions:
      - Can I overwrite a whole user password record?
      - What's needed to fully replace a stored password hash entry?
      instructions:
      - text: Replace password record {id} with hash {passwordHash}.
        slots:
          id: path.id
          passwordHash: requestBody.passwordHash
      - text: Overwrite password record {id} entirely for user profile {userProfileId}.
        slots:
          id: path.id
          userProfileId: requestBody.userProfileId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/UserProfilePasswords({id})'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a user password record
      effect: destructive
      questions:
      - How do I delete one stored password record?
      - Can I delete a password record only if its ETag matches?
      instructions:
      - text: Delete user profile password record {id}.
        slots:
          id: path.id
      - text: Delete password record {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/UserProfilePasswords({id})'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update a user password record
      effect: write
      questions:
      - Can I update just the password-changed date on a record?
      - How do I swap in a new hash without replacing the whole record?
      instructions:
      - text: Patch password record {id} with changed date {passwordChangedOn}.
        slots:
          id: path.id
          passwordChangedOn: requestBody.passwordChangedOn
      - text: Update password record {id} to hash {passwordHash}.
        slots:
          id: path.id
          passwordHash: requestBody.passwordHash
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/UserProfilePasswords/Default.Default()'].get
  update:
    x-apievangelist-phrasing:
      intent: Get default values for a password record
      effect: read
      questions:
      - What defaults are pre-filled for a new user password record?
      - Is there a blank password record template?
      instructions:
      - text: Get the default user profile password template.
      - text: Show pre-filled values for a new password record.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/userprofilepasswords/delete'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete several user password records
      effect: destructive
      questions:
      - Can I bulk delete old password history records?
      - How do I remove many password records at once?
      instructions:
      - text: Bulk delete user profile password records {ids}.
        slots:
          ids: query.ids
      - text: Remove every password record listed in {ids}.
        slots:
          ids: query.ids
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/userprofilepasswords({key})/customproperties({custompropertyKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a custom property on a password record
      effect: read
      questions:
      - Can I read a custom property on a user password record?
      - Where are custom attributes on a password record kept?
      instructions:
      - text: Get custom property {custompropertyKey} on password record {key}.
        slots:
          custompropertyKey: path.custompropertyKey
          key: path.key
      - text: Show password record {key}'s custom property {custompropertyKey}.
        slots:
          key: path.key
          custompropertyKey: path.custompropertyKey
      method: generated
      generated: '2026-09-26'