Amazon Lightsail · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Amazon Lightsail Buckets API

12 actions 12 updates phrasing extends openapi/amazon-lightsail-buckets-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Amazon Lightsail's API. It is a proposal applied on top of the contract, not a document Amazon Lightsail publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 12

$.info
$.paths['/ls/api/2016-11-28/CreateBucket'].post
$.paths['/ls/api/2016-11-28/CreateBucketAccessKey'].post
$.paths['/ls/api/2016-11-28/DeleteBucket'].post
$.paths['/ls/api/2016-11-28/DeleteBucketAccessKey'].post
$.paths['/ls/api/2016-11-28/GetBucketAccessKeys'].post
$.paths['/ls/api/2016-11-28/GetBucketBundles'].post
$.paths['/ls/api/2016-11-28/GetBucketMetricData'].post
$.paths['/ls/api/2016-11-28/GetBuckets'].post
$.paths['/ls/api/2016-11-28/SetResourceAccessForBucket'].post
$.paths['/ls/api/2016-11-28/UpdateBucket'].post
$.paths['/ls/api/2016-11-28/UpdateBucketBundle'].post

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 Amazon Lightsail Buckets API
  version: 1.0.0
extends: openapi/amazon-lightsail-buckets-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: 11
- target: $.paths['/ls/api/2016-11-28/CreateBucket'].post
  update:
    x-apievangelist-phrasing:
      intent: Create an object storage bucket
      effect: write
      questions:
      - How do I create a Lightsail bucket to store files and images?
      - Can I turn on object versioning when I create the bucket?
      instructions:
      - text: Create bucket {bucketName} on the {bundleId} plan.
        slots:
          bucketName: requestBody.bucketName
          bundleId: requestBody.bundleId
      - text: Create bucket {bucketName} with plan {bundleId} and versioning {enableObjectVersioning}.
        slots:
          bucketName: requestBody.bucketName
          bundleId: requestBody.bundleId
          enableObjectVersioning: requestBody.enableObjectVersioning
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ls/api/2016-11-28/CreateBucketAccessKey'].post
  update:
    x-apievangelist-phrasing:
      intent: Create an access key for a bucket
      effect: write
      questions:
      - How do I get programmatic credentials for a single bucket?
      - How many access keys can one bucket have?
      instructions:
      - text: Create a new access key for bucket {bucketName}.
        slots:
          bucketName: requestBody.bucketName
      - text: Generate an access key ID and secret for {bucketName}.
        slots:
          bucketName: requestBody.bucketName
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ls/api/2016-11-28/DeleteBucket'].post
  update:
    x-apievangelist-phrasing:
      intent: Delete a storage bucket
      effect: destructive
      questions:
      - How do I delete a bucket that still has objects in it?
      - Is the bucket name released for reuse after I delete it?
      instructions:
      - text: Delete bucket {bucketName}.
        slots:
          bucketName: requestBody.bucketName
      - text: Delete bucket {bucketName} even if it isn't empty (force {forceDelete}).
        slots:
          bucketName: requestBody.bucketName
          forceDelete: requestBody.forceDelete
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ls/api/2016-11-28/DeleteBucketAccessKey'].post
  update:
    x-apievangelist-phrasing:
      intent: Revoke a bucket access key
      effect: destructive
      questions:
      - My bucket secret key leaked — how do I revoke that access key?
      - Can I delete one of the two access keys on a bucket?
      instructions:
      - text: Delete access key {accessKeyId} from bucket {bucketName}.
        slots:
          accessKeyId: requestBody.accessKeyId
          bucketName: requestBody.bucketName
      - text: Revoke the compromised key {accessKeyId} on {bucketName}.
        slots:
          accessKeyId: requestBody.accessKeyId
          bucketName: requestBody.bucketName
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ls/api/2016-11-28/GetBucketAccessKeys'].post
  update:
    x-apievangelist-phrasing:
      intent: List a bucket's access key IDs
      effect: read
      questions:
      - Which access keys exist for my bucket?
      - Can I retrieve a bucket secret access key again after creating it?
      instructions:
      - text: List the access keys for bucket {bucketName}.
        slots:
          bucketName: requestBody.bucketName
      - text: Show access key IDs and last-used info for {bucketName}.
        slots:
          bucketName: requestBody.bucketName
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ls/api/2016-11-28/GetBucketBundles'].post
  update:
    x-apievangelist-phrasing:
      intent: List bucket storage plans
      effect: read
      questions:
      - What storage plans and prices are available for buckets?
      - How much storage and transfer does each bucket plan include?
      instructions:
      - text: List the bucket bundles.
      - text: Show bucket plans including inactive ones ({includeInactive}).
        slots:
          includeInactive: requestBody.includeInactive
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ls/api/2016-11-28/GetBucketMetricData'].post
  update:
    x-apievangelist-phrasing:
      intent: Get storage metrics for a bucket
      effect: read
      questions:
      - How much space is my bucket using over time?
      - Can I chart the number of objects in a bucket for the last week?
      instructions:
      - text: Get {metricName} for bucket {bucketName} from {startTime} to {endTime} every {period} seconds as {statistics} in {unit}.
        slots:
          metricName: requestBody.metricName
          bucketName: requestBody.bucketName
          startTime: requestBody.startTime
          endTime: requestBody.endTime
          period: requestBody.period
          statistics: requestBody.statistics
          unit: requestBody.unit
      - text: Show bucket {bucketName} {metricName} data since {startTime}.
        slots:
          bucketName: requestBody.bucketName
          metricName: requestBody.metricName
          startTime: requestBody.startTime
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ls/api/2016-11-28/GetBuckets'].post
  update:
    x-apievangelist-phrasing:
      intent: List buckets or get one bucket's details
      effect: read
      questions:
      - What buckets do I have and what are their access settings?
      - Can I see which instances are connected to a bucket?
      - Is S3 block public access affecting my buckets?
      instructions:
      - text: List all my buckets.
      - text: Get details for bucket {bucketName} including connected resources ({includeConnectedResources}).
        slots:
          bucketName: requestBody.bucketName
          includeConnectedResources: requestBody.includeConnectedResources
      - text: Show the CORS configuration of {bucketName} ({includeCors}).
        slots:
          bucketName: requestBody.bucketName
          includeCors: requestBody.includeCors
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ls/api/2016-11-28/SetResourceAccessForBucket'].post
  update:
    x-apievangelist-phrasing:
      intent: Grant or revoke an instance's bucket access
      effect: write
      questions:
      - How do I let my Lightsail instance read and write a bucket without keys?
      - Can I remove an instance's access to a bucket?
      instructions:
      - text: Set {resourceName} access to bucket {bucketName} to {access}.
        slots:
          resourceName: requestBody.resourceName
          bucketName: requestBody.bucketName
          access: requestBody.access
      - text: Allow instance {resourceName} to use bucket {bucketName} ({access}).
        slots:
          resourceName: requestBody.resourceName
          bucketName: requestBody.bucketName
          access: requestBody.access
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ls/api/2016-11-28/UpdateBucket'].post
  update:
    x-apievangelist-phrasing:
      intent: Change a bucket's access, versioning or logging
      effect: write
      questions:
      - How do I make the objects in my bucket publicly readable?
      - Can I share a bucket read-only with another AWS account?
      - Can I turn on access logging or CORS for an existing bucket?
      instructions:
      - text: Update bucket {bucketName} access rules to {accessRules}.
        slots:
          bucketName: requestBody.bucketName
          accessRules: requestBody.accessRules
      - text: Set versioning on {bucketName} to {versioning}.
        slots:
          bucketName: requestBody.bucketName
          versioning: requestBody.versioning
      - text: Give accounts {readonlyAccessAccounts} read-only access to {bucketName}.
        slots:
          readonlyAccessAccounts: requestBody.readonlyAccessAccounts
          bucketName: requestBody.bucketName
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ls/api/2016-11-28/UpdateBucketBundle'].post
  update:
    x-apievangelist-phrasing:
      intent: Change a bucket's storage plan
      effect: write
      questions:
      - How do I upgrade my bucket to a bigger storage plan?
      - How often can I change a bucket's plan in a billing cycle?
      instructions:
      - text: Move bucket {bucketName} to plan {bundleId}.
        slots:
          bucketName: requestBody.bucketName
          bundleId: requestBody.bundleId
      - text: Upgrade the storage bundle of {bucketName} to {bundleId}.
        slots:
          bucketName: requestBody.bucketName
          bundleId: requestBody.bundleId
      method: generated
      generated: '2026-09-26'