Generated by API Evangelist
Written by API Evangelist tooling for Amazon FreeRTOS's API. It is a proposal applied on top of the contract, not a document Amazon FreeRTOS publishes.
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Amazon FreeRTOS Management OTA Updates API
version: 1.0.0
extends: openapi/amazon-freertos-ota-updates-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: 4
- target: $.paths['/otaUpdates'].get
update:
x-apievangelist-phrasing:
intent: List over-the-air firmware updates
effect: read
questions:
- How do I see all the OTA firmware updates I've created for my devices?
- Can I list only the OTA updates that are still in progress or failed?
- Which over-the-air updates exist in my account right now?
instructions:
- text: List all my OTA updates.
- text: Show OTA updates with status {otaUpdateStatus}, at most {maxResults} per page.
slots:
otaUpdateStatus: query.otaUpdateStatus
maxResults: query.maxResults
method: generated
generated: '2026-10-01'
- target: $.paths['/otaUpdates'].post
update:
x-apievangelist-phrasing:
intent: Roll out a firmware update to a device group
effect: write
questions:
- How do I push a new firmware image over the air to a group of FreeRTOS devices?
- Can an OTA update keep targeting devices that join the group later, not just a one-time snapshot?
- What do I need to start an over-the-air update — files, targets and a role?
instructions:
- text: Create OTA update {otaUpdateId} sending {files} to targets {targets}.
slots:
otaUpdateId: requestBody.otaUpdateId
files: requestBody.files
targets: requestBody.targets
- text: Start a continuous OTA update {otaUpdateId} for {targets} with files {files} using role {roleArn}.
slots:
otaUpdateId: requestBody.otaUpdateId
targets: requestBody.targets
files: requestBody.files
roleArn: requestBody.roleArn
method: generated
generated: '2026-10-01'
- target: $.paths['/otaUpdates/{otaUpdateId}'].get
update:
x-apievangelist-phrasing:
intent: Get details of one OTA update
effect: read
questions:
- What's the current status of a specific over-the-air update I launched?
- Can I look up which files and targets a single OTA update was created with?
instructions:
- text: Show me the details of OTA update {otaUpdateId}.
slots:
otaUpdateId: path.otaUpdateId
- text: Check the status of OTA update {otaUpdateId}.
slots:
otaUpdateId: path.otaUpdateId
method: generated
generated: '2026-10-01'
- target: $.paths['/otaUpdates/{otaUpdateId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete an OTA update
effect: destructive
questions:
- How do I remove an old over-the-air update I no longer need?
- When I delete an OTA update, can I also delete its data stream and the IoT job behind it?
instructions:
- text: Delete OTA update {otaUpdateId}.
slots:
otaUpdateId: path.otaUpdateId
- text: Delete OTA update {otaUpdateId} along with its stream, and force-delete its IoT job.
slots:
otaUpdateId: path.otaUpdateId
method: generated
generated: '2026-10-01'
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.