ControlUp · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for ControlUp for Desktops Data API

8 actions 8 updates phrasing extends openapi/controlup-data-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 8

$.info
$.paths['/data'].get
$.paths['/data'].post
$.paths['/data/{index_name}'].get
$.paths['/data/{index_name}/mappings'].get
$.paths['/data/{index_name}/{documentID}'].get
$.paths['/data/views'].get
$.paths['/data/views/{id}'].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 ControlUp for Desktops Data API
  version: 1.0.0
extends: openapi/controlup-data-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 7
- target: $.paths['/data'].get
  update:
    x-apievangelist-phrasing:
      intent: List data indices
      effect: read
      questions:
      - Which data indices are available, and how big is each?
      - How many rows are in each data index?
      instructions:
      - text: List all data indices.
      - text: List data indices with sizes and row counts.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/data'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a data index
      effect: write
      questions:
      - Can I create my own data index and load it with JSON data?
      - What do I need to submit to create a new data index?
      instructions:
      - text: Create a data index named {index} with payload {payload}.
        slots:
          index: requestBody.index
          payload: requestBody.payload
      - text: Submit {payload} as a new data index called {index}.
        slots:
          payload: requestBody.payload
          index: requestBody.index
      method: generated
      generated: '2026-10-01'
- target: $.paths['/data/{index_name}'].get
  update:
    x-apievangelist-phrasing:
      intent: Read the rows of a data index
      effect: read
      questions:
      - Can I pull the contents of a data index, and what's the row cap?
      - Can I export rows from a data index filtered by a field?
      instructions:
      - text: Get the contents of data index {index_name}.
        slots:
          index_name: path.index_name
      - text: Export data index {index_name}.
        slots:
          index_name: path.index_name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/data/{index_name}/mappings'].get
  update:
    x-apievangelist-phrasing:
      intent: Get field types of a data index
      effect: read
      questions:
      - Which fields and data types does a data index contain?
      - What's the schema of a particular data index?
      instructions:
      - text: Show the field mappings of data index {index_name}.
        slots:
          index_name: path.index_name
      - text: List the fields and types in index {index_name}.
        slots:
          index_name: path.index_name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/data/{index_name}/{documentID}'].get
  update:
    x-apievangelist-phrasing:
      intent: Retrieve a document from a data index
      effect: read
      questions:
      - Can I fetch one document from a data index by ID?
      - How do I look up a single record in an index?
      instructions:
      - text: Get document {documentID} from index {index_name}.
        slots:
          documentID: path.documentID
          index_name: path.index_name
      - text: Retrieve record {documentID} in data index {index_name}.
        slots:
          documentID: path.documentID
          index_name: path.index_name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/data/views'].get
  update:
    x-apievangelist-phrasing:
      intent: List custom reports
      effect: read
      questions:
      - Which custom reports have been set up?
      - Can I see the configuration of all my custom reports?
      instructions:
      - text: List all custom reports.
      - text: Show every custom report with its configuration.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/data/views/{id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a custom report's configuration
      effect: read
      questions:
      - How is a particular custom report configured?
      - Can I fetch one custom report by ID?
      instructions:
      - text: Show custom report {id}.
        slots:
          id: path.id
      - text: Get the configuration of custom report {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'

Work with this as data

Every overlay here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/controlup-data-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.