ControlUp · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Dex Organizations API

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

What the actions change

x-apievangelist-phrasing

Targets 4

$.info
$.paths['/organizations/{tenantManagerOrgId}/tenants'].get
$.paths['/organizations/{tenantManagerOrgId}/tenants'].post
$.paths['/organizations/{tenantManagerOrgId}/tenants/copy-edge-data'].post

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 Dex Organizations API
  version: 1.0.0
extends: openapi/controlup-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: 3
- target: $.paths['/organizations/{tenantManagerOrgId}/tenants'].get
  update:
    x-apievangelist-phrasing:
      intent: List tenants under a Tenant Manager
      effect: read
      questions:
      - Which tenant organizations do I manage as an MSP?
      - Can I list only prospect tenants or only active ones?
      instructions:
      - text: List the tenants under Tenant Manager {tenantManagerOrgId}.
        slots:
          tenantManagerOrgId: path.tenantManagerOrgId
      - text: Find tenants named {name} under {tenantManagerOrgId} with status {status}.
        slots:
          name: query.name
          status: query.status
          tenantManagerOrgId: path.tenantManagerOrgId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/organizations/{tenantManagerOrgId}/tenants'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a tenant organization
      effect: write
      questions:
      - How do I create a new customer tenant as an MSP?
      - Can I invite users when creating a tenant organization?
      instructions:
      - text: Create tenant {organizationName} in region {region} under Tenant Manager {tenantManagerOrgId}.
        slots:
          organizationName: requestBody.organizationName
          region: requestBody.region
          tenantManagerOrgId: path.tenantManagerOrgId
      - text: Create prospect tenant {organizationName} in {region} under {tenantManagerOrgId} and invite {invites}.
        slots:
          invites: requestBody.invites
          organizationName: requestBody.organizationName
          region: requestBody.region
          tenantManagerOrgId: path.tenantManagerOrgId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/organizations/{tenantManagerOrgId}/tenants/copy-edge-data'].post
  update:
    x-apievangelist-phrasing:
      intent: Copy Desktops scripts, alerts and dashboards between tenants
      effect: write
      questions:
      - How do I copy ControlUp for Desktops scripts and dashboards from one tenant to another?
      - Can I duplicate alerts from a template organization into a new customer?
      instructions:
      - text: Copy Desktops data from {sourceOrgId} to {targetOrgId} under Tenant Manager {tenantManagerOrgId}.
        slots:
          sourceOrgId: requestBody.sourceOrgId
          targetOrgId: requestBody.targetOrgId
          tenantManagerOrgId: path.tenantManagerOrgId
      - text: Copy scripts, alerts and dashboards from {sourceOrgId} to {targetOrgId} via {tenantManagerOrgId} and notify {additionalEmails}.
        slots:
          additionalEmails: requestBody.additionalEmails
          sourceOrgId: requestBody.sourceOrgId
          targetOrgId: requestBody.targetOrgId
          tenantManagerOrgId: path.tenantManagerOrgId
      method: generated
      generated: '2026-09-26'