ControlUp · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for VDI & DAAS Session API
5 actions
5 updates
phrasing
extends
openapi/controlup-session-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.
What the actions change
x-apievangelist-phrasing
Targets 5
$.info
$.paths['/v1/sessions'].get
$.paths['/v1/sessions/timeline/{sessionUid}'].get
$.paths['/v1/sessions/details'].get
$.paths['/v1/sessions/aggregated'].get
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for VDI & DAAS Session API
version: 1.0.0
extends: openapi/controlup-session-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: 4
- target: $.paths['/v1/sessions'].get
update:
x-apievangelist-phrasing:
intent: Get user session statistics for a period
effect: read
questions:
- What were each user's session statistics over the last week?
- Which sessions had logon durations longer than 60 seconds?
- Can I narrow session statistics to one user account or server?
instructions:
- text: Get {presetType} session statistics from {_timeFrom} to {_timeTo}.
slots:
_timeFrom: query._timeFrom
_timeTo: query._timeTo
presetType: query.presetType
- text: Show {presetType} session stats for user {userAccount} between {_timeFrom} and {_timeTo}.
slots:
_timeFrom: query._timeFrom
_timeTo: query._timeTo
presetType: query.presetType
userAccount: query.userAccount
- text: List {presetType} sessions from {_timeFrom} to {_timeTo} with logon longer than {logonDurationgt} seconds.
slots:
_timeFrom: query._timeFrom
_timeTo: query._timeTo
logonDurationgt: query.logonDurationgt
presetType: query.presetType
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/sessions/timeline/{sessionUid}'].get
update:
x-apievangelist-phrasing:
intent: Get a session's state-change timeline
effect: read
questions:
- When did a particular session connect, disconnect and log off?
- Can I see the sequence of state changes for one user session?
instructions:
- text: Get the timeline for session {sessionUid}.
slots:
sessionUid: path.sessionUid
- text: Show the state changes of session {sessionUid} in order.
slots:
sessionUid: path.sessionUid
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/sessions/details'].get
update:
x-apievangelist-phrasing:
intent: Get activity details of an individual session
effect: read
questions:
- What happened during one specific user's session on a machine?
- Can I pull activity details for a single session that ended with an abnormal logoff?
instructions:
- text: Get details of session {sessionUid} on {machineName} ({computerId}) starting {sessionStartDateTime}, normal logoff {isNormalLogoff}.
slots:
computerId: query.computerId
isNormalLogoff: query.isNormalLogoff
machineName: query.machineName
sessionStartDateTime: query.sessionStartDateTime
sessionUid: query.sessionUid
- text: Show activity for session {sessionUid} on machine {machineName} ({computerId}) from {sessionStartDateTime}, logoff normal {isNormalLogoff}.
slots:
computerId: query.computerId
isNormalLogoff: query.isNormalLogoff
machineName: query.machineName
sessionStartDateTime: query.sessionStartDateTime
sessionUid: query.sessionUid
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/sessions/aggregated'].get
update:
x-apievangelist-phrasing:
intent: Aggregate session metrics by a dimension
effect: read
questions:
- What is the average logon duration per delivery group?
- Can I group session activity by site, user or protocol and get min, max and count?
instructions:
- text: Aggregate session metrics {metrics} grouped by {groupBy} from {_timeFrom} to {_timeTo}.
slots:
_timeFrom: query._timeFrom
_timeTo: query._timeTo
groupBy: query.groupBy
metrics: query.metrics
- text: Show {aggregations} of {metrics} per {groupBy} between {_timeFrom} and {_timeTo}.
slots:
_timeFrom: query._timeFrom
_timeTo: query._timeTo
aggregations: query.aggregations
groupBy: query.groupBy
metrics: query.metrics
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.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/controlup-session-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.