Hubble Network · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Hubble Platform API Keys API

7 actions 7 updates phrasing extends openapi/hubble-network-api-keys-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 7

$.info
$.paths['/v1/org/{org_id}/check'].get
$.paths['/v1/org/{org_id}/key'].get
$.paths['/v1/org/{org_id}/key'].post
$.paths['/v1/org/{org_id}/key/{key_id}'].delete
$.paths['/v1/org/{org_id}/key/{key_id}'].patch
$.paths['/v1/org/{org_id}/key_scopes'].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 Hubble Platform API Keys API
  version: 1.0.0
extends: openapi/hubble-network-api-keys-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['/v1/org/{org_id}/check'].get
  update:
    x-apievangelist-phrasing:
      intent: Check that an API key is valid
      effect: read
      questions:
      - How can I confirm the API key I'm using still works for my organization?
      - Is there a quick check to see whether my Hubble Network key is valid before I make other calls?
      instructions:
      - text: Check that my API key is valid for organization {org_id}.
        slots:
          org_id: path.org_id
      - text: Verify the current API key works before I run anything else against org {org_id}.
        slots:
          org_id: path.org_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/org/{org_id}/key'].get
  update:
    x-apievangelist-phrasing:
      intent: List an organization's API keys
      effect: read
      questions:
      - Which API keys are currently active for my organization?
      - Can I see every valid API key that's been issued for my org?
      instructions:
      - text: List all valid API keys for organization {org_id}.
        slots:
          org_id: path.org_id
      - text: Show me every API key issued in org {org_id} so I can audit them.
        slots:
          org_id: path.org_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/org/{org_id}/key'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a new API key
      effect: write
      questions:
      - How do I create a new API key with only certain scopes?
      - What happens if I create an API key without specifying any scopes?
      - Can I make a new API key that expires at a specific time?
      instructions:
      - text: Provision a new API key named {name} for organization {org_id}.
        slots:
          name: requestBody.name
          org_id: path.org_id
      - text: Create an API key in org {org_id} limited to scopes {scopes} that expires at {expires_at_seconds}.
        slots:
          org_id: path.org_id
          scopes: requestBody.scopes
          expires_at_seconds: requestBody.expires_at_seconds
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/org/{org_id}/key/{key_id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Permanently delete an API key
      effect: destructive
      questions:
      - How do I permanently remove an API key that's no longer needed?
      - Can a deleted API key be recovered afterwards?
      instructions:
      - text: Delete API key {key_id} from organization {org_id}.
        slots:
          key_id: path.key_id
          org_id: path.org_id
      - text: Permanently remove the leaked key {key_id} in org {org_id}.
        slots:
          key_id: path.key_id
          org_id: path.org_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/org/{org_id}/key/{key_id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Rename, rescope or change an API key's expiry
      effect: write
      questions:
      - Can I change the scopes on an existing API key without issuing a new one?
      - How do I remove the expiration from an API key I already have?
      - Is it possible to rename an existing API key?
      instructions:
      - text: Rename existing API key {key_id} in org {org_id} to {set_name}.
        slots:
          key_id: path.key_id
          org_id: path.org_id
          set_name: requestBody.set_name
      - text: Change the scopes on existing key {key_id} in org {org_id} to {set_scopes}.
        slots:
          key_id: path.key_id
          org_id: path.org_id
          set_scopes: requestBody.set_scopes
      - text: Set existing key {key_id} in org {org_id} to expire at {set_expires_at_seconds}.
        slots:
          key_id: path.key_id
          org_id: path.org_id
          set_expires_at_seconds: requestBody.set_expires_at_seconds
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/org/{org_id}/key_scopes'].get
  update:
    x-apievangelist-phrasing:
      intent: List the scopes an API key can be granted
      effect: read
      questions:
      - What authorization scopes are available to assign to an API key?
      - Where can I find the display names for each permission scope?
      instructions:
      - text: List every authorization scope available for API keys in org {org_id}.
        slots:
          org_id: path.org_id
      - text: Show me the scope IDs and names I can pick from when scoping a key for org {org_id}.
        slots:
          org_id: path.org_id
      method: generated
      generated: '2026-09-26'