# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Harness Uploads API version: 1.0.0 extends: openapi/harness-uploads-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: 2 - target: $.paths['/rmg/api/v1/uploads/presign'].post update: x-apievangelist-phrasing: intent: Get a presigned URL to upload release media effect: write questions: - How do I get a signed URL to upload an image or video for a release? - Does the presign call also give me the URL to serve the file afterwards? instructions: - text: Generate a presigned upload URL for a {contentType} file of {contentLength} bytes on release {releaseId}. slots: contentType: requestBody.contentType contentLength: requestBody.contentLength releaseId: requestBody.releaseId - text: Create an upload link for a video attached to release {releaseId}. slots: releaseId: requestBody.releaseId method: generated generated: '2026-09-26' - target: $.paths['/rmg/api/v1/uploads/{accountId}/{releaseId}/{filename}'].get update: x-apievangelist-phrasing: intent: Retrieve an uploaded release file effect: read questions: - How do I retrieve an image or video that was uploaded to a release? - Are oversized uploads rejected when the file is served? instructions: - text: Serve file {filename} uploaded to release {releaseId} in account {accountId}. slots: filename: path.filename releaseId: path.releaseId accountId: path.accountId - text: Open the uploaded file {filename} for release {releaseId}. slots: filename: path.filename releaseId: path.releaseId method: generated generated: '2026-09-26'