Hubble Network · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Hubble Platform Organizations API

10 actions 10 updates phrasing extends openapi/hubble-network-organizations-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Hubble Network's API. It is a proposal applied on top of the contract, not a document Hubble Network publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 10

$.info
$.paths['/v1/org/{org_id}'].get
$.paths['/v1/org/{org_id}'].patch
$.paths['/v1/org/{org_id}/users'].get
$.paths['/v1/org/{org_id}/users'].post
$.paths['/v1/org/{org_id}/users/{user_id}'].delete
$.paths['/v1/org/{org_id}/users/{user_id}'].patch
$.paths['/v1/org/{org_id}/invitations'].get
$.paths['/v1/org/{org_id}/invitations'].post
$.paths['/v1/org/{org_id}/invitations'].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 Hubble Platform Organizations API
  version: 1.0.0
extends: openapi/hubble-network-organizations-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['/v1/org/{org_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: View organization details
      effect: read
      questions:
      - What name, address and contact info does my organization have on file?
      - Which timezone is my organization set to?
      instructions:
      - text: Show the metadata for organization {org_id}.
        slots:
          org_id: path.org_id
      - text: Get the profile details on record for org {org_id}.
        slots:
          org_id: path.org_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/org/{org_id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update organization details
      effect: write
      questions:
      - How do I change my organization's name or mailing address?
      - Can I set my organization's timezone?
      instructions:
      - text: Rename organization {org_id} to {set_name}.
        slots:
          org_id: path.org_id
          set_name: requestBody.set_name
      - text: Set the timezone of org {org_id} to {set_timezone}.
        slots:
          org_id: path.org_id
          set_timezone: requestBody.set_timezone
      - text: Update the contact info for org {org_id} to {set_contact_info}.
        slots:
          org_id: path.org_id
          set_contact_info: requestBody.set_contact_info
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/org/{org_id}/users'].get
  update:
    x-apievangelist-phrasing:
      intent: List members of an organization
      effect: read
      questions:
      - Who are the users in my organization?
      - Can I page through the member list a few users at a time?
      instructions:
      - text: List the users in organization {org_id}.
        slots:
          org_id: path.org_id
      - text: Show page {page_number} of org {org_id}'s members, {page_size} per page.
        slots:
          page_number: query.page_number
          org_id: path.org_id
          page_size: query.page_size
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/org/{org_id}/users'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a user directly to the organization
      effect: write
      questions:
      - How do I add someone to my organization right away without sending an invite?
      - Can I choose a user's role at the moment I add them?
      instructions:
      - text: Add {email} to organization {org_id} directly as {role}.
        slots:
          email: requestBody.email
          org_id: path.org_id
          role: requestBody.role
      - text: Put user {email} straight into org {org_id} with the {role} role, no invitation.
        slots:
          email: requestBody.email
          org_id: path.org_id
          role: requestBody.role
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/org/{org_id}/users/{user_id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Remove a user from the organization
      effect: destructive
      questions:
      - How do I remove a team member who has left the company?
      - Can I take away someone's access to my organization?
      instructions:
      - text: Remove user {user_id} from organization {org_id}.
        slots:
          user_id: path.user_id
          org_id: path.org_id
      - text: Revoke member {user_id}'s access to org {org_id}.
        slots:
          user_id: path.user_id
          org_id: path.org_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/org/{org_id}/users/{user_id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Change a member's name or role
      effect: write
      questions:
      - How do I change an existing member's role in my organization?
      - Can I correct a user's first or last name?
      instructions:
      - text: Change the role of user {user_id} in org {org_id} to {set_role}.
        slots:
          user_id: path.user_id
          org_id: path.org_id
          set_role: requestBody.set_role
      - text: Update user {user_id} in org {org_id} to first name {set_first_name} and last name {set_last_name}.
        slots:
          user_id: path.user_id
          org_id: path.org_id
          set_first_name: requestBody.set_first_name
          set_last_name: requestBody.set_last_name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/org/{org_id}/invitations'].get
  update:
    x-apievangelist-phrasing:
      intent: List pending invitations
      effect: read
      questions:
      - Which invitations to my organization haven't been accepted yet?
      - Who have we invited that still hasn't joined?
      instructions:
      - text: List pending invitations for organization {org_id}.
        slots:
          org_id: path.org_id
      - text: Show page {page_number} of outstanding invites to org {org_id}.
        slots:
          page_number: query.page_number
          org_id: path.org_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/org/{org_id}/invitations'].post
  update:
    x-apievangelist-phrasing:
      intent: Invite someone to join the organization
      effect: write
      questions:
      - How do I send an invitation for a colleague to join my organization?
      - Can I pick the role an invitee will get once they accept?
      instructions:
      - text: Invite {invitee_email} to join organization {org_id} as {role}.
        slots:
          invitee_email: requestBody.invitee_email
          org_id: path.org_id
          role: requestBody.role
      - text: Send an invitation to {invitee_email} for org {org_id} with the {role} role.
        slots:
          invitee_email: requestBody.invitee_email
          org_id: path.org_id
          role: requestBody.role
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/org/{org_id}/invitations'].delete
  update:
    x-apievangelist-phrasing:
      intent: Revoke a pending invitation
      effect: destructive
      questions:
      - How do I cancel an invitation I sent to the wrong email address?
      - Can I withdraw an invite before the person accepts it?
      instructions:
      - text: Revoke the pending invitation for {invitee_email} to organization {org_id}.
        slots:
          invitee_email: requestBody.invitee_email
          org_id: path.org_id
      - text: Cancel the outstanding invite sent to {invitee_email} for org {org_id}.
        slots:
          invitee_email: requestBody.invitee_email
          org_id: path.org_id
      method: generated
      generated: '2026-09-26'