Oracle Cloud Infrastructure · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Service Object Storage API
62 actions
62 updates
phrasing
extends
openapi/oracle-cloud-object-storage-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Oracle Cloud Infrastructure's API. It is a proposal applied on top of the contract, not a document Oracle Cloud Infrastructure publishes.
What the actions change
x-apievangelist-phrasing
Targets 62 · first 16 shown; the file carries all of them
$.info
$.paths['/n/'].get
$.paths['/n/{namespaceName}'].get
$.paths['/n/{namespaceName}'].put
$.paths['/n/{namespaceName}/b/'].get
$.paths['/n/{namespaceName}/b/'].post
$.paths['/n/{namespaceName}/b/{bucketName}/'].get
$.paths['/n/{namespaceName}/b/{bucketName}/'].post
$.paths['/n/{namespaceName}/b/{bucketName}/'].delete
$.paths['/n/{namespaceName}/b/{bucketName}/'].head
$.paths['/n/{namespaceName}/b/{bucketName}/actions/batchDeleteObjects'].post
$.paths['/n/{namespaceName}/b/{bucketName}/actions/copyObject'].post
$.paths['/n/{namespaceName}/b/{bucketName}/actions/makeBucketWritable'].post
$.paths['/n/{namespaceName}/b/{bucketName}/actions/reencrypt'].post
$.paths['/n/{namespaceName}/b/{bucketName}/actions/reencrypt/{objectName}'].post
$.paths['/n/{namespaceName}/b/{bucketName}/actions/renameObject'].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 Service Object Storage API
version: 1.0.0
extends: openapi/oracle-cloud-object-storage-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-02'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 61
- target: $.paths['/n/'].get
update:
x-apievangelist-phrasing:
intent: Look up my tenancy's Object Storage namespace name
effect: read
questions:
- What is the Object Storage namespace string assigned to my Oracle Cloud tenancy?
- Where do I find the system-generated namespace name I need for bucket URLs?
instructions:
- text: Tell me the Object Storage namespace name for my tenancy.
- text: Get the namespace name for the tenancy that owns compartment {compartmentId}.
slots:
compartmentId: query.compartmentId
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}'].get
update:
x-apievangelist-phrasing:
intent: View the default S3 and Swift compartments of a namespace
effect: read
questions:
- Which compartment do buckets created through the S3 compatibility API land in by default?
- Can I see the defaultSwiftCompartmentId currently set on my namespace?
instructions:
- text: Show the metadata for namespace {namespaceName}, including its default S3 and Swift compartments.
slots:
namespaceName: path.namespaceName
- text: Read which compartments namespace {namespaceName} uses for S3 and Swift bucket creation.
slots:
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}'].put
update:
x-apievangelist-phrasing:
intent: Change the default compartments for S3 and Swift buckets
effect: write
questions:
- How do I stop S3-compatible buckets from being created in the root compartment?
- Can I change where Swift API buckets get created by default?
instructions:
- text: Set the default S3 compartment of namespace {namespaceName} to {defaultS3CompartmentId}.
slots:
namespaceName: path.namespaceName
defaultS3CompartmentId: requestBody.defaultS3CompartmentId
- text: Make {defaultSwiftCompartmentId} the default compartment for Swift buckets in namespace {namespaceName}.
slots:
defaultSwiftCompartmentId: requestBody.defaultSwiftCompartmentId
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/'].get
update:
x-apievangelist-phrasing:
intent: List the buckets in a compartment
effect: read
questions:
- Which Object Storage buckets exist in a given compartment?
- Does the bucket list include user-defined metadata, or only summary fields?
instructions:
- text: List all buckets in compartment {compartmentId} of namespace {namespaceName}.
slots:
compartmentId: query.compartmentId
namespaceName: path.namespaceName
- text: Show the first {limit} buckets in compartment {compartmentId} under namespace {namespaceName}.
slots:
limit: query.limit
compartmentId: query.compartmentId
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/'].post
update:
x-apievangelist-phrasing:
intent: Create a new Object Storage bucket
effect: write
questions:
- How do I create a bucket in Oracle Cloud Object Storage?
- Can I turn on versioning and auto-tiering when I first create a bucket?
- Is it possible to make a new bucket publicly readable from the start?
instructions:
- text: Create a bucket named {name} in compartment {compartmentId} of namespace {namespaceName}.
slots:
name: requestBody.name
compartmentId: requestBody.compartmentId
namespaceName: path.namespaceName
- text: Create a bucket {name} in compartment {compartmentId}, namespace {namespaceName}, with storage tier {storageTier}.
slots:
name: requestBody.name
compartmentId: requestBody.compartmentId
namespaceName: path.namespaceName
storageTier: requestBody.storageTier
- text: Create bucket {name} in compartment {compartmentId} under {namespaceName} encrypted with KMS key {kmsKeyId}.
slots:
name: requestBody.name
compartmentId: requestBody.compartmentId
namespaceName: path.namespaceName
kmsKeyId: requestBody.kmsKeyId
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/'].get
update:
x-apievangelist-phrasing:
intent: Get the full details of a bucket
effect: read
questions:
- What settings, tags and metadata does one specific bucket have?
- Can I check a bucket's approximate size and object count?
instructions:
- text: Show the full configuration of bucket {bucketName} in namespace {namespaceName}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Get bucket {bucketName} in {namespaceName} including the fields {fields}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
fields: query.fields
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/'].post
update:
x-apievangelist-phrasing:
intent: Update a bucket's settings or move it to another compartment
effect: write
questions:
- How do I move an existing bucket to a different compartment?
- Can I change the public access setting on a bucket I already created?
instructions:
- text: Move bucket {bucketName} in namespace {namespaceName} to compartment {compartmentId}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
compartmentId: requestBody.compartmentId
- text: Change the public access type of existing bucket {bucketName} in {namespaceName} to {publicAccessType}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
publicAccessType: requestBody.publicAccessType
- text: Turn versioning to {versioning} on the existing bucket {bucketName} in {namespaceName}.
slots:
versioning: requestBody.versioning
bucketName: path.bucketName
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/'].delete
update:
x-apievangelist-phrasing:
intent: Delete an empty bucket
effect: destructive
questions:
- Why can't I delete a bucket that still has objects in it?
- What do I need to remove before an Object Storage bucket can be deleted?
instructions:
- text: Delete the empty bucket {bucketName} from namespace {namespaceName}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Remove bucket {bucketName} in {namespaceName} now that it has no objects left.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/'].head
update:
x-apievangelist-phrasing:
intent: Check whether a bucket exists and get its ETag
effect: read
questions:
- Is there a quick way to test if a bucket exists without fetching all its details?
- What is the current ETag of a bucket?
instructions:
- text: Check whether bucket {bucketName} exists in namespace {namespaceName}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Get just the ETag for bucket {bucketName} in {namespaceName}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/actions/batchDeleteObjects'].post
update:
x-apievangelist-phrasing:
intent: Delete many objects from a bucket at once
effect: destructive
questions:
- Can I delete a whole batch of objects in one request instead of one by one?
- Is there a bulk delete for objects in a bucket?
instructions:
- text: Delete these objects {objects} from bucket {bucketName} in namespace {namespaceName} in one batch.
slots:
objects: requestBody.objects
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Bulk-remove objects {objects} from {bucketName} in {namespaceName} and skip listing the deleted results.
slots:
objects: requestBody.objects
bucketName: path.bucketName
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/actions/copyObject'].post
update:
x-apievangelist-phrasing:
intent: Copy an object to another bucket or region
effect: write
questions:
- How do I copy an object from one bucket into a bucket in another region?
- Can I copy a specific older version of an object?
instructions:
- text: Copy {sourceObjectName} from {bucketName} ({namespaceName}) to {destinationBucket} in {destinationRegion} as {destinationObjectName}.
slots:
sourceObjectName: requestBody.sourceObjectName
bucketName: path.bucketName
namespaceName: path.namespaceName
destinationBucket: requestBody.destinationBucket
destinationRegion: requestBody.destinationRegion
destinationObjectName: requestBody.destinationObjectName
- text: Copy {sourceObjectName} in {bucketName}, namespace {namespaceName}, into namespace {destinationNamespace} bucket {destinationBucket}.
slots:
sourceObjectName: requestBody.sourceObjectName
bucketName: path.bucketName
namespaceName: path.namespaceName
destinationNamespace: requestBody.destinationNamespace
destinationBucket: requestBody.destinationBucket
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/actions/makeBucketWritable'].post
update:
x-apievangelist-phrasing:
intent: Stop replication into a destination bucket
effect: destructive
questions:
- My replication target bucket is read-only; how do I make it writable again?
- What happens to the replication policy when I make a destination bucket writable?
instructions:
- text: Stop replication into destination bucket {bucketName} in {namespaceName} and make it writable.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Remove the replication policy targeting bucket {bucketName} in namespace {namespaceName} so I can write to it.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/actions/reencrypt'].post
update:
x-apievangelist-phrasing:
intent: Re-encrypt a bucket's data keys with the latest master key
effect: write
questions:
- After rotating my master encryption key, how do I re-encrypt the data keys for a whole bucket?
- Can I re-encrypt only the bucket key and not every object?
instructions:
- text: Re-encrypt all data encryption keys in bucket {bucketName} ({namespaceName}) with the current master key version.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Re-encrypt only the bucket key of {bucketName} in {namespaceName}, setting bucket-key-only to {isReencryptBucketKeyOnly}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
isReencryptBucketKeyOnly: query.isReencryptBucketKeyOnly
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/actions/reencrypt/{objectName}'].post
update:
x-apievangelist-phrasing:
intent: Re-encrypt a single object's data encryption keys
effect: write
questions:
- Can I re-encrypt one object with a different KMS key without touching the rest of the bucket?
- Which key options exist for re-encrypting an individual object, like a customer-provided SSE key?
instructions:
- text: Re-encrypt object {objectName} in bucket {bucketName} ({namespaceName}) using KMS key {kmsKeyId}.
slots:
objectName: path.objectName
bucketName: path.bucketName
namespaceName: path.namespaceName
kmsKeyId: requestBody.kmsKeyId
- text: Re-encrypt version {versionId} of object {objectName} in {bucketName}, namespace {namespaceName}.
slots:
versionId: query.versionId
objectName: path.objectName
bucketName: path.bucketName
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/actions/renameObject'].post
update:
x-apievangelist-phrasing:
intent: Rename an object in a bucket
effect: write
questions:
- Is there a way to rename an object without downloading and re-uploading it?
- Can a rename be made conditional on the source object's ETag?
instructions:
- text: Rename object {sourceName} to {newName} in bucket {bucketName} of namespace {namespaceName}.
slots:
sourceName: requestBody.sourceName
newName: requestBody.newName
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: In {bucketName} ({namespaceName}), rename {sourceName} to {newName} only if the source ETag is {srcObjIfMatchETag}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
sourceName: requestBody.sourceName
newName: requestBody.newName
srcObjIfMatchETag: requestBody.srcObjIfMatchETag
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/actions/restoreObjects'].post
update:
x-apievangelist-phrasing:
intent: Restore an archived object for download
effect: write
questions:
- How do I bring an object back from Archive storage so I can read it?
- How long does a restored archived object stay available, and can I extend it?
instructions:
- text: Restore archived object {objectName} in bucket {bucketName} ({namespaceName}).
slots:
objectName: requestBody.objectName
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Restore {objectName} from archive in {bucketName}, namespace {namespaceName}, for {hours} hours.
slots:
objectName: requestBody.objectName
bucketName: path.bucketName
namespaceName: path.namespaceName
hours: requestBody.hours
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/actions/updateObjectStorageTier'].post
update:
x-apievangelist-phrasing:
intent: Move an object to a different storage tier
effect: write
questions:
- Can I move a single object to Infrequent Access or Archive to save money?
- What storage tiers can an individual object be switched to?
instructions:
- text: Change the storage tier of object {objectName} in {bucketName} ({namespaceName}) to {storageTier}.
slots:
objectName: requestBody.objectName
bucketName: path.bucketName
namespaceName: path.namespaceName
storageTier: requestBody.storageTier
- text: Move version {versionId} of {objectName} in bucket {bucketName}, namespace {namespaceName}, into the {storageTier} tier.
slots:
versionId: requestBody.versionId
objectName: requestBody.objectName
bucketName: path.bucketName
namespaceName: path.namespaceName
storageTier: requestBody.storageTier
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/l'].get
update:
x-apievangelist-phrasing:
intent: View a bucket's object lifecycle policy
effect: read
questions:
- What lifecycle rules are currently set to archive or delete objects in my bucket?
- Does this bucket have an object lifecycle policy at all?
instructions:
- text: Show the object lifecycle policy for bucket {bucketName} in {namespaceName}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Read the lifecycle rules configured on {bucketName} in namespace {namespaceName}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/l'].put
update:
x-apievangelist-phrasing:
intent: Create or replace a bucket's lifecycle policy
effect: write
questions:
- How do I set up rules that automatically archive or delete old objects in a bucket?
- Does saving a new lifecycle policy replace the existing rules entirely?
instructions:
- text: 'Set the lifecycle policy on bucket {bucketName} in {namespaceName} to these rules: {items}.'
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
items: requestBody.items
- text: Replace the object lifecycle rules of {bucketName} ({namespaceName}) with {items}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
items: requestBody.items
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/l'].delete
update:
x-apievangelist-phrasing:
intent: Remove a bucket's object lifecycle policy
effect: destructive
questions:
- How can I turn off all automatic archiving and deletion rules on a bucket?
- Can I drop a bucket's lifecycle policy completely?
instructions:
- text: Delete the object lifecycle policy from bucket {bucketName} in {namespaceName}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Remove all lifecycle rules on {bucketName}, namespace {namespaceName}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/o'].get
update:
x-apievangelist-phrasing:
intent: List the objects in a bucket
effect: read
questions:
- What files are stored in my bucket?
- Can I list only objects whose names start with a certain prefix, like a folder?
- Which extra fields, such as size or time created, can the object listing include?
instructions:
- text: List the objects in bucket {bucketName} of namespace {namespaceName}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: List objects under prefix {prefix} in bucket {bucketName} ({namespaceName}) using delimiter {delimiter}.
slots:
prefix: query.prefix
bucketName: path.bucketName
namespaceName: path.namespaceName
delimiter: query.delimiter
- text: Show objects in {bucketName}, namespace {namespaceName}, with the fields {fields}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
fields: query.fields
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/o/{objectName}'].get
update:
x-apievangelist-phrasing:
intent: Download an object's contents
effect: read
questions:
- How do I download a file from an Oracle Cloud bucket?
- Can I fetch just a byte range of a large object?
instructions:
- text: Download object {objectName} from bucket {bucketName} in namespace {namespaceName}.
slots:
objectName: path.objectName
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Fetch bytes {range} of {objectName} in {bucketName} ({namespaceName}).
slots:
range: header.range
objectName: path.objectName
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Download version {versionId} of {objectName} from {bucketName}, namespace {namespaceName}.
slots:
versionId: query.versionId
objectName: path.objectName
bucketName: path.bucketName
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/o/{objectName}'].put
update:
x-apievangelist-phrasing:
intent: Upload or overwrite an object in a bucket
effect: write
questions:
- What's the biggest file I can upload in a single PutObject request?
- Will uploading a file with the same name overwrite the existing object?
instructions:
- text: Upload a {Content-Length}-byte file as object {objectName} to bucket {bucketName} in {namespaceName}.
slots:
Content-Length: header.Content-Length
objectName: path.objectName
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Put object {objectName} ({Content-Length} bytes) into {bucketName}, namespace {namespaceName}, in storage tier {storage-tier}.
slots:
objectName: path.objectName
Content-Length: header.Content-Length
bucketName: path.bucketName
namespaceName: path.namespaceName
storage-tier: header.storage-tier
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/o/{objectName}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a single object from a bucket
effect: destructive
questions:
- How do I delete one file from a bucket?
- Can I delete a specific version of an object instead of the latest one?
instructions:
- text: Delete object {objectName} from bucket {bucketName} in namespace {namespaceName}.
slots:
objectName: path.objectName
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Delete version {versionId} of {objectName} in {bucketName} ({namespaceName}).
slots:
versionId: query.versionId
objectName: path.objectName
bucketName: path.bucketName
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/o/{objectName}'].head
update:
x-apievangelist-phrasing:
intent: Get an object's metadata and ETag without the body
effect: read
questions:
- Can I read an object's user-defined metadata without downloading the file?
- Is there a cheap way to check if an object exists and get its ETag?
instructions:
- text: Get the metadata and ETag of object {objectName} in bucket {bucketName} ({namespaceName}) without downloading it.
slots:
objectName: path.objectName
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Check that {objectName} exists in {bucketName}, namespace {namespaceName}.
slots:
objectName: path.objectName
bucketName: path.bucketName
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/objectversions'].get
update:
x-apievangelist-phrasing:
intent: List all versions of objects in a bucket
effect: read
questions:
- In a versioned bucket, how can I see every previous version of my objects?
- How many object versions come back per page, and how do I get the rest?
instructions:
- text: List all object versions in bucket {bucketName} of namespace {namespaceName}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Show every version of objects with prefix {prefix} in {bucketName} ({namespaceName}).
slots:
prefix: query.prefix
bucketName: path.bucketName
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/p/'].get
update:
x-apievangelist-phrasing:
intent: List a bucket's pre-authenticated requests
effect: read
questions:
- Which pre-authenticated request links are currently active on my bucket?
- Can I filter pre-authenticated requests by object name prefix?
instructions:
- text: List the pre-authenticated requests on bucket {bucketName} in {namespaceName}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Show PARs in {bucketName} ({namespaceName}) for objects starting with {objectNamePrefix}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
objectNamePrefix: query.objectNamePrefix
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/p/'].post
update:
x-apievangelist-phrasing:
intent: Create a pre-authenticated link to a bucket or object
effect: write
questions:
- How do I share a file from a private bucket with someone who has no Oracle Cloud account?
- Can a pre-authenticated request allow uploads as well as reads, and when does it expire?
instructions:
- text: Create a pre-authenticated request named {name} for object {objectName} in {bucketName} ({namespaceName}) with access {accessType}, expiring {timeExpires}.
slots:
name: requestBody.name
objectName: requestBody.objectName
bucketName: path.bucketName
namespaceName: path.namespaceName
accessType: requestBody.accessType
timeExpires: requestBody.timeExpires
- text: Make a shareable upload link {name} for bucket {bucketName} in {namespaceName} with access type {accessType} that expires at {timeExpires}.
slots:
name: requestBody.name
bucketName: path.bucketName
namespaceName: path.namespaceName
accessType: requestBody.accessType
timeExpires: requestBody.timeExpires
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/p/{parId}'].get
update:
x-apievangelist-phrasing:
intent: Get the details of one pre-authenticated request
effect: read
questions:
- When does a particular pre-authenticated request expire and what access does it grant?
- Which object does a given PAR point to?
instructions:
- text: Show pre-authenticated request {parId} on bucket {bucketName} in {namespaceName}.
slots:
parId: path.parId
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Get the access type and expiry of PAR {parId} in {bucketName}, namespace {namespaceName}.
slots:
parId: path.parId
bucketName: path.bucketName
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/p/{parId}'].delete
update:
x-apievangelist-phrasing:
intent: Revoke a pre-authenticated request
effect: destructive
questions:
- How do I revoke a shared link to my bucket before it expires?
- Can I kill a pre-authenticated request that was shared by mistake?
instructions:
- text: Delete pre-authenticated request {parId} from bucket {bucketName} in {namespaceName}.
slots:
parId: path.parId
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Revoke the shared PAR link {parId} on {bucketName}, namespace {namespaceName}.
slots:
parId: path.parId
bucketName: path.bucketName
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/replicationPolicies'].get
update:
x-apievangelist-phrasing:
intent: List a source bucket's replication policies
effect: read
questions:
- Which replication policies are copying objects out of my bucket?
- Where is this bucket replicating its data to?
instructions:
- text: List the replication policies on source bucket {bucketName} in {namespaceName}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Show outgoing replication policies for {bucketName}, namespace {namespaceName}, {limit} per page.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
limit: query.limit
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/replicationPolicies'].post
update:
x-apievangelist-phrasing:
intent: Replicate a bucket to a bucket in another region
effect: write
questions:
- How do I set up cross-region replication for an Object Storage bucket?
- Can I automatically copy new objects from one bucket into a bucket in another region?
instructions:
- text: Create replication policy {name} copying bucket {bucketName} ({namespaceName}) to {destinationBucketName} in region {destinationRegionName}.
slots:
name: requestBody.name
bucketName: path.bucketName
namespaceName: path.namespaceName
destinationBucketName: requestBody.destinationBucketName
destinationRegionName: requestBody.destinationRegionName
- text: Start replicating {bucketName} in {namespaceName} into {destinationBucketName} in {destinationRegionName}, naming the policy {name}.
slots:
bucketName: path.bucketName
namespaceName: path.namespaceName
destinationBucketName: requestBody.destinationBucketName
destinationRegionName: requestBody.destinationRegionName
name: requestBody.name
method: generated
generated: '2026-10-02'
- target: $.paths['/n/{namespaceName}/b/{bucketName}/replicationPolicies/{replicationId}'].get
update:
x-apievangelist-phrasing:
intent: Get one replication policy on a bucket
effect: read
questions:
- What destination bucket and region does a specific replication policy target?
- Can I check the status of one replication policy?
instructions:
- text: Show replication policy {replicationId} on bucket {bucketName} in {namespaceName}.
slots:
replicationId: path.replicationId
bucketName: path.bucketName
namespaceName: path.namespaceName
- text: Get the destination and status of replication {replicationId} for {bucketName}, namespace {namespaceName}.
slots:
replicationId: path.replicationId
bucketName: path.bucketName
namespaceName: path.namespaceName
method: generated
generated: '2026-10-02'
# --- truncated at 32 KB (56 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/oracle-cloud/refs/heads/main/overlays/oracle-cloud-object-storage-api-phrasing-overlay.yaml