OutSystems · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Outsystems Assets API
23 actions
23 updates
phrasing
extends
openapi/outsystems-assets-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for OutSystems's API. It is a proposal applied on top of the contract, not a document OutSystems publishes.
What the actions change
x-apievangelist-phrasing
Targets 23 · first 16 shown; the file carries all of them
$.info
$.paths['/assets'].get
$.paths['/assets'].post
$.paths['/assets/{assetKey}'].get
$.paths['/assets/{assetKey}'].delete
$.paths['/assets/{assetKey}/highest-tag-revision'].get
$.paths['/assets/{assetKey}/latest-revision'].get
$.paths['/assets/{assetKey}/revisions/{revisionNumber}'].get
$.paths['/assets/{assetKey}/revisions/{revisionNumber}'].patch
$.paths['/assets/{assetKey}/revisions/{revisionNumber}/icon'].get
$.paths['/assets/{assetKey}/revisions/{revisionNumber}/metadata'].get
$.paths['/assets/{assetKey}/revisions/{revisionNumber}/release-notes'].get
$.paths['/assets/{assetKey}/revisions/{revisionNumber}/signature'].get
$.paths['/assets/{assetKey}/revisions/{revisionNumber}/source-code'].get
$.paths['/assets/{assetKey}/revisions'].get
$.paths['/assets/search'].post
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 Outsystems Assets API
version: 1.0.0
extends: openapi/outsystems-assets-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: 22
- target: $.paths['/assets'].get
update:
x-apievangelist-phrasing:
intent: List assets in the repository
effect: read
questions:
- What apps, libraries and agents are in my ODC asset repository?
- Can I filter my assets by type or by portfolio?
- Which assets have a name or description mentioning a keyword?
instructions:
- text: List all my assets of type {assetTypes}.
slots:
assetTypes: query.assetTypes
- text: Find assets whose name contains {nameContains}.
slots:
nameContains: query.nameContains
- text: Show the assets that belong to portfolio {portfolioKeys}.
slots:
portfolioKeys: query.portfolioKeys
method: generated
generated: '2026-10-01'
- target: $.paths['/assets'].post
update:
x-apievangelist-phrasing:
intent: Create an asset or a new asset revision
effect: write
questions:
- How do I upload an OML or XIF file as a new revision of an app?
- Can I create a brand-new asset from a template or as an empty one?
- Is it possible to add a commit message and release notes when saving a revision?
instructions:
- text: Create a new asset revision from the uploaded file at {fileUri}.
slots:
fileUri: requestBody.fileUri
- text: Save a new revision from {fileUri} with commit message {commitMessage}.
slots:
fileUri: requestBody.fileUri
commitMessage: requestBody.commitMessage
- text: Create a new asset in portfolio {portfolioKey} from the file at {fileUri}.
slots:
portfolioKey: requestBody.portfolioKey
fileUri: requestBody.fileUri
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}'].get
update:
x-apievangelist-phrasing:
intent: Get an asset's details
effect: read
questions:
- How do I look up a single asset's details by its key?
- What information does ODC hold about one specific app or library?
instructions:
- text: Get the details of asset {assetKey}.
slots:
assetKey: path.assetKey
- text: Show me asset {assetKey} with its current details.
slots:
assetKey: path.assetKey
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}'].delete
update:
x-apievangelist-phrasing:
intent: Delete an asset permanently
effect: destructive
questions:
- Can I permanently delete an app and all of its runtime data?
- What happens to the stages an asset is published to when I delete it?
instructions:
- text: Delete asset {assetKey} permanently.
slots:
assetKey: path.assetKey
- text: Remove asset {assetKey} from the repository and all its stages.
slots:
assetKey: path.assetKey
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/highest-tag-revision'].get
update:
x-apievangelist-phrasing:
intent: Get an asset's highest-tagged revision
effect: read
questions:
- Which revision of my app carries the highest version tag?
- How do I find the most recent tagged release of an asset rather than the latest save?
instructions:
- text: Get the highest-tagged revision of asset {assetKey}.
slots:
assetKey: path.assetKey
- text: Show the top tagged version of {assetKey}.
slots:
assetKey: path.assetKey
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/latest-revision'].get
update:
x-apievangelist-phrasing:
intent: Get an asset's latest revision
effect: read
questions:
- What is the newest revision saved for an asset, tagged or not?
- Can I fetch only the latest revision record of an app?
instructions:
- text: Get the latest revision of asset {assetKey}.
slots:
assetKey: path.assetKey
- text: Show me the most recent revision saved for {assetKey}.
slots:
assetKey: path.assetKey
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/revisions/{revisionNumber}'].get
update:
x-apievangelist-phrasing:
intent: Get a specific asset revision
effect: read
questions:
- How do I retrieve one exact numbered revision of an asset?
- Can I look at an older revision of my app by its revision number?
instructions:
- text: Get revision {revisionNumber} of asset {assetKey}.
slots:
revisionNumber: path.revisionNumber
assetKey: path.assetKey
- text: Show me asset {assetKey} as it was at revision {revisionNumber}.
slots:
assetKey: path.assetKey
revisionNumber: path.revisionNumber
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/revisions/{revisionNumber}'].patch
update:
x-apievangelist-phrasing:
intent: Tag a revision or edit its release notes
effect: write
questions:
- How do I set a version tag on an existing asset revision?
- Can I clear a revision's version tag by setting it to null?
- Can I change the release notes or commit message of a revision after it was saved?
instructions:
- text: Tag revision {revisionNumber} of asset {assetKey} as version {tag}.
slots:
revisionNumber: path.revisionNumber
assetKey: path.assetKey
tag: requestBody.tag
- text: Update the release notes of revision {revisionNumber} of {assetKey} to {releaseNotes}.
slots:
revisionNumber: path.revisionNumber
assetKey: path.assetKey
releaseNotes: requestBody.releaseNotes
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/revisions/{revisionNumber}/icon'].get
update:
x-apievangelist-phrasing:
intent: Get the icon of an asset revision
effect: read
questions:
- Where can I download the icon image used by a given app revision?
- Can I fetch the app icon for a particular revision number?
instructions:
- text: Get the icon for revision {revisionNumber} of asset {assetKey}.
slots:
revisionNumber: path.revisionNumber
assetKey: path.assetKey
- text: Download the app icon of {assetKey} at revision {revisionNumber}.
slots:
assetKey: path.assetKey
revisionNumber: path.revisionNumber
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/revisions/{revisionNumber}/metadata'].get
update:
x-apievangelist-phrasing:
intent: Get the metadata of an asset revision
effect: read
questions:
- What metadata is stored for a particular asset revision?
- Can I inspect the revision metadata of an app without downloading its source?
instructions:
- text: Get the metadata for revision {revisionNumber} of asset {assetKey}.
slots:
revisionNumber: path.revisionNumber
assetKey: path.assetKey
- text: Show the revision metadata of {assetKey} at revision {revisionNumber}.
slots:
assetKey: path.assetKey
revisionNumber: path.revisionNumber
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/revisions/{revisionNumber}/release-notes'].get
update:
x-apievangelist-phrasing:
intent: Read the release notes of a revision
effect: read
questions:
- What release notes were written for a given revision of my app?
- Can I pull the changelog text attached to one asset revision?
instructions:
- text: Get the release notes for revision {revisionNumber} of asset {assetKey}.
slots:
revisionNumber: path.revisionNumber
assetKey: path.assetKey
- text: Show what changed in {assetKey} revision {revisionNumber} according to its release notes.
slots:
assetKey: path.assetKey
revisionNumber: path.revisionNumber
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/revisions/{revisionNumber}/signature'].get
update:
x-apievangelist-phrasing:
intent: Get the signature of an asset revision
effect: read
questions:
- How can I get the signature that identifies a specific asset revision?
- Is there a way to verify an asset revision using its signature?
instructions:
- text: Get the signature for revision {revisionNumber} of asset {assetKey}.
slots:
revisionNumber: path.revisionNumber
assetKey: path.assetKey
- text: Fetch the revision signature of {assetKey} at {revisionNumber}.
slots:
assetKey: path.assetKey
revisionNumber: path.revisionNumber
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/revisions/{revisionNumber}/source-code'].get
update:
x-apievangelist-phrasing:
intent: Download an asset revision's source
effect: read
questions:
- Can I download the source model of an app revision from ODC?
- What permission is needed to fetch an asset revision's source code?
instructions:
- text: Get the source code for revision {revisionNumber} of asset {assetKey}.
slots:
revisionNumber: path.revisionNumber
assetKey: path.assetKey
- text: Download the source of {assetKey} at revision {revisionNumber}.
slots:
assetKey: path.assetKey
revisionNumber: path.revisionNumber
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/revisions'].get
update:
x-apievangelist-phrasing:
intent: List an asset's revision history
effect: read
questions:
- How do I see the full revision history of one app?
- Can I list only the tagged revisions of an asset?
- Which revisions of an asset were saved within a date range?
instructions:
- text: List all revisions of asset {assetKey}.
slots:
assetKey: path.assetKey
- text: List the tagged revisions of {assetKey} only.
slots:
assetKey: path.assetKey
- text: Show revisions of {assetKey} saved since {revisionDateTimeSince}.
slots:
assetKey: path.assetKey
revisionDateTimeSince: query.revisionDateTimeSince
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/search'].post
update:
x-apievangelist-phrasing:
intent: Look up revisions of several assets at once
effect: read
questions:
- Can I fetch specific revisions of many different assets in one request?
- How do I look up asset versions by a mix of key, digest and revision number?
instructions:
- text: 'Look up these asset revisions in one batch: {assetVersionFilters}.'
slots:
assetVersionFilters: requestBody.assetVersionFilters
- text: Search asset versions matching the key and revision pairs {assetVersionFilters}.
slots:
assetVersionFilters: requestBody.assetVersionFilters
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/revisions/{revision}/analysis-summary'].get
update:
x-apievangelist-phrasing:
intent: Get a revision's code analysis summary
effect: read
questions:
- What quality score did a specific app revision get?
- How many high-severity findings does one revision of my asset have?
instructions:
- text: Get the analysis summary for revision {revision} of asset {assetKey}.
slots:
revision: path.revision
assetKey: path.assetKey
- text: Show the findings breakdown by severity for {assetKey} revision {revision}.
slots:
assetKey: path.assetKey
revision: path.revision
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/consumers'].get
update:
x-apievangelist-phrasing:
intent: List assets that consume an asset
effect: read
questions:
- Which apps depend on this library across any of its revisions?
- Can I see consumers of an asset in one particular stage?
instructions:
- text: List all assets that consume asset {assetKey}.
slots:
assetKey: path.assetKey
- text: Show consumers of {assetKey} in stage {environmentKey}.
slots:
assetKey: path.assetKey
environmentKey: query.environmentKey
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/revisions/{revisionNumber}/producer-graph'].get
update:
x-apievangelist-phrasing:
intent: Map an asset revision's dependency graph
effect: read
questions:
- How do I get the full dependency graph of producers for an app revision?
- Can I limit how deep the producer graph goes?
instructions:
- text: Build the producer dependency graph for revision {revisionNumber} of {assetKey}.
slots:
revisionNumber: path.revisionNumber
assetKey: path.assetKey
- text: Show the producer graph of {assetKey} revision {revisionNumber} up to depth {maxDepth}.
slots:
assetKey: path.assetKey
revisionNumber: path.revisionNumber
maxDepth: query.maxDepth
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/revisions/{revisionNumber}/producers'].get
update:
x-apievangelist-phrasing:
intent: List producers a revision depends on
effect: read
questions:
- What libraries does a given app revision rely on, directly or indirectly?
- Can I get a flat list of producer assets for one revision?
instructions:
- text: List the producer assets that revision {revisionNumber} of {assetKey} depends on.
slots:
revisionNumber: path.revisionNumber
assetKey: path.assetKey
- text: Give me a flat list of dependencies for {assetKey} at revision {revisionNumber}.
slots:
assetKey: path.assetKey
revisionNumber: path.revisionNumber
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/revisions/{revisionNumber}/consumers'].get
update:
x-apievangelist-phrasing:
intent: List consumers of one asset revision
effect: read
questions:
- Which apps consume a specific revision of my library?
- Is anything still using an older revision of this asset?
instructions:
- text: List the consumers of revision {revisionNumber} of asset {assetKey}.
slots:
revisionNumber: path.revisionNumber
assetKey: path.assetKey
- text: Show which assets use {assetKey} revision {revisionNumber} in stage {environmentKey}.
slots:
assetKey: path.assetKey
revisionNumber: path.revisionNumber
environmentKey: query.environmentKey
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/revisions/{revisionNumber}/public-elements'].get
update:
x-apievangelist-phrasing:
intent: List public elements an asset exposes
effect: read
questions:
- What public actions and elements does a library revision expose to others?
- Can I include hidden public elements when listing what an asset exposes?
instructions:
- text: List the public elements exposed by revision {revisionNumber} of {assetKey}.
slots:
revisionNumber: path.revisionNumber
assetKey: path.assetKey
- text: Show everything {assetKey} revision {revisionNumber} exposes, including hidden elements.
slots:
assetKey: path.assetKey
revisionNumber: path.revisionNumber
method: generated
generated: '2026-10-01'
- target: $.paths['/assets/{assetKey}/revisions/{revisionNumber}/referenced-elements'].get
update:
x-apievangelist-phrasing:
intent: List elements a revision references
effect: read
questions:
- Which public elements from other assets does my app revision reference in the IDE?
- What external actions does a given revision actually use?
instructions:
- text: List the public elements referenced by revision {revisionNumber} of {assetKey}.
slots:
revisionNumber: path.revisionNumber
assetKey: path.assetKey
- text: Show which external elements {assetKey} revision {revisionNumber} references.
slots:
assetKey: path.assetKey
revisionNumber: path.revisionNumber
method: generated
generated: '2026-10-01'