Contentstack · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Contentstack Personalize Management Attributes API

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

What the actions change

x-apievangelist-phrasing

Targets 5

$.info
$.paths['/attributes'].get
$.paths['/attributes'].post
$.paths['/attributes/{id}'].put
$.paths['/attributes/{id}'].delete

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 Contentstack Personalize Management Attributes API
  version: 1.0.0
extends: openapi/contentstack-attributes-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: 4
- target: $.paths['/attributes'].get
  update:
    x-apievangelist-phrasing:
      intent: List Personalize user attributes
      effect: read
      questions:
      - Which user attributes can I use to build audience rules?
      - How do I see all attribute definitions in my Personalize project?
      instructions:
      - text: List the attributes defined in Personalize project {project}.
        slots:
          project: header.x-project-uid
      - text: Show every user attribute definition for project {project}.
        slots:
          project: header.x-project-uid
      method: generated
      generated: '2026-09-26'
- target: $.paths['/attributes'].post
  update:
    x-apievangelist-phrasing:
      intent: Define a new user attribute
      effect: write
      questions:
      - How do I add a custom attribute like plan tier for audience targeting?
      - Which data types can a Personalize attribute have?
      instructions:
      - text: Create attribute {name} with key {key} of type {data_type} in project {project}.
        slots:
          name: requestBody.name
          key: requestBody.key
          data_type: requestBody.data_type
          project: header.x-project-uid
      - text: Define a {data_type} attribute called {name} ({key}) in Personalize project {project}.
        slots:
          data_type: requestBody.data_type
          name: requestBody.name
          key: requestBody.key
          project: header.x-project-uid
      method: generated
      generated: '2026-09-26'
- target: $.paths['/attributes/{id}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a user attribute definition
      effect: write
      questions:
      - Can I change the data type of an attribute I already defined?
      - How do I rename an existing Personalize attribute?
      instructions:
      - text: Update attribute {id} in project {project} to name {name}, key {key}, type {data_type}.
        slots:
          id: path.id
          project: header.x-project-uid
          name: requestBody.name
          key: requestBody.key
          data_type: requestBody.data_type
      - text: Change existing attribute {id} in Personalize project {project} to type {data_type}, keeping name {name} and key {key}.
        slots:
          id: path.id
          project: header.x-project-uid
          data_type: requestBody.data_type
          name: requestBody.name
          key: requestBody.key
      method: generated
      generated: '2026-09-26'
- target: $.paths['/attributes/{id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a user attribute
      effect: destructive
      questions:
      - Why can't I delete an attribute that audience rules still use?
      - How do I remove an unused attribute from Personalize?
      instructions:
      - text: Delete attribute {id} from project {project}.
        slots:
          id: path.id
          project: header.x-project-uid
      - text: Permanently remove the attribute definition {id} in Personalize project {project}.
        slots:
          id: path.id
          project: header.x-project-uid
      method: generated
      generated: '2026-09-26'