Close · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Close Memberships API

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

What the actions change

x-apievangelist-phrasing

Targets 7

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

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 Close Memberships API
  version: 1.0.0
extends: openapi/close-memberships-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: 6
- target: $.paths['/membership/'].put
  update:
    x-apievangelist-phrasing:
      intent: Bulk update several memberships
      effect: write
      questions:
      - Can I change the role of many users at once?
      - Is it possible to turn on call recording for multiple memberships in one request?
      instructions:
      - text: Set role {role_id} on all the listed memberships.
        slots:
          role_id: requestBody.role_id
      - text: Turn auto call recording to {auto_record_calls} for several memberships at once.
        slots:
          auto_record_calls: requestBody.auto_record_calls
      method: generated
      generated: '2026-09-26'
- target: $.paths['/membership/'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a user to the organization
      effect: write
      questions:
      - How do I provision a new user into my organization by email?
      - Does the new member's email have to be on a verified domain?
      instructions:
      - text: Add {email} to the organization with role {role_id}.
        slots:
          email: requestBody.email
          role_id: requestBody.role_id
      - text: Provision a membership for {email} as role {role_id}.
        slots:
          email: requestBody.email
          role_id: requestBody.role_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/membership/{id}/'].put
  update:
    x-apievangelist-phrasing:
      intent: Update one user's membership
      effect: write
      questions:
      - Can I change a single user's role or default caller ID?
      - Is it possible to enable email open tracking for one member?
      instructions:
      - text: Change membership {id} to role {role_id}.
        slots:
          id: path.id
          role_id: requestBody.role_id
      - text: Set the default caller ID on membership {id} to {default_caller_id}.
        slots:
          id: path.id
          default_caller_id: requestBody.default_caller_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/membership/{id}/'].delete
  update:
    x-apievangelist-phrasing:
      intent: Deactivate a user's membership
      effect: destructive
      questions:
      - How do I remove a user from my organization?
      - What does deactivating a membership do?
      instructions:
      - text: Deactivate membership {id}.
        slots:
          id: path.id
      - text: Remove the user with membership {id} from the organization.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/membership/{id}/pinned_views/'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a member's pinned views
      effect: read
      questions:
      - Which smart views has a user pinned, and in what order?
      - Can I see the pinned views for a membership?
      instructions:
      - text: Show the pinned views for membership {id}.
        slots:
          id: path.id
      - text: List the ordered pinned views of membership {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/membership/{id}/pinned_views/'].put
  update:
    x-apievangelist-phrasing:
      intent: Set a member's pinned views
      effect: write
      questions:
      - Can I choose which saved views are pinned for a teammate?
      - Does updating pinned views replace the whole list?
      instructions:
      - text: Pin views {saved_view_ids} for membership {id}.
        slots:
          saved_view_ids: requestBody.saved_view_ids
          id: path.id
      - text: Replace membership {id}'s pinned views with {saved_view_ids} in that order.
        slots:
          id: path.id
          saved_view_ids: requestBody.saved_view_ids
      method: generated
      generated: '2026-09-26'