backend v4 half

This commit is contained in:
2025-07-18 09:20:40 +02:00
parent aba7a506ad
commit 725516ad6c
4183 changed files with 217684 additions and 75056 deletions
-18
View File
@@ -1,18 +0,0 @@
DB_PASSWORD=QwEr12345.
Default_User=Admin
Default_Password=Admin.Admin
# Database configuration
DB_1=Default
DB_2=QUESTIONS
DB_3=STATISTICS
DB_4=USERS
DB_PSWD_1=42vM2ftPy1YetSz9AdAHkayxKvQHuV9Wh0nT8c5DKYt
DB_PSWD_2=3cYzPBoLtPindO53Eh3cA80DqqjYvq7CJOzA2Eik00k
DB_PSWD_3=HyJcDLDW3ZYXbMLzlkL4zWqWwyhExQ4XvVCuT8ihld0
DB_PSWD_4=965o6d3Mz7YlgI8GkJkiZD6PIpTZfaBzIheZX3nIpY3
# Ports configuration
BACKEND_PORT=3000
FRONTEND_PORT=5173
DATABASE_PORT=80
-30
View File
@@ -1,30 +0,0 @@
FROM node:18 AS base
WORKDIR /usr/local/app
################ FRONTEND BUILD #################
FROM base AS client-build
WORKDIR /usr/local/app/frontend
COPY SerpentRace_Frontend/package.json SerpentRace_Frontend/package-lock.json ./
RUN npm ci
COPY SerpentRace_Frontend/ ./
RUN npm run build
################ BACKEND BUILD #################
FROM base AS backend-build
WORKDIR /usr/local/app/backend
COPY SerpentRace_Backend/package.json SerpentRace_Backend/package-lock.json ./
RUN npm ci
COPY SerpentRace_Backend/ ./
# Copy frontend build output to backend static directory
COPY --from=client-build /usr/local/app/frontend/dist ./src/static
# generate js files from ts files
RUN npm run build
################ PRODUCTION IMAGE #################
FROM backend-build AS prod
WORKDIR /usr/local/app/backend
ENV NODE_ENV=development
RUN npm ci
EXPOSE 3000
CMD ["node", "dist/index.js"]
-91
View File
@@ -1,91 +0,0 @@
services:
proxy:
image: traefik:v2.11
command: --providers.docker
ports:
- 80:80
volumes:
- /var/run/docker.sock:/var/run/docker.sock
backend:
build:
context: ..
dockerfile: SerpentRace_Docker/Dockerfile
target: prod
environment:
NODE_ENV: "development"
DB_HOST: "db"
DB_PORT: "3306"
DATABASE_NAME_1: "${DB_1}"
DATABASE_PSWD_1: "${DB_PSWD_1}"
# DATABASE_URL_2: "mysql://${DB_2}:${DB_PSWD_2}@db:3306/${DB_2}"
# DATABASE_URL_3: "mysql://${DB_3}:${DB_PSWD_3}@db:3306/${DB_3}"
# DATABASE_URL_4: "mysql://${DB_4}:${DB_PSWD_4}@db:3306/${DB_4}"
command: ["npx", "nodemon", "src/index.ts", "--watch", "src", "--ext", "ts"]
develop:
watch:
- path: ../SerpentRace_Backend/src
action: sync
target: /usr/local/app/backend/src
- path: ../SerpentRace_Backend/prisma
action: sync
target: /usr/local/app/backend/prisma
actions:
- migrate:all
- path: ../SerpentRace_Backend/package.json
action: rebuild
labels:
traefik.http.routers.backend.rule: Host(`api.localhost`)
traefik.http.services.backend.loadbalancer.server.port: 3000
depends_on:
- db
frontend:
build:
context: ..
dockerfile: SerpentRace_Docker/Dockerfile
target: client-build
command: ["npm", "run", "dev", "--", "--host", "0.0.0.0", "--port", "5173"]
working_dir: /usr/local/app/frontend
develop:
watch:
- path: ../SerpentRace_Frontend/src
action: sync
target: /usr/local/app/frontend/src
- path: ../SerpentRace_Frontend/package.json
action: rebuild
labels:
traefik.http.routers.frontend.rule: Host(`localhost`)
traefik.http.services.frontend.loadbalancer.server.port: 5173
db:
image: mariadb:latest
restart: always
environment:
MYSQL_ROOT_PASSWORD: ${DB_PASSWORD}
MYSQL_DATABASE: ${DB_1}
MYSQL_USER: ${Default_User}
MYSQL_PASSWORD: ${Default_Password}
DB_1: ${DB_1}
DB_2: ${DB_2}
DB_3: ${DB_3}
DB_4: ${DB_4}
PSWD_1: ${DB_PSWD_1}
PSWD_2: ${DB_PSWD_2}
PSWD_3: ${DB_PSWD_3}
PSWD_4: ${DB_PSWD_4}
volumes:
# - ./init-multi-db.sh:/docker-entrypoint-initdb.d/init-multi-db.sh:ro
# - ./init-db-users.sh:/docker-entrypoint-initdb.d/init-db-users.sh:ro
- db_data:/var/lib/mysql
adminer:
image: adminer
restart: always
labels:
traefik.http.routers.adminer.rule: Host(`db.localhost`)
traefik.http.services.adminer.loadbalancer.server.port: 8080
volumes:
db_data:
@@ -1,17 +0,0 @@
#!/bin/bash
set -e
mariadb -uroot -p"$MYSQL_ROOT_PASSWORD" <<EOSQL
CREATE USER IF NOT EXISTS '$DB_1'@'%' IDENTIFIED BY '$PSWD_1';
GRANT ALL PRIVILEGES ON \`$DB_1\`.* TO '$DB_1'@'%';
CREATE USER IF NOT EXISTS '$DB_2'@'%' IDENTIFIED BY '$PSWD_2';
GRANT ALL PRIVILEGES ON \`$DB_2\`.* TO '$DB_2'@'%';
CREATE USER IF NOT EXISTS '$DB_3'@'%' IDENTIFIED BY '$PSWD_3';
GRANT ALL PRIVILEGES ON \`$DB_3\`.* TO '$DB_3'@'%';
CREATE USER IF NOT EXISTS '$DB_4'@'%' IDENTIFIED BY '$PSWD_4';
GRANT ALL PRIVILEGES ON \`$DB_4\`.* TO '$DB_4'@'%';
FLUSH PRIVILEGES;
EOSQL
@@ -1,7 +0,0 @@
#!/bin/bash
set -e
mariadb -uroot -p"$MYSQL_ROOT_PASSWORD" <<EOSQL
CREATE DATABASE IF NOT EXISTS \`${DB_2}\`;
CREATE DATABASE IF NOT EXISTS \`${DB_3}\`;
CREATE DATABASE IF NOT EXISTS \`${DB_4}\`;
EOSQL
-2
View File
@@ -1,2 +0,0 @@
docker compose down -v
pause
+55
View File
@@ -0,0 +1,55 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.GuidGenerator = void 0;
const crypto_1 = require("crypto");
class GuidGenerator {
static generateGuid() {
const bytes = (0, crypto_1.randomBytes)(12);
const hexString = bytes.toString('hex').toUpperCase();
return `${hexString.slice(0, 8)}-${hexString.slice(8, 16)}-${hexString.slice(16, 24)}`;
}
static generateUuid() {
const bytes = (0, crypto_1.randomBytes)(16);
const hex = bytes.toString('hex');
return [
hex.slice(0, 8),
hex.slice(8, 12),
'4' + hex.slice(13, 16),
((parseInt(hex.slice(16, 17), 16) & 0x3) | 0x8).toString(16) + hex.slice(17, 20),
hex.slice(20, 32)
].join('-');
}
static isValidGuid(guid) {
const guidRegex = /^[A-F0-9]{8}-[A-F0-9]{8}-[A-F0-9]{8}$/;
return guidRegex.test(guid);
}
static isValidUuid(uuid) {
const uuidRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
return uuidRegex.test(uuid);
}
static generateMultipleGuids(count) {
const guids = [];
const guidSet = new Set();
while (guidSet.size < count) {
const guid = this.generateGuid();
if (!guidSet.has(guid)) {
guidSet.add(guid);
guids.push(guid);
}
}
return guids;
}
static generateMultipleUuids(count) {
const uuids = [];
const uuidSet = new Set();
while (uuidSet.size < count) {
const uuid = this.generateUuid();
if (!uuidSet.has(uuid)) {
uuidSet.add(uuid);
uuids.push(uuid);
}
}
return uuids;
}
}
exports.GuidGenerator = GuidGenerator;
-490
View File
@@ -1,490 +0,0 @@
{"environment":"development","level":"info","message":"Middlewares initialized successfully","service":"serpentrace-backend","timestamp":"2025-07-06T17:51:02.889Z"}
{"environment":"development","level":"info","message":"Routes initialized successfully","service":"serpentrace-backend","timestamp":"2025-07-06T17:51:02.891Z"}
{"environment":"development","level":"info","message":"Error handling initialized successfully","service":"serpentrace-backend","timestamp":"2025-07-06T17:51:02.892Z"}
{"environment":"development","level":"info","message":"Application started successfully","nodeVersion":"v22.9.0","platform":"win32","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T17:51:02.896Z"}
{"environment":"development","level":"info","message":"MinIO logging system initialized successfully","service":"serpentrace-backend","timestamp":"2025-07-06T17:51:02.906Z"}
{"environment":"development","level":"info","message":"Database connection established successfully","service":"serpentrace-backend","timestamp":"2025-07-06T17:51:03.233Z"}
{"database":"Connected","environment":"development","level":"info","message":"Health check requested","service":"serpentrace-backend","status":"OK","timestamp":"2025-07-06T17:52:01.091Z"}
{"duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"serpentrace-backend","statusCode":200,"timestamp":"2025-07-06T17:52:01.092Z","url":"/health"}
{"environment":"development","ip":"::ffff:127.0.0.1","level":"warn","message":"Route not found","method":"GET","service":"serpentrace-backend","timestamp":"2025-07-06T17:52:01.127Z","url":"/favicon.ico","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0"}
{"duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T17:52:01.128Z","url":"/favicon.ico"}
{"environment":"development","ip":"::ffff:127.0.0.1","level":"warn","message":"Route not found","method":"GET","service":"serpentrace-backend","timestamp":"2025-07-06T17:52:05.278Z","url":"/asd","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0"}
{"duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T17:52:05.279Z","url":"/asd"}
{"environment":"development","ip":"::ffff:127.0.0.1","level":"warn","message":"Route not found","method":"GET","service":"serpentrace-backend","timestamp":"2025-07-06T17:52:05.292Z","url":"/favicon.ico","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0"}
{"duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T17:52:05.293Z","url":"/favicon.ico"}
{"environment":"development","ip":"::ffff:127.0.0.1","level":"warn","message":"Route not found","method":"GET","service":"serpentrace-backend","timestamp":"2025-07-06T17:52:13.209Z","url":"/api/users","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0"}
{"duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T17:52:13.210Z","url":"/api/users"}
{"environment":"development","ip":"::ffff:127.0.0.1","level":"warn","message":"Route not found","method":"GET","service":"serpentrace-backend","timestamp":"2025-07-06T17:52:13.224Z","url":"/favicon.ico","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0"}
{"environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T17:52:13.224Z","url":"/favicon.ico"}
{"environment":"development","ip":"::ffff:127.0.0.1","level":"warn","message":"Route not found","method":"GET","service":"serpentrace-backend","timestamp":"2025-07-06T17:52:36.811Z","url":"/api/users/logout","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0"}
{"duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T17:52:36.812Z","url":"/api/users/logout"}
{"environment":"development","ip":"::ffff:127.0.0.1","level":"warn","message":"Route not found","method":"GET","service":"serpentrace-backend","timestamp":"2025-07-06T17:52:36.837Z","url":"/favicon.ico","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0"}
{"duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"HTTP Request","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T17:52:36.838Z","url":"/favicon.ico"}
{"environment":"development","level":"info","message":"Middlewares initialized successfully","service":"serpentrace-backend","timestamp":"2025-07-06T17:58:14.890Z"}
{"environment":"development","level":"info","message":"Routes initialized successfully","service":"serpentrace-backend","timestamp":"2025-07-06T17:58:14.892Z"}
{"environment":"development","level":"info","message":"Error handling initialized successfully","service":"serpentrace-backend","timestamp":"2025-07-06T17:58:14.892Z"}
{"environment":"development","level":"info","message":"Application started successfully","nodeVersion":"v22.9.0","platform":"win32","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T17:58:14.896Z"}
{"environment":"development","level":"info","message":"MinIO logging system initialized successfully","service":"serpentrace-backend","timestamp":"2025-07-06T17:58:14.913Z"}
{"environment":"development","level":"info","message":"Database connection established successfully","service":"serpentrace-backend","timestamp":"2025-07-06T17:58:15.176Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend Application","nodeVersion":"v22.9.0","platform":"win32","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.586Z","version":"1.0.0"}
{"category":"STARTUP","environment":"development","level":"info","message":"Initializing MinIO logging system...","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.589Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server is now running and ready to accept connections","minIO":{"bucket":"logs","endpoint":"http://127.0.0.1:9000"},"nodeVersion":"v22.9.0","platform":"win32","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.598Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","users":"http://localhost:3000/api/users"}}
{"bucket":"logs","category":"STARTUP","endpoint":"http://127.0.0.1:9000","environment":"development","level":"info","message":"✅ MinIO logging system initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.609Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Connecting to database...","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.609Z"}
{"category":"DATABASE","database":"SerpentRace","environment":"development","host":"localhost","level":"info","message":"Database: Connection established","operation":"Connection established","port":"3306","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.952Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Database connection established","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.952Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Initializing middlewares...","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.953Z"}
{"action":"loaded","category":"MIDDLEWARE","environment":"development","level":"info","message":"Middleware: helmet loaded","name":"helmet","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.954Z"}
{"action":"loaded","category":"MIDDLEWARE","environment":"development","level":"info","message":"Middleware: cors loaded","name":"cors","origin":"http://localhost:3000","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.954Z"}
{"action":"loaded","category":"MIDDLEWARE","environment":"development","level":"info","limit":"10mb","message":"Middleware: body-parser loaded","name":"body-parser","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.955Z"}
{"action":"loaded","category":"MIDDLEWARE","environment":"development","level":"info","message":"Middleware: cookie-parser loaded","name":"cookie-parser","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.955Z"}
{"action":"loaded","category":"MIDDLEWARE","environment":"development","level":"info","message":"Middleware: compression loaded","name":"compression","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.956Z"}
{"action":"loaded","category":"MIDDLEWARE","environment":"development","level":"info","message":"Middleware: request-logger loaded","name":"request-logger","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.956Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ All middlewares initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.956Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Initializing routes...","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.956Z"}
{"action":"registered","category":"ROUTE","environment":"development","level":"info","message":"Route: GET /health registered","method":"GET","path":"/health","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.956Z"}
{"action":"registered","category":"ROUTE","environment":"development","level":"info","message":"Route: GET /api registered","method":"GET","path":"/api","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.956Z"}
{"action":"router mounted","category":"ROUTE","environment":"development","level":"info","message":"Route: ALL /api/users router mounted","method":"ALL","path":"/api/users","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.957Z"}
{"action":"404 handler registered","category":"ROUTE","environment":"development","level":"info","message":"Route: ALL * 404 handler registered","method":"ALL","path":"*","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.957Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ All routes initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.957Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Initializing error handling...","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.957Z"}
{"action":"loaded","category":"MIDDLEWARE","environment":"development","level":"info","message":"Middleware: auth-error-handler loaded","name":"auth-error-handler","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.957Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Error handling initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.957Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application initialization completed successfully","service":"serpentrace-backend","timestamp":"2025-07-06T18:03:24.957Z"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::ffff:127.0.0.1","level":"warn","message":"Security: Route not found","method":"GET","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T18:04:04.732Z","url":"/api/users/logout","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0"}
{"category":"API","duration":"2ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: GET /api/users/logout","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T18:04:04.733Z","url":"/api/users/logout"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::ffff:127.0.0.1","level":"warn","message":"Security: Route not found","method":"GET","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T18:04:04.748Z","url":"/favicon.ico","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: GET /favicon.ico","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T18:04:04.748Z","url":"/favicon.ico"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::ffff:127.0.0.1","level":"warn","message":"Security: Route not found","method":"GET","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T18:04:08.239Z","url":"/","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: GET /","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T18:04:08.239Z","url":"/"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::ffff:127.0.0.1","level":"warn","message":"Security: Route not found","method":"GET","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T18:04:08.255Z","url":"/favicon.ico","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: GET /favicon.ico","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T18:04:08.256Z","url":"/favicon.ico"}
{"category":"SYSTEM","database":"Connected","environment":"development","level":"info","message":"Health check requested","service":"serpentrace-backend","status":"OK","timestamp":"2025-07-06T18:04:14.721Z"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: GET /health","method":"GET","service":"serpentrace-backend","statusCode":200,"timestamp":"2025-07-06T18:04:14.722Z","url":"/health"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::ffff:127.0.0.1","level":"warn","message":"Security: Route not found","method":"GET","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T18:04:14.739Z","url":"/favicon.ico","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: GET /favicon.ico","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T18:04:14.740Z","url":"/favicon.ico"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::ffff:127.0.0.1","level":"warn","message":"Security: Route not found","method":"POST","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T18:07:58.361Z","url":"/api/user/create","userAgent":"Thunder Client (https://www.thunderclient.com)"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /api/user/create","method":"POST","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T18:07:58.361Z","url":"/api/user/create"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:12:48.717Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:12:48.728Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","users":"http://localhost:3000/users"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:12:48.738Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:12:49.038Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:12:49.040Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:12:49.041Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:12:49.041Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:12:49.041Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:12:53.934Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:12:53.946Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","users":"http://localhost:3000/users"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:12:53.956Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:12:54.313Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:12:54.316Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:12:54.316Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:12:54.317Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:12:54.317Z"}
{"category":"SYSTEM","environment":"development","level":"info","message":"Application interrupted via SIGINT","service":"serpentrace-backend","timestamp":"2025-07-06T18:13:41.748Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:13:52.309Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:13:52.320Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","users":"http://localhost:3000/users"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:13:52.327Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:13:52.615Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:13:52.617Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:13:52.618Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:13:52.618Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:13:52.618Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:00.637Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:18:00.648Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","users":"http://localhost:3000/users"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:00.655Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:00.947Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:00.949Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:00.950Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:00.950Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:00.950Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:08.941Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:18:08.952Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","users":"http://localhost:3000/users"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:08.961Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:09.302Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:09.305Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:09.306Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:09.307Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:09.307Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:19.231Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:18:19.244Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","users":"http://localhost:3000/users"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:19.254Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:19.590Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:19.593Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:19.594Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:19.594Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:19.594Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:29.976Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:18:29.987Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","users":"http://localhost:3000/users"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:29.994Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:30.296Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:30.298Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:30.299Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:30.300Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:30.300Z"}
{"category":"SYSTEM","environment":"development","level":"info","message":"Application interrupted via SIGINT","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:39.442Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:46.572Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:18:46.582Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","users":"http://localhost:3000/users"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:46.589Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:46.866Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:46.868Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:46.870Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:46.870Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:18:46.870Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:20:38.151Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:20:38.163Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:20:38.171Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:20:38.467Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:20:38.470Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:20:38.471Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:20:38.471Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:20:38.471Z"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::ffff:127.0.0.1","level":"warn","message":"Security: Route not found","method":"POST","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T18:20:52.197Z","url":"/test-user-create","userAgent":"Thunder Client (https://www.thunderclient.com)"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /test-user-create","method":"POST","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T18:20:52.198Z","url":"/test-user-create"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::ffff:127.0.0.1","level":"warn","message":"Security: Route not found","method":"POST","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T18:21:04.526Z","url":"/test","userAgent":"Thunder Client (https://www.thunderclient.com)"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /test","method":"POST","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T18:21:04.527Z","url":"/test"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::ffff:127.0.0.1","level":"warn","message":"Security: Route not found","method":"POST","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T18:21:13.832Z","url":"/users","userAgent":"Thunder Client (https://www.thunderclient.com)"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users","method":"POST","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T18:21:13.833Z","url":"/users"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::ffff:127.0.0.1","level":"warn","message":"Security: Route not found","method":"POST","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T18:21:21.615Z","url":"/api/user","userAgent":"Thunder Client (https://www.thunderclient.com)"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /api/user","method":"POST","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T18:21:21.615Z","url":"/api/user"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:24:27.606Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:24:27.616Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:24:27.624Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:24:27.920Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:24:27.923Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:24:27.924Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:24:27.924Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:24:27.925Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:25:15.183Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:25:15.194Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:25:15.201Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:25:15.480Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:25:15.482Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:25:15.483Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:25:15.484Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:25:15.484Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:26:45.905Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:26:45.915Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:26:45.923Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:26:46.206Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:26:46.208Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:26:46.210Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:26:46.210Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:26:46.210Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:28:09.790Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:28:09.800Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:28:09.807Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:28:10.089Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:28:10.091Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:28:10.093Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:28:10.093Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:28:10.093Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:28:46.269Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:28:46.279Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:28:46.286Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:28:46.551Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:28:46.553Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:28:46.555Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:28:46.555Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:28:46.555Z"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::ffff:127.0.0.1","level":"warn","message":"Security: Route not found","method":"GET","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T18:29:18.784Z","url":"/users","userAgent":"Thunder Client (https://www.thunderclient.com)"}
{"category":"API","duration":"2ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: GET /users","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T18:29:18.786Z","url":"/users"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:31:20.271Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:31:20.282Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:31:20.290Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:31:20.577Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:31:20.580Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:31:20.581Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:31:20.581Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:31:20.581Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:31:40.512Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:31:40.522Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:31:40.529Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:31:40.807Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:31:40.809Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:31:40.810Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:31:40.810Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:31:40.810Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:35:25.428Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:35:25.439Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:35:25.449Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:35:25.745Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:35:25.748Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:35:25.749Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:35:25.749Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:35:25.749Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:35:47.441Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:35:47.451Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:35:47.459Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:35:47.744Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:35:47.746Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:35:47.748Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:35:47.748Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:35:47.748Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:37:58.623Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:37:58.636Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:37:58.645Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:37:58.966Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:37:58.969Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:37:58.971Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:37:58.971Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:37:58.971Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:38:06.638Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:38:06.648Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:38:06.655Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:38:06.925Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:38:06.928Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:38:06.929Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:38:06.929Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:38:06.929Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:39:53.070Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:39:53.083Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:39:53.092Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:39:53.397Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:39:53.400Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:39:53.401Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:39:53.402Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:39:53.402Z"}
{"category":"API","duration":"81ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/create","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T18:39:58.567Z","url":"/users/create"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:41:10.703Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:41:10.714Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:41:10.721Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:41:11.000Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:41:11.003Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:41:11.004Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:41:11.004Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:41:11.004Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:42:14.331Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:42:14.342Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:42:14.353Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:42:14.709Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:42:14.712Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:42:14.714Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:42:14.714Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:42:14.715Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:46:33.928Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:46:33.939Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:46:33.949Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:46:34.235Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:46:34.238Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:46:34.239Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:46:34.240Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:46:34.240Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:47:25.432Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:47:25.442Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:47:25.448Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:47:25.719Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:47:25.721Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:47:25.722Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:47:25.723Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:47:25.723Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:48:07.524Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:48:07.534Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:48:07.541Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:48:07.811Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:48:07.814Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:48:07.815Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:48:07.815Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:48:07.815Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:48:32.148Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:48:32.159Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:48:32.168Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:48:32.437Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:48:32.439Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:48:32.441Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:48:32.441Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:48:32.442Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:49:04.850Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:49:04.861Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:49:04.869Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:49:04.924Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:49:04.926Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:49:04.928Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:49:04.928Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:49:04.928Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:49:39.742Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:49:39.754Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:49:39.761Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:49:40.085Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:49:40.087Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:49:40.089Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:49:40.089Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:49:40.090Z"}
{"category":"API","duration":"74ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/create","method":"POST","service":"serpentrace-backend","statusCode":201,"timestamp":"2025-07-06T18:49:47.038Z","url":"/users/create"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:50:42.705Z","url":"/users/authenticate"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:53:20.396Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:53:20.407Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:53:20.416Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:53:20.713Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:53:20.716Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:53:20.717Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:53:20.717Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:53:20.717Z"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:53:21.159Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:53:23.358Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:53:23.906Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:53:24.106Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:53:24.293Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:53:24.470Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:53:24.652Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:53:24.822Z","url":"/users/authenticate"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:53:25.005Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:53:25.188Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:53:25.366Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:53:25.546Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:53:25.719Z","url":"/users/authenticate"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:53:25.900Z","url":"/users/authenticate"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:53:26.077Z","url":"/users/authenticate"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:56:08.890Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:56:08.901Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:56:08.909Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:56:09.220Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:56:09.223Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:56:09.224Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:56:09.224Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:56:09.224Z"}
{"category":"ERROR","context":"express","environment":"development","error":"Application error","ip":"::ffff:127.0.0.1","level":"error","message":"Error in express: Application error Expected property name or '}' in JSON at position 5 (line 2 column 3)","method":"GET","service":"serpentrace-backend","timestamp":"2025-07-06T18:57:02.784Z","url":"/users/authenticate"}
{"category":"API","duration":"2ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:57:28.448Z","url":"/users/authenticate"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:57:58.706Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:57:58.716Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:57:58.723Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:57:59.002Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:57:59.004Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:57:59.005Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:57:59.005Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:57:59.005Z"}
{"category":"API","duration":"2ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:58:43.203Z","url":"/users/authenticate"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T18:59:08.666Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T18:59:08.676Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T18:59:08.683Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T18:59:08.957Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T18:59:08.960Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:59:08.961Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T18:59:08.961Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T18:59:08.961Z"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T18:59:11.377Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:02:15.872Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:02:26.111Z","url":"/users/authenticate"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::ffff:127.0.0.1","level":"warn","message":"Security: Route not found","method":"GET","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T19:02:30.922Z","url":"/users/authenticate","userAgent":"Thunder Client (https://www.thunderclient.com)"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: GET /users/authenticate","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T19:02:30.923Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:02:36.283Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:03:16.921Z","url":"/users/authenticate"}
{"category":"API","duration":"2ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/create","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:03:22.128Z","url":"/users/create"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:03:29.507Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:03:36.051Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:03:40.626Z","url":"/users/authenticate"}
{"category":"API","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:03:41.282Z","url":"/users/authenticate"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:03:41.457Z","url":"/users/authenticate"}
{"category":"API","duration":"1ms","environment":"development","ip":"::ffff:127.0.0.1","level":"info","message":"Request: POST /users/authenticate","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:03:41.617Z","url":"/users/authenticate"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::1","level":"warn","message":"Security: Route not found","method":"GET","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T19:05:37.976Z","url":"/users/authenticate","userAgent":"PostmanRuntime/7.44.1"}
{"category":"API","duration":"1ms","environment":"development","ip":"::1","level":"info","message":"Request: GET /users/authenticate","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T19:05:37.976Z","url":"/users/authenticate"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::1","level":"warn","message":"Security: Route not found","method":"GET","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T19:05:57.585Z","url":"/users/authenticate","userAgent":"PostmanRuntime/7.44.1"}
{"category":"API","environment":"development","ip":"::1","level":"info","message":"Request: GET /users/authenticate","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T19:05:57.585Z","url":"/users/authenticate"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::1","level":"warn","message":"Security: Route not found","method":"GET","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T19:06:09.686Z","url":"/api/user/authenticate","userAgent":"PostmanRuntime/7.44.1"}
{"category":"API","environment":"development","ip":"::1","level":"info","message":"Request: GET /api/user/authenticate","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T19:06:09.686Z","url":"/api/user/authenticate"}
{"category":"API","environment":"development","ip":"::1","level":"info","message":"Request: POST /api/user/authenticate","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:06:18.070Z","url":"/api/user/authenticate"}
{"category":"API","duration":"1ms","environment":"development","ip":"::1","level":"info","message":"Request: POST /api/user/authenticate","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:07:00.305Z","url":"/api/user/authenticate"}
{"category":"API","environment":"development","ip":"::1","level":"info","message":"Request: POST /api/user/authenticate","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:07:07.331Z","url":"/api/user/authenticate"}
{"category":"API","environment":"development","ip":"::1","level":"info","message":"Request: POST /api/user/authenticate","method":"POST","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:07:12.791Z","url":"/api/user/authenticate"}
{"category":"API","environment":"development","ip":"::1","level":"info","message":"Request: POST /api/user/authenticate","method":"POST","service":"serpentrace-backend","statusCode":500,"timestamp":"2025-07-06T19:07:32.249Z","url":"/api/user/authenticate"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T19:08:56.603Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T19:08:56.615Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T19:08:56.626Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T19:08:56.941Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T19:08:56.943Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:08:56.944Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:08:56.945Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T19:08:56.945Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T19:09:07.020Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T19:09:07.031Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T19:09:07.039Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T19:09:07.335Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T19:09:07.337Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:09:07.339Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:09:07.339Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T19:09:07.339Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T19:12:06.572Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T19:12:06.585Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T19:12:06.593Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T19:12:06.933Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T19:12:06.936Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:12:06.937Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:12:06.938Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T19:12:06.938Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T19:12:12.132Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T19:12:12.142Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T19:12:12.150Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T19:12:12.439Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T19:12:12.441Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:12:12.442Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:12:12.442Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T19:12:12.442Z"}
{"category":"API","duration":"68ms","environment":"development","ip":"::1","level":"info","message":"Request: POST /api/user/authenticate","method":"POST","service":"serpentrace-backend","statusCode":200,"timestamp":"2025-07-06T19:12:19.180Z","url":"/api/user/authenticate"}
{"category":"API","duration":"2ms","environment":"development","ip":"::1","level":"info","message":"Request: GET /api/user/current","method":"GET","service":"serpentrace-backend","statusCode":200,"timestamp":"2025-07-06T19:13:11.892Z","url":"/api/user/current","userId":1}
{"category":"API","duration":"1ms","environment":"development","ip":"::1","level":"info","message":"Request: GET /api/user/details","method":"GET","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:13:22.686Z","url":"/api/user/details","userId":1}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T19:16:15.307Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T19:16:15.318Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T19:16:15.326Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T19:16:15.631Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T19:16:15.633Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:16:15.634Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:16:15.635Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T19:16:15.635Z"}
{"category":"API","duration":"9ms","environment":"development","ip":"::1","level":"info","message":"Request: GET /api/user/details","method":"GET","service":"serpentrace-backend","statusCode":200,"timestamp":"2025-07-06T19:16:39.475Z","url":"/api/user/details","userId":1}
{"category":"API","duration":"3ms","environment":"development","ip":"::1","level":"info","message":"Request: GET /api/user/all","method":"GET","service":"serpentrace-backend","statusCode":200,"timestamp":"2025-07-06T19:17:03.816Z","url":"/api/user/all","userId":1}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::1","level":"warn","message":"Security: Route not found","method":"GET","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T19:17:43.990Z","url":"/api/user/update","userAgent":"PostmanRuntime/7.44.1"}
{"category":"API","duration":"1ms","environment":"development","ip":"::1","level":"info","message":"Request: GET /api/user/update","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T19:17:43.991Z","url":"/api/user/update"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::1","level":"warn","message":"Security: Route not found","method":"GET","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T19:17:55.736Z","url":"/api/user/update","userAgent":"PostmanRuntime/7.44.1"}
{"category":"API","environment":"development","ip":"::1","level":"info","message":"Request: GET /api/user/update","method":"GET","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T19:17:55.736Z","url":"/api/user/update"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::1","level":"warn","message":"Security: Route not found","method":"POST","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T19:18:00.432Z","url":"/api/user/update","userAgent":"PostmanRuntime/7.44.1"}
{"category":"API","environment":"development","ip":"::1","level":"info","message":"Request: POST /api/user/update","method":"POST","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T19:18:00.432Z","url":"/api/user/update"}
{"category":"API","duration":"1ms","environment":"development","ip":"::1","level":"info","message":"Request: PUT /api/user/update","method":"PUT","service":"serpentrace-backend","statusCode":400,"timestamp":"2025-07-06T19:18:07.666Z","url":"/api/user/update","userId":1}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T19:18:45.057Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T19:18:45.067Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T19:18:45.075Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T19:18:45.354Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T19:18:45.356Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:18:45.357Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:18:45.357Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T19:18:45.357Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:04.586Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T19:19:04.597Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:04.605Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:04.895Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:04.897Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:04.898Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:04.899Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:04.899Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:26.568Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T19:19:26.578Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:26.586Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:26.869Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:26.872Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:26.873Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:26.873Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:26.873Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:48.552Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T19:19:48.562Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:48.569Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:48.915Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:48.917Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:48.919Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:48.919Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:48.919Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🚀 Starting SerpentRace Backend","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:57.788Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"🎉 Server running on port 3000","port":3000,"service":"serpentrace-backend","timestamp":"2025-07-06T19:19:57.799Z","urls":{"api":"http://localhost:3000/api","health":"http://localhost:3000/health","testRoute":"http://localhost:3000/test","testUserCreate":"http://localhost:3000/test-user-create","usersAlt":"http://localhost:3000/users","usersPrimary":"http://localhost:3000/api/user"}}
{"category":"STARTUP","environment":"development","level":"info","message":"MinIO initialized","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:57.806Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Database connected","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:58.113Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Middlewares loaded","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:58.115Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Routes configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:58.116Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"Error handling configured","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:58.116Z"}
{"category":"STARTUP","environment":"development","level":"info","message":"✅ Application ready","service":"serpentrace-backend","timestamp":"2025-07-06T19:19:58.116Z"}
{"category":"API","duration":"86ms","environment":"development","ip":"::1","level":"info","message":"Request: PUT /api/user/update","method":"PUT","service":"serpentrace-backend","statusCode":200,"timestamp":"2025-07-06T19:20:04.766Z","url":"/api/user/update","userId":1}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::1","level":"warn","message":"Security: Route not found","method":"PUT","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T19:20:17.102Z","url":"/api/user/logout","userAgent":"PostmanRuntime/7.44.1"}
{"category":"API","duration":"1ms","environment":"development","ip":"::1","level":"info","message":"Request: PUT /api/user/logout","method":"PUT","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T19:20:17.102Z","url":"/api/user/logout"}
{"category":"API","duration":"1ms","environment":"development","ip":"::1","level":"info","message":"Request: POST /api/user/logout","method":"POST","service":"serpentrace-backend","statusCode":200,"timestamp":"2025-07-06T19:20:25.273Z","url":"/api/user/logout","userId":1}
{"category":"API","duration":"61ms","environment":"development","ip":"::1","level":"info","message":"Request: POST /api/user/authenticate","method":"POST","service":"serpentrace-backend","statusCode":200,"timestamp":"2025-07-06T19:20:52.741Z","url":"/api/user/authenticate"}
{"category":"SECURITY","environment":"development","event":"Route not found","ip":"::1","level":"warn","message":"Security: Route not found","method":"POST","service":"serpentrace-backend","severity":"low","timestamp":"2025-07-06T19:21:00.673Z","url":"/api/user/delete","userAgent":"PostmanRuntime/7.44.1"}
{"category":"API","environment":"development","ip":"::1","level":"info","message":"Request: POST /api/user/delete","method":"POST","service":"serpentrace-backend","statusCode":404,"timestamp":"2025-07-06T19:21:00.673Z","url":"/api/user/delete"}
{"category":"API","duration":"9ms","environment":"development","ip":"::1","level":"info","message":"Request: DELETE /api/user/delete","method":"DELETE","service":"serpentrace-backend","statusCode":200,"timestamp":"2025-07-06T19:21:04.627Z","url":"/api/user/delete","userId":1}
{"category":"SYSTEM","environment":"development","level":"info","message":"Application interrupted via SIGINT","service":"serpentrace-backend","timestamp":"2025-07-07T17:50:53.930Z"}
-1
View File
@@ -1 +0,0 @@
{"category":"ERROR","context":"express","environment":"development","error":"Application error","ip":"::ffff:127.0.0.1","level":"error","message":"Error in express: Application error Expected property name or '}' in JSON at position 5 (line 2 column 3)","method":"GET","service":"serpentrace-backend","timestamp":"2025-07-06T18:57:02.784Z","url":"/users/authenticate"}
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../node-gyp-build/bin.js" "$@"
else
exec node "$basedir/../node-gyp-build/bin.js" "$@"
fi
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../node-gyp-build/optional.js" "$@"
else
exec node "$basedir/../node-gyp-build/optional.js" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\node-gyp-build\optional.js" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../node-gyp-build/optional.js" $args
} else {
& "$basedir/node$exe" "$basedir/../node-gyp-build/optional.js" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../node-gyp-build/optional.js" $args
} else {
& "node$exe" "$basedir/../node-gyp-build/optional.js" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../node-gyp-build/build-test.js" "$@"
else
exec node "$basedir/../node-gyp-build/build-test.js" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\node-gyp-build\build-test.js" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../node-gyp-build/build-test.js" $args
} else {
& "$basedir/node$exe" "$basedir/../node-gyp-build/build-test.js" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../node-gyp-build/build-test.js" $args
} else {
& "node$exe" "$basedir/../node-gyp-build/build-test.js" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\node-gyp-build\bin.js" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../node-gyp-build/bin.js" $args
} else {
& "$basedir/node$exe" "$basedir/../node-gyp-build/bin.js" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../node-gyp-build/bin.js" $args
} else {
& "node$exe" "$basedir/../node-gyp-build/bin.js" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+2 -2
View File
@@ -10,7 +10,7 @@ case `uname` in
esac esac
if [ -x "$basedir/node" ]; then if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../uuid/dist/esm/bin/uuid" "$@" exec "$basedir/node" "$basedir/../uuid/dist/bin/uuid" "$@"
else else
exec node "$basedir/../uuid/dist/esm/bin/uuid" "$@" exec node "$basedir/../uuid/dist/bin/uuid" "$@"
fi fi
+1 -1
View File
@@ -14,4 +14,4 @@ IF EXIST "%dp0%\node.exe" (
SET PATHEXT=%PATHEXT:;.JS;=;% SET PATHEXT=%PATHEXT:;.JS;=;%
) )
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\uuid\dist\esm\bin\uuid" %* endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\uuid\dist\bin\uuid" %*
+4 -4
View File
@@ -11,17 +11,17 @@ $ret=0
if (Test-Path "$basedir/node$exe") { if (Test-Path "$basedir/node$exe") {
# Support pipeline input # Support pipeline input
if ($MyInvocation.ExpectingInput) { if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../uuid/dist/esm/bin/uuid" $args $input | & "$basedir/node$exe" "$basedir/../uuid/dist/bin/uuid" $args
} else { } else {
& "$basedir/node$exe" "$basedir/../uuid/dist/esm/bin/uuid" $args & "$basedir/node$exe" "$basedir/../uuid/dist/bin/uuid" $args
} }
$ret=$LASTEXITCODE $ret=$LASTEXITCODE
} else { } else {
# Support pipeline input # Support pipeline input
if ($MyInvocation.ExpectingInput) { if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../uuid/dist/esm/bin/uuid" $args $input | & "node$exe" "$basedir/../uuid/dist/bin/uuid" $args
} else { } else {
& "node$exe" "$basedir/../uuid/dist/esm/bin/uuid" $args & "node$exe" "$basedir/../uuid/dist/bin/uuid" $args
} }
$ret=$LASTEXITCODE $ret=$LASTEXITCODE
} }
+634 -584
View File
File diff suppressed because it is too large Load Diff
+40
View File
@@ -234,6 +234,14 @@ CreateBucket
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/CreateBucketCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/CreateBucketCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/CreateBucketCommandOutput/) [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/CreateBucketCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/CreateBucketCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/CreateBucketCommandOutput/)
</details>
<details>
<summary>
CreateBucketMetadataConfiguration
</summary>
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/CreateBucketMetadataConfigurationCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/CreateBucketMetadataConfigurationCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/CreateBucketMetadataConfigurationCommandOutput/)
</details> </details>
<details> <details>
<summary> <summary>
@@ -314,6 +322,14 @@ DeleteBucketLifecycle
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/DeleteBucketLifecycleCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/DeleteBucketLifecycleCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/DeleteBucketLifecycleCommandOutput/) [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/DeleteBucketLifecycleCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/DeleteBucketLifecycleCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/DeleteBucketLifecycleCommandOutput/)
</details>
<details>
<summary>
DeleteBucketMetadataConfiguration
</summary>
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/DeleteBucketMetadataConfigurationCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/DeleteBucketMetadataConfigurationCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/DeleteBucketMetadataConfigurationCommandOutput/)
</details> </details>
<details> <details>
<summary> <summary>
@@ -482,6 +498,14 @@ GetBucketLogging
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/GetBucketLoggingCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/GetBucketLoggingCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/GetBucketLoggingCommandOutput/) [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/GetBucketLoggingCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/GetBucketLoggingCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/GetBucketLoggingCommandOutput/)
</details>
<details>
<summary>
GetBucketMetadataConfiguration
</summary>
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/GetBucketMetadataConfigurationCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/GetBucketMetadataConfigurationCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/GetBucketMetadataConfigurationCommandOutput/)
</details> </details>
<details> <details>
<summary> <summary>
@@ -970,6 +994,22 @@ SelectObjectContent
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/SelectObjectContentCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/SelectObjectContentCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/SelectObjectContentCommandOutput/) [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/SelectObjectContentCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/SelectObjectContentCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/SelectObjectContentCommandOutput/)
</details>
<details>
<summary>
UpdateBucketMetadataInventoryTableConfiguration
</summary>
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/UpdateBucketMetadataInventoryTableConfigurationCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/UpdateBucketMetadataInventoryTableConfigurationCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/UpdateBucketMetadataInventoryTableConfigurationCommandOutput/)
</details>
<details>
<summary>
UpdateBucketMetadataJournalTableConfiguration
</summary>
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/UpdateBucketMetadataJournalTableConfigurationCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/UpdateBucketMetadataJournalTableConfigurationCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3/Interface/UpdateBucketMetadataJournalTableConfigurationCommandOutput/)
</details> </details>
<details> <details>
<summary> <summary>
File diff suppressed because it is too large Load Diff
+10
View File
@@ -3,6 +3,7 @@ import { AbortMultipartUploadCommand, } from "./commands/AbortMultipartUploadCom
import { CompleteMultipartUploadCommand, } from "./commands/CompleteMultipartUploadCommand"; import { CompleteMultipartUploadCommand, } from "./commands/CompleteMultipartUploadCommand";
import { CopyObjectCommand } from "./commands/CopyObjectCommand"; import { CopyObjectCommand } from "./commands/CopyObjectCommand";
import { CreateBucketCommand, } from "./commands/CreateBucketCommand"; import { CreateBucketCommand, } from "./commands/CreateBucketCommand";
import { CreateBucketMetadataConfigurationCommand, } from "./commands/CreateBucketMetadataConfigurationCommand";
import { CreateBucketMetadataTableConfigurationCommand, } from "./commands/CreateBucketMetadataTableConfigurationCommand"; import { CreateBucketMetadataTableConfigurationCommand, } from "./commands/CreateBucketMetadataTableConfigurationCommand";
import { CreateMultipartUploadCommand, } from "./commands/CreateMultipartUploadCommand"; import { CreateMultipartUploadCommand, } from "./commands/CreateMultipartUploadCommand";
import { CreateSessionCommand, } from "./commands/CreateSessionCommand"; import { CreateSessionCommand, } from "./commands/CreateSessionCommand";
@@ -13,6 +14,7 @@ import { DeleteBucketEncryptionCommand, } from "./commands/DeleteBucketEncryptio
import { DeleteBucketIntelligentTieringConfigurationCommand, } from "./commands/DeleteBucketIntelligentTieringConfigurationCommand"; import { DeleteBucketIntelligentTieringConfigurationCommand, } from "./commands/DeleteBucketIntelligentTieringConfigurationCommand";
import { DeleteBucketInventoryConfigurationCommand, } from "./commands/DeleteBucketInventoryConfigurationCommand"; import { DeleteBucketInventoryConfigurationCommand, } from "./commands/DeleteBucketInventoryConfigurationCommand";
import { DeleteBucketLifecycleCommand, } from "./commands/DeleteBucketLifecycleCommand"; import { DeleteBucketLifecycleCommand, } from "./commands/DeleteBucketLifecycleCommand";
import { DeleteBucketMetadataConfigurationCommand, } from "./commands/DeleteBucketMetadataConfigurationCommand";
import { DeleteBucketMetadataTableConfigurationCommand, } from "./commands/DeleteBucketMetadataTableConfigurationCommand"; import { DeleteBucketMetadataTableConfigurationCommand, } from "./commands/DeleteBucketMetadataTableConfigurationCommand";
import { DeleteBucketMetricsConfigurationCommand, } from "./commands/DeleteBucketMetricsConfigurationCommand"; import { DeleteBucketMetricsConfigurationCommand, } from "./commands/DeleteBucketMetricsConfigurationCommand";
import { DeleteBucketOwnershipControlsCommand, } from "./commands/DeleteBucketOwnershipControlsCommand"; import { DeleteBucketOwnershipControlsCommand, } from "./commands/DeleteBucketOwnershipControlsCommand";
@@ -34,6 +36,7 @@ import { GetBucketInventoryConfigurationCommand, } from "./commands/GetBucketInv
import { GetBucketLifecycleConfigurationCommand, } from "./commands/GetBucketLifecycleConfigurationCommand"; import { GetBucketLifecycleConfigurationCommand, } from "./commands/GetBucketLifecycleConfigurationCommand";
import { GetBucketLocationCommand, } from "./commands/GetBucketLocationCommand"; import { GetBucketLocationCommand, } from "./commands/GetBucketLocationCommand";
import { GetBucketLoggingCommand, } from "./commands/GetBucketLoggingCommand"; import { GetBucketLoggingCommand, } from "./commands/GetBucketLoggingCommand";
import { GetBucketMetadataConfigurationCommand, } from "./commands/GetBucketMetadataConfigurationCommand";
import { GetBucketMetadataTableConfigurationCommand, } from "./commands/GetBucketMetadataTableConfigurationCommand"; import { GetBucketMetadataTableConfigurationCommand, } from "./commands/GetBucketMetadataTableConfigurationCommand";
import { GetBucketMetricsConfigurationCommand, } from "./commands/GetBucketMetricsConfigurationCommand"; import { GetBucketMetricsConfigurationCommand, } from "./commands/GetBucketMetricsConfigurationCommand";
import { GetBucketNotificationConfigurationCommand, } from "./commands/GetBucketNotificationConfigurationCommand"; import { GetBucketNotificationConfigurationCommand, } from "./commands/GetBucketNotificationConfigurationCommand";
@@ -95,6 +98,8 @@ import { PutPublicAccessBlockCommand, } from "./commands/PutPublicAccessBlockCom
import { RenameObjectCommand, } from "./commands/RenameObjectCommand"; import { RenameObjectCommand, } from "./commands/RenameObjectCommand";
import { RestoreObjectCommand, } from "./commands/RestoreObjectCommand"; import { RestoreObjectCommand, } from "./commands/RestoreObjectCommand";
import { SelectObjectContentCommand, } from "./commands/SelectObjectContentCommand"; import { SelectObjectContentCommand, } from "./commands/SelectObjectContentCommand";
import { UpdateBucketMetadataInventoryTableConfigurationCommand, } from "./commands/UpdateBucketMetadataInventoryTableConfigurationCommand";
import { UpdateBucketMetadataJournalTableConfigurationCommand, } from "./commands/UpdateBucketMetadataJournalTableConfigurationCommand";
import { UploadPartCommand } from "./commands/UploadPartCommand"; import { UploadPartCommand } from "./commands/UploadPartCommand";
import { UploadPartCopyCommand, } from "./commands/UploadPartCopyCommand"; import { UploadPartCopyCommand, } from "./commands/UploadPartCopyCommand";
import { WriteGetObjectResponseCommand, } from "./commands/WriteGetObjectResponseCommand"; import { WriteGetObjectResponseCommand, } from "./commands/WriteGetObjectResponseCommand";
@@ -104,6 +109,7 @@ const commands = {
CompleteMultipartUploadCommand, CompleteMultipartUploadCommand,
CopyObjectCommand, CopyObjectCommand,
CreateBucketCommand, CreateBucketCommand,
CreateBucketMetadataConfigurationCommand,
CreateBucketMetadataTableConfigurationCommand, CreateBucketMetadataTableConfigurationCommand,
CreateMultipartUploadCommand, CreateMultipartUploadCommand,
CreateSessionCommand, CreateSessionCommand,
@@ -114,6 +120,7 @@ const commands = {
DeleteBucketIntelligentTieringConfigurationCommand, DeleteBucketIntelligentTieringConfigurationCommand,
DeleteBucketInventoryConfigurationCommand, DeleteBucketInventoryConfigurationCommand,
DeleteBucketLifecycleCommand, DeleteBucketLifecycleCommand,
DeleteBucketMetadataConfigurationCommand,
DeleteBucketMetadataTableConfigurationCommand, DeleteBucketMetadataTableConfigurationCommand,
DeleteBucketMetricsConfigurationCommand, DeleteBucketMetricsConfigurationCommand,
DeleteBucketOwnershipControlsCommand, DeleteBucketOwnershipControlsCommand,
@@ -135,6 +142,7 @@ const commands = {
GetBucketLifecycleConfigurationCommand, GetBucketLifecycleConfigurationCommand,
GetBucketLocationCommand, GetBucketLocationCommand,
GetBucketLoggingCommand, GetBucketLoggingCommand,
GetBucketMetadataConfigurationCommand,
GetBucketMetadataTableConfigurationCommand, GetBucketMetadataTableConfigurationCommand,
GetBucketMetricsConfigurationCommand, GetBucketMetricsConfigurationCommand,
GetBucketNotificationConfigurationCommand, GetBucketNotificationConfigurationCommand,
@@ -196,6 +204,8 @@ const commands = {
RenameObjectCommand, RenameObjectCommand,
RestoreObjectCommand, RestoreObjectCommand,
SelectObjectContentCommand, SelectObjectContentCommand,
UpdateBucketMetadataInventoryTableConfigurationCommand,
UpdateBucketMetadataJournalTableConfigurationCommand,
UploadPartCommand, UploadPartCommand,
UploadPartCopyCommand, UploadPartCopyCommand,
WriteGetObjectResponseCommand, WriteGetObjectResponseCommand,
@@ -0,0 +1,31 @@
import { getFlexibleChecksumsPlugin } from "@aws-sdk/middleware-flexible-checksums";
import { getEndpointPlugin } from "@smithy/middleware-endpoint";
import { getSerdePlugin } from "@smithy/middleware-serde";
import { Command as $Command } from "@smithy/smithy-client";
import { commonParams } from "../endpoint/EndpointParameters";
import { de_CreateBucketMetadataConfigurationCommand, se_CreateBucketMetadataConfigurationCommand, } from "../protocols/Aws_restXml";
export { $Command };
export class CreateBucketMetadataConfigurationCommand extends $Command
.classBuilder()
.ep({
...commonParams,
UseS3ExpressControlEndpoint: { type: "staticContextParams", value: true },
Bucket: { type: "contextParams", name: "Bucket" },
})
.m(function (Command, cs, config, o) {
return [
getSerdePlugin(config, this.serialize, this.deserialize),
getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: { httpHeader: "x-amz-sdk-checksum-algorithm", name: "ChecksumAlgorithm" },
requestChecksumRequired: true,
}),
];
})
.s("AmazonS3", "CreateBucketMetadataConfiguration", {})
.n("S3Client", "CreateBucketMetadataConfigurationCommand")
.f(void 0, void 0)
.ser(se_CreateBucketMetadataConfigurationCommand)
.de(de_CreateBucketMetadataConfigurationCommand)
.build() {
}
@@ -0,0 +1,26 @@
import { getEndpointPlugin } from "@smithy/middleware-endpoint";
import { getSerdePlugin } from "@smithy/middleware-serde";
import { Command as $Command } from "@smithy/smithy-client";
import { commonParams } from "../endpoint/EndpointParameters";
import { de_DeleteBucketMetadataConfigurationCommand, se_DeleteBucketMetadataConfigurationCommand, } from "../protocols/Aws_restXml";
export { $Command };
export class DeleteBucketMetadataConfigurationCommand extends $Command
.classBuilder()
.ep({
...commonParams,
UseS3ExpressControlEndpoint: { type: "staticContextParams", value: true },
Bucket: { type: "contextParams", name: "Bucket" },
})
.m(function (Command, cs, config, o) {
return [
getSerdePlugin(config, this.serialize, this.deserialize),
getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
];
})
.s("AmazonS3", "DeleteBucketMetadataConfiguration", {})
.n("S3Client", "DeleteBucketMetadataConfigurationCommand")
.f(void 0, void 0)
.ser(se_DeleteBucketMetadataConfigurationCommand)
.de(de_DeleteBucketMetadataConfigurationCommand)
.build() {
}
@@ -0,0 +1,28 @@
import { getThrow200ExceptionsPlugin } from "@aws-sdk/middleware-sdk-s3";
import { getEndpointPlugin } from "@smithy/middleware-endpoint";
import { getSerdePlugin } from "@smithy/middleware-serde";
import { Command as $Command } from "@smithy/smithy-client";
import { commonParams } from "../endpoint/EndpointParameters";
import { de_GetBucketMetadataConfigurationCommand, se_GetBucketMetadataConfigurationCommand, } from "../protocols/Aws_restXml";
export { $Command };
export class GetBucketMetadataConfigurationCommand extends $Command
.classBuilder()
.ep({
...commonParams,
UseS3ExpressControlEndpoint: { type: "staticContextParams", value: true },
Bucket: { type: "contextParams", name: "Bucket" },
})
.m(function (Command, cs, config, o) {
return [
getSerdePlugin(config, this.serialize, this.deserialize),
getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
getThrow200ExceptionsPlugin(config),
];
})
.s("AmazonS3", "GetBucketMetadataConfiguration", {})
.n("S3Client", "GetBucketMetadataConfigurationCommand")
.f(void 0, void 0)
.ser(se_GetBucketMetadataConfigurationCommand)
.de(de_GetBucketMetadataConfigurationCommand)
.build() {
}
@@ -4,7 +4,7 @@ import { getEndpointPlugin } from "@smithy/middleware-endpoint";
import { getSerdePlugin } from "@smithy/middleware-serde"; import { getSerdePlugin } from "@smithy/middleware-serde";
import { Command as $Command } from "@smithy/smithy-client"; import { Command as $Command } from "@smithy/smithy-client";
import { commonParams } from "../endpoint/EndpointParameters"; import { commonParams } from "../endpoint/EndpointParameters";
import { ListPartsRequestFilterSensitiveLog } from "../models/models_0"; import { ListPartsRequestFilterSensitiveLog } from "../models/models_1";
import { de_ListPartsCommand, se_ListPartsCommand } from "../protocols/Aws_restXml"; import { de_ListPartsCommand, se_ListPartsCommand } from "../protocols/Aws_restXml";
export { $Command }; export { $Command };
export class ListPartsCommand extends $Command export class ListPartsCommand extends $Command
@@ -0,0 +1,31 @@
import { getFlexibleChecksumsPlugin } from "@aws-sdk/middleware-flexible-checksums";
import { getEndpointPlugin } from "@smithy/middleware-endpoint";
import { getSerdePlugin } from "@smithy/middleware-serde";
import { Command as $Command } from "@smithy/smithy-client";
import { commonParams } from "../endpoint/EndpointParameters";
import { de_UpdateBucketMetadataInventoryTableConfigurationCommand, se_UpdateBucketMetadataInventoryTableConfigurationCommand, } from "../protocols/Aws_restXml";
export { $Command };
export class UpdateBucketMetadataInventoryTableConfigurationCommand extends $Command
.classBuilder()
.ep({
...commonParams,
UseS3ExpressControlEndpoint: { type: "staticContextParams", value: true },
Bucket: { type: "contextParams", name: "Bucket" },
})
.m(function (Command, cs, config, o) {
return [
getSerdePlugin(config, this.serialize, this.deserialize),
getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: { httpHeader: "x-amz-sdk-checksum-algorithm", name: "ChecksumAlgorithm" },
requestChecksumRequired: true,
}),
];
})
.s("AmazonS3", "UpdateBucketMetadataInventoryTableConfiguration", {})
.n("S3Client", "UpdateBucketMetadataInventoryTableConfigurationCommand")
.f(void 0, void 0)
.ser(se_UpdateBucketMetadataInventoryTableConfigurationCommand)
.de(de_UpdateBucketMetadataInventoryTableConfigurationCommand)
.build() {
}
@@ -0,0 +1,31 @@
import { getFlexibleChecksumsPlugin } from "@aws-sdk/middleware-flexible-checksums";
import { getEndpointPlugin } from "@smithy/middleware-endpoint";
import { getSerdePlugin } from "@smithy/middleware-serde";
import { Command as $Command } from "@smithy/smithy-client";
import { commonParams } from "../endpoint/EndpointParameters";
import { de_UpdateBucketMetadataJournalTableConfigurationCommand, se_UpdateBucketMetadataJournalTableConfigurationCommand, } from "../protocols/Aws_restXml";
export { $Command };
export class UpdateBucketMetadataJournalTableConfigurationCommand extends $Command
.classBuilder()
.ep({
...commonParams,
UseS3ExpressControlEndpoint: { type: "staticContextParams", value: true },
Bucket: { type: "contextParams", name: "Bucket" },
})
.m(function (Command, cs, config, o) {
return [
getSerdePlugin(config, this.serialize, this.deserialize),
getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
getFlexibleChecksumsPlugin(config, {
requestAlgorithmMember: { httpHeader: "x-amz-sdk-checksum-algorithm", name: "ChecksumAlgorithm" },
requestChecksumRequired: true,
}),
];
})
.s("AmazonS3", "UpdateBucketMetadataJournalTableConfiguration", {})
.n("S3Client", "UpdateBucketMetadataJournalTableConfigurationCommand")
.f(void 0, void 0)
.ser(se_UpdateBucketMetadataJournalTableConfigurationCommand)
.de(de_UpdateBucketMetadataJournalTableConfigurationCommand)
.build() {
}
@@ -2,6 +2,7 @@ export * from "./AbortMultipartUploadCommand";
export * from "./CompleteMultipartUploadCommand"; export * from "./CompleteMultipartUploadCommand";
export * from "./CopyObjectCommand"; export * from "./CopyObjectCommand";
export * from "./CreateBucketCommand"; export * from "./CreateBucketCommand";
export * from "./CreateBucketMetadataConfigurationCommand";
export * from "./CreateBucketMetadataTableConfigurationCommand"; export * from "./CreateBucketMetadataTableConfigurationCommand";
export * from "./CreateMultipartUploadCommand"; export * from "./CreateMultipartUploadCommand";
export * from "./CreateSessionCommand"; export * from "./CreateSessionCommand";
@@ -12,6 +13,7 @@ export * from "./DeleteBucketEncryptionCommand";
export * from "./DeleteBucketIntelligentTieringConfigurationCommand"; export * from "./DeleteBucketIntelligentTieringConfigurationCommand";
export * from "./DeleteBucketInventoryConfigurationCommand"; export * from "./DeleteBucketInventoryConfigurationCommand";
export * from "./DeleteBucketLifecycleCommand"; export * from "./DeleteBucketLifecycleCommand";
export * from "./DeleteBucketMetadataConfigurationCommand";
export * from "./DeleteBucketMetadataTableConfigurationCommand"; export * from "./DeleteBucketMetadataTableConfigurationCommand";
export * from "./DeleteBucketMetricsConfigurationCommand"; export * from "./DeleteBucketMetricsConfigurationCommand";
export * from "./DeleteBucketOwnershipControlsCommand"; export * from "./DeleteBucketOwnershipControlsCommand";
@@ -33,6 +35,7 @@ export * from "./GetBucketInventoryConfigurationCommand";
export * from "./GetBucketLifecycleConfigurationCommand"; export * from "./GetBucketLifecycleConfigurationCommand";
export * from "./GetBucketLocationCommand"; export * from "./GetBucketLocationCommand";
export * from "./GetBucketLoggingCommand"; export * from "./GetBucketLoggingCommand";
export * from "./GetBucketMetadataConfigurationCommand";
export * from "./GetBucketMetadataTableConfigurationCommand"; export * from "./GetBucketMetadataTableConfigurationCommand";
export * from "./GetBucketMetricsConfigurationCommand"; export * from "./GetBucketMetricsConfigurationCommand";
export * from "./GetBucketNotificationConfigurationCommand"; export * from "./GetBucketNotificationConfigurationCommand";
@@ -94,6 +97,8 @@ export * from "./PutPublicAccessBlockCommand";
export * from "./RenameObjectCommand"; export * from "./RenameObjectCommand";
export * from "./RestoreObjectCommand"; export * from "./RestoreObjectCommand";
export * from "./SelectObjectContentCommand"; export * from "./SelectObjectContentCommand";
export * from "./UpdateBucketMetadataInventoryTableConfigurationCommand";
export * from "./UpdateBucketMetadataJournalTableConfigurationCommand";
export * from "./UploadPartCommand"; export * from "./UploadPartCommand";
export * from "./UploadPartCopyCommand"; export * from "./UploadPartCopyCommand";
export * from "./WriteGetObjectResponseCommand"; export * from "./WriteGetObjectResponseCommand";
@@ -186,6 +186,18 @@ export const ObjectOwnership = {
BucketOwnerPreferred: "BucketOwnerPreferred", BucketOwnerPreferred: "BucketOwnerPreferred",
ObjectWriter: "ObjectWriter", ObjectWriter: "ObjectWriter",
}; };
export const InventoryConfigurationState = {
DISABLED: "DISABLED",
ENABLED: "ENABLED",
};
export const TableSseAlgorithm = {
AES256: "AES256",
aws_kms: "aws:kms",
};
export const ExpirationState = {
DISABLED: "DISABLED",
ENABLED: "ENABLED",
};
export const SessionMode = { export const SessionMode = {
ReadOnly: "ReadOnly", ReadOnly: "ReadOnly",
ReadWrite: "ReadWrite", ReadWrite: "ReadWrite",
@@ -283,6 +295,10 @@ export const PartitionDateSource = {
DeliveryTime: "DeliveryTime", DeliveryTime: "DeliveryTime",
EventTime: "EventTime", EventTime: "EventTime",
}; };
export const S3TablesBucketType = {
aws: "aws",
customer: "customer",
};
export var MetricsFilter; export var MetricsFilter;
(function (MetricsFilter) { (function (MetricsFilter) {
MetricsFilter.visit = (value, visitor) => { MetricsFilter.visit = (value, visitor) => {
@@ -445,26 +461,6 @@ export const ArchiveStatus = {
export const EncodingType = { export const EncodingType = {
url: "url", url: "url",
}; };
export const ObjectStorageClass = {
DEEP_ARCHIVE: "DEEP_ARCHIVE",
EXPRESS_ONEZONE: "EXPRESS_ONEZONE",
FSX_OPENZFS: "FSX_OPENZFS",
GLACIER: "GLACIER",
GLACIER_IR: "GLACIER_IR",
INTELLIGENT_TIERING: "INTELLIGENT_TIERING",
ONEZONE_IA: "ONEZONE_IA",
OUTPOSTS: "OUTPOSTS",
REDUCED_REDUNDANCY: "REDUCED_REDUNDANCY",
SNOW: "SNOW",
STANDARD: "STANDARD",
STANDARD_IA: "STANDARD_IA",
};
export const OptionalObjectAttributes = {
RESTORE_STATUS: "RestoreStatus",
};
export const ObjectVersionStorageClass = {
STANDARD: "STANDARD",
};
export const CompleteMultipartUploadOutputFilterSensitiveLog = (obj) => ({ export const CompleteMultipartUploadOutputFilterSensitiveLog = (obj) => ({
...obj, ...obj,
...(obj.SSEKMSKeyId && { SSEKMSKeyId: SENSITIVE_STRING }), ...(obj.SSEKMSKeyId && { SSEKMSKeyId: SENSITIVE_STRING }),
@@ -589,7 +585,3 @@ export const ListBucketInventoryConfigurationsOutputFilterSensitiveLog = (obj) =
InventoryConfigurationList: obj.InventoryConfigurationList.map((item) => InventoryConfigurationFilterSensitiveLog(item)), InventoryConfigurationList: obj.InventoryConfigurationList.map((item) => InventoryConfigurationFilterSensitiveLog(item)),
}), }),
}); });
export const ListPartsRequestFilterSensitiveLog = (obj) => ({
...obj,
...(obj.SSECustomerKey && { SSECustomerKey: SENSITIVE_STRING }),
});
@@ -1,6 +1,26 @@
import { SENSITIVE_STRING } from "@smithy/smithy-client"; import { SENSITIVE_STRING } from "@smithy/smithy-client";
import { InventoryConfigurationFilterSensitiveLog, ServerSideEncryptionConfigurationFilterSensitiveLog, } from "./models_0"; import { InventoryConfigurationFilterSensitiveLog, ServerSideEncryptionConfigurationFilterSensitiveLog, } from "./models_0";
import { S3ServiceException as __BaseException } from "./S3ServiceException"; import { S3ServiceException as __BaseException } from "./S3ServiceException";
export const ObjectStorageClass = {
DEEP_ARCHIVE: "DEEP_ARCHIVE",
EXPRESS_ONEZONE: "EXPRESS_ONEZONE",
FSX_OPENZFS: "FSX_OPENZFS",
GLACIER: "GLACIER",
GLACIER_IR: "GLACIER_IR",
INTELLIGENT_TIERING: "INTELLIGENT_TIERING",
ONEZONE_IA: "ONEZONE_IA",
OUTPOSTS: "OUTPOSTS",
REDUCED_REDUNDANCY: "REDUCED_REDUNDANCY",
SNOW: "SNOW",
STANDARD: "STANDARD",
STANDARD_IA: "STANDARD_IA",
};
export const OptionalObjectAttributes = {
RESTORE_STATUS: "RestoreStatus",
};
export const ObjectVersionStorageClass = {
STANDARD: "STANDARD",
};
export const MFADelete = { export const MFADelete = {
Disabled: "Disabled", Disabled: "Disabled",
Enabled: "Enabled", Enabled: "Enabled",
@@ -122,6 +142,10 @@ export var SelectObjectContentEventStream;
return visitor._(value.$unknown[0], value.$unknown[1]); return visitor._(value.$unknown[0], value.$unknown[1]);
}; };
})(SelectObjectContentEventStream || (SelectObjectContentEventStream = {})); })(SelectObjectContentEventStream || (SelectObjectContentEventStream = {}));
export const ListPartsRequestFilterSensitiveLog = (obj) => ({
...obj,
...(obj.SSECustomerKey && { SSECustomerKey: SENSITIVE_STRING }),
});
export const PutBucketEncryptionRequestFilterSensitiveLog = (obj) => ({ export const PutBucketEncryptionRequestFilterSensitiveLog = (obj) => ({
...obj, ...obj,
...(obj.ServerSideEncryptionConfiguration && { ...(obj.ServerSideEncryptionConfiguration && {
@@ -145,6 +145,30 @@ export const se_CreateBucketCommand = async (input, context) => {
b.m("PUT").h(headers).b(body); b.m("PUT").h(headers).b(body);
return b.build(); return b.build();
}; };
export const se_CreateBucketMetadataConfigurationCommand = async (input, context) => {
const b = rb(input, context);
const headers = map({}, isSerializableHeaderValue, {
"content-type": "application/xml",
[_cm]: input[_CMD],
[_xasca]: input[_CA],
[_xaebo]: input[_EBO],
});
b.bp("/");
b.p("Bucket", () => input.Bucket, "{Bucket}", false);
const query = map({
[_mC]: [, ""],
});
let body;
let contents;
if (input.MetadataConfiguration !== undefined) {
contents = se_MetadataConfiguration(input.MetadataConfiguration, context);
body = _ve;
contents.a("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
body += contents.toString();
}
b.m("POST").h(headers).q(query).b(body);
return b.build();
};
export const se_CreateBucketMetadataTableConfigurationCommand = async (input, context) => { export const se_CreateBucketMetadataTableConfigurationCommand = async (input, context) => {
const b = rb(input, context); const b = rb(input, context);
const headers = map({}, isSerializableHeaderValue, { const headers = map({}, isSerializableHeaderValue, {
@@ -332,6 +356,20 @@ export const se_DeleteBucketLifecycleCommand = async (input, context) => {
b.m("DELETE").h(headers).q(query).b(body); b.m("DELETE").h(headers).q(query).b(body);
return b.build(); return b.build();
}; };
export const se_DeleteBucketMetadataConfigurationCommand = async (input, context) => {
const b = rb(input, context);
const headers = map({}, isSerializableHeaderValue, {
[_xaebo]: input[_EBO],
});
b.bp("/");
b.p("Bucket", () => input.Bucket, "{Bucket}", false);
const query = map({
[_mC]: [, ""],
});
let body;
b.m("DELETE").h(headers).q(query).b(body);
return b.build();
};
export const se_DeleteBucketMetadataTableConfigurationCommand = async (input, context) => { export const se_DeleteBucketMetadataTableConfigurationCommand = async (input, context) => {
const b = rb(input, context); const b = rb(input, context);
const headers = map({}, isSerializableHeaderValue, { const headers = map({}, isSerializableHeaderValue, {
@@ -656,6 +694,20 @@ export const se_GetBucketLoggingCommand = async (input, context) => {
b.m("GET").h(headers).q(query).b(body); b.m("GET").h(headers).q(query).b(body);
return b.build(); return b.build();
}; };
export const se_GetBucketMetadataConfigurationCommand = async (input, context) => {
const b = rb(input, context);
const headers = map({}, isSerializableHeaderValue, {
[_xaebo]: input[_EBO],
});
b.bp("/");
b.p("Bucket", () => input.Bucket, "{Bucket}", false);
const query = map({
[_mC]: [, ""],
});
let body;
b.m("GET").h(headers).q(query).b(body);
return b.build();
};
export const se_GetBucketMetadataTableConfigurationCommand = async (input, context) => { export const se_GetBucketMetadataTableConfigurationCommand = async (input, context) => {
const b = rb(input, context); const b = rb(input, context);
const headers = map({}, isSerializableHeaderValue, { const headers = map({}, isSerializableHeaderValue, {
@@ -1973,6 +2025,56 @@ export const se_SelectObjectContentCommand = async (input, context) => {
b.m("POST").h(headers).q(query).b(body); b.m("POST").h(headers).q(query).b(body);
return b.build(); return b.build();
}; };
export const se_UpdateBucketMetadataInventoryTableConfigurationCommand = async (input, context) => {
const b = rb(input, context);
const headers = map({}, isSerializableHeaderValue, {
"content-type": "application/xml",
[_cm]: input[_CMD],
[_xasca]: input[_CA],
[_xaebo]: input[_EBO],
});
b.bp("/");
b.p("Bucket", () => input.Bucket, "{Bucket}", false);
const query = map({
[_mIT]: [, ""],
});
let body;
let contents;
if (input.InventoryTableConfiguration !== undefined) {
contents = se_InventoryTableConfigurationUpdates(input.InventoryTableConfiguration, context);
contents = contents.n("InventoryTableConfiguration");
body = _ve;
contents.a("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
body += contents.toString();
}
b.m("PUT").h(headers).q(query).b(body);
return b.build();
};
export const se_UpdateBucketMetadataJournalTableConfigurationCommand = async (input, context) => {
const b = rb(input, context);
const headers = map({}, isSerializableHeaderValue, {
"content-type": "application/xml",
[_cm]: input[_CMD],
[_xasca]: input[_CA],
[_xaebo]: input[_EBO],
});
b.bp("/");
b.p("Bucket", () => input.Bucket, "{Bucket}", false);
const query = map({
[_mJT]: [, ""],
});
let body;
let contents;
if (input.JournalTableConfiguration !== undefined) {
contents = se_JournalTableConfigurationUpdates(input.JournalTableConfiguration, context);
contents = contents.n("JournalTableConfiguration");
body = _ve;
contents.a("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
body += contents.toString();
}
b.m("PUT").h(headers).q(query).b(body);
return b.build();
};
export const se_UploadPartCommand = async (input, context) => { export const se_UploadPartCommand = async (input, context) => {
const b = rb(input, context); const b = rb(input, context);
const headers = map({}, isSerializableHeaderValue, { const headers = map({}, isSerializableHeaderValue, {
@@ -2204,6 +2306,16 @@ export const de_CreateBucketCommand = async (output, context) => {
await collectBody(output.body, context); await collectBody(output.body, context);
return contents; return contents;
}; };
export const de_CreateBucketMetadataConfigurationCommand = async (output, context) => {
if (output.statusCode !== 200 && output.statusCode >= 300) {
return de_CommandError(output, context);
}
const contents = map({
$metadata: deserializeMetadata(output),
});
await collectBody(output.body, context);
return contents;
};
export const de_CreateBucketMetadataTableConfigurationCommand = async (output, context) => { export const de_CreateBucketMetadataTableConfigurationCommand = async (output, context) => {
if (output.statusCode !== 200 && output.statusCode >= 300) { if (output.statusCode !== 200 && output.statusCode >= 300) {
return de_CommandError(output, context); return de_CommandError(output, context);
@@ -2334,6 +2446,16 @@ export const de_DeleteBucketLifecycleCommand = async (output, context) => {
await collectBody(output.body, context); await collectBody(output.body, context);
return contents; return contents;
}; };
export const de_DeleteBucketMetadataConfigurationCommand = async (output, context) => {
if (output.statusCode !== 204 && output.statusCode >= 300) {
return de_CommandError(output, context);
}
const contents = map({
$metadata: deserializeMetadata(output),
});
await collectBody(output.body, context);
return contents;
};
export const de_DeleteBucketMetadataTableConfigurationCommand = async (output, context) => { export const de_DeleteBucketMetadataTableConfigurationCommand = async (output, context) => {
if (output.statusCode !== 204 && output.statusCode >= 300) { if (output.statusCode !== 204 && output.statusCode >= 300) {
return de_CommandError(output, context); return de_CommandError(output, context);
@@ -2597,6 +2719,17 @@ export const de_GetBucketLoggingCommand = async (output, context) => {
} }
return contents; return contents;
}; };
export const de_GetBucketMetadataConfigurationCommand = async (output, context) => {
if (output.statusCode !== 200 && output.statusCode >= 300) {
return de_CommandError(output, context);
}
const contents = map({
$metadata: deserializeMetadata(output),
});
const data = __expectObject(await parseBody(output.body, context));
contents.GetBucketMetadataConfigurationResult = de_GetBucketMetadataConfigurationResult(data, context);
return contents;
};
export const de_GetBucketMetadataTableConfigurationCommand = async (output, context) => { export const de_GetBucketMetadataTableConfigurationCommand = async (output, context) => {
if (output.statusCode !== 200 && output.statusCode >= 300) { if (output.statusCode !== 200 && output.statusCode >= 300) {
return de_CommandError(output, context); return de_CommandError(output, context);
@@ -3743,6 +3876,26 @@ export const de_SelectObjectContentCommand = async (output, context) => {
contents.Payload = de_SelectObjectContentEventStream(data, context); contents.Payload = de_SelectObjectContentEventStream(data, context);
return contents; return contents;
}; };
export const de_UpdateBucketMetadataInventoryTableConfigurationCommand = async (output, context) => {
if (output.statusCode !== 200 && output.statusCode >= 300) {
return de_CommandError(output, context);
}
const contents = map({
$metadata: deserializeMetadata(output),
});
await collectBody(output.body, context);
return contents;
};
export const de_UpdateBucketMetadataJournalTableConfigurationCommand = async (output, context) => {
if (output.statusCode !== 200 && output.statusCode >= 300) {
return de_CommandError(output, context);
}
const contents = map({
$metadata: deserializeMetadata(output),
});
await collectBody(output.body, context);
return contents;
};
export const de_UploadPartCommand = async (output, context) => { export const de_UploadPartCommand = async (output, context) => {
if (output.statusCode !== 200 && output.statusCode >= 300) { if (output.statusCode !== 200 && output.statusCode >= 300) {
return de_CommandError(output, context); return de_CommandError(output, context);
@@ -4552,6 +4705,43 @@ const se_InventorySchedule = (input, context) => {
} }
return bn; return bn;
}; };
const se_InventoryTableConfiguration = (input, context) => {
const bn = new __XmlNode(_ITCn);
if (input[_CSo] != null) {
bn.c(__XmlNode.of(_ICS, input[_CSo]).n(_CSo));
}
if (input[_ECn] != null) {
bn.c(se_MetadataTableEncryptionConfiguration(input[_ECn], context).n(_ECn));
}
return bn;
};
const se_InventoryTableConfigurationUpdates = (input, context) => {
const bn = new __XmlNode(_ITCU);
if (input[_CSo] != null) {
bn.c(__XmlNode.of(_ICS, input[_CSo]).n(_CSo));
}
if (input[_ECn] != null) {
bn.c(se_MetadataTableEncryptionConfiguration(input[_ECn], context).n(_ECn));
}
return bn;
};
const se_JournalTableConfiguration = (input, context) => {
const bn = new __XmlNode(_JTC);
if (input[_REe] != null) {
bn.c(se_RecordExpiration(input[_REe], context).n(_REe));
}
if (input[_ECn] != null) {
bn.c(se_MetadataTableEncryptionConfiguration(input[_ECn], context).n(_ECn));
}
return bn;
};
const se_JournalTableConfigurationUpdates = (input, context) => {
const bn = new __XmlNode(_JTCU);
if (input[_REe] != null) {
bn.c(se_RecordExpiration(input[_REe], context).n(_REe));
}
return bn;
};
const se_JSONInput = (input, context) => { const se_JSONInput = (input, context) => {
const bn = new __XmlNode(_JSONI); const bn = new __XmlNode(_JSONI);
if (input[_Ty] != null) { if (input[_Ty] != null) {
@@ -4679,6 +4869,16 @@ const se_LoggingEnabled = (input, context) => {
} }
return bn; return bn;
}; };
const se_MetadataConfiguration = (input, context) => {
const bn = new __XmlNode(_MCe);
if (input[_JTC] != null) {
bn.c(se_JournalTableConfiguration(input[_JTC], context).n(_JTC));
}
if (input[_ITCn] != null) {
bn.c(se_InventoryTableConfiguration(input[_ITCn], context).n(_ITCn));
}
return bn;
};
const se_MetadataEntry = (input, context) => { const se_MetadataEntry = (input, context) => {
const bn = new __XmlNode(_ME); const bn = new __XmlNode(_ME);
if (input[_N] != null) { if (input[_N] != null) {
@@ -4696,6 +4896,14 @@ const se_MetadataTableConfiguration = (input, context) => {
} }
return bn; return bn;
}; };
const se_MetadataTableEncryptionConfiguration = (input, context) => {
const bn = new __XmlNode(_MTEC);
if (input[_SAs] != null) {
bn.c(__XmlNode.of(_TSA, input[_SAs]).n(_SAs));
}
bn.cc(input, _KKA);
return bn;
};
const se_Metrics = (input, context) => { const se_Metrics = (input, context) => {
const bn = new __XmlNode(_Me); const bn = new __XmlNode(_Me);
if (input[_S] != null) { if (input[_S] != null) {
@@ -4948,6 +5156,16 @@ const se_QueueConfigurationList = (input, context) => {
return n.n(_me); return n.n(_me);
}); });
}; };
const se_RecordExpiration = (input, context) => {
const bn = new __XmlNode(_REe);
if (input[_Exp] != null) {
bn.c(__XmlNode.of(_ESxp, input[_Exp]).n(_Exp));
}
if (input[_Da] != null) {
bn.c(__XmlNode.of(_RED, String(input[_Da])).n(_Da));
}
return bn;
};
const se_Redirect = (input, context) => { const se_Redirect = (input, context) => {
const bn = new __XmlNode(_Red); const bn = new __XmlNode(_Red);
bn.cc(input, _HN); bn.cc(input, _HN);
@@ -5758,6 +5976,19 @@ const de_Destination = (output, context) => {
} }
return contents; return contents;
}; };
const de_DestinationResult = (output, context) => {
const contents = {};
if (output[_TBT] != null) {
contents[_TBT] = __expectString(output[_TBT]);
}
if (output[_TBA] != null) {
contents[_TBA] = __expectString(output[_TBA]);
}
if (output[_TNa] != null) {
contents[_TNa] = __expectString(output[_TNa]);
}
return contents;
};
const de_EncryptionConfiguration = (output, context) => { const de_EncryptionConfiguration = (output, context) => {
const contents = {}; const contents = {};
if (output[_RKKID] != null) { if (output[_RKKID] != null) {
@@ -5851,6 +6082,13 @@ const de_FilterRuleList = (output, context) => {
return de_FilterRule(entry, context); return de_FilterRule(entry, context);
}); });
}; };
const de_GetBucketMetadataConfigurationResult = (output, context) => {
const contents = {};
if (output[_MCR] != null) {
contents[_MCR] = de_MetadataConfigurationResult(output[_MCR], context);
}
return contents;
};
const de_GetBucketMetadataTableConfigurationResult = (output, context) => { const de_GetBucketMetadataTableConfigurationResult = (output, context) => {
const contents = {}; const contents = {};
if (output[_MTCR] != null) { if (output[_MTCR] != null) {
@@ -6086,6 +6324,44 @@ const de_InventorySchedule = (output, context) => {
} }
return contents; return contents;
}; };
const de_InventoryTableConfigurationResult = (output, context) => {
const contents = {};
if (output[_CSo] != null) {
contents[_CSo] = __expectString(output[_CSo]);
}
if (output[_TSa] != null) {
contents[_TSa] = __expectString(output[_TSa]);
}
if (output[_Er] != null) {
contents[_Er] = de_ErrorDetails(output[_Er], context);
}
if (output[_TN] != null) {
contents[_TN] = __expectString(output[_TN]);
}
if (output[_TAa] != null) {
contents[_TAa] = __expectString(output[_TAa]);
}
return contents;
};
const de_JournalTableConfigurationResult = (output, context) => {
const contents = {};
if (output[_TSa] != null) {
contents[_TSa] = __expectString(output[_TSa]);
}
if (output[_Er] != null) {
contents[_Er] = de_ErrorDetails(output[_Er], context);
}
if (output[_TN] != null) {
contents[_TN] = __expectString(output[_TN]);
}
if (output[_TAa] != null) {
contents[_TAa] = __expectString(output[_TAa]);
}
if (output[_REe] != null) {
contents[_REe] = de_RecordExpiration(output[_REe], context);
}
return contents;
};
const de_LambdaFunctionConfiguration = (output, context) => { const de_LambdaFunctionConfiguration = (output, context) => {
const contents = {}; const contents = {};
if (output[_I] != null) { if (output[_I] != null) {
@@ -6226,6 +6502,19 @@ const de_LoggingEnabled = (output, context) => {
} }
return contents; return contents;
}; };
const de_MetadataConfigurationResult = (output, context) => {
const contents = {};
if (output[_DRes] != null) {
contents[_DRes] = de_DestinationResult(output[_DRes], context);
}
if (output[_JTCR] != null) {
contents[_JTCR] = de_JournalTableConfigurationResult(output[_JTCR], context);
}
if (output[_ITCR] != null) {
contents[_ITCR] = de_InventoryTableConfigurationResult(output[_ITCR], context);
}
return contents;
};
const de_MetadataTableConfigurationResult = (output, context) => { const de_MetadataTableConfigurationResult = (output, context) => {
const contents = {}; const contents = {};
if (output[_STDR] != null) { if (output[_STDR] != null) {
@@ -6668,6 +6957,16 @@ const de_QueueConfigurationList = (output, context) => {
return de_QueueConfiguration(entry, context); return de_QueueConfiguration(entry, context);
}); });
}; };
const de_RecordExpiration = (output, context) => {
const contents = {};
if (output[_Exp] != null) {
contents[_Exp] = __expectString(output[_Exp]);
}
if (output[_Da] != null) {
contents[_Da] = __strictParseInt32(output[_Da]);
}
return contents;
};
const de_Redirect = (output, context) => { const de_Redirect = (output, context) => {
const contents = {}; const contents = {};
if (output[_HN] != null) { if (output[_HN] != null) {
@@ -6803,8 +7102,8 @@ const de_RestoreStatus = (output, context) => {
if (output[_IRIP] != null) { if (output[_IRIP] != null) {
contents[_IRIP] = __parseBoolean(output[_IRIP]); contents[_IRIP] = __parseBoolean(output[_IRIP]);
} }
if (output[_RED] != null) { if (output[_REDe] != null) {
contents[_RED] = __expectNonNull(__parseRfc3339DateTimeWithOffset(output[_RED])); contents[_REDe] = __expectNonNull(__parseRfc3339DateTimeWithOffset(output[_REDe]));
} }
return contents; return contents;
}; };
@@ -7176,6 +7475,7 @@ const _CSV = "CSV";
const _CSVI = "CopySourceVersionId"; const _CSVI = "CopySourceVersionId";
const _CSVIn = "CSVInput"; const _CSVIn = "CSVInput";
const _CSVO = "CSVOutput"; const _CSVO = "CSVOutput";
const _CSo = "ConfigurationState";
const _CT = "ChecksumType"; const _CT = "ChecksumType";
const _CTl = "ClientToken"; const _CTl = "ClientToken";
const _CTo = "ContentType"; const _CTo = "ContentType";
@@ -7201,6 +7501,7 @@ const _DMe = "DeleteMarkers";
const _DN = "DisplayName"; const _DN = "DisplayName";
const _DR = "DataRedundancy"; const _DR = "DataRedundancy";
const _DRe = "DefaultRetention"; const _DRe = "DefaultRetention";
const _DRes = "DestinationResult";
const _Da = "Days"; const _Da = "Days";
const _Dat = "Date"; const _Dat = "Date";
const _De = "Deleted"; const _De = "Deleted";
@@ -7224,6 +7525,7 @@ const _ERP = "EnableRequestProgress";
const _ES = "ExpiresString"; const _ES = "ExpiresString";
const _ESBO = "ExpectedSourceBucketOwner"; const _ESBO = "ExpectedSourceBucketOwner";
const _ESx = "ExpirationStatus"; const _ESx = "ExpirationStatus";
const _ESxp = "ExpirationState";
const _ET = "EncodingType"; const _ET = "EncodingType";
const _ETa = "ETag"; const _ETa = "ETag";
const _ETn = "EncryptionType"; const _ETn = "EncryptionType";
@@ -7264,6 +7566,7 @@ const _HRC = "HttpRedirectCode";
const _I = "Id"; const _I = "Id";
const _IC = "InventoryConfiguration"; const _IC = "InventoryConfiguration";
const _ICL = "InventoryConfigurationList"; const _ICL = "InventoryConfigurationList";
const _ICS = "InventoryConfigurationState";
const _ID = "IndexDocument"; const _ID = "IndexDocument";
const _ID_ = "ID"; const _ID_ = "ID";
const _IDn = "InventoryDestination"; const _IDn = "InventoryDestination";
@@ -7294,6 +7597,9 @@ const _ITAO = "IntelligentTieringAndOperator";
const _ITAT = "IntelligentTieringAccessTier"; const _ITAT = "IntelligentTieringAccessTier";
const _ITC = "IntelligentTieringConfiguration"; const _ITC = "IntelligentTieringConfiguration";
const _ITCL = "IntelligentTieringConfigurationList"; const _ITCL = "IntelligentTieringConfigurationList";
const _ITCR = "InventoryTableConfigurationResult";
const _ITCU = "InventoryTableConfigurationUpdates";
const _ITCn = "InventoryTableConfiguration";
const _ITD = "IntelligentTieringDays"; const _ITD = "IntelligentTieringDays";
const _ITF = "IntelligentTieringFilter"; const _ITF = "IntelligentTieringFilter";
const _ITI = "IntelligentTieringId"; const _ITI = "IntelligentTieringId";
@@ -7305,9 +7611,13 @@ const _JSON = "JSON";
const _JSONI = "JSONInput"; const _JSONI = "JSONInput";
const _JSONO = "JSONOutput"; const _JSONO = "JSONOutput";
const _JSONT = "JSONType"; const _JSONT = "JSONType";
const _JTC = "JournalTableConfiguration";
const _JTCR = "JournalTableConfigurationResult";
const _JTCU = "JournalTableConfigurationUpdates";
const _K = "Key"; const _K = "Key";
const _KC = "KeyCount"; const _KC = "KeyCount";
const _KI = "KeyId"; const _KI = "KeyId";
const _KKA = "KmsKeyArn";
const _KM = "KeyMarker"; const _KM = "KeyMarker";
const _KMSC = "KMSContext"; const _KMSC = "KMSContext";
const _KMSKI = "KMSKeyId"; const _KMSKI = "KMSKeyId";
@@ -7335,6 +7645,8 @@ const _MAS = "MaxAgeSeconds";
const _MB = "MaxBuckets"; const _MB = "MaxBuckets";
const _MC = "MetricsConfiguration"; const _MC = "MetricsConfiguration";
const _MCL = "MetricsConfigurationList"; const _MCL = "MetricsConfigurationList";
const _MCR = "MetadataConfigurationResult";
const _MCe = "MetadataConfiguration";
const _MD = "MetadataDirective"; const _MD = "MetadataDirective";
const _MDB = "MaxDirectoryBuckets"; const _MDB = "MaxDirectoryBuckets";
const _MDf = "MfaDelete"; const _MDf = "MfaDelete";
@@ -7351,6 +7663,7 @@ const _MP = "MaxParts";
const _MS = "MetricsStatus"; const _MS = "MetricsStatus";
const _MTC = "MetadataTableConfiguration"; const _MTC = "MetadataTableConfiguration";
const _MTCR = "MetadataTableConfigurationResult"; const _MTCR = "MetadataTableConfigurationResult";
const _MTEC = "MetadataTableEncryptionConfiguration";
const _MU = "MaxUploads"; const _MU = "MaxUploads";
const _MV = "MetadataValue"; const _MV = "MetadataValue";
const _Me = "Metrics"; const _Me = "Metrics";
@@ -7438,7 +7751,9 @@ const _RCT = "ResponseContentType";
const _RCe = "ReplicationConfiguration"; const _RCe = "ReplicationConfiguration";
const _RD = "RecordDelimiter"; const _RD = "RecordDelimiter";
const _RE = "ResponseExpires"; const _RE = "ResponseExpires";
const _RED = "RestoreExpiryDate"; const _RED = "RecordExpirationDays";
const _REDe = "RestoreExpiryDate";
const _REe = "RecordExpiration";
const _RKKID = "ReplicaKmsKeyID"; const _RKKID = "ReplicaKmsKeyID";
const _RKPW = "ReplaceKeyPrefixWith"; const _RKPW = "ReplaceKeyPrefixWith";
const _RKW = "ReplaceKeyWith"; const _RKW = "ReplaceKeyWith";
@@ -7474,6 +7789,7 @@ const _Rul = "Rules";
const _S = "Status"; const _S = "Status";
const _SA = "StartAfter"; const _SA = "StartAfter";
const _SAK = "SecretAccessKey"; const _SAK = "SecretAccessKey";
const _SAs = "SseAlgorithm";
const _SBD = "S3BucketDestination"; const _SBD = "S3BucketDestination";
const _SC = "StorageClass"; const _SC = "StorageClass";
const _SCA = "StorageClassAnalysis"; const _SCA = "StorageClassAnalysis";
@@ -7526,6 +7842,7 @@ const _TA = "TopicArn";
const _TAa = "TableArn"; const _TAa = "TableArn";
const _TB = "TargetBucket"; const _TB = "TargetBucket";
const _TBA = "TableBucketArn"; const _TBA = "TableBucketArn";
const _TBT = "TableBucketType";
const _TC = "TagCount"; const _TC = "TagCount";
const _TCo = "TopicConfiguration"; const _TCo = "TopicConfiguration";
const _TCop = "TopicConfigurations"; const _TCop = "TopicConfigurations";
@@ -7539,7 +7856,9 @@ const _TOKF = "TargetObjectKeyFormat";
const _TP = "TargetPrefix"; const _TP = "TargetPrefix";
const _TPC = "TotalPartsCount"; const _TPC = "TotalPartsCount";
const _TS = "TagSet"; const _TS = "TagSet";
const _TSA = "TableSseAlgorithm";
const _TSC = "TransitionStorageClass"; const _TSC = "TransitionStorageClass";
const _TSa = "TableStatus";
const _Ta = "Tag"; const _Ta = "Tag";
const _Tag = "Tags"; const _Tag = "Tags";
const _Ti = "Tier"; const _Ti = "Tier";
@@ -7607,6 +7926,9 @@ const _lo = "location";
const _log = "logging"; const _log = "logging";
const _lt = "list-type"; const _lt = "list-type";
const _m = "metrics"; const _m = "metrics";
const _mC = "metadataConfiguration";
const _mIT = "metadataInventoryTable";
const _mJT = "metadataJournalTable";
const _mT = "metadataTable"; const _mT = "metadataTable";
const _ma = "marker"; const _ma = "marker";
const _mb = "max-buckets"; const _mb = "max-buckets";
+35
View File
@@ -3,6 +3,7 @@ import { AbortMultipartUploadCommandInput, AbortMultipartUploadCommandOutput } f
import { CompleteMultipartUploadCommandInput, CompleteMultipartUploadCommandOutput } from "./commands/CompleteMultipartUploadCommand"; import { CompleteMultipartUploadCommandInput, CompleteMultipartUploadCommandOutput } from "./commands/CompleteMultipartUploadCommand";
import { CopyObjectCommandInput, CopyObjectCommandOutput } from "./commands/CopyObjectCommand"; import { CopyObjectCommandInput, CopyObjectCommandOutput } from "./commands/CopyObjectCommand";
import { CreateBucketCommandInput, CreateBucketCommandOutput } from "./commands/CreateBucketCommand"; import { CreateBucketCommandInput, CreateBucketCommandOutput } from "./commands/CreateBucketCommand";
import { CreateBucketMetadataConfigurationCommandInput, CreateBucketMetadataConfigurationCommandOutput } from "./commands/CreateBucketMetadataConfigurationCommand";
import { CreateBucketMetadataTableConfigurationCommandInput, CreateBucketMetadataTableConfigurationCommandOutput } from "./commands/CreateBucketMetadataTableConfigurationCommand"; import { CreateBucketMetadataTableConfigurationCommandInput, CreateBucketMetadataTableConfigurationCommandOutput } from "./commands/CreateBucketMetadataTableConfigurationCommand";
import { CreateMultipartUploadCommandInput, CreateMultipartUploadCommandOutput } from "./commands/CreateMultipartUploadCommand"; import { CreateMultipartUploadCommandInput, CreateMultipartUploadCommandOutput } from "./commands/CreateMultipartUploadCommand";
import { CreateSessionCommandInput, CreateSessionCommandOutput } from "./commands/CreateSessionCommand"; import { CreateSessionCommandInput, CreateSessionCommandOutput } from "./commands/CreateSessionCommand";
@@ -13,6 +14,7 @@ import { DeleteBucketEncryptionCommandInput, DeleteBucketEncryptionCommandOutput
import { DeleteBucketIntelligentTieringConfigurationCommandInput, DeleteBucketIntelligentTieringConfigurationCommandOutput } from "./commands/DeleteBucketIntelligentTieringConfigurationCommand"; import { DeleteBucketIntelligentTieringConfigurationCommandInput, DeleteBucketIntelligentTieringConfigurationCommandOutput } from "./commands/DeleteBucketIntelligentTieringConfigurationCommand";
import { DeleteBucketInventoryConfigurationCommandInput, DeleteBucketInventoryConfigurationCommandOutput } from "./commands/DeleteBucketInventoryConfigurationCommand"; import { DeleteBucketInventoryConfigurationCommandInput, DeleteBucketInventoryConfigurationCommandOutput } from "./commands/DeleteBucketInventoryConfigurationCommand";
import { DeleteBucketLifecycleCommandInput, DeleteBucketLifecycleCommandOutput } from "./commands/DeleteBucketLifecycleCommand"; import { DeleteBucketLifecycleCommandInput, DeleteBucketLifecycleCommandOutput } from "./commands/DeleteBucketLifecycleCommand";
import { DeleteBucketMetadataConfigurationCommandInput, DeleteBucketMetadataConfigurationCommandOutput } from "./commands/DeleteBucketMetadataConfigurationCommand";
import { DeleteBucketMetadataTableConfigurationCommandInput, DeleteBucketMetadataTableConfigurationCommandOutput } from "./commands/DeleteBucketMetadataTableConfigurationCommand"; import { DeleteBucketMetadataTableConfigurationCommandInput, DeleteBucketMetadataTableConfigurationCommandOutput } from "./commands/DeleteBucketMetadataTableConfigurationCommand";
import { DeleteBucketMetricsConfigurationCommandInput, DeleteBucketMetricsConfigurationCommandOutput } from "./commands/DeleteBucketMetricsConfigurationCommand"; import { DeleteBucketMetricsConfigurationCommandInput, DeleteBucketMetricsConfigurationCommandOutput } from "./commands/DeleteBucketMetricsConfigurationCommand";
import { DeleteBucketOwnershipControlsCommandInput, DeleteBucketOwnershipControlsCommandOutput } from "./commands/DeleteBucketOwnershipControlsCommand"; import { DeleteBucketOwnershipControlsCommandInput, DeleteBucketOwnershipControlsCommandOutput } from "./commands/DeleteBucketOwnershipControlsCommand";
@@ -34,6 +36,7 @@ import { GetBucketInventoryConfigurationCommandInput, GetBucketInventoryConfigur
import { GetBucketLifecycleConfigurationCommandInput, GetBucketLifecycleConfigurationCommandOutput } from "./commands/GetBucketLifecycleConfigurationCommand"; import { GetBucketLifecycleConfigurationCommandInput, GetBucketLifecycleConfigurationCommandOutput } from "./commands/GetBucketLifecycleConfigurationCommand";
import { GetBucketLocationCommandInput, GetBucketLocationCommandOutput } from "./commands/GetBucketLocationCommand"; import { GetBucketLocationCommandInput, GetBucketLocationCommandOutput } from "./commands/GetBucketLocationCommand";
import { GetBucketLoggingCommandInput, GetBucketLoggingCommandOutput } from "./commands/GetBucketLoggingCommand"; import { GetBucketLoggingCommandInput, GetBucketLoggingCommandOutput } from "./commands/GetBucketLoggingCommand";
import { GetBucketMetadataConfigurationCommandInput, GetBucketMetadataConfigurationCommandOutput } from "./commands/GetBucketMetadataConfigurationCommand";
import { GetBucketMetadataTableConfigurationCommandInput, GetBucketMetadataTableConfigurationCommandOutput } from "./commands/GetBucketMetadataTableConfigurationCommand"; import { GetBucketMetadataTableConfigurationCommandInput, GetBucketMetadataTableConfigurationCommandOutput } from "./commands/GetBucketMetadataTableConfigurationCommand";
import { GetBucketMetricsConfigurationCommandInput, GetBucketMetricsConfigurationCommandOutput } from "./commands/GetBucketMetricsConfigurationCommand"; import { GetBucketMetricsConfigurationCommandInput, GetBucketMetricsConfigurationCommandOutput } from "./commands/GetBucketMetricsConfigurationCommand";
import { GetBucketNotificationConfigurationCommandInput, GetBucketNotificationConfigurationCommandOutput } from "./commands/GetBucketNotificationConfigurationCommand"; import { GetBucketNotificationConfigurationCommandInput, GetBucketNotificationConfigurationCommandOutput } from "./commands/GetBucketNotificationConfigurationCommand";
@@ -95,6 +98,8 @@ import { PutPublicAccessBlockCommandInput, PutPublicAccessBlockCommandOutput } f
import { RenameObjectCommandInput, RenameObjectCommandOutput } from "./commands/RenameObjectCommand"; import { RenameObjectCommandInput, RenameObjectCommandOutput } from "./commands/RenameObjectCommand";
import { RestoreObjectCommandInput, RestoreObjectCommandOutput } from "./commands/RestoreObjectCommand"; import { RestoreObjectCommandInput, RestoreObjectCommandOutput } from "./commands/RestoreObjectCommand";
import { SelectObjectContentCommandInput, SelectObjectContentCommandOutput } from "./commands/SelectObjectContentCommand"; import { SelectObjectContentCommandInput, SelectObjectContentCommandOutput } from "./commands/SelectObjectContentCommand";
import { UpdateBucketMetadataInventoryTableConfigurationCommandInput, UpdateBucketMetadataInventoryTableConfigurationCommandOutput } from "./commands/UpdateBucketMetadataInventoryTableConfigurationCommand";
import { UpdateBucketMetadataJournalTableConfigurationCommandInput, UpdateBucketMetadataJournalTableConfigurationCommandOutput } from "./commands/UpdateBucketMetadataJournalTableConfigurationCommand";
import { UploadPartCommandInput, UploadPartCommandOutput } from "./commands/UploadPartCommand"; import { UploadPartCommandInput, UploadPartCommandOutput } from "./commands/UploadPartCommand";
import { UploadPartCopyCommandInput, UploadPartCopyCommandOutput } from "./commands/UploadPartCopyCommand"; import { UploadPartCopyCommandInput, UploadPartCopyCommandOutput } from "./commands/UploadPartCopyCommand";
import { WriteGetObjectResponseCommandInput, WriteGetObjectResponseCommandOutput } from "./commands/WriteGetObjectResponseCommand"; import { WriteGetObjectResponseCommandInput, WriteGetObjectResponseCommandOutput } from "./commands/WriteGetObjectResponseCommand";
@@ -124,6 +129,12 @@ export interface S3 {
createBucket(args: CreateBucketCommandInput, options?: __HttpHandlerOptions): Promise<CreateBucketCommandOutput>; createBucket(args: CreateBucketCommandInput, options?: __HttpHandlerOptions): Promise<CreateBucketCommandOutput>;
createBucket(args: CreateBucketCommandInput, cb: (err: any, data?: CreateBucketCommandOutput) => void): void; createBucket(args: CreateBucketCommandInput, cb: (err: any, data?: CreateBucketCommandOutput) => void): void;
createBucket(args: CreateBucketCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: CreateBucketCommandOutput) => void): void; createBucket(args: CreateBucketCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: CreateBucketCommandOutput) => void): void;
/**
* @see {@link CreateBucketMetadataConfigurationCommand}
*/
createBucketMetadataConfiguration(args: CreateBucketMetadataConfigurationCommandInput, options?: __HttpHandlerOptions): Promise<CreateBucketMetadataConfigurationCommandOutput>;
createBucketMetadataConfiguration(args: CreateBucketMetadataConfigurationCommandInput, cb: (err: any, data?: CreateBucketMetadataConfigurationCommandOutput) => void): void;
createBucketMetadataConfiguration(args: CreateBucketMetadataConfigurationCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: CreateBucketMetadataConfigurationCommandOutput) => void): void;
/** /**
* @see {@link CreateBucketMetadataTableConfigurationCommand} * @see {@link CreateBucketMetadataTableConfigurationCommand}
*/ */
@@ -184,6 +195,12 @@ export interface S3 {
deleteBucketLifecycle(args: DeleteBucketLifecycleCommandInput, options?: __HttpHandlerOptions): Promise<DeleteBucketLifecycleCommandOutput>; deleteBucketLifecycle(args: DeleteBucketLifecycleCommandInput, options?: __HttpHandlerOptions): Promise<DeleteBucketLifecycleCommandOutput>;
deleteBucketLifecycle(args: DeleteBucketLifecycleCommandInput, cb: (err: any, data?: DeleteBucketLifecycleCommandOutput) => void): void; deleteBucketLifecycle(args: DeleteBucketLifecycleCommandInput, cb: (err: any, data?: DeleteBucketLifecycleCommandOutput) => void): void;
deleteBucketLifecycle(args: DeleteBucketLifecycleCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: DeleteBucketLifecycleCommandOutput) => void): void; deleteBucketLifecycle(args: DeleteBucketLifecycleCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: DeleteBucketLifecycleCommandOutput) => void): void;
/**
* @see {@link DeleteBucketMetadataConfigurationCommand}
*/
deleteBucketMetadataConfiguration(args: DeleteBucketMetadataConfigurationCommandInput, options?: __HttpHandlerOptions): Promise<DeleteBucketMetadataConfigurationCommandOutput>;
deleteBucketMetadataConfiguration(args: DeleteBucketMetadataConfigurationCommandInput, cb: (err: any, data?: DeleteBucketMetadataConfigurationCommandOutput) => void): void;
deleteBucketMetadataConfiguration(args: DeleteBucketMetadataConfigurationCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: DeleteBucketMetadataConfigurationCommandOutput) => void): void;
/** /**
* @see {@link DeleteBucketMetadataTableConfigurationCommand} * @see {@link DeleteBucketMetadataTableConfigurationCommand}
*/ */
@@ -310,6 +327,12 @@ export interface S3 {
getBucketLogging(args: GetBucketLoggingCommandInput, options?: __HttpHandlerOptions): Promise<GetBucketLoggingCommandOutput>; getBucketLogging(args: GetBucketLoggingCommandInput, options?: __HttpHandlerOptions): Promise<GetBucketLoggingCommandOutput>;
getBucketLogging(args: GetBucketLoggingCommandInput, cb: (err: any, data?: GetBucketLoggingCommandOutput) => void): void; getBucketLogging(args: GetBucketLoggingCommandInput, cb: (err: any, data?: GetBucketLoggingCommandOutput) => void): void;
getBucketLogging(args: GetBucketLoggingCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetBucketLoggingCommandOutput) => void): void; getBucketLogging(args: GetBucketLoggingCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetBucketLoggingCommandOutput) => void): void;
/**
* @see {@link GetBucketMetadataConfigurationCommand}
*/
getBucketMetadataConfiguration(args: GetBucketMetadataConfigurationCommandInput, options?: __HttpHandlerOptions): Promise<GetBucketMetadataConfigurationCommandOutput>;
getBucketMetadataConfiguration(args: GetBucketMetadataConfigurationCommandInput, cb: (err: any, data?: GetBucketMetadataConfigurationCommandOutput) => void): void;
getBucketMetadataConfiguration(args: GetBucketMetadataConfigurationCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetBucketMetadataConfigurationCommandOutput) => void): void;
/** /**
* @see {@link GetBucketMetadataTableConfigurationCommand} * @see {@link GetBucketMetadataTableConfigurationCommand}
*/ */
@@ -678,6 +701,18 @@ export interface S3 {
selectObjectContent(args: SelectObjectContentCommandInput, options?: __HttpHandlerOptions): Promise<SelectObjectContentCommandOutput>; selectObjectContent(args: SelectObjectContentCommandInput, options?: __HttpHandlerOptions): Promise<SelectObjectContentCommandOutput>;
selectObjectContent(args: SelectObjectContentCommandInput, cb: (err: any, data?: SelectObjectContentCommandOutput) => void): void; selectObjectContent(args: SelectObjectContentCommandInput, cb: (err: any, data?: SelectObjectContentCommandOutput) => void): void;
selectObjectContent(args: SelectObjectContentCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: SelectObjectContentCommandOutput) => void): void; selectObjectContent(args: SelectObjectContentCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: SelectObjectContentCommandOutput) => void): void;
/**
* @see {@link UpdateBucketMetadataInventoryTableConfigurationCommand}
*/
updateBucketMetadataInventoryTableConfiguration(args: UpdateBucketMetadataInventoryTableConfigurationCommandInput, options?: __HttpHandlerOptions): Promise<UpdateBucketMetadataInventoryTableConfigurationCommandOutput>;
updateBucketMetadataInventoryTableConfiguration(args: UpdateBucketMetadataInventoryTableConfigurationCommandInput, cb: (err: any, data?: UpdateBucketMetadataInventoryTableConfigurationCommandOutput) => void): void;
updateBucketMetadataInventoryTableConfiguration(args: UpdateBucketMetadataInventoryTableConfigurationCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: UpdateBucketMetadataInventoryTableConfigurationCommandOutput) => void): void;
/**
* @see {@link UpdateBucketMetadataJournalTableConfigurationCommand}
*/
updateBucketMetadataJournalTableConfiguration(args: UpdateBucketMetadataJournalTableConfigurationCommandInput, options?: __HttpHandlerOptions): Promise<UpdateBucketMetadataJournalTableConfigurationCommandOutput>;
updateBucketMetadataJournalTableConfiguration(args: UpdateBucketMetadataJournalTableConfigurationCommandInput, cb: (err: any, data?: UpdateBucketMetadataJournalTableConfigurationCommandOutput) => void): void;
updateBucketMetadataJournalTableConfiguration(args: UpdateBucketMetadataJournalTableConfigurationCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: UpdateBucketMetadataJournalTableConfigurationCommandOutput) => void): void;
/** /**
* @see {@link UploadPartCommand} * @see {@link UploadPartCommand}
*/ */
@@ -16,6 +16,7 @@ import { AbortMultipartUploadCommandInput, AbortMultipartUploadCommandOutput } f
import { CompleteMultipartUploadCommandInput, CompleteMultipartUploadCommandOutput } from "./commands/CompleteMultipartUploadCommand"; import { CompleteMultipartUploadCommandInput, CompleteMultipartUploadCommandOutput } from "./commands/CompleteMultipartUploadCommand";
import { CopyObjectCommandInput, CopyObjectCommandOutput } from "./commands/CopyObjectCommand"; import { CopyObjectCommandInput, CopyObjectCommandOutput } from "./commands/CopyObjectCommand";
import { CreateBucketCommandInput, CreateBucketCommandOutput } from "./commands/CreateBucketCommand"; import { CreateBucketCommandInput, CreateBucketCommandOutput } from "./commands/CreateBucketCommand";
import { CreateBucketMetadataConfigurationCommandInput, CreateBucketMetadataConfigurationCommandOutput } from "./commands/CreateBucketMetadataConfigurationCommand";
import { CreateBucketMetadataTableConfigurationCommandInput, CreateBucketMetadataTableConfigurationCommandOutput } from "./commands/CreateBucketMetadataTableConfigurationCommand"; import { CreateBucketMetadataTableConfigurationCommandInput, CreateBucketMetadataTableConfigurationCommandOutput } from "./commands/CreateBucketMetadataTableConfigurationCommand";
import { CreateMultipartUploadCommandInput, CreateMultipartUploadCommandOutput } from "./commands/CreateMultipartUploadCommand"; import { CreateMultipartUploadCommandInput, CreateMultipartUploadCommandOutput } from "./commands/CreateMultipartUploadCommand";
import { CreateSessionCommandInput, CreateSessionCommandOutput } from "./commands/CreateSessionCommand"; import { CreateSessionCommandInput, CreateSessionCommandOutput } from "./commands/CreateSessionCommand";
@@ -26,6 +27,7 @@ import { DeleteBucketEncryptionCommandInput, DeleteBucketEncryptionCommandOutput
import { DeleteBucketIntelligentTieringConfigurationCommandInput, DeleteBucketIntelligentTieringConfigurationCommandOutput } from "./commands/DeleteBucketIntelligentTieringConfigurationCommand"; import { DeleteBucketIntelligentTieringConfigurationCommandInput, DeleteBucketIntelligentTieringConfigurationCommandOutput } from "./commands/DeleteBucketIntelligentTieringConfigurationCommand";
import { DeleteBucketInventoryConfigurationCommandInput, DeleteBucketInventoryConfigurationCommandOutput } from "./commands/DeleteBucketInventoryConfigurationCommand"; import { DeleteBucketInventoryConfigurationCommandInput, DeleteBucketInventoryConfigurationCommandOutput } from "./commands/DeleteBucketInventoryConfigurationCommand";
import { DeleteBucketLifecycleCommandInput, DeleteBucketLifecycleCommandOutput } from "./commands/DeleteBucketLifecycleCommand"; import { DeleteBucketLifecycleCommandInput, DeleteBucketLifecycleCommandOutput } from "./commands/DeleteBucketLifecycleCommand";
import { DeleteBucketMetadataConfigurationCommandInput, DeleteBucketMetadataConfigurationCommandOutput } from "./commands/DeleteBucketMetadataConfigurationCommand";
import { DeleteBucketMetadataTableConfigurationCommandInput, DeleteBucketMetadataTableConfigurationCommandOutput } from "./commands/DeleteBucketMetadataTableConfigurationCommand"; import { DeleteBucketMetadataTableConfigurationCommandInput, DeleteBucketMetadataTableConfigurationCommandOutput } from "./commands/DeleteBucketMetadataTableConfigurationCommand";
import { DeleteBucketMetricsConfigurationCommandInput, DeleteBucketMetricsConfigurationCommandOutput } from "./commands/DeleteBucketMetricsConfigurationCommand"; import { DeleteBucketMetricsConfigurationCommandInput, DeleteBucketMetricsConfigurationCommandOutput } from "./commands/DeleteBucketMetricsConfigurationCommand";
import { DeleteBucketOwnershipControlsCommandInput, DeleteBucketOwnershipControlsCommandOutput } from "./commands/DeleteBucketOwnershipControlsCommand"; import { DeleteBucketOwnershipControlsCommandInput, DeleteBucketOwnershipControlsCommandOutput } from "./commands/DeleteBucketOwnershipControlsCommand";
@@ -47,6 +49,7 @@ import { GetBucketInventoryConfigurationCommandInput, GetBucketInventoryConfigur
import { GetBucketLifecycleConfigurationCommandInput, GetBucketLifecycleConfigurationCommandOutput } from "./commands/GetBucketLifecycleConfigurationCommand"; import { GetBucketLifecycleConfigurationCommandInput, GetBucketLifecycleConfigurationCommandOutput } from "./commands/GetBucketLifecycleConfigurationCommand";
import { GetBucketLocationCommandInput, GetBucketLocationCommandOutput } from "./commands/GetBucketLocationCommand"; import { GetBucketLocationCommandInput, GetBucketLocationCommandOutput } from "./commands/GetBucketLocationCommand";
import { GetBucketLoggingCommandInput, GetBucketLoggingCommandOutput } from "./commands/GetBucketLoggingCommand"; import { GetBucketLoggingCommandInput, GetBucketLoggingCommandOutput } from "./commands/GetBucketLoggingCommand";
import { GetBucketMetadataConfigurationCommandInput, GetBucketMetadataConfigurationCommandOutput } from "./commands/GetBucketMetadataConfigurationCommand";
import { GetBucketMetadataTableConfigurationCommandInput, GetBucketMetadataTableConfigurationCommandOutput } from "./commands/GetBucketMetadataTableConfigurationCommand"; import { GetBucketMetadataTableConfigurationCommandInput, GetBucketMetadataTableConfigurationCommandOutput } from "./commands/GetBucketMetadataTableConfigurationCommand";
import { GetBucketMetricsConfigurationCommandInput, GetBucketMetricsConfigurationCommandOutput } from "./commands/GetBucketMetricsConfigurationCommand"; import { GetBucketMetricsConfigurationCommandInput, GetBucketMetricsConfigurationCommandOutput } from "./commands/GetBucketMetricsConfigurationCommand";
import { GetBucketNotificationConfigurationCommandInput, GetBucketNotificationConfigurationCommandOutput } from "./commands/GetBucketNotificationConfigurationCommand"; import { GetBucketNotificationConfigurationCommandInput, GetBucketNotificationConfigurationCommandOutput } from "./commands/GetBucketNotificationConfigurationCommand";
@@ -108,6 +111,8 @@ import { PutPublicAccessBlockCommandInput, PutPublicAccessBlockCommandOutput } f
import { RenameObjectCommandInput, RenameObjectCommandOutput } from "./commands/RenameObjectCommand"; import { RenameObjectCommandInput, RenameObjectCommandOutput } from "./commands/RenameObjectCommand";
import { RestoreObjectCommandInput, RestoreObjectCommandOutput } from "./commands/RestoreObjectCommand"; import { RestoreObjectCommandInput, RestoreObjectCommandOutput } from "./commands/RestoreObjectCommand";
import { SelectObjectContentCommandInput, SelectObjectContentCommandOutput } from "./commands/SelectObjectContentCommand"; import { SelectObjectContentCommandInput, SelectObjectContentCommandOutput } from "./commands/SelectObjectContentCommand";
import { UpdateBucketMetadataInventoryTableConfigurationCommandInput, UpdateBucketMetadataInventoryTableConfigurationCommandOutput } from "./commands/UpdateBucketMetadataInventoryTableConfigurationCommand";
import { UpdateBucketMetadataJournalTableConfigurationCommandInput, UpdateBucketMetadataJournalTableConfigurationCommandOutput } from "./commands/UpdateBucketMetadataJournalTableConfigurationCommand";
import { UploadPartCommandInput, UploadPartCommandOutput } from "./commands/UploadPartCommand"; import { UploadPartCommandInput, UploadPartCommandOutput } from "./commands/UploadPartCommand";
import { UploadPartCopyCommandInput, UploadPartCopyCommandOutput } from "./commands/UploadPartCopyCommand"; import { UploadPartCopyCommandInput, UploadPartCopyCommandOutput } from "./commands/UploadPartCopyCommand";
import { WriteGetObjectResponseCommandInput, WriteGetObjectResponseCommandOutput } from "./commands/WriteGetObjectResponseCommand"; import { WriteGetObjectResponseCommandInput, WriteGetObjectResponseCommandOutput } from "./commands/WriteGetObjectResponseCommand";
@@ -117,11 +122,11 @@ export { __Client };
/** /**
* @public * @public
*/ */
export type ServiceInputTypes = AbortMultipartUploadCommandInput | CompleteMultipartUploadCommandInput | CopyObjectCommandInput | CreateBucketCommandInput | CreateBucketMetadataTableConfigurationCommandInput | CreateMultipartUploadCommandInput | CreateSessionCommandInput | DeleteBucketAnalyticsConfigurationCommandInput | DeleteBucketCommandInput | DeleteBucketCorsCommandInput | DeleteBucketEncryptionCommandInput | DeleteBucketIntelligentTieringConfigurationCommandInput | DeleteBucketInventoryConfigurationCommandInput | DeleteBucketLifecycleCommandInput | DeleteBucketMetadataTableConfigurationCommandInput | DeleteBucketMetricsConfigurationCommandInput | DeleteBucketOwnershipControlsCommandInput | DeleteBucketPolicyCommandInput | DeleteBucketReplicationCommandInput | DeleteBucketTaggingCommandInput | DeleteBucketWebsiteCommandInput | DeleteObjectCommandInput | DeleteObjectTaggingCommandInput | DeleteObjectsCommandInput | DeletePublicAccessBlockCommandInput | GetBucketAccelerateConfigurationCommandInput | GetBucketAclCommandInput | GetBucketAnalyticsConfigurationCommandInput | GetBucketCorsCommandInput | GetBucketEncryptionCommandInput | GetBucketIntelligentTieringConfigurationCommandInput | GetBucketInventoryConfigurationCommandInput | GetBucketLifecycleConfigurationCommandInput | GetBucketLocationCommandInput | GetBucketLoggingCommandInput | GetBucketMetadataTableConfigurationCommandInput | GetBucketMetricsConfigurationCommandInput | GetBucketNotificationConfigurationCommandInput | GetBucketOwnershipControlsCommandInput | GetBucketPolicyCommandInput | GetBucketPolicyStatusCommandInput | GetBucketReplicationCommandInput | GetBucketRequestPaymentCommandInput | GetBucketTaggingCommandInput | GetBucketVersioningCommandInput | GetBucketWebsiteCommandInput | GetObjectAclCommandInput | GetObjectAttributesCommandInput | GetObjectCommandInput | GetObjectLegalHoldCommandInput | GetObjectLockConfigurationCommandInput | GetObjectRetentionCommandInput | GetObjectTaggingCommandInput | GetObjectTorrentCommandInput | GetPublicAccessBlockCommandInput | HeadBucketCommandInput | HeadObjectCommandInput | ListBucketAnalyticsConfigurationsCommandInput | ListBucketIntelligentTieringConfigurationsCommandInput | ListBucketInventoryConfigurationsCommandInput | ListBucketMetricsConfigurationsCommandInput | ListBucketsCommandInput | ListDirectoryBucketsCommandInput | ListMultipartUploadsCommandInput | ListObjectVersionsCommandInput | ListObjectsCommandInput | ListObjectsV2CommandInput | ListPartsCommandInput | PutBucketAccelerateConfigurationCommandInput | PutBucketAclCommandInput | PutBucketAnalyticsConfigurationCommandInput | PutBucketCorsCommandInput | PutBucketEncryptionCommandInput | PutBucketIntelligentTieringConfigurationCommandInput | PutBucketInventoryConfigurationCommandInput | PutBucketLifecycleConfigurationCommandInput | PutBucketLoggingCommandInput | PutBucketMetricsConfigurationCommandInput | PutBucketNotificationConfigurationCommandInput | PutBucketOwnershipControlsCommandInput | PutBucketPolicyCommandInput | PutBucketReplicationCommandInput | PutBucketRequestPaymentCommandInput | PutBucketTaggingCommandInput | PutBucketVersioningCommandInput | PutBucketWebsiteCommandInput | PutObjectAclCommandInput | PutObjectCommandInput | PutObjectLegalHoldCommandInput | PutObjectLockConfigurationCommandInput | PutObjectRetentionCommandInput | PutObjectTaggingCommandInput | PutPublicAccessBlockCommandInput | RenameObjectCommandInput | RestoreObjectCommandInput | SelectObjectContentCommandInput | UploadPartCommandInput | UploadPartCopyCommandInput | WriteGetObjectResponseCommandInput; export type ServiceInputTypes = AbortMultipartUploadCommandInput | CompleteMultipartUploadCommandInput | CopyObjectCommandInput | CreateBucketCommandInput | CreateBucketMetadataConfigurationCommandInput | CreateBucketMetadataTableConfigurationCommandInput | CreateMultipartUploadCommandInput | CreateSessionCommandInput | DeleteBucketAnalyticsConfigurationCommandInput | DeleteBucketCommandInput | DeleteBucketCorsCommandInput | DeleteBucketEncryptionCommandInput | DeleteBucketIntelligentTieringConfigurationCommandInput | DeleteBucketInventoryConfigurationCommandInput | DeleteBucketLifecycleCommandInput | DeleteBucketMetadataConfigurationCommandInput | DeleteBucketMetadataTableConfigurationCommandInput | DeleteBucketMetricsConfigurationCommandInput | DeleteBucketOwnershipControlsCommandInput | DeleteBucketPolicyCommandInput | DeleteBucketReplicationCommandInput | DeleteBucketTaggingCommandInput | DeleteBucketWebsiteCommandInput | DeleteObjectCommandInput | DeleteObjectTaggingCommandInput | DeleteObjectsCommandInput | DeletePublicAccessBlockCommandInput | GetBucketAccelerateConfigurationCommandInput | GetBucketAclCommandInput | GetBucketAnalyticsConfigurationCommandInput | GetBucketCorsCommandInput | GetBucketEncryptionCommandInput | GetBucketIntelligentTieringConfigurationCommandInput | GetBucketInventoryConfigurationCommandInput | GetBucketLifecycleConfigurationCommandInput | GetBucketLocationCommandInput | GetBucketLoggingCommandInput | GetBucketMetadataConfigurationCommandInput | GetBucketMetadataTableConfigurationCommandInput | GetBucketMetricsConfigurationCommandInput | GetBucketNotificationConfigurationCommandInput | GetBucketOwnershipControlsCommandInput | GetBucketPolicyCommandInput | GetBucketPolicyStatusCommandInput | GetBucketReplicationCommandInput | GetBucketRequestPaymentCommandInput | GetBucketTaggingCommandInput | GetBucketVersioningCommandInput | GetBucketWebsiteCommandInput | GetObjectAclCommandInput | GetObjectAttributesCommandInput | GetObjectCommandInput | GetObjectLegalHoldCommandInput | GetObjectLockConfigurationCommandInput | GetObjectRetentionCommandInput | GetObjectTaggingCommandInput | GetObjectTorrentCommandInput | GetPublicAccessBlockCommandInput | HeadBucketCommandInput | HeadObjectCommandInput | ListBucketAnalyticsConfigurationsCommandInput | ListBucketIntelligentTieringConfigurationsCommandInput | ListBucketInventoryConfigurationsCommandInput | ListBucketMetricsConfigurationsCommandInput | ListBucketsCommandInput | ListDirectoryBucketsCommandInput | ListMultipartUploadsCommandInput | ListObjectVersionsCommandInput | ListObjectsCommandInput | ListObjectsV2CommandInput | ListPartsCommandInput | PutBucketAccelerateConfigurationCommandInput | PutBucketAclCommandInput | PutBucketAnalyticsConfigurationCommandInput | PutBucketCorsCommandInput | PutBucketEncryptionCommandInput | PutBucketIntelligentTieringConfigurationCommandInput | PutBucketInventoryConfigurationCommandInput | PutBucketLifecycleConfigurationCommandInput | PutBucketLoggingCommandInput | PutBucketMetricsConfigurationCommandInput | PutBucketNotificationConfigurationCommandInput | PutBucketOwnershipControlsCommandInput | PutBucketPolicyCommandInput | PutBucketReplicationCommandInput | PutBucketRequestPaymentCommandInput | PutBucketTaggingCommandInput | PutBucketVersioningCommandInput | PutBucketWebsiteCommandInput | PutObjectAclCommandInput | PutObjectCommandInput | PutObjectLegalHoldCommandInput | PutObjectLockConfigurationCommandInput | PutObjectRetentionCommandInput | PutObjectTaggingCommandInput | PutPublicAccessBlockCommandInput | RenameObjectCommandInput | RestoreObjectCommandInput | SelectObjectContentCommandInput | UpdateBucketMetadataInventoryTableConfigurationCommandInput | UpdateBucketMetadataJournalTableConfigurationCommandInput | UploadPartCommandInput | UploadPartCopyCommandInput | WriteGetObjectResponseCommandInput;
/** /**
* @public * @public
*/ */
export type ServiceOutputTypes = AbortMultipartUploadCommandOutput | CompleteMultipartUploadCommandOutput | CopyObjectCommandOutput | CreateBucketCommandOutput | CreateBucketMetadataTableConfigurationCommandOutput | CreateMultipartUploadCommandOutput | CreateSessionCommandOutput | DeleteBucketAnalyticsConfigurationCommandOutput | DeleteBucketCommandOutput | DeleteBucketCorsCommandOutput | DeleteBucketEncryptionCommandOutput | DeleteBucketIntelligentTieringConfigurationCommandOutput | DeleteBucketInventoryConfigurationCommandOutput | DeleteBucketLifecycleCommandOutput | DeleteBucketMetadataTableConfigurationCommandOutput | DeleteBucketMetricsConfigurationCommandOutput | DeleteBucketOwnershipControlsCommandOutput | DeleteBucketPolicyCommandOutput | DeleteBucketReplicationCommandOutput | DeleteBucketTaggingCommandOutput | DeleteBucketWebsiteCommandOutput | DeleteObjectCommandOutput | DeleteObjectTaggingCommandOutput | DeleteObjectsCommandOutput | DeletePublicAccessBlockCommandOutput | GetBucketAccelerateConfigurationCommandOutput | GetBucketAclCommandOutput | GetBucketAnalyticsConfigurationCommandOutput | GetBucketCorsCommandOutput | GetBucketEncryptionCommandOutput | GetBucketIntelligentTieringConfigurationCommandOutput | GetBucketInventoryConfigurationCommandOutput | GetBucketLifecycleConfigurationCommandOutput | GetBucketLocationCommandOutput | GetBucketLoggingCommandOutput | GetBucketMetadataTableConfigurationCommandOutput | GetBucketMetricsConfigurationCommandOutput | GetBucketNotificationConfigurationCommandOutput | GetBucketOwnershipControlsCommandOutput | GetBucketPolicyCommandOutput | GetBucketPolicyStatusCommandOutput | GetBucketReplicationCommandOutput | GetBucketRequestPaymentCommandOutput | GetBucketTaggingCommandOutput | GetBucketVersioningCommandOutput | GetBucketWebsiteCommandOutput | GetObjectAclCommandOutput | GetObjectAttributesCommandOutput | GetObjectCommandOutput | GetObjectLegalHoldCommandOutput | GetObjectLockConfigurationCommandOutput | GetObjectRetentionCommandOutput | GetObjectTaggingCommandOutput | GetObjectTorrentCommandOutput | GetPublicAccessBlockCommandOutput | HeadBucketCommandOutput | HeadObjectCommandOutput | ListBucketAnalyticsConfigurationsCommandOutput | ListBucketIntelligentTieringConfigurationsCommandOutput | ListBucketInventoryConfigurationsCommandOutput | ListBucketMetricsConfigurationsCommandOutput | ListBucketsCommandOutput | ListDirectoryBucketsCommandOutput | ListMultipartUploadsCommandOutput | ListObjectVersionsCommandOutput | ListObjectsCommandOutput | ListObjectsV2CommandOutput | ListPartsCommandOutput | PutBucketAccelerateConfigurationCommandOutput | PutBucketAclCommandOutput | PutBucketAnalyticsConfigurationCommandOutput | PutBucketCorsCommandOutput | PutBucketEncryptionCommandOutput | PutBucketIntelligentTieringConfigurationCommandOutput | PutBucketInventoryConfigurationCommandOutput | PutBucketLifecycleConfigurationCommandOutput | PutBucketLoggingCommandOutput | PutBucketMetricsConfigurationCommandOutput | PutBucketNotificationConfigurationCommandOutput | PutBucketOwnershipControlsCommandOutput | PutBucketPolicyCommandOutput | PutBucketReplicationCommandOutput | PutBucketRequestPaymentCommandOutput | PutBucketTaggingCommandOutput | PutBucketVersioningCommandOutput | PutBucketWebsiteCommandOutput | PutObjectAclCommandOutput | PutObjectCommandOutput | PutObjectLegalHoldCommandOutput | PutObjectLockConfigurationCommandOutput | PutObjectRetentionCommandOutput | PutObjectTaggingCommandOutput | PutPublicAccessBlockCommandOutput | RenameObjectCommandOutput | RestoreObjectCommandOutput | SelectObjectContentCommandOutput | UploadPartCommandOutput | UploadPartCopyCommandOutput | WriteGetObjectResponseCommandOutput; export type ServiceOutputTypes = AbortMultipartUploadCommandOutput | CompleteMultipartUploadCommandOutput | CopyObjectCommandOutput | CreateBucketCommandOutput | CreateBucketMetadataConfigurationCommandOutput | CreateBucketMetadataTableConfigurationCommandOutput | CreateMultipartUploadCommandOutput | CreateSessionCommandOutput | DeleteBucketAnalyticsConfigurationCommandOutput | DeleteBucketCommandOutput | DeleteBucketCorsCommandOutput | DeleteBucketEncryptionCommandOutput | DeleteBucketIntelligentTieringConfigurationCommandOutput | DeleteBucketInventoryConfigurationCommandOutput | DeleteBucketLifecycleCommandOutput | DeleteBucketMetadataConfigurationCommandOutput | DeleteBucketMetadataTableConfigurationCommandOutput | DeleteBucketMetricsConfigurationCommandOutput | DeleteBucketOwnershipControlsCommandOutput | DeleteBucketPolicyCommandOutput | DeleteBucketReplicationCommandOutput | DeleteBucketTaggingCommandOutput | DeleteBucketWebsiteCommandOutput | DeleteObjectCommandOutput | DeleteObjectTaggingCommandOutput | DeleteObjectsCommandOutput | DeletePublicAccessBlockCommandOutput | GetBucketAccelerateConfigurationCommandOutput | GetBucketAclCommandOutput | GetBucketAnalyticsConfigurationCommandOutput | GetBucketCorsCommandOutput | GetBucketEncryptionCommandOutput | GetBucketIntelligentTieringConfigurationCommandOutput | GetBucketInventoryConfigurationCommandOutput | GetBucketLifecycleConfigurationCommandOutput | GetBucketLocationCommandOutput | GetBucketLoggingCommandOutput | GetBucketMetadataConfigurationCommandOutput | GetBucketMetadataTableConfigurationCommandOutput | GetBucketMetricsConfigurationCommandOutput | GetBucketNotificationConfigurationCommandOutput | GetBucketOwnershipControlsCommandOutput | GetBucketPolicyCommandOutput | GetBucketPolicyStatusCommandOutput | GetBucketReplicationCommandOutput | GetBucketRequestPaymentCommandOutput | GetBucketTaggingCommandOutput | GetBucketVersioningCommandOutput | GetBucketWebsiteCommandOutput | GetObjectAclCommandOutput | GetObjectAttributesCommandOutput | GetObjectCommandOutput | GetObjectLegalHoldCommandOutput | GetObjectLockConfigurationCommandOutput | GetObjectRetentionCommandOutput | GetObjectTaggingCommandOutput | GetObjectTorrentCommandOutput | GetPublicAccessBlockCommandOutput | HeadBucketCommandOutput | HeadObjectCommandOutput | ListBucketAnalyticsConfigurationsCommandOutput | ListBucketIntelligentTieringConfigurationsCommandOutput | ListBucketInventoryConfigurationsCommandOutput | ListBucketMetricsConfigurationsCommandOutput | ListBucketsCommandOutput | ListDirectoryBucketsCommandOutput | ListMultipartUploadsCommandOutput | ListObjectVersionsCommandOutput | ListObjectsCommandOutput | ListObjectsV2CommandOutput | ListPartsCommandOutput | PutBucketAccelerateConfigurationCommandOutput | PutBucketAclCommandOutput | PutBucketAnalyticsConfigurationCommandOutput | PutBucketCorsCommandOutput | PutBucketEncryptionCommandOutput | PutBucketIntelligentTieringConfigurationCommandOutput | PutBucketInventoryConfigurationCommandOutput | PutBucketLifecycleConfigurationCommandOutput | PutBucketLoggingCommandOutput | PutBucketMetricsConfigurationCommandOutput | PutBucketNotificationConfigurationCommandOutput | PutBucketOwnershipControlsCommandOutput | PutBucketPolicyCommandOutput | PutBucketReplicationCommandOutput | PutBucketRequestPaymentCommandOutput | PutBucketTaggingCommandOutput | PutBucketVersioningCommandOutput | PutBucketWebsiteCommandOutput | PutObjectAclCommandOutput | PutObjectCommandOutput | PutObjectLegalHoldCommandOutput | PutObjectLockConfigurationCommandOutput | PutObjectRetentionCommandOutput | PutObjectTaggingCommandOutput | PutPublicAccessBlockCommandOutput | RenameObjectCommandOutput | RestoreObjectCommandOutput | SelectObjectContentCommandOutput | UpdateBucketMetadataInventoryTableConfigurationCommandOutput | UpdateBucketMetadataJournalTableConfigurationCommandOutput | UploadPartCommandOutput | UploadPartCopyCommandOutput | WriteGetObjectResponseCommandOutput;
/** /**
* @public * @public
*/ */
@@ -27,31 +27,27 @@ declare const AbortMultipartUploadCommand_base: {
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
}; };
/** /**
* <p>This operation aborts a multipart upload. After a multipart upload is aborted, no * <p>This operation aborts a multipart upload. After a multipart upload is aborted, no additional parts
* additional parts can be uploaded using that upload ID. The storage consumed by any * can be uploaded using that upload ID. The storage consumed by any previously uploaded parts will be
* previously uploaded parts will be freed. However, if any part uploads are currently in * freed. However, if any part uploads are currently in progress, those part uploads might or might not
* progress, those part uploads might or might not succeed. As a result, it might be necessary * succeed. As a result, it might be necessary to abort a given multipart upload multiple times in order to
* to abort a given multipart upload multiple times in order to completely free all storage * completely free all storage consumed by all parts. </p>
* consumed by all parts. </p> * <p>To verify that all parts have been removed and prevent getting charged for the part storage, you
* <p>To verify that all parts have been removed and prevent getting charged for the part * should call the <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a> API operation and ensure that the parts list is empty.</p>
* storage, you should call the <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a> API operation and ensure
* that the parts list is empty.</p>
* <note> * <note>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>Directory buckets</b> - If multipart * <b>Directory buckets</b> - If multipart uploads in a
* uploads in a directory bucket are in progress, you can't delete the bucket until * directory bucket are in progress, you can't delete the bucket until all the in-progress multipart
* all the in-progress multipart uploads are aborted or completed. To delete these * uploads are aborted or completed. To delete these in-progress multipart uploads, use the
* in-progress multipart uploads, use the <code>ListMultipartUploads</code> operation * <code>ListMultipartUploads</code> operation to list the in-progress multipart uploads in the
* to list the in-progress multipart uploads in the bucket and use the * bucket and use the <code>AbortMultipartUpload</code> operation to abort all the in-progress
* <code>AbortMultipartUpload</code> operation to abort all the in-progress * multipart uploads. </p>
* multipart uploads. </p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory buckets</b> - * <b>Directory buckets</b> - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format <code>https://<i>amzn-s3-demo-bucket</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com/<i>key-name</i>
* For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format <code>https://<i>amzn-s3-demo-bucket</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com/<i>key-name</i>
* </code>. Path-style requests are not supported. For more information about endpoints in Availability Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html">Regional and Zonal endpoints for directory buckets in Availability Zones</a> in the * </code>. Path-style requests are not supported. For more information about endpoints in Availability Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html">Regional and Zonal endpoints for directory buckets in Availability Zones</a> in the
* <i>Amazon S3 User Guide</i>. For more information about endpoints in Local Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html">Concepts for directory buckets in Local Zones</a> in the * <i>Amazon S3 User Guide</i>. For more information about endpoints in Local Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html">Concepts for directory buckets in Local Zones</a> in the
* <i>Amazon S3 User Guide</i>.</p> * <i>Amazon S3 User Guide</i>.</p>
@@ -64,10 +60,9 @@ declare const AbortMultipartUploadCommand_base: {
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - For * <b>General purpose bucket permissions</b> - For information
* information about permissions required to use the multipart upload, see * about permissions required to use the multipart upload, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart Upload and Permissions</a> in
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart Upload and * the <i>Amazon S3 User Guide</i>.</p>
* Permissions</a> in the <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
@@ -28,45 +28,39 @@ declare const CompleteMultipartUploadCommand_base: {
}; };
/** /**
* <p>Completes a multipart upload by assembling previously uploaded parts.</p> * <p>Completes a multipart upload by assembling previously uploaded parts.</p>
* <p>You first initiate the multipart upload and then upload all parts using the <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> * <p>You first initiate the multipart upload and then upload all parts using the <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> operation or the
* operation or the <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a> operation. * <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>
* After successfully uploading all relevant parts of an upload, you call this * operation. After successfully uploading all relevant parts of an upload, you call this
* <code>CompleteMultipartUpload</code> operation to complete the upload. Upon receiving * <code>CompleteMultipartUpload</code> operation to complete the upload. Upon receiving this request,
* this request, Amazon S3 concatenates all the parts in ascending order by part number to create a * Amazon S3 concatenates all the parts in ascending order by part number to create a new object. In the
* new object. In the CompleteMultipartUpload request, you must provide the parts list and * CompleteMultipartUpload request, you must provide the parts list and ensure that the parts list is
* ensure that the parts list is complete. The CompleteMultipartUpload API operation * complete. The CompleteMultipartUpload API operation concatenates the parts that you provide in the list.
* concatenates the parts that you provide in the list. For each part in the list, you must * For each part in the list, you must provide the <code>PartNumber</code> value and the <code>ETag</code>
* provide the <code>PartNumber</code> value and the <code>ETag</code> value that are returned * value that are returned after that part was uploaded.</p>
* after that part was uploaded.</p> * <p>The processing of a CompleteMultipartUpload request could take several minutes to finalize. After
* <p>The processing of a CompleteMultipartUpload request could take several minutes to * Amazon S3 begins processing the request, it sends an HTTP response header that specifies a <code>200
* finalize. After Amazon S3 begins processing the request, it sends an HTTP response header that * OK</code> response. While processing is in progress, Amazon S3 periodically sends white space characters to
* specifies a <code>200 OK</code> response. While processing is in progress, Amazon S3 * keep the connection from timing out. A request could fail after the initial <code>200 OK</code> response
* periodically sends white space characters to keep the connection from timing out. A request * has been sent. This means that a <code>200 OK</code> response can contain either a success or an error.
* could fail after the initial <code>200 OK</code> response has been sent. This means that a * The error response might be embedded in the <code>200 OK</code> response. If you call this API operation
* <code>200 OK</code> response can contain either a success or an error. The error * directly, make sure to design your application to parse the contents of the response and handle it
* response might be embedded in the <code>200 OK</code> response. If you call this API * appropriately. If you use Amazon Web Services SDKs, SDKs handle this condition. The SDKs detect the embedded error and
* operation directly, make sure to design your application to parse the contents of the * apply error handling per your configuration settings (including automatically retrying the request as
* response and handle it appropriately. If you use Amazon Web Services SDKs, SDKs handle this condition. * appropriate). If the condition persists, the SDKs throw an exception (or, for the SDKs that don't use
* The SDKs detect the embedded error and apply error handling per your configuration settings * exceptions, they return an error). </p>
* (including automatically retrying the request as appropriate). If the condition persists, * <p>Note that if <code>CompleteMultipartUpload</code> fails, applications should be prepared to retry
* the SDKs throw an exception (or, for the SDKs that don't use exceptions, they return an * any failed requests (including 500 error responses). For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ErrorBestPractices.html">Amazon S3 Error Best
* error). </p> * Practices</a>.</p>
* <p>Note that if <code>CompleteMultipartUpload</code> fails, applications should be prepared
* to retry any failed requests (including 500 error responses). For more information, see
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ErrorBestPractices.html">Amazon S3 Error
* Best Practices</a>.</p>
* <important> * <important>
* <p>You can't use <code>Content-Type: application/x-www-form-urlencoded</code> for the * <p>You can't use <code>Content-Type: application/x-www-form-urlencoded</code> for the
* CompleteMultipartUpload requests. Also, if you don't provide a <code>Content-Type</code> * CompleteMultipartUpload requests. Also, if you don't provide a <code>Content-Type</code> header,
* header, <code>CompleteMultipartUpload</code> can still return a <code>200 OK</code> * <code>CompleteMultipartUpload</code> can still return a <code>200 OK</code> response.</p>
* response.</p>
* </important> * </important>
* <p>For more information about multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html">Uploading Objects Using Multipart * <p>For more information about multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html">Uploading Objects Using Multipart Upload</a> in
* Upload</a> in the <i>Amazon S3 User Guide</i>.</p> * the <i>Amazon S3 User Guide</i>.</p>
* <note> * <note>
* <p> * <p>
* <b>Directory buckets</b> - * <b>Directory buckets</b> - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format <code>https://<i>amzn-s3-demo-bucket</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com/<i>key-name</i>
* For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format <code>https://<i>amzn-s3-demo-bucket</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com/<i>key-name</i>
* </code>. Path-style requests are not supported. For more information about endpoints in Availability Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html">Regional and Zonal endpoints for directory buckets in Availability Zones</a> in the * </code>. Path-style requests are not supported. For more information about endpoints in Availability Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html">Regional and Zonal endpoints for directory buckets in Availability Zones</a> in the
* <i>Amazon S3 User Guide</i>. For more information about endpoints in Local Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html">Concepts for directory buckets in Local Zones</a> in the * <i>Amazon S3 User Guide</i>. For more information about endpoints in Local Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html">Concepts for directory buckets in Local Zones</a> in the
* <i>Amazon S3 User Guide</i>.</p> * <i>Amazon S3 User Guide</i>.</p>
@@ -77,15 +71,13 @@ declare const CompleteMultipartUploadCommand_base: {
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - For * <b>General purpose bucket permissions</b> - For information
* information about permissions required to use the multipart upload API, see * about permissions required to use the multipart upload API, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart Upload and Permissions</a> in
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart Upload and * the <i>Amazon S3 User Guide</i>.</p>
* Permissions</a> in the <i>Amazon S3 User Guide</i>.</p> * <p>If you provide an <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html">additional checksum value</a> in your <code>MultipartUpload</code> requests and the
* <p>If you provide an <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html">additional checksum * object is encrypted with Key Management Service, you must have permission to use the
* value</a> in your <code>MultipartUpload</code> requests and the * <code>kms:Decrypt</code> action for the <code>CompleteMultipartUpload</code> request to
* object is encrypted with Key Management Service, you must have permission to use the * succeed.</p>
* <code>kms:Decrypt</code> action for the
* <code>CompleteMultipartUpload</code> request to succeed.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
@@ -96,9 +88,8 @@ declare const CompleteMultipartUploadCommand_base: {
* <code>CreateSession</code> * <code>CreateSession</code>
* </a>.</p> * </a>.</p>
* <p>If the object is encrypted with SSE-KMS, you must also have the * <p>If the object is encrypted with SSE-KMS, you must also have the
* <code>kms:GenerateDataKey</code> and <code>kms:Decrypt</code> permissions * <code>kms:GenerateDataKey</code> and <code>kms:Decrypt</code> permissions in IAM
* in IAM identity-based policies and KMS key policies for the KMS * identity-based policies and KMS key policies for the KMS key.</p>
* key.</p>
* </li> * </li>
* </ul> * </ul>
* </dd> * </dd>
@@ -110,9 +101,8 @@ declare const CompleteMultipartUploadCommand_base: {
* </p> * </p>
* <ul> * <ul>
* <li> * <li>
* <p>Description: Your proposed upload is smaller than the minimum * <p>Description: Your proposed upload is smaller than the minimum allowed object size.
* allowed object size. Each part must be at least 5 MB in size, except * Each part must be at least 5 MB in size, except the last part.</p>
* the last part.</p>
* </li> * </li>
* <li> * <li>
* <p>HTTP Status Code: 400 Bad Request</p> * <p>HTTP Status Code: 400 Bad Request</p>
@@ -124,9 +114,9 @@ declare const CompleteMultipartUploadCommand_base: {
* </p> * </p>
* <ul> * <ul>
* <li> * <li>
* <p>Description: One or more of the specified parts could not be found. * <p>Description: One or more of the specified parts could not be found. The part might not
* The part might not have been uploaded, or the specified ETag might not * have been uploaded, or the specified ETag might not have matched the uploaded part's
* have matched the uploaded part's ETag.</p> * ETag.</p>
* </li> * </li>
* <li> * <li>
* <p>HTTP Status Code: 400 Bad Request</p> * <p>HTTP Status Code: 400 Bad Request</p>
@@ -138,8 +128,8 @@ declare const CompleteMultipartUploadCommand_base: {
* </p> * </p>
* <ul> * <ul>
* <li> * <li>
* <p>Description: The list of parts was not in ascending order. The * <p>Description: The list of parts was not in ascending order. The parts list must be
* parts list must be specified in order by part number.</p> * specified in order by part number.</p>
* </li> * </li>
* <li> * <li>
* <p>HTTP Status Code: 400 Bad Request</p> * <p>HTTP Status Code: 400 Bad Request</p>
@@ -151,9 +141,8 @@ declare const CompleteMultipartUploadCommand_base: {
* </p> * </p>
* <ul> * <ul>
* <li> * <li>
* <p>Description: The specified multipart upload does not exist. The * <p>Description: The specified multipart upload does not exist. The upload ID might be
* upload ID might be invalid, or the multipart upload might have been * invalid, or the multipart upload might have been aborted or completed.</p>
* aborted or completed.</p>
* </li> * </li>
* <li> * <li>
* <p>HTTP Status Code: 404 Not Found</p> * <p>HTTP Status Code: 404 Not Found</p>
@@ -37,165 +37,152 @@ declare const CopyObjectCommand_base: {
* </important> * </important>
* <p>Creates a copy of an object that is already stored in Amazon S3.</p> * <p>Creates a copy of an object that is already stored in Amazon S3.</p>
* <note> * <note>
* <p>You can store individual objects of up to 5 TB in Amazon S3. You create a copy of your * <p>You can store individual objects of up to 5 TB in Amazon S3. You create a copy of your object up to 5
* object up to 5 GB in size in a single atomic action using this API. However, to copy an * GB in size in a single atomic action using this API. However, to copy an object greater than 5 GB, you
* object greater than 5 GB, you must use the multipart upload Upload Part - Copy * must use the multipart upload Upload Part - Copy (UploadPartCopy) API. For more information, see
* (UploadPartCopy) API. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjctsUsingRESTMPUapi.html">Copy Object Using the * <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjctsUsingRESTMPUapi.html">Copy Object
* REST Multipart Upload API</a>.</p> * Using the REST Multipart Upload API</a>.</p>
* </note> * </note>
* <p>You can copy individual objects between general purpose buckets, between directory buckets, * <p>You can copy individual objects between general purpose buckets, between directory buckets, and between
* and between general purpose buckets and directory buckets.</p> * general purpose buckets and directory buckets.</p>
* <note> * <note>
* <ul> * <ul>
* <li> * <li>
* <p>Amazon S3 supports copy operations using Multi-Region Access Points only as a * <p>Amazon S3 supports copy operations using Multi-Region Access Points only as a destination when
* destination when using the Multi-Region Access Point ARN. </p> * using the Multi-Region Access Point ARN. </p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory buckets </b> - * <b>Directory buckets </b> - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format <code>https://<i>amzn-s3-demo-bucket</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com/<i>key-name</i>
* For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format <code>https://<i>amzn-s3-demo-bucket</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com/<i>key-name</i>
* </code>. Path-style requests are not supported. For more information about endpoints in Availability Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html">Regional and Zonal endpoints for directory buckets in Availability Zones</a> in the * </code>. Path-style requests are not supported. For more information about endpoints in Availability Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html">Regional and Zonal endpoints for directory buckets in Availability Zones</a> in the
* <i>Amazon S3 User Guide</i>. For more information about endpoints in Local Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html">Concepts for directory buckets in Local Zones</a> in the * <i>Amazon S3 User Guide</i>. For more information about endpoints in Local Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html">Concepts for directory buckets in Local Zones</a> in the
* <i>Amazon S3 User Guide</i>.</p> * <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* <li> * <li>
* <p>VPC endpoints don't support cross-Region requests (including copies). If you're * <p>VPC endpoints don't support cross-Region requests (including copies). If you're using VPC
* using VPC endpoints, your source and destination buckets should be in the same * endpoints, your source and destination buckets should be in the same Amazon Web Services Region as your VPC
* Amazon Web Services Region as your VPC endpoint.</p> * endpoint.</p>
* </li> * </li>
* </ul> * </ul>
* </note> * </note>
* <p>Both the Region that you want to copy the object from and the Region that you want to * <p>Both the Region that you want to copy the object from and the Region that you want to copy the
* copy the object to must be enabled for your account. For more information about how to * object to must be enabled for your account. For more information about how to enable a Region for your
* enable a Region for your account, see <a href="https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-regions.html#manage-acct-regions-enable-standalone">Enable or disable a Region for standalone accounts</a> in the <i>Amazon Web Services * account, see <a href="https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-regions.html#manage-acct-regions-enable-standalone">Enable
* Account Management Guide</i>.</p> * or disable a Region for standalone accounts</a> in the <i>Amazon Web Services Account Management
* Guide</i>.</p>
* <important> * <important>
* <p>Amazon S3 transfer acceleration does not support cross-Region copies. If you request a * <p>Amazon S3 transfer acceleration does not support cross-Region copies. If you request a cross-Region
* cross-Region copy using a transfer acceleration endpoint, you get a <code>400 Bad * copy using a transfer acceleration endpoint, you get a <code>400 Bad Request</code> error. For more
* Request</code> error. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html">Transfer * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html">Transfer Acceleration</a>.</p>
* Acceleration</a>.</p>
* </important> * </important>
* <dl> * <dl>
* <dt>Authentication and authorization</dt> * <dt>Authentication and authorization</dt>
* <dd> * <dd>
* <p>All <code>CopyObject</code> requests must be authenticated and signed by using * <p>All <code>CopyObject</code> requests must be authenticated and signed by using IAM
* IAM credentials (access key ID and secret access key for the IAM identities). * credentials (access key ID and secret access key for the IAM identities). All headers with the
* All headers with the <code>x-amz-</code> prefix, including * <code>x-amz-</code> prefix, including <code>x-amz-copy-source</code>, must be signed. For more
* <code>x-amz-copy-source</code>, must be signed. For more information, see * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html">REST Authentication</a>.</p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html">REST Authentication</a>.</p>
* <p> * <p>
* <b>Directory buckets</b> - You must use the * <b>Directory buckets</b> - You must use the IAM
* IAM credentials to authenticate and authorize your access to the * credentials to authenticate and authorize your access to the <code>CopyObject</code> API
* <code>CopyObject</code> API operation, instead of using the temporary security * operation, instead of using the temporary security credentials through the
* credentials through the <code>CreateSession</code> API operation.</p> * <code>CreateSession</code> API operation.</p>
* <p>Amazon Web Services CLI or SDKs handles authentication and authorization on your * <p>Amazon Web Services CLI or SDKs handles authentication and authorization on your behalf.</p>
* behalf.</p>
* </dd> * </dd>
* <dt>Permissions</dt> * <dt>Permissions</dt>
* <dd> * <dd>
* <p>You must have <i>read</i> access to the source object and * <p>You must have <i>read</i> access to the source object and
* <i>write</i> access to the destination bucket.</p> * <i>write</i> access to the destination bucket.</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - You * <b>General purpose bucket permissions</b> - You must have
* must have permissions in an IAM policy based on the source and destination * permissions in an IAM policy based on the source and destination bucket types in a
* bucket types in a <code>CopyObject</code> operation.</p> * <code>CopyObject</code> operation.</p>
* <ul> * <ul>
* <li> * <li>
* <p>If the source object is in a general purpose bucket, you must have * <p>If the source object is in a general purpose bucket, you must have <b>
* <b>
* <code>s3:GetObject</code> * <code>s3:GetObject</code>
* </b> * </b> permission to read the source object that is
* permission to read the source object that is being copied. </p> * being copied. </p>
* </li> * </li>
* <li> * <li>
* <p>If the destination bucket is a general purpose bucket, you must have * <p>If the destination bucket is a general purpose bucket, you must have <b>
* <b>
* <code>s3:PutObject</code> * <code>s3:PutObject</code>
* </b> * </b> permission to write the object copy to the
* permission to write the object copy to the destination bucket. </p> * destination bucket. </p>
* </li> * </li>
* </ul> * </ul>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory bucket permissions</b> - * <b>Directory bucket permissions</b> - You must have
* You must have permissions in a bucket policy or an IAM identity-based policy based on the * permissions in a bucket policy or an IAM identity-based policy based on the source and destination bucket types
* source and destination bucket types in a <code>CopyObject</code> * in a <code>CopyObject</code> operation.</p>
* operation.</p>
* <ul> * <ul>
* <li> * <li>
* <p>If the source object that you want to copy is in a * <p>If the source object that you want to copy is in a directory bucket, you must have
* directory bucket, you must have the <b> * the <b>
* <code>s3express:CreateSession</code> * <code>s3express:CreateSession</code>
* </b> permission in * </b> permission in
* the <code>Action</code> element of a policy to read the object. By * the <code>Action</code> element of a policy to read the object. By default, the session is
* default, the session is in the <code>ReadWrite</code> mode. If you * in the <code>ReadWrite</code> mode. If you want to restrict the access, you can explicitly
* want to restrict the access, you can explicitly set the * set the <code>s3express:SessionMode</code> condition key to <code>ReadOnly</code> on the
* <code>s3express:SessionMode</code> condition key to * copy source bucket.</p>
* <code>ReadOnly</code> on the copy source bucket.</p>
* </li> * </li>
* <li> * <li>
* <p>If the copy destination is a directory bucket, you must have the * <p>If the copy destination is a directory bucket, you must have the <b>
* <b>
* <code>s3express:CreateSession</code> * <code>s3express:CreateSession</code>
* </b> permission in the * </b> permission in the
* <code>Action</code> element of a policy to write the object to the * <code>Action</code> element of a policy to write the object to the destination. The
* destination. The <code>s3express:SessionMode</code> condition key * <code>s3express:SessionMode</code> condition key can't be set to <code>ReadOnly</code>
* can't be set to <code>ReadOnly</code> on the copy destination bucket. * on the copy destination bucket. </p>
* </p>
* </li> * </li>
* </ul> * </ul>
* <p>If the object is encrypted with SSE-KMS, you must also have the * <p>If the object is encrypted with SSE-KMS, you must also have the
* <code>kms:GenerateDataKey</code> and <code>kms:Decrypt</code> permissions * <code>kms:GenerateDataKey</code> and <code>kms:Decrypt</code> permissions in IAM
* in IAM identity-based policies and KMS key policies for the KMS * identity-based policies and KMS key policies for the KMS key.</p>
* key.</p> * <p>For example policies, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html">Example
* <p>For example policies, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html">Example bucket policies for S3 Express One Zone</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html">Amazon Web Services Identity and Access Management (IAM) identity-based policies for * bucket policies for S3 Express One Zone</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html">Amazon Web Services
* S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p> * Identity and Access Management (IAM) identity-based policies for S3 Express One Zone</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* </ul> * </ul>
* </dd> * </dd>
* <dt>Response and special errors</dt> * <dt>Response and special errors</dt>
* <dd> * <dd>
* <p>When the request is an HTTP 1.1 request, the response is chunk encoded. When * <p>When the request is an HTTP 1.1 request, the response is chunk encoded. When the request is
* the request is not an HTTP 1.1 request, the response would not contain the * not an HTTP 1.1 request, the response would not contain the <code>Content-Length</code>. You
* <code>Content-Length</code>. You always need to read the entire response body * always need to read the entire response body to check if the copy succeeds. </p>
* to check if the copy succeeds. </p>
* <ul> * <ul>
* <li> * <li>
* <p>If the copy is successful, you receive a response with information about * <p>If the copy is successful, you receive a response with information about the copied
* the copied object.</p> * object.</p>
* </li> * </li>
* <li> * <li>
* <p>A copy request might return an error when Amazon S3 receives the copy request * <p>A copy request might return an error when Amazon S3 receives the copy request or while Amazon S3 is
* or while Amazon S3 is copying the files. A <code>200 OK</code> response can * copying the files. A <code>200 OK</code> response can contain either a success or an
* contain either a success or an error.</p> * error.</p>
* <ul> * <ul>
* <li> * <li>
* <p>If the error occurs before the copy action starts, you receive a * <p>If the error occurs before the copy action starts, you receive a standard Amazon S3
* standard Amazon S3 error.</p> * error.</p>
* </li> * </li>
* <li> * <li>
* <p>If the error occurs during the copy operation, the error response * <p>If the error occurs during the copy operation, the error response is embedded in the
* is embedded in the <code>200 OK</code> response. For example, in a * <code>200 OK</code> response. For example, in a cross-region copy, you may encounter
* cross-region copy, you may encounter throttling and receive a * throttling and receive a <code>200 OK</code> response. For more information, see <a href="https://repost.aws/knowledge-center/s3-resolve-200-internalerror">Resolve the Error
* <code>200 OK</code> response. For more information, see <a href="https://repost.aws/knowledge-center/s3-resolve-200-internalerror">Resolve the Error 200 response when copying objects to * 200 response when copying objects to Amazon S3</a>. The <code>200 OK</code> status code
* Amazon S3</a>. The <code>200 OK</code> status code means the copy * means the copy was accepted, but it doesn't mean the copy is complete. Another example is
* was accepted, but it doesn't mean the copy is complete. Another * when you disconnect from Amazon S3 before the copy is complete, Amazon S3 might cancel the copy and
* example is when you disconnect from Amazon S3 before the copy is complete, * you may receive a <code>200 OK</code> response. You must stay connected to Amazon S3 until the
* Amazon S3 might cancel the copy and you may receive a <code>200 OK</code> * entire response is successfully received and processed.</p>
* response. You must stay connected to Amazon S3 until the entire response is * <p>If you call this API operation directly, make sure to design your application to parse
* successfully received and processed.</p> * the content of the response and handle it appropriately. If you use Amazon Web Services SDKs, SDKs
* <p>If you call this API operation directly, make sure to design your * handle this condition. The SDKs detect the embedded error and apply error handling per
* application to parse the content of the response and handle it * your configuration settings (including automatically retrying the request as appropriate).
* appropriately. If you use Amazon Web Services SDKs, SDKs handle this condition. The * If the condition persists, the SDKs throw an exception (or, for the SDKs that don't use
* SDKs detect the embedded error and apply error handling per your * exceptions, they return an error).</p>
* configuration settings (including automatically retrying the request
* as appropriate). If the condition persists, the SDKs throw an
* exception (or, for the SDKs that don't use exceptions, they return an
* error).</p>
* </li> * </li>
* </ul> * </ul>
* </li> * </li>
@@ -203,11 +190,10 @@ declare const CopyObjectCommand_base: {
* </dd> * </dd>
* <dt>Charge</dt> * <dt>Charge</dt>
* <dd> * <dd>
* <p>The copy request charge is based on the storage class and Region that you * <p>The copy request charge is based on the storage class and Region that you specify for the
* specify for the destination object. The request can also result in a data * destination object. The request can also result in a data retrieval charge for the source if the
* retrieval charge for the source if the source storage class bills for data * source storage class bills for data retrieval. If the copy source is in a different region, the
* retrieval. If the copy source is in a different region, the data transfer is * data transfer is billed to the copy source account. For pricing information, see <a href="http://aws.amazon.com/s3/pricing/">Amazon S3 pricing</a>.</p>
* billed to the copy source account. For pricing information, see <a href="http://aws.amazon.com/s3/pricing/">Amazon S3 pricing</a>.</p>
* </dd> * </dd>
* <dt>HTTP Host header syntax</dt> * <dt>HTTP Host header syntax</dt>
* <dd> * <dd>
@@ -219,9 +205,12 @@ declare const CopyObjectCommand_base: {
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Amazon S3 on Outposts</b> - When you use this action with S3 on Outposts through the REST API, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the * <b>Amazon S3 on Outposts</b> - When you use this action with
* form <code> * S3 on Outposts through the REST API, you must direct requests to the S3 on Outposts hostname. The
* <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>. The hostname isn't required when you use the Amazon Web Services CLI or SDKs.</p> * S3 on Outposts hostname takes the form
* <code>
* <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
* The hostname isn't required when you use the Amazon Web Services CLI or SDKs.</p>
* </li> * </li>
* </ul> * </ul>
* </dd> * </dd>
@@ -324,8 +313,8 @@ declare const CopyObjectCommand_base: {
* @see {@link S3ClientResolvedConfig | config} for S3Client's `config` shape. * @see {@link S3ClientResolvedConfig | config} for S3Client's `config` shape.
* *
* @throws {@link ObjectNotInActiveTierError} (client fault) * @throws {@link ObjectNotInActiveTierError} (client fault)
* <p>The source object of the COPY action is not in the active tier and is only stored in * <p>The source object of the COPY action is not in the active tier and is only stored in Amazon S3
* Amazon S3 Glacier.</p> * Glacier.</p>
* *
* @throws {@link S3ServiceException} * @throws {@link S3ServiceException}
* <p>Base exception class for all service exceptions from S3 service.</p> * <p>Base exception class for all service exceptions from S3 service.</p>
@@ -47,25 +47,23 @@ declare const CreateBucketCommand_base: {
* <code>CreateBucket</code> * <code>CreateBucket</code>
* </a>.</p> * </a>.</p>
* </note> * </note>
* <p>Creates a new S3 bucket. To create a bucket, you must set up Amazon S3 and have a valid Amazon Web Services * <p>Creates a new S3 bucket. To create a bucket, you must set up Amazon S3 and have a valid Amazon Web Services Access Key
* Access Key ID to authenticate requests. Anonymous requests are never allowed to create * ID to authenticate requests. Anonymous requests are never allowed to create buckets. By creating the
* buckets. By creating the bucket, you become the bucket owner.</p> * bucket, you become the bucket owner.</p>
* <p>There are two types of buckets: general purpose buckets and directory buckets. For more * <p>There are two types of buckets: general purpose buckets and directory buckets. For more information about
* information about these bucket types, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html">Creating, configuring, and * these bucket types, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html">Creating, configuring, and working with Amazon S3
* working with Amazon S3 buckets</a> in the <i>Amazon S3 User Guide</i>.</p> * buckets</a> in the <i>Amazon S3 User Guide</i>.</p>
* <note> * <note>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose buckets</b> - If you send your * <b>General purpose buckets</b> - If you send your
* <code>CreateBucket</code> request to the <code>s3.amazonaws.com</code> global * <code>CreateBucket</code> request to the <code>s3.amazonaws.com</code> global endpoint, the
* endpoint, the request goes to the <code>us-east-1</code> Region. So the signature * request goes to the <code>us-east-1</code> Region. So the signature calculations in Signature
* calculations in Signature Version 4 must use <code>us-east-1</code> as the Region, * Version 4 must use <code>us-east-1</code> as the Region, even if the location constraint in the
* even if the location constraint in the request specifies another Region where the * request specifies another Region where the bucket is to be created. If you create a bucket in a
* bucket is to be created. If you create a bucket in a Region other than US East (N. * Region other than US East (N. Virginia), your application must be able to handle 307 redirect. For
* Virginia), your application must be able to handle 307 redirect. For more * more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html">Virtual hosting of buckets</a> in the <i>Amazon S3 User Guide</i>.</p>
* information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html">Virtual hosting of
* buckets</a> in the <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
@@ -83,91 +81,81 @@ declare const CreateBucketCommand_base: {
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - In * <b>General purpose bucket permissions</b> - In addition to the
* addition to the <code>s3:CreateBucket</code> permission, the following * <code>s3:CreateBucket</code> permission, the following permissions are required in a policy
* permissions are required in a policy when your <code>CreateBucket</code> * when your <code>CreateBucket</code> request includes specific headers: </p>
* request includes specific headers: </p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>Access control lists (ACLs)</b> * <b>Access control lists (ACLs)</b> - In your
* - In your <code>CreateBucket</code> request, if you specify an * <code>CreateBucket</code> request, if you specify an access control list (ACL) and set
* access control list (ACL) and set it to <code>public-read</code>, * it to <code>public-read</code>, <code>public-read-write</code>,
* <code>public-read-write</code>, <code>authenticated-read</code>, or * <code>authenticated-read</code>, or if you explicitly specify any other custom ACLs,
* if you explicitly specify any other custom ACLs, both * both <code>s3:CreateBucket</code> and <code>s3:PutBucketAcl</code> permissions are
* <code>s3:CreateBucket</code> and <code>s3:PutBucketAcl</code> * required. In your <code>CreateBucket</code> request, if you set the ACL to
* permissions are required. In your <code>CreateBucket</code> request, * <code>private</code>, or if you don't specify any ACLs, only the
* if you set the ACL to <code>private</code>, or if you don't specify * <code>s3:CreateBucket</code> permission is required. </p>
* any ACLs, only the <code>s3:CreateBucket</code> permission is
* required. </p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Object Lock</b> - In your * <b>Object Lock</b> - In your
* <code>CreateBucket</code> request, if you set * <code>CreateBucket</code> request, if you set
* <code>x-amz-bucket-object-lock-enabled</code> to true, the * <code>x-amz-bucket-object-lock-enabled</code> to true, the
* <code>s3:PutBucketObjectLockConfiguration</code> and * <code>s3:PutBucketObjectLockConfiguration</code> and <code>s3:PutBucketVersioning</code>
* <code>s3:PutBucketVersioning</code> permissions are * permissions are required.</p>
* required.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>S3 Object Ownership</b> - If * <b>S3 Object Ownership</b> - If your
* your <code>CreateBucket</code> request includes the * <code>CreateBucket</code> request includes the <code>x-amz-object-ownership</code>
* <code>x-amz-object-ownership</code> header, then the * header, then the <code>s3:PutBucketOwnershipControls</code> permission is required.</p>
* <code>s3:PutBucketOwnershipControls</code> permission is
* required.</p>
* <important> * <important>
* <p> To set an ACL on a bucket as part of a * <p> To set an ACL on a bucket as part of a <code>CreateBucket</code> request, you must
* <code>CreateBucket</code> request, you must explicitly set S3 * explicitly set S3 Object Ownership for the bucket to a different value than the default,
* Object Ownership for the bucket to a different value than the * <code>BucketOwnerEnforced</code>. Additionally, if your desired bucket ACL grants
* default, <code>BucketOwnerEnforced</code>. Additionally, if your * public access, you must first create the bucket (without the bucket ACL) and then
* desired bucket ACL grants public access, you must first create the * explicitly disable Block Public Access on the bucket before using
* bucket (without the bucket ACL) and then explicitly disable Block * <code>PutBucketAcl</code> to set the ACL. If you try to create a bucket with a public
* Public Access on the bucket before using <code>PutBucketAcl</code> * ACL, the request will fail. </p>
* to set the ACL. If you try to create a bucket with a public ACL, * <p> For the majority of modern use cases in S3, we recommend that you keep all Block
* the request will fail. </p> * Public Access settings enabled and keep ACLs disabled. If you would like to share data
* <p> For the majority of modern use cases in S3, we recommend that * with users outside of your account, you can use bucket policies as needed. For more
* you keep all Block Public Access settings enabled and keep ACLs * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">Controlling ownership of
* disabled. If you would like to share data with users outside of * objects and disabling ACLs for your bucket </a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html">Blocking
* your account, you can use bucket policies as needed. For more * public access to your Amazon S3 storage </a> in the
* information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">Controlling ownership of objects and disabling ACLs for your * <i>Amazon S3 User Guide</i>. </p>
* bucket </a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html">Blocking public access to your Amazon S3 storage </a> in
* the <i>Amazon S3 User Guide</i>. </p>
* </important> * </important>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>S3 Block Public Access</b> - If * <b>S3 Block Public Access</b> - If your specific use
* your specific use case requires granting public access to your S3 * case requires granting public access to your S3 resources, you can disable Block Public
* resources, you can disable Block Public Access. Specifically, you can * Access. Specifically, you can create a new bucket with Block Public Access enabled, then
* create a new bucket with Block Public Access enabled, then separately * separately call the <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html">
* call the <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html">
* <code>DeletePublicAccessBlock</code> * <code>DeletePublicAccessBlock</code>
* </a> API. To use this operation, you must have the * </a> API. To use this operation, you must have the
* <code>s3:PutBucketPublicAccessBlock</code> permission. For more * <code>s3:PutBucketPublicAccessBlock</code> permission. For more information about S3
* information about S3 Block Public Access, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html">Blocking public access to your Amazon S3 storage </a> in the * Block Public Access, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html">Blocking public
* <i>Amazon S3 User Guide</i>. </p> * access to your Amazon S3 storage </a> in the <i>Amazon S3 User Guide</i>.
* </p>
* </li> * </li>
* </ul> * </ul>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory bucket permissions</b> - * <b>Directory bucket permissions</b> - You must have the
* You must have the <code>s3express:CreateBucket</code> permission in * <code>s3express:CreateBucket</code> permission in an IAM identity-based policy instead of a bucket policy.
* an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. * Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
* For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
* <important> * <important>
* <p>The permissions for ACLs, Object Lock, S3 Object Ownership, and S3 * <p>The permissions for ACLs, Object Lock, S3 Object Ownership, and S3 Block Public Access
* Block Public Access are not supported for directory buckets. For * are not supported for directory buckets. For directory buckets, all Block Public Access
* directory buckets, all Block Public Access settings are enabled at the * settings are enabled at the bucket level and S3 Object Ownership is set to Bucket owner
* bucket level and S3 Object Ownership is set to Bucket owner enforced * enforced (ACLs disabled). These settings can't be modified. </p>
* (ACLs disabled). These settings can't be modified. </p> * <p>For more information about permissions for creating and working with directory buckets,
* <p>For more information about permissions for creating and working with * see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html">Directory buckets</a>
* directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html">Directory buckets</a> in the * in the <i>Amazon S3 User Guide</i>. For more information about supported S3
* <i>Amazon S3 User Guide</i>. For more information about * features for directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-one-zone.html#s3-express-features">Features of
* supported S3 features for directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-one-zone.html#s3-express-features">Features of S3 Express One Zone</a> in the * S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
* <i>Amazon S3 User Guide</i>.</p>
* </important> * </important>
* </li> * </li>
* </ul> * </ul>
@@ -241,14 +229,14 @@ declare const CreateBucketCommand_base: {
* @see {@link S3ClientResolvedConfig | config} for S3Client's `config` shape. * @see {@link S3ClientResolvedConfig | config} for S3Client's `config` shape.
* *
* @throws {@link BucketAlreadyExists} (client fault) * @throws {@link BucketAlreadyExists} (client fault)
* <p>The requested bucket name is not available. The bucket namespace is shared by all users * <p>The requested bucket name is not available. The bucket namespace is shared by all users of the
* of the system. Select a different name and try again.</p> * system. Select a different name and try again.</p>
* *
* @throws {@link BucketAlreadyOwnedByYou} (client fault) * @throws {@link BucketAlreadyOwnedByYou} (client fault)
* <p>The bucket you tried to create already exists, and you own it. Amazon S3 returns this error * <p>The bucket you tried to create already exists, and you own it. Amazon S3 returns this error in all Amazon Web Services
* in all Amazon Web Services Regions except in the North Virginia Region. For legacy compatibility, if you * Regions except in the North Virginia Region. For legacy compatibility, if you re-create an existing
* re-create an existing bucket that you already own in the North Virginia Region, Amazon S3 * bucket that you already own in the North Virginia Region, Amazon S3 returns 200 OK and resets the bucket
* returns 200 OK and resets the bucket access control lists (ACLs).</p> * access control lists (ACLs).</p>
* *
* @throws {@link S3ServiceException} * @throws {@link S3ServiceException}
* <p>Base exception class for all service exceptions from S3 service.</p> * <p>Base exception class for all service exceptions from S3 service.</p>
@@ -0,0 +1,182 @@
import { Command as $Command } from "@smithy/smithy-client";
import { MetadataBearer as __MetadataBearer } from "@smithy/types";
import { CreateBucketMetadataConfigurationRequest } from "../models/models_0";
import { S3ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../S3Client";
/**
* @public
*/
export type { __MetadataBearer };
export { $Command };
/**
* @public
*
* The input for {@link CreateBucketMetadataConfigurationCommand}.
*/
export interface CreateBucketMetadataConfigurationCommandInput extends CreateBucketMetadataConfigurationRequest {
}
/**
* @public
*
* The output of {@link CreateBucketMetadataConfigurationCommand}.
*/
export interface CreateBucketMetadataConfigurationCommandOutput extends __MetadataBearer {
}
declare const CreateBucketMetadataConfigurationCommand_base: {
new (input: CreateBucketMetadataConfigurationCommandInput): import("@smithy/smithy-client").CommandImpl<CreateBucketMetadataConfigurationCommandInput, CreateBucketMetadataConfigurationCommandOutput, S3ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
new (input: CreateBucketMetadataConfigurationCommandInput): import("@smithy/smithy-client").CommandImpl<CreateBucketMetadataConfigurationCommandInput, CreateBucketMetadataConfigurationCommandOutput, S3ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
};
/**
* <p>Creates an S3 Metadata V2 metadata configuration for a general purpose bucket. For more information, see
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html">Accelerating
* data discovery with S3 Metadata</a> in the <i>Amazon S3 User Guide</i>.</p>
* <dl>
* <dt>Permissions</dt>
* <dd>
* <p>To use this operation, you must have the following permissions. For more information, see
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html">Setting up permissions for configuring metadata tables</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* <p>If you want to encrypt your metadata tables with server-side encryption with Key Management Service
* (KMS) keys (SSE-KMS), you need additional permissions in your KMS key policy. For more
* information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html">
* Setting up permissions for configuring metadata tables</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* <p>If you also want to integrate your table bucket with Amazon Web Services analytics services so that you can
* query your metadata table, you need additional permissions. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-integrating-aws.html"> Integrating
* Amazon S3 Tables with Amazon Web Services analytics services</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* <p>To query your metadata tables, you need additional permissions. For more information, see
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-bucket-query-permissions.html">
* Permissions for querying metadata tables</a> in the <i>Amazon S3 User Guide</i>.</p>
* <ul>
* <li>
* <p>
* <code>s3:CreateBucketMetadataTableConfiguration</code>
* </p>
* <note>
* <p>The IAM policy action name is the same for the V1 and V2 API operations.</p>
* </note>
* </li>
* <li>
* <p>
* <code>s3tables:CreateTableBucket</code>
* </p>
* </li>
* <li>
* <p>
* <code>s3tables:CreateNamespace</code>
* </p>
* </li>
* <li>
* <p>
* <code>s3tables:GetTable</code>
* </p>
* </li>
* <li>
* <p>
* <code>s3tables:CreateTable</code>
* </p>
* </li>
* <li>
* <p>
* <code>s3tables:PutTablePolicy</code>
* </p>
* </li>
* <li>
* <p>
* <code>s3tables:PutTableEncryption</code>
* </p>
* </li>
* <li>
* <p>
* <code>kms:DescribeKey</code>
* </p>
* </li>
* </ul>
* </dd>
* </dl>
* <p>The following operations are related to <code>CreateBucketMetadataConfiguration</code>:</p>
* <ul>
* <li>
* <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataConfiguration.html">DeleteBucketMetadataConfiguration</a>
* </p>
* </li>
* <li>
* <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataConfiguration.html">GetBucketMetadataConfiguration</a>
* </p>
* </li>
* <li>
* <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataInventoryTableConfiguration.html">UpdateBucketMetadataInventoryTableConfiguration</a>
* </p>
* </li>
* <li>
* <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataJournalTableConfiguration.html">UpdateBucketMetadataJournalTableConfiguration</a>
* </p>
* </li>
* </ul>
* @example
* Use a bare-bones client and the command you need to make an API call.
* ```javascript
* import { S3Client, CreateBucketMetadataConfigurationCommand } from "@aws-sdk/client-s3"; // ES Modules import
* // const { S3Client, CreateBucketMetadataConfigurationCommand } = require("@aws-sdk/client-s3"); // CommonJS import
* const client = new S3Client(config);
* const input = { // CreateBucketMetadataConfigurationRequest
* Bucket: "STRING_VALUE", // required
* ContentMD5: "STRING_VALUE",
* ChecksumAlgorithm: "CRC32" || "CRC32C" || "SHA1" || "SHA256" || "CRC64NVME",
* MetadataConfiguration: { // MetadataConfiguration
* JournalTableConfiguration: { // JournalTableConfiguration
* RecordExpiration: { // RecordExpiration
* Expiration: "ENABLED" || "DISABLED", // required
* Days: Number("int"),
* },
* EncryptionConfiguration: { // MetadataTableEncryptionConfiguration
* SseAlgorithm: "aws:kms" || "AES256", // required
* KmsKeyArn: "STRING_VALUE",
* },
* },
* InventoryTableConfiguration: { // InventoryTableConfiguration
* ConfigurationState: "ENABLED" || "DISABLED", // required
* EncryptionConfiguration: {
* SseAlgorithm: "aws:kms" || "AES256", // required
* KmsKeyArn: "STRING_VALUE",
* },
* },
* },
* ExpectedBucketOwner: "STRING_VALUE",
* };
* const command = new CreateBucketMetadataConfigurationCommand(input);
* const response = await client.send(command);
* // {};
*
* ```
*
* @param CreateBucketMetadataConfigurationCommandInput - {@link CreateBucketMetadataConfigurationCommandInput}
* @returns {@link CreateBucketMetadataConfigurationCommandOutput}
* @see {@link CreateBucketMetadataConfigurationCommandInput} for command's `input` shape.
* @see {@link CreateBucketMetadataConfigurationCommandOutput} for command's `response` shape.
* @see {@link S3ClientResolvedConfig | config} for S3Client's `config` shape.
*
* @throws {@link S3ServiceException}
* <p>Base exception class for all service exceptions from S3 service.</p>
*
*
* @public
*/
export declare class CreateBucketMetadataConfigurationCommand extends CreateBucketMetadataConfigurationCommand_base {
/** @internal type navigation helper, not in runtime. */
protected static __types: {
api: {
input: CreateBucketMetadataConfigurationRequest;
output: {};
};
sdk: {
input: CreateBucketMetadataConfigurationCommandInput;
output: CreateBucketMetadataConfigurationCommandOutput;
};
};
}
@@ -27,21 +27,34 @@ declare const CreateBucketMetadataTableConfigurationCommand_base: {
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
}; };
/** /**
* <p>Creates a metadata table configuration for a general purpose bucket. For more * <important>
* information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html">Accelerating data * <p>
* discovery with S3 Metadata</a> in the <i>Amazon S3 User Guide</i>. </p> * We recommend that you create your S3 Metadata configurations by using the V2
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html">CreateBucketMetadataConfiguration</a> API operation. We no longer recommend using the V1
* <code>CreateBucketMetadataTableConfiguration</code> API operation.
* </p>
* <p>If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete
* and re-create your configuration by using <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html">CreateBucketMetadataConfiguration</a> so that you can expire journal table records and create
* a live inventory table.</p>
* </important>
* <p>Creates a V1 S3 Metadata configuration for a general purpose bucket. For more information, see
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html">Accelerating
* data discovery with S3 Metadata</a> in the <i>Amazon S3 User Guide</i>.</p>
* <dl> * <dl>
* <dt>Permissions</dt> * <dt>Permissions</dt>
* <dd> * <dd>
* <p>To use this operation, you must have the following permissions. For more * <p>To use this operation, you must have the following permissions. For more information, see
* information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html">Setting up * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html">Setting up permissions for configuring metadata tables</a> in the
* permissions for configuring metadata tables</a> in the * <i>Amazon S3 User Guide</i>.</p>
* <i>Amazon S3 User Guide</i>.</p> * <p>If you want to encrypt your metadata tables with server-side encryption with Key Management Service
* <p>If you also want to integrate your table bucket with Amazon Web Services analytics services so that you * (KMS) keys (SSE-KMS), you need additional permissions. For more
* can query your metadata table, you need additional permissions. For more information, see * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html">
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-integrating-aws.html"> * Setting up permissions for configuring metadata tables</a> in the
* Integrating Amazon S3 Tables with Amazon Web Services analytics services</a> in the * <i>Amazon S3 User Guide</i>.</p>
* <i>Amazon S3 User Guide</i>.</p> * <p>If you also want to integrate your table bucket with Amazon Web Services analytics services so that you can
* query your metadata table, you need additional permissions. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-integrating-aws.html"> Integrating
* Amazon S3 Tables with Amazon Web Services analytics services</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -35,34 +35,33 @@ declare const CreateMultipartUploadCommand_base: {
* <p>This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, * <p>This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region,
* Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.</p> * Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.</p>
* </important> * </important>
* <p>This action initiates a multipart upload and returns an upload ID. This upload ID is * <p>This action initiates a multipart upload and returns an upload ID. This upload ID is used to
* used to associate all of the parts in the specific multipart upload. You specify this * associate all of the parts in the specific multipart upload. You specify this upload ID in each of your
* upload ID in each of your subsequent upload part requests (see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>). You also include this * subsequent upload part requests (see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>). You also include this upload ID in
* upload ID in the final request to either complete or abort the multipart upload request. * the final request to either complete or abort the multipart upload request. For more information about
* For more information about multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html">Multipart Upload Overview</a> in the * multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html">Multipart
* <i>Amazon S3 User Guide</i>.</p> * Upload Overview</a> in the <i>Amazon S3 User Guide</i>.</p>
* <note> * <note>
* <p>After you initiate a multipart upload and upload one or more parts, to stop being * <p>After you initiate a multipart upload and upload one or more parts, to stop being charged for
* charged for storing the uploaded parts, you must either complete or abort the multipart * storing the uploaded parts, you must either complete or abort the multipart upload. Amazon S3 frees up the
* upload. Amazon S3 frees up the space used to store the parts and stops charging you for * space used to store the parts and stops charging you for storing them only after you either complete
* storing them only after you either complete or abort a multipart upload. </p> * or abort a multipart upload. </p>
* </note> * </note>
* <p>If you have configured a lifecycle rule to abort incomplete multipart uploads, the * <p>If you have configured a lifecycle rule to abort incomplete multipart uploads, the created multipart
* created multipart upload must be completed within the number of days specified in the * upload must be completed within the number of days specified in the bucket lifecycle configuration.
* bucket lifecycle configuration. Otherwise, the incomplete multipart upload becomes eligible * Otherwise, the incomplete multipart upload becomes eligible for an abort action and Amazon S3 aborts the
* for an abort action and Amazon S3 aborts the multipart upload. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config">Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle * multipart upload. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config">Aborting
* Configuration</a>.</p> * Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration</a>.</p>
* <note> * <note>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>Directory buckets </b> - * <b>Directory buckets </b> -
* S3 Lifecycle is not supported by directory buckets.</p> * S3 Lifecycle is not supported by directory buckets.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory buckets </b> - * <b>Directory buckets </b> - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format <code>https://<i>amzn-s3-demo-bucket</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com/<i>key-name</i>
* For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format <code>https://<i>amzn-s3-demo-bucket</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com/<i>key-name</i>
* </code>. Path-style requests are not supported. For more information about endpoints in Availability Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html">Regional and Zonal endpoints for directory buckets in Availability Zones</a> in the * </code>. Path-style requests are not supported. For more information about endpoints in Availability Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html">Regional and Zonal endpoints for directory buckets in Availability Zones</a> in the
* <i>Amazon S3 User Guide</i>. For more information about endpoints in Local Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html">Concepts for directory buckets in Local Zones</a> in the * <i>Amazon S3 User Guide</i>. For more information about endpoints in Local Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html">Concepts for directory buckets in Local Zones</a> in the
* <i>Amazon S3 User Guide</i>.</p> * <i>Amazon S3 User Guide</i>.</p>
@@ -72,33 +71,28 @@ declare const CreateMultipartUploadCommand_base: {
* <dl> * <dl>
* <dt>Request signing</dt> * <dt>Request signing</dt>
* <dd> * <dd>
* <p>For request signing, multipart upload is just a series of regular requests. You * <p>For request signing, multipart upload is just a series of regular requests. You initiate a
* initiate a multipart upload, send one or more requests to upload parts, and then * multipart upload, send one or more requests to upload parts, and then complete the multipart
* complete the multipart upload process. You sign each request individually. There * upload process. You sign each request individually. There is nothing special about signing
* is nothing special about signing multipart upload requests. For more information * multipart upload requests. For more information about signing, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html">Authenticating Requests (Amazon Web Services
* about signing, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html">Authenticating * Signature Version 4)</a> in the <i>Amazon S3 User Guide</i>.</p>
* Requests (Amazon Web Services Signature Version 4)</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* </dd> * </dd>
* <dt>Permissions</dt> * <dt>Permissions</dt>
* <dd> * <dd>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - To * <b>General purpose bucket permissions</b> - To perform a
* perform a multipart upload with encryption using an Key Management Service (KMS) * multipart upload with encryption using an Key Management Service (KMS) KMS key, the requester must have
* KMS key, the requester must have permission to the * permission to the <code>kms:Decrypt</code> and <code>kms:GenerateDataKey</code> actions on the
* <code>kms:Decrypt</code> and <code>kms:GenerateDataKey</code> actions on * key. The requester must also have permissions for the <code>kms:GenerateDataKey</code> action
* the key. The requester must also have permissions for the * for the <code>CreateMultipartUpload</code> API. Then, the requester needs permissions for the
* <code>kms:GenerateDataKey</code> action for the * <code>kms:Decrypt</code> action on the <code>UploadPart</code> and
* <code>CreateMultipartUpload</code> API. Then, the requester needs * <code>UploadPartCopy</code> APIs. These permissions are required because Amazon S3 must decrypt
* permissions for the <code>kms:Decrypt</code> action on the * and read data from the encrypted file parts before it completes the multipart upload. For more
* <code>UploadPart</code> and <code>UploadPartCopy</code> APIs. These * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpuAndPermissions">Multipart upload API and
* permissions are required because Amazon S3 must decrypt and read data from the * permissions</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html">Protecting data using server-side
* encrypted file parts before it completes the multipart upload. For more * encryption with Amazon Web Services KMS</a> in the <i>Amazon S3 User Guide</i>.</p>
* information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpuAndPermissions">Multipart upload API and permissions</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html">Protecting data
* using server-side encryption with Amazon Web Services KMS</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
@@ -116,36 +110,29 @@ declare const CreateMultipartUploadCommand_base: {
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose buckets</b> - Server-side * <b>General purpose buckets</b> - Server-side encryption is for
* encryption is for data encryption at rest. Amazon S3 encrypts your data as it * data encryption at rest. Amazon S3 encrypts your data as it writes it to disks in its data centers
* writes it to disks in its data centers and decrypts it when you access it. * and decrypts it when you access it. Amazon S3 automatically encrypts all new objects that are
* Amazon S3 automatically encrypts all new objects that are uploaded to an S3 * uploaded to an S3 bucket. When doing a multipart upload, if you don't specify encryption
* bucket. When doing a multipart upload, if you don't specify encryption * information in your request, the encryption setting of the uploaded parts is set to the
* information in your request, the encryption setting of the uploaded parts is * default encryption configuration of the destination bucket. By default, all buckets have a
* set to the default encryption configuration of the destination bucket. By * base level of encryption configuration that uses server-side encryption with Amazon S3 managed keys
* default, all buckets have a base level of encryption configuration that uses * (SSE-S3). If the destination bucket has a default encryption configuration that uses
* server-side encryption with Amazon S3 managed keys (SSE-S3). If the destination * server-side encryption with an Key Management Service (KMS) key (SSE-KMS), or a customer-provided
* bucket has a default encryption configuration that uses server-side * encryption key (SSE-C), Amazon S3 uses the corresponding KMS key, or a customer-provided key to
* encryption with an Key Management Service (KMS) key (SSE-KMS), or a customer-provided * encrypt the uploaded parts. When you perform a CreateMultipartUpload operation, if you want to
* encryption key (SSE-C), Amazon S3 uses the corresponding KMS key, or a * use a different type of encryption setting for the uploaded parts, you can request that Amazon S3
* customer-provided key to encrypt the uploaded parts. When you perform a * encrypts the object with a different encryption key (such as an Amazon S3 managed key, a KMS key,
* CreateMultipartUpload operation, if you want to use a different type of * or a customer-provided key). When the encryption setting in your request is different from the
* encryption setting for the uploaded parts, you can request that Amazon S3 * default encryption configuration of the destination bucket, the encryption setting in your
* encrypts the object with a different encryption key (such as an Amazon S3 managed * request takes precedence. If you choose to provide your own encryption key, the request
* key, a KMS key, or a customer-provided key). When the encryption setting * headers you provide in <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a> requests must match the headers you used in the
* in your request is different from the default encryption configuration of * <code>CreateMultipartUpload</code> request.</p>
* the destination bucket, the encryption setting in your request takes
* precedence. If you choose to provide your own encryption key, the request
* headers you provide in <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a> and
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>
* requests must match the headers you used in the
* <code>CreateMultipartUpload</code> request.</p>
* <ul> * <ul>
* <li> * <li>
* <p>Use KMS keys (SSE-KMS) that include the Amazon Web Services managed key * <p>Use KMS keys (SSE-KMS) that include the Amazon Web Services managed key (<code>aws/s3</code>) and
* (<code>aws/s3</code>) and KMS customer managed keys stored in Key Management Service * KMS customer managed keys stored in Key Management Service (KMS) If you want Amazon Web Services to manage the keys used
* (KMS) If you want Amazon Web Services to manage the keys used to encrypt data, * to encrypt data, specify the following headers in the request.</p>
* specify the following headers in the request.</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -166,53 +153,42 @@ declare const CreateMultipartUploadCommand_base: {
* <note> * <note>
* <ul> * <ul>
* <li> * <li>
* <p>If you specify * <p>If you specify <code>x-amz-server-side-encryption:aws:kms</code>, but don't
* <code>x-amz-server-side-encryption:aws:kms</code>, but * provide <code>x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the
* don't provide * Amazon Web Services managed key (<code>aws/s3</code> key) in KMS to protect the data.</p>
* <code>x-amz-server-side-encryption-aws-kms-key-id</code>,
* Amazon S3 uses the Amazon Web Services managed key (<code>aws/s3</code> key) in
* KMS to protect the data.</p>
* </li> * </li>
* <li> * <li>
* <p>To perform a multipart upload with encryption by using an * <p>To perform a multipart upload with encryption by using an Amazon Web Services KMS key, the
* Amazon Web Services KMS key, the requester must have permission to the * requester must have permission to the <code>kms:Decrypt</code> and
* <code>kms:Decrypt</code> and * <code>kms:GenerateDataKey*</code> actions on the key. These permissions are
* <code>kms:GenerateDataKey*</code> actions on the key. * required because Amazon S3 must decrypt and read data from the encrypted file parts
* These permissions are required because Amazon S3 must decrypt and * before it completes the multipart upload. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpuAndPermissions">Multipart
* read data from the encrypted file parts before it completes * upload API and permissions</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html">Protecting data using
* the multipart upload. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpuAndPermissions">Multipart upload API and permissions</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html">Protecting data using server-side encryption with Amazon Web Services * server-side encryption with Amazon Web Services KMS</a> in the
* KMS</a> in the * <i>Amazon S3 User Guide</i>.</p>
* <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* <li> * <li>
* <p>If your Identity and Access Management (IAM) user or role is in the same * <p>If your Identity and Access Management (IAM) user or role is in the same Amazon Web Services account as the
* Amazon Web Services account as the KMS key, then you must have these * KMS key, then you must have these permissions on the key policy. If your IAM
* permissions on the key policy. If your IAM user or role is * user or role is in a different account from the key, then you must have the
* in a different account from the key, then you must have the * permissions on both the key policy and your IAM user or role.</p>
* permissions on both the key policy and your IAM user or
* role.</p>
* </li> * </li>
* <li> * <li>
* <p>All <code>GET</code> and <code>PUT</code> requests for an * <p>All <code>GET</code> and <code>PUT</code> requests for an object protected by
* object protected by KMS fail if you don't make them by * KMS fail if you don't make them by using Secure Sockets Layer (SSL), Transport
* using Secure Sockets Layer (SSL), Transport Layer Security * Layer Security (TLS), or Signature Version 4. For information about configuring any
* (TLS), or Signature Version 4. For information about * of the officially supported Amazon Web Services SDKs and Amazon Web Services CLI, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying the Signature Version in Request
* configuring any of the officially supported Amazon Web Services SDKs and * Authentication</a> in the <i>Amazon S3 User Guide</i>.</p>
* Amazon Web Services CLI, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying the Signature Version in
* Request Authentication</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* </ul> * </ul>
* </note> * </note>
* <p>For more information about server-side encryption with KMS keys * <p>For more information about server-side encryption with KMS keys (SSE-KMS), see
* (SSE-KMS), see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html">Protecting * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html">Protecting Data Using Server-Side Encryption with KMS keys</a> in the
* Data Using Server-Side Encryption with KMS keys</a> in the * <i>Amazon S3 User Guide</i>.</p>
* <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* <li> * <li>
* <p>Use customer-provided encryption keys (SSE-C) If you want to * <p>Use customer-provided encryption keys (SSE-C) If you want to manage your own
* manage your own encryption keys, provide all the following headers in * encryption keys, provide all the following headers in the request.</p>
* the request.</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -230,17 +206,17 @@ declare const CreateMultipartUploadCommand_base: {
* </p> * </p>
* </li> * </li>
* </ul> * </ul>
* <p>For more information about server-side encryption with * <p>For more information about server-side encryption with customer-provided encryption
* customer-provided encryption keys (SSE-C), see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html"> Protecting data using server-side encryption with * keys (SSE-C), see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html"> Protecting data
* customer-provided encryption keys (SSE-C)</a> in the * using server-side encryption with customer-provided encryption keys (SSE-C)</a> in
* <i>Amazon S3 User Guide</i>.</p> * the <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* </ul> * </ul>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory buckets</b> - * <b>Directory buckets</b> -
* For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (<code>AES256</code>) and server-side encryption with KMS keys (SSE-KMS) (<code>aws:kms</code>). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your * For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (<code>AES256</code>) and server-side encryption with KMS keys (SSE-KMS) (<code>aws:kms</code>). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your
* <code>CreateSession</code> requests or <code>PUT</code> object requests. Then, new objects * <code>CreateSession</code> requests or <code>PUT</code> object requests. Then, new objects
* are automatically encrypted with the desired encryption settings. For more * are automatically encrypted with the desired encryption settings. For more
* information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html">Protecting data with server-side encryption</a> in the <i>Amazon S3 User Guide</i>. For more information about the encryption overriding behaviors in directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html">Specifying server-side encryption with KMS for new object uploads</a>.</p> * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html">Protecting data with server-side encryption</a> in the <i>Amazon S3 User Guide</i>. For more information about the encryption overriding behaviors in directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html">Specifying server-side encryption with KMS for new object uploads</a>.</p>
@@ -258,11 +234,10 @@ declare const CreateMultipartUploadCommand_base: {
* </p> * </p>
* </note> * </note>
* <note> * <note>
* <p>For directory buckets, when you perform a * <p>For directory buckets, when you perform a <code>CreateMultipartUpload</code> operation
* <code>CreateMultipartUpload</code> operation and an * and an <code>UploadPartCopy</code> operation, the request headers you provide in the
* <code>UploadPartCopy</code> operation, the request headers you provide * <code>CreateMultipartUpload</code> request must match the default encryption configuration
* in the <code>CreateMultipartUpload</code> request must match the default * of the destination bucket. </p>
* encryption configuration of the destination bucket. </p>
* </note> * </note>
* </li> * </li>
* </ul> * </ul>
@@ -27,30 +27,28 @@ declare const CreateSessionCommand_base: {
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
}; };
/** /**
* <p>Creates a session that establishes temporary security credentials to support fast * <p>Creates a session that establishes temporary security credentials to support fast authentication and
* authentication and authorization for the Zonal endpoint API operations on directory buckets. For more * authorization for the Zonal endpoint API operations on directory buckets. For more information about Zonal endpoint API operations that
* information about Zonal endpoint API operations that include the Availability Zone in the request endpoint, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-APIs.html">S3 Express One Zone * include the Availability Zone in the request endpoint, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-APIs.html">S3 Express One Zone APIs</a> in the
* APIs</a> in the <i>Amazon S3 User Guide</i>. </p> * <i>Amazon S3 User Guide</i>. </p>
* <p>To make Zonal endpoint API requests on a directory bucket, use the <code>CreateSession</code> * <p>To make Zonal endpoint API requests on a directory bucket, use the <code>CreateSession</code> API
* API operation. Specifically, you grant <code>s3express:CreateSession</code> permission to a * operation. Specifically, you grant <code>s3express:CreateSession</code> permission to a bucket in
* bucket in a bucket policy or an IAM identity-based policy. Then, you use IAM credentials to make the * a bucket policy or an IAM identity-based policy. Then, you use IAM credentials to make the <code>CreateSession</code>
* <code>CreateSession</code> API request on the bucket, which returns temporary security * API request on the bucket, which returns temporary security credentials that include the access key ID,
* credentials that include the access key ID, secret access key, session token, and * secret access key, session token, and expiration. These credentials have associated permissions to
* expiration. These credentials have associated permissions to access the Zonal endpoint API operations. After * access the Zonal endpoint API operations. After the session is created, you dont need to use other policies to grant
* the session is created, you dont need to use other policies to grant permissions to each * permissions to each Zonal endpoint API individually. Instead, in your Zonal endpoint API requests, you sign your
* Zonal endpoint API individually. Instead, in your Zonal endpoint API requests, you sign your requests by * requests by applying the temporary security credentials of the session to the request headers and
* applying the temporary security credentials of the session to the request headers and * following the SigV4 protocol for authentication. You also apply the session token to the
* following the SigV4 protocol for authentication. You also apply the session token to the * <code>x-amz-s3session-token</code> request header for authorization. Temporary security credentials
* <code>x-amz-s3session-token</code> request header for authorization. Temporary security * are scoped to the bucket and expire after 5 minutes. After the expiration time, any calls that you make
* credentials are scoped to the bucket and expire after 5 minutes. After the expiration time, * with those credentials will fail. You must use IAM credentials again to make a
* any calls that you make with those credentials will fail. You must use IAM credentials * <code>CreateSession</code> API request that generates a new set of temporary credentials for use.
* again to make a <code>CreateSession</code> API request that generates a new set of * Temporary credentials cannot be extended or refreshed beyond the original specified interval.</p>
* temporary credentials for use. Temporary credentials cannot be extended or refreshed beyond * <p>If you use Amazon Web Services SDKs, SDKs handle the session token refreshes automatically to avoid service
* the original specified interval.</p> * interruptions when a session expires. We recommend that you use the Amazon Web Services SDKs to initiate and manage
* <p>If you use Amazon Web Services SDKs, SDKs handle the session token refreshes automatically to avoid * requests to the CreateSession API. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-optimizing-performance-guidelines-design-patterns.html#s3-express-optimizing-performance-session-authentication">Performance guidelines and design patterns</a> in the
* service interruptions when a session expires. We recommend that you use the Amazon Web Services SDKs to * <i>Amazon S3 User Guide</i>.</p>
* initiate and manage requests to the CreateSession API. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-optimizing-performance-guidelines-design-patterns.html#s3-express-optimizing-performance-session-authentication">Performance guidelines and design patterns</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* <note> * <note>
* <ul> * <ul>
* <li> * <li>
@@ -61,44 +59,41 @@ declare const CreateSessionCommand_base: {
* <li> * <li>
* <p> * <p>
* <b> * <b>
* <code>CopyObject</code> API operation</b> - * <code>CopyObject</code> API operation</b> - Unlike other
* Unlike other Zonal endpoint API operations, the <code>CopyObject</code> API operation doesn't use * Zonal endpoint API operations, the <code>CopyObject</code> API operation doesn't use the temporary security
* the temporary security credentials returned from the <code>CreateSession</code> * credentials returned from the <code>CreateSession</code> API operation for authentication and
* API operation for authentication and authorization. For information about * authorization. For information about authentication and authorization of the
* authentication and authorization of the <code>CopyObject</code> API operation on * <code>CopyObject</code> API operation on directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a>.</p>
* directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a>.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b> * <b>
* <code>HeadBucket</code> API operation</b> - * <code>HeadBucket</code> API operation</b> - Unlike other
* Unlike other Zonal endpoint API operations, the <code>HeadBucket</code> API operation doesn't use * Zonal endpoint API operations, the <code>HeadBucket</code> API operation doesn't use the temporary security
* the temporary security credentials returned from the <code>CreateSession</code> * credentials returned from the <code>CreateSession</code> API operation for authentication and
* API operation for authentication and authorization. For information about * authorization. For information about authentication and authorization of the
* authentication and authorization of the <code>HeadBucket</code> API operation on * <code>HeadBucket</code> API operation on directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html">HeadBucket</a>.</p>
* directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html">HeadBucket</a>.</p>
* </li> * </li>
* </ul> * </ul>
* </note> * </note>
* <dl> * <dl>
* <dt>Permissions</dt> * <dt>Permissions</dt>
* <dd> * <dd>
* <p>To obtain temporary security credentials, you must create * <p>To obtain temporary security credentials, you must create a bucket policy or an IAM identity-based policy that
* a bucket policy or an IAM identity-based policy that grants <code>s3express:CreateSession</code> * grants <code>s3express:CreateSession</code> permission to the bucket. In a policy, you can have
* permission to the bucket. In a policy, you can have the * the <code>s3express:SessionMode</code> condition key to control who can create a
* <code>s3express:SessionMode</code> condition key to control who can create a * <code>ReadWrite</code> or <code>ReadOnly</code> session. For more information about
* <code>ReadWrite</code> or <code>ReadOnly</code> session. For more information * <code>ReadWrite</code> or <code>ReadOnly</code> sessions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html#API_CreateSession_RequestParameters">
* about <code>ReadWrite</code> or <code>ReadOnly</code> sessions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html#API_CreateSession_RequestParameters">
* <code>x-amz-create-session-mode</code> * <code>x-amz-create-session-mode</code>
* </a>. For example policies, see * </a>. For example policies, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html">Example
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html">Example bucket policies for S3 Express One Zone</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html">Amazon Web Services Identity and Access Management (IAM) identity-based policies for * bucket policies for S3 Express One Zone</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html">Amazon Web Services Identity
* S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>. </p> * and Access Management (IAM) identity-based policies for S3 Express One Zone</a> in the
* <p>To grant cross-account access to Zonal endpoint API operations, the bucket policy should also * <i>Amazon S3 User Guide</i>. </p>
* grant both accounts the <code>s3express:CreateSession</code> permission.</p> * <p>To grant cross-account access to Zonal endpoint API operations, the bucket policy should also grant both
* accounts the <code>s3express:CreateSession</code> permission.</p>
* <p>If you want to encrypt objects with SSE-KMS, you must also have the * <p>If you want to encrypt objects with SSE-KMS, you must also have the
* <code>kms:GenerateDataKey</code> and the <code>kms:Decrypt</code> permissions * <code>kms:GenerateDataKey</code> and the <code>kms:Decrypt</code> permissions in IAM
* in IAM identity-based policies and KMS key policies for the target KMS * identity-based policies and KMS key policies for the target KMS key.</p>
* key.</p>
* </dd> * </dd>
* <dt>Encryption</dt> * <dt>Encryption</dt>
* <dd> * <dd>
@@ -30,17 +30,15 @@ declare const DeleteBucketAnalyticsConfigurationCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Deletes an analytics configuration for the bucket (specified by the analytics * <p>Deletes an analytics configuration for the bucket (specified by the analytics configuration
* configuration ID).</p> * ID).</p>
* <p>To use this operation, you must have permissions to perform the * <p>To use this operation, you must have permissions to perform the
* <code>s3:PutAnalyticsConfiguration</code> action. The bucket owner has this permission * <code>s3:PutAnalyticsConfiguration</code> action. The bucket owner has this permission by default. The
* by default. The bucket owner can grant this permission to others. For more information * bucket owner can grant this permission to others. For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to Your Amazon S3
* about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Resources</a>.</p>
* Access Permissions to Your Amazon S3 Resources</a>.</p>
* <p>For information about the Amazon S3 analytics feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon S3 Analytics Storage Class * <p>For information about the Amazon S3 analytics feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon S3 Analytics Storage Class
* Analysis</a>. </p> * Analysis</a>. </p>
* <p>The following operations are related to * <p>The following operations are related to <code>DeleteBucketAnalyticsConfiguration</code>:</p>
* <code>DeleteBucketAnalyticsConfiguration</code>:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -27,15 +27,15 @@ declare const DeleteBucketCommand_base: {
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
}; };
/** /**
* <p>Deletes the S3 bucket. All objects (including all object versions and delete markers) in * <p>Deletes the S3 bucket. All objects (including all object versions and delete markers) in the bucket
* the bucket must be deleted before the bucket itself can be deleted.</p> * must be deleted before the bucket itself can be deleted.</p>
* <note> * <note>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>Directory buckets</b> - If multipart * <b>Directory buckets</b> - If multipart uploads in a
* uploads in a directory bucket are in progress, you can't delete the bucket until * directory bucket are in progress, you can't delete the bucket until all the in-progress multipart
* all the in-progress multipart uploads are aborted or completed.</p> * uploads are aborted or completed.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
@@ -53,16 +53,14 @@ declare const DeleteBucketCommand_base: {
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - You * <b>General purpose bucket permissions</b> - You must have the
* must have the <code>s3:DeleteBucket</code> permission on the specified * <code>s3:DeleteBucket</code> permission on the specified bucket in a policy.</p>
* bucket in a policy.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory bucket permissions</b> - * <b>Directory bucket permissions</b> - You must have the
* You must have the <code>s3express:DeleteBucket</code> permission in * <code>s3express:DeleteBucket</code> permission in an IAM identity-based policy instead of a bucket policy.
* an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. * Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
* For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* </ul> * </ul>
* </dd> * </dd>
@@ -31,11 +31,10 @@ declare const DeleteBucketCorsCommand_base: {
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Deletes the <code>cors</code> configuration information set for the bucket.</p> * <p>Deletes the <code>cors</code> configuration information set for the bucket.</p>
* <p>To use this operation, you must have permission to perform the * <p>To use this operation, you must have permission to perform the <code>s3:PutBucketCORS</code> action.
* <code>s3:PutBucketCORS</code> action. The bucket owner has this permission by default * The bucket owner has this permission by default and can grant this permission to others. </p>
* and can grant this permission to others. </p> * <p>For information about <code>cors</code>, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling Cross-Origin Resource Sharing</a> in the
* <p>For information about <code>cors</code>, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling Cross-Origin Resource Sharing</a> in * <i>Amazon S3 User Guide</i>.</p>
* the <i>Amazon S3 User Guide</i>.</p>
* <p class="title"> * <p class="title">
* <b>Related Resources</b> * <b>Related Resources</b>
* </p> * </p>
@@ -27,22 +27,22 @@ declare const DeleteBucketEncryptionCommand_base: {
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
}; };
/** /**
* <p>This implementation of the DELETE action resets the default encryption for the bucket as * <p>This implementation of the DELETE action resets the default encryption for the bucket as server-side
* server-side encryption with Amazon S3 managed keys (SSE-S3).</p> * encryption with Amazon S3 managed keys (SSE-S3).</p>
* <note> * <note>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose buckets</b> - For information * <b>General purpose buckets</b> - For information about the bucket
* about the bucket default encryption feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon S3 Bucket Default * default encryption feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon S3 Bucket Default Encryption</a> in the
* Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> * <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory buckets</b> - * <b>Directory buckets</b> -
* For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS. For information about the default encryption * For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS. For information about the default encryption configuration in
* configuration in directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-bucket-encryption.html">Setting * directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-bucket-encryption.html">Setting default server-side
* default server-side encryption behavior for directory buckets</a>.</p> * encryption behavior for directory buckets</a>.</p>
* </li> * </li>
* </ul> * </ul>
* </note> * </note>
@@ -53,19 +53,17 @@ declare const DeleteBucketEncryptionCommand_base: {
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - The * <b>General purpose bucket permissions</b> - The
* <code>s3:PutEncryptionConfiguration</code> permission is required in a * <code>s3:PutEncryptionConfiguration</code> permission is required in a policy. The bucket
* policy. The bucket owner has this permission by default. The bucket owner * owner has this permission by default. The bucket owner can grant this permission to others.
* can grant this permission to others. For more information about permissions, * For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to Your
* see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access * Amazon S3 Resources</a>.</p>
* Permissions to Your Amazon S3 Resources</a>.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory bucket permissions</b> - * <b>Directory bucket permissions</b> - To grant access to
* To grant access to this API operation, you must have the * this API operation, you must have the <code>s3express:PutEncryptionConfiguration</code>
* <code>s3express:PutEncryptionConfiguration</code> permission in * permission in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.
* an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. * For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
* For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* </ul> * </ul>
* </dd> * </dd>
@@ -30,13 +30,11 @@ declare const DeleteBucketInventoryConfigurationCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Deletes an inventory configuration (identified by the inventory ID) from the * <p>Deletes an S3 Inventory configuration (identified by the inventory ID) from the bucket.</p>
* bucket.</p>
* <p>To use this operation, you must have permissions to perform the * <p>To use this operation, you must have permissions to perform the
* <code>s3:PutInventoryConfiguration</code> action. The bucket owner has this permission * <code>s3:PutInventoryConfiguration</code> action. The bucket owner has this permission by default. The
* by default. The bucket owner can grant this permission to others. For more information * bucket owner can grant this permission to others. For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to Your Amazon S3
* about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Resources</a>.</p>
* Access Permissions to Your Amazon S3 Resources</a>.</p>
* <p>For information about the Amazon S3 inventory feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon S3 Inventory</a>.</p> * <p>For information about the Amazon S3 inventory feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon S3 Inventory</a>.</p>
* <p>Operations related to <code>DeleteBucketInventoryConfiguration</code> include: </p> * <p>Operations related to <code>DeleteBucketInventoryConfiguration</code> include: </p>
* <ul> * <ul>
@@ -27,41 +27,36 @@ declare const DeleteBucketLifecycleCommand_base: {
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
}; };
/** /**
* <p>Deletes the lifecycle configuration from the specified bucket. Amazon S3 removes all the * <p>Deletes the lifecycle configuration from the specified bucket. Amazon S3 removes all the lifecycle
* lifecycle configuration rules in the lifecycle subresource associated with the bucket. Your * configuration rules in the lifecycle subresource associated with the bucket. Your objects never expire,
* objects never expire, and Amazon S3 no longer automatically deletes any objects on the basis of * and Amazon S3 no longer automatically deletes any objects on the basis of rules contained in the deleted
* rules contained in the deleted lifecycle configuration.</p> * lifecycle configuration.</p>
* <dl> * <dl>
* <dt>Permissions</dt> * <dt>Permissions</dt>
* <dd> * <dd>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - By * <b>General purpose bucket permissions</b> - By default, all Amazon S3
* default, all Amazon S3 resources are private, including buckets, objects, and * resources are private, including buckets, objects, and related subresources (for example,
* related subresources (for example, lifecycle configuration and website * lifecycle configuration and website configuration). Only the resource owner (that is, the
* configuration). Only the resource owner (that is, the Amazon Web Services account that * Amazon Web Services account that created it) can access the resource. The resource owner can optionally
* created it) can access the resource. The resource owner can optionally grant * grant access permissions to others by writing an access policy. For this operation, a user
* access permissions to others by writing an access policy. For this * must have the <code>s3:PutLifecycleConfiguration</code> permission.</p>
* operation, a user must have the <code>s3:PutLifecycleConfiguration</code> * <p>For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to Your
* permission.</p> * Amazon S3 Resources</a>.</p>
* <p>For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access
* Permissions to Your Amazon S3 Resources</a>.</p>
* </li> * </li>
* </ul> * </ul>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>Directory bucket permissions</b> - * <b>Directory bucket permissions</b> - You must have the
* You must have the <code>s3express:PutLifecycleConfiguration</code> * <code>s3express:PutLifecycleConfiguration</code> permission in an IAM identity-based policy
* permission in an IAM identity-based policy to use this operation. * to use this operation. Cross-account access to this API operation isn't supported. The
* Cross-account access to this API operation isn't supported. The resource * resource owner can optionally grant access permissions to others by creating a role or user
* owner can optionally grant access permissions to others by creating a role * for them as long as they are within the same account as the owner and resource.</p>
* or user for them as long as they are within the same account as the owner * <p>For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Authorizing Regional endpoint APIs with IAM</a> in the <i>Amazon S3 User
* and resource.</p> * Guide</i>.</p>
* <p>For more information about directory bucket policies and permissions, see
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Authorizing Regional endpoint APIs with IAM</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* <note> * <note>
* <p> * <p>
* <b>Directory buckets </b> - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format <code>https://s3express-control.<i>region-code</i>.amazonaws.com/<i>bucket-name</i> * <b>Directory buckets </b> - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format <code>https://s3express-control.<i>region-code</i>.amazonaws.com/<i>bucket-name</i>
@@ -78,12 +73,12 @@ declare const DeleteBucketLifecycleCommand_base: {
* <dt>HTTP Host header syntax</dt> * <dt>HTTP Host header syntax</dt>
* <dd> * <dd>
* <p> * <p>
* <b>Directory buckets </b> - The HTTP Host * <b>Directory buckets </b> - The HTTP Host header syntax is
* header syntax is * <code>s3express-control.<i>region</i>.amazonaws.com</code>.</p>
* <code>s3express-control.<i>region</i>.amazonaws.com</code>.</p>
* </dd> * </dd>
* </dl> * </dl>
* <p>For more information about the object expiration, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#intro-lifecycle-rules-actions">Elements to Describe Lifecycle Actions</a>.</p> * <p>For more information about the object expiration, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#intro-lifecycle-rules-actions">Elements to
* Describe Lifecycle Actions</a>.</p>
* <p>Related actions include:</p> * <p>Related actions include:</p>
* <ul> * <ul>
* <li> * <li>
@@ -0,0 +1,114 @@
import { Command as $Command } from "@smithy/smithy-client";
import { MetadataBearer as __MetadataBearer } from "@smithy/types";
import { DeleteBucketMetadataConfigurationRequest } from "../models/models_0";
import { S3ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../S3Client";
/**
* @public
*/
export type { __MetadataBearer };
export { $Command };
/**
* @public
*
* The input for {@link DeleteBucketMetadataConfigurationCommand}.
*/
export interface DeleteBucketMetadataConfigurationCommandInput extends DeleteBucketMetadataConfigurationRequest {
}
/**
* @public
*
* The output of {@link DeleteBucketMetadataConfigurationCommand}.
*/
export interface DeleteBucketMetadataConfigurationCommandOutput extends __MetadataBearer {
}
declare const DeleteBucketMetadataConfigurationCommand_base: {
new (input: DeleteBucketMetadataConfigurationCommandInput): import("@smithy/smithy-client").CommandImpl<DeleteBucketMetadataConfigurationCommandInput, DeleteBucketMetadataConfigurationCommandOutput, S3ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
new (input: DeleteBucketMetadataConfigurationCommandInput): import("@smithy/smithy-client").CommandImpl<DeleteBucketMetadataConfigurationCommandInput, DeleteBucketMetadataConfigurationCommandOutput, S3ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
};
/**
* <p> Deletes an S3 Metadata configuration from a general purpose bucket. For more information, see
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html">Accelerating
* data discovery with S3 Metadata</a> in the <i>Amazon S3 User Guide</i>. </p>
* <note>
* <p>You can use the V2 <code>DeleteBucketMetadataConfiguration</code> API operation with V1 or V2
* metadata configurations. However, if you try to use the V1
* <code>DeleteBucketMetadataTableConfiguration</code> API operation with V2 configurations, you
* will receive an HTTP <code>405 Method Not Allowed</code> error.</p>
* </note>
* <dl>
* <dt>Permissions</dt>
* <dd>
* <p>To use this operation, you must have the
* <code>s3:DeleteBucketMetadataTableConfiguration</code> permission. For more information, see
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html">Setting up permissions for configuring metadata tables</a> in the
* <i>Amazon S3 User Guide</i>. </p>
* <note>
* <p>The IAM policy action name is the same for the V1 and V2 API operations.</p>
* </note>
* </dd>
* </dl>
* <p>The following operations are related to <code>DeleteBucketMetadataConfiguration</code>:</p>
* <ul>
* <li>
* <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html">CreateBucketMetadataConfiguration</a>
* </p>
* </li>
* <li>
* <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataConfiguration.html">GetBucketMetadataConfiguration</a>
* </p>
* </li>
* <li>
* <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataInventoryTableConfiguration.html">UpdateBucketMetadataInventoryTableConfiguration</a>
* </p>
* </li>
* <li>
* <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataJournalTableConfiguration.html">UpdateBucketMetadataJournalTableConfiguration</a>
* </p>
* </li>
* </ul>
* @example
* Use a bare-bones client and the command you need to make an API call.
* ```javascript
* import { S3Client, DeleteBucketMetadataConfigurationCommand } from "@aws-sdk/client-s3"; // ES Modules import
* // const { S3Client, DeleteBucketMetadataConfigurationCommand } = require("@aws-sdk/client-s3"); // CommonJS import
* const client = new S3Client(config);
* const input = { // DeleteBucketMetadataConfigurationRequest
* Bucket: "STRING_VALUE", // required
* ExpectedBucketOwner: "STRING_VALUE",
* };
* const command = new DeleteBucketMetadataConfigurationCommand(input);
* const response = await client.send(command);
* // {};
*
* ```
*
* @param DeleteBucketMetadataConfigurationCommandInput - {@link DeleteBucketMetadataConfigurationCommandInput}
* @returns {@link DeleteBucketMetadataConfigurationCommandOutput}
* @see {@link DeleteBucketMetadataConfigurationCommandInput} for command's `input` shape.
* @see {@link DeleteBucketMetadataConfigurationCommandOutput} for command's `response` shape.
* @see {@link S3ClientResolvedConfig | config} for S3Client's `config` shape.
*
* @throws {@link S3ServiceException}
* <p>Base exception class for all service exceptions from S3 service.</p>
*
*
* @public
*/
export declare class DeleteBucketMetadataConfigurationCommand extends DeleteBucketMetadataConfigurationCommand_base {
/** @internal type navigation helper, not in runtime. */
protected static __types: {
api: {
input: DeleteBucketMetadataConfigurationRequest;
output: {};
};
sdk: {
input: DeleteBucketMetadataConfigurationCommandInput;
output: DeleteBucketMetadataConfigurationCommandOutput;
};
};
}
@@ -27,17 +27,35 @@ declare const DeleteBucketMetadataTableConfigurationCommand_base: {
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
}; };
/** /**
* <p> * <important>
* Deletes a metadata table configuration from a general purpose bucket. For more * <p>
* information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html">Accelerating data * We recommend that you delete your S3 Metadata configurations by using the V2
* discovery with S3 Metadata</a> in the <i>Amazon S3 User Guide</i>. </p> * <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataTableConfiguration.html">DeleteBucketMetadataTableConfiguration</a> API operation. We no longer recommend using
* the V1 <code>DeleteBucketMetadataTableConfiguration</code> API operation.
* </p>
* <p>If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete
* and re-create your configuration by using <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html">CreateBucketMetadataConfiguration</a> so that you can expire journal table records and create
* a live inventory table.</p>
* </important>
* <p> Deletes a V1 S3 Metadata configuration from a general purpose bucket. For more information, see
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html">Accelerating
* data discovery with S3 Metadata</a> in the <i>Amazon S3 User Guide</i>. </p>
* <note>
* <p>You can use the V2 <code>DeleteBucketMetadataConfiguration</code> API operation with V1 or V2
* metadata table configurations. However, if you try to use the V1
* <code>DeleteBucketMetadataTableConfiguration</code> API operation with V2 configurations, you
* will receive an HTTP <code>405 Method Not Allowed</code> error.</p>
* <p>Make sure that you update your processes to use the new V2 API operations
* (<code>CreateBucketMetadataConfiguration</code>, <code>GetBucketMetadataConfiguration</code>, and
* <code>DeleteBucketMetadataConfiguration</code>) instead of the V1 API operations. </p>
* </note>
* <dl> * <dl>
* <dt>Permissions</dt> * <dt>Permissions</dt>
* <dd> * <dd>
* <p>To use this operation, you must have the <code>s3:DeleteBucketMetadataTableConfiguration</code> permission. For more * <p>To use this operation, you must have the
* information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html">Setting up * <code>s3:DeleteBucketMetadataTableConfiguration</code> permission. For more information, see
* permissions for configuring metadata tables</a> in the * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html">Setting up permissions for configuring metadata tables</a> in the
* <i>Amazon S3 User Guide</i>. </p> * <i>Amazon S3 User Guide</i>. </p>
* </dd> * </dd>
* </dl> * </dl>
* <p>The following operations are related to <code>DeleteBucketMetadataTableConfiguration</code>:</p> * <p>The following operations are related to <code>DeleteBucketMetadataTableConfiguration</code>:</p>
@@ -30,18 +30,14 @@ declare const DeleteBucketMetricsConfigurationCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Deletes a metrics configuration for the Amazon CloudWatch request metrics (specified by the * <p>Deletes a metrics configuration for the Amazon CloudWatch request metrics (specified by the metrics
* metrics configuration ID) from the bucket. Note that this doesn't include the daily storage * configuration ID) from the bucket. Note that this doesn't include the daily storage metrics.</p>
* metrics.</p>
* <p> To use this operation, you must have permissions to perform the * <p> To use this operation, you must have permissions to perform the
* <code>s3:PutMetricsConfiguration</code> action. The bucket owner has this permission by * <code>s3:PutMetricsConfiguration</code> action. The bucket owner has this permission by default. The
* default. The bucket owner can grant this permission to others. For more information about * bucket owner can grant this permission to others. For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to Your Amazon S3
* permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Resources</a>.</p>
* Access Permissions to Your Amazon S3 Resources</a>.</p> * <p>For information about CloudWatch request metrics for Amazon S3, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring Metrics with Amazon CloudWatch</a>. </p>
* <p>For information about CloudWatch request metrics for Amazon S3, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring Metrics with * <p>The following operations are related to <code>DeleteBucketMetricsConfiguration</code>:</p>
* Amazon CloudWatch</a>. </p>
* <p>The following operations are related to
* <code>DeleteBucketMetricsConfiguration</code>:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -60,7 +56,8 @@ declare const DeleteBucketMetricsConfigurationCommand_base: {
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring Metrics with Amazon CloudWatch</a> * <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring
* Metrics with Amazon CloudWatch</a>
* </p> * </p>
* </li> * </li>
* </ul> * </ul>
@@ -30,13 +30,12 @@ declare const DeleteBucketOwnershipControlsCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Removes <code>OwnershipControls</code> for an Amazon S3 bucket. To use this operation, you * <p>Removes <code>OwnershipControls</code> for an Amazon S3 bucket. To use this operation, you must have the
* must have the <code>s3:PutBucketOwnershipControls</code> permission. For more information * <code>s3:PutBucketOwnershipControls</code> permission. For more information about Amazon S3 permissions,
* about Amazon S3 permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying Permissions in a * see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
* Policy</a>.</p> * Permissions in a Policy</a>.</p>
* <p>For information about Amazon S3 Object Ownership, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html">Using Object Ownership</a>. </p> * <p>For information about Amazon S3 Object Ownership, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html">Using Object Ownership</a>. </p>
* <p>The following operations are related to * <p>The following operations are related to <code>DeleteBucketOwnershipControls</code>:</p>
* <code>DeleteBucketOwnershipControls</code>:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -39,38 +39,35 @@ declare const DeleteBucketPolicyCommand_base: {
* <dl> * <dl>
* <dt>Permissions</dt> * <dt>Permissions</dt>
* <dd> * <dd>
* <p>If you are using an identity other than the root user of the Amazon Web Services account that * <p>If you are using an identity other than the root user of the Amazon Web Services account that owns the
* owns the bucket, the calling identity must both have the * bucket, the calling identity must both have the <code>DeleteBucketPolicy</code> permissions on the
* <code>DeleteBucketPolicy</code> permissions on the specified bucket and belong * specified bucket and belong to the bucket owner's account in order to use this operation.</p>
* to the bucket owner's account in order to use this operation.</p> * <p>If you don't have <code>DeleteBucketPolicy</code> permissions, Amazon S3 returns a <code>403 Access
* <p>If you don't have <code>DeleteBucketPolicy</code> permissions, Amazon S3 returns a * Denied</code> error. If you have the correct permissions, but you're not using an identity that
* <code>403 Access Denied</code> error. If you have the correct permissions, but * belongs to the bucket owner's account, Amazon S3 returns a <code>405 Method Not Allowed</code>
* you're not using an identity that belongs to the bucket owner's account, Amazon S3 * error.</p>
* returns a <code>405 Method Not Allowed</code> error.</p>
* <important> * <important>
* <p>To ensure that bucket owners don't inadvertently lock themselves out of * <p>To ensure that bucket owners don't inadvertently lock themselves out of their own buckets,
* their own buckets, the root principal in a bucket owner's Amazon Web Services account can * the root principal in a bucket owner's Amazon Web Services account can perform the
* perform the <code>GetBucketPolicy</code>, <code>PutBucketPolicy</code>, and * <code>GetBucketPolicy</code>, <code>PutBucketPolicy</code>, and
* <code>DeleteBucketPolicy</code> API actions, even if their bucket policy * <code>DeleteBucketPolicy</code> API actions, even if their bucket policy explicitly denies the
* explicitly denies the root principal's access. Bucket owner root principals can * root principal's access. Bucket owner root principals can only be blocked from performing these
* only be blocked from performing these API actions by VPC endpoint policies and * API actions by VPC endpoint policies and Amazon Web Services Organizations policies.</p>
* Amazon Web Services Organizations policies.</p>
* </important> * </important>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - The * <b>General purpose bucket permissions</b> - The
* <code>s3:DeleteBucketPolicy</code> permission is required in a policy. * <code>s3:DeleteBucketPolicy</code> permission is required in a policy. For more information
* For more information about general purpose buckets bucket policies, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using Bucket Policies and User Policies</a> in the * about general purpose buckets bucket policies, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using Bucket Policies and User
* <i>Amazon S3 User Guide</i>.</p> * Policies</a> in the <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory bucket permissions</b> - * <b>Directory bucket permissions</b> - To grant access to
* To grant access to this API operation, you must have the * this API operation, you must have the <code>s3express:DeleteBucketPolicy</code> permission in
* <code>s3express:DeleteBucketPolicy</code> permission in * an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.
* an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. * For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
* For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* </ul> * </ul>
* </dd> * </dd>
@@ -32,16 +32,14 @@ declare const DeleteBucketReplicationCommand_base: {
* </note> * </note>
* <p> Deletes the replication configuration from the bucket.</p> * <p> Deletes the replication configuration from the bucket.</p>
* <p>To use this operation, you must have permissions to perform the * <p>To use this operation, you must have permissions to perform the
* <code>s3:PutReplicationConfiguration</code> action. The bucket owner has these * <code>s3:PutReplicationConfiguration</code> action. The bucket owner has these permissions by default
* permissions by default and can grant it to others. For more information about permissions, * and can grant it to others. For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to Your Amazon S3
* see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Resources</a>. </p>
* Access Permissions to Your Amazon S3 Resources</a>. </p>
* <note> * <note>
* <p>It can take a while for the deletion of a replication configuration to fully * <p>It can take a while for the deletion of a replication configuration to fully propagate.</p>
* propagate.</p>
* </note> * </note>
* <p> For information about replication configuration, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> in the * <p> For information about replication configuration, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> in the
* <i>Amazon S3 User Guide</i>.</p> * <i>Amazon S3 User Guide</i>.</p>
* <p>The following operations are related to <code>DeleteBucketReplication</code>:</p> * <p>The following operations are related to <code>DeleteBucketReplication</code>:</p>
* <ul> * <ul>
* <li> * <li>
@@ -31,9 +31,8 @@ declare const DeleteBucketTaggingCommand_base: {
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Deletes the tags from the bucket.</p> * <p>Deletes the tags from the bucket.</p>
* <p>To use this operation, you must have permission to perform the * <p>To use this operation, you must have permission to perform the <code>s3:PutBucketTagging</code>
* <code>s3:PutBucketTagging</code> action. By default, the bucket owner has this * action. By default, the bucket owner has this permission and can grant this permission to others. </p>
* permission and can grant this permission to others. </p>
* <p>The following operations are related to <code>DeleteBucketTagging</code>:</p> * <p>The following operations are related to <code>DeleteBucketTagging</code>:</p>
* <ul> * <ul>
* <li> * <li>
@@ -30,16 +30,15 @@ declare const DeleteBucketWebsiteCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>This action removes the website configuration for a bucket. Amazon S3 returns a <code>200 * <p>This action removes the website configuration for a bucket. Amazon S3 returns a <code>200 OK</code>
* OK</code> response upon successfully deleting a website configuration on the specified * response upon successfully deleting a website configuration on the specified bucket. You will get a
* bucket. You will get a <code>200 OK</code> response if the website configuration you are * <code>200 OK</code> response if the website configuration you are trying to delete does not exist on
* trying to delete does not exist on the bucket. Amazon S3 returns a <code>404</code> response if * the bucket. Amazon S3 returns a <code>404</code> response if the bucket specified in the request does not
* the bucket specified in the request does not exist.</p> * exist.</p>
* <p>This DELETE action requires the <code>S3:DeleteBucketWebsite</code> permission. By * <p>This DELETE action requires the <code>S3:DeleteBucketWebsite</code> permission. By default, only the
* default, only the bucket owner can delete the website configuration attached to a bucket. * bucket owner can delete the website configuration attached to a bucket. However, bucket owners can grant
* However, bucket owners can grant other users permission to delete the website configuration * other users permission to delete the website configuration by writing a bucket policy granting them the
* by writing a bucket policy granting them the <code>S3:DeleteBucketWebsite</code> * <code>S3:DeleteBucketWebsite</code> permission. </p>
* permission. </p>
* <p>For more information about hosting websites, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting Websites on Amazon S3</a>. </p> * <p>For more information about hosting websites, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting Websites on Amazon S3</a>. </p>
* <p>The following operations are related to <code>DeleteBucketWebsite</code>:</p> * <p>The following operations are related to <code>DeleteBucketWebsite</code>:</p>
* <ul> * <ul>
@@ -33,18 +33,30 @@ declare const DeleteObjectCommand_base: {
* <p>If bucket versioning is not enabled, the operation permanently deletes the object.</p> * <p>If bucket versioning is not enabled, the operation permanently deletes the object.</p>
* </li> * </li>
* <li> * <li>
* <p>If bucket versioning is enabled, the operation inserts a delete marker, which becomes the current version of the object. To permanently delete an object in a versioned bucket, you must include the objects <code>versionId</code> in the request. For more information about versioning-enabled buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeletingObjectVersions.html">Deleting object versions from a versioning-enabled bucket</a>.</p> * <p>If bucket versioning is enabled, the operation inserts a delete marker, which becomes the
* current version of the object. To permanently delete an object in a versioned bucket, you must
* include the objects <code>versionId</code> in the request. For more information about
* versioning-enabled buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeletingObjectVersions.html">Deleting object versions from a
* versioning-enabled bucket</a>.</p>
* </li> * </li>
* <li> * <li>
* <p>If bucket versioning is suspended, the operation removes the object that has a null <code>versionId</code>, if there is one, and inserts a delete marker that becomes the current version of the object. If there isn't an object with a null <code>versionId</code>, and all versions of the object have a <code>versionId</code>, Amazon S3 does not remove the object and only inserts a delete marker. To permanently delete an object that has a <code>versionId</code>, you must include the objects <code>versionId</code> in the request. For more information about versioning-suspended buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeletingObjectsfromVersioningSuspendedBuckets.html">Deleting objects from versioning-suspended buckets</a>.</p> * <p>If bucket versioning is suspended, the operation removes the object that has a null
* <code>versionId</code>, if there is one, and inserts a delete marker that becomes the current
* version of the object. If there isn't an object with a null <code>versionId</code>, and all versions
* of the object have a <code>versionId</code>, Amazon S3 does not remove the object and only inserts a
* delete marker. To permanently delete an object that has a <code>versionId</code>, you must include
* the objects <code>versionId</code> in the request. For more information about versioning-suspended
* buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeletingObjectsfromVersioningSuspendedBuckets.html">Deleting
* objects from versioning-suspended buckets</a>.</p>
* </li> * </li>
* </ul> * </ul>
* <note> * <note>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>Directory buckets</b> - S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the <code>null</code> value of the version ID is supported by directory buckets. You can only specify <code>null</code> * <b>Directory buckets</b> - S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the <code>null</code> value of the version ID is supported by directory buckets.
* to the <code>versionId</code> query parameter in the request.</p> * You can only specify <code>null</code> to the <code>versionId</code> query parameter in the
* request.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
@@ -56,27 +68,25 @@ declare const DeleteObjectCommand_base: {
* </ul> * </ul>
* </note> * </note>
* <p>To remove a specific version, you must use the <code>versionId</code> query parameter. Using this * <p>To remove a specific version, you must use the <code>versionId</code> query parameter. Using this
* query parameter permanently deletes the version. If the object deleted is a delete marker, Amazon S3 * query parameter permanently deletes the version. If the object deleted is a delete marker, Amazon S3 sets the
* sets the response header <code>x-amz-delete-marker</code> to true. </p> * response header <code>x-amz-delete-marker</code> to true. </p>
* <p>If the object you want to delete is in a bucket where the bucket versioning * <p>If the object you want to delete is in a bucket where the bucket versioning configuration is MFA
* configuration is MFA Delete enabled, you must include the <code>x-amz-mfa</code> request * Delete enabled, you must include the <code>x-amz-mfa</code> request header in the DELETE
* header in the DELETE <code>versionId</code> request. Requests that include * <code>versionId</code> request. Requests that include <code>x-amz-mfa</code> must use HTTPS. For more
* <code>x-amz-mfa</code> must use HTTPS. For more information about MFA Delete, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html">Using MFA Delete</a> in the <i>Amazon S3 * information about MFA Delete, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html">Using MFA Delete</a> in the <i>Amazon S3 User
* User Guide</i>. To see sample * Guide</i>. To see sample requests that use versioning, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete">Sample Request</a>. </p>
* requests that use versioning, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete">Sample
* Request</a>. </p>
* <note> * <note>
* <p> * <p>
* <b>Directory buckets</b> - MFA delete is not supported by directory buckets.</p> * <b>Directory buckets</b> - MFA delete is not supported by directory buckets.</p>
* </note> * </note>
* <p>You can delete objects by explicitly calling DELETE Object or calling * <p>You can delete objects by explicitly calling DELETE Object or calling (<a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html">PutBucketLifecycle</a>) to enable Amazon S3 to
* (<a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html">PutBucketLifecycle</a>) to enable Amazon S3 to remove them for you. If you want to block * remove them for you. If you want to block users or accounts from removing or deleting objects from your
* users or accounts from removing or deleting objects from your bucket, you must deny them * bucket, you must deny them the <code>s3:DeleteObject</code>, <code>s3:DeleteObjectVersion</code>, and
* the <code>s3:DeleteObject</code>, <code>s3:DeleteObjectVersion</code>, and * <code>s3:PutLifeCycleConfiguration</code> actions. </p>
* <code>s3:PutLifeCycleConfiguration</code> actions. </p>
* <note> * <note>
* <p> * <p>
* <b>Directory buckets</b> - S3 Lifecycle is not supported by directory buckets.</p> * <b>Directory buckets</b> -
* S3 Lifecycle is not supported by directory buckets.</p>
* </note> * </note>
* <dl> * <dl>
* <dt>Permissions</dt> * <dt>Permissions</dt>
@@ -84,20 +94,24 @@ declare const DeleteObjectCommand_base: {
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - The following permissions are required in your policies when your * <b>General purpose bucket permissions</b> - The following
* <code>DeleteObjects</code> request includes specific headers.</p> * permissions are required in your policies when your <code>DeleteObjects</code> request
* includes specific headers.</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b> * <b>
* <code>s3:DeleteObject</code> * <code>s3:DeleteObject</code>
* </b> - To delete an object from a bucket, you must always have the <code>s3:DeleteObject</code> permission.</p> * </b> - To delete an
* object from a bucket, you must always have the <code>s3:DeleteObject</code>
* permission.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b> * <b>
* <code>s3:DeleteObjectVersion</code> * <code>s3:DeleteObjectVersion</code>
* </b> - To delete a specific version of an object from a versioning-enabled bucket, you must have the <code>s3:DeleteObjectVersion</code> permission.</p> * </b> - To delete a specific version of an object from a versioning-enabled
* bucket, you must have the <code>s3:DeleteObjectVersion</code> permission.</p>
* </li> * </li>
* </ul> * </ul>
* </li> * </li>
@@ -30,13 +30,13 @@ declare const DeleteObjectTaggingCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Removes the entire tag set from the specified object. For more information about * <p>Removes the entire tag set from the specified object. For more information about managing object
* managing object tags, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html"> Object Tagging</a>.</p> * tags, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html"> Object
* <p>To use this operation, you must have permission to perform the * Tagging</a>.</p>
* <code>s3:DeleteObjectTagging</code> action.</p> * <p>To use this operation, you must have permission to perform the <code>s3:DeleteObjectTagging</code>
* <p>To delete tags of a specific object version, add the <code>versionId</code> query * action.</p>
* parameter in the request. You will need permission for the * <p>To delete tags of a specific object version, add the <code>versionId</code> query parameter in the
* <code>s3:DeleteObjectVersionTagging</code> action.</p> * request. You will need permission for the <code>s3:DeleteObjectVersionTagging</code> action.</p>
* <p>The following operations are related to <code>DeleteObjectTagging</code>:</p> * <p>The following operations are related to <code>DeleteObjectTagging</code>:</p>
* <ul> * <ul>
* <li> * <li>
@@ -27,47 +27,44 @@ declare const DeleteObjectsCommand_base: {
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
}; };
/** /**
* <p>This operation enables you to delete multiple objects from a bucket using a single HTTP * <p>This operation enables you to delete multiple objects from a bucket using a single HTTP request. If
* request. If you know the object keys that you want to delete, then this operation provides * you know the object keys that you want to delete, then this operation provides a suitable alternative to
* a suitable alternative to sending individual delete requests, reducing per-request * sending individual delete requests, reducing per-request overhead.</p>
* overhead.</p> * <p>The request can contain a list of up to 1,000 keys that you want to delete. In the XML, you provide
* <p>The request can contain a list of up to 1,000 keys that you want to delete. In the XML, you * the object key names, and optionally, version IDs if you want to delete a specific version of the object
* provide the object key names, and optionally, version IDs if you want to delete a specific * from a versioning-enabled bucket. For each key, Amazon S3 performs a delete operation and returns the result
* version of the object from a versioning-enabled bucket. For each key, Amazon S3 performs a * of that delete, success or failure, in the response. If the object specified in the request isn't found,
* delete operation and returns the result of that delete, success or failure, in the response. * Amazon S3 confirms the deletion by returning the result as deleted.</p>
* If the object specified in the request isn't found, Amazon S3 confirms the deletion by returning the result as deleted.</p>
* <note> * <note>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>Directory buckets</b> - * <b>Directory buckets</b> -
* S3 Versioning isn't enabled and supported for directory buckets.</p> * S3 Versioning isn't enabled and supported for directory buckets.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory buckets</b> - * <b>Directory buckets</b> - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format <code>https://<i>amzn-s3-demo-bucket</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com/<i>key-name</i>
* For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format <code>https://<i>amzn-s3-demo-bucket</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com/<i>key-name</i>
* </code>. Path-style requests are not supported. For more information about endpoints in Availability Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html">Regional and Zonal endpoints for directory buckets in Availability Zones</a> in the * </code>. Path-style requests are not supported. For more information about endpoints in Availability Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html">Regional and Zonal endpoints for directory buckets in Availability Zones</a> in the
* <i>Amazon S3 User Guide</i>. For more information about endpoints in Local Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html">Concepts for directory buckets in Local Zones</a> in the * <i>Amazon S3 User Guide</i>. For more information about endpoints in Local Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html">Concepts for directory buckets in Local Zones</a> in the
* <i>Amazon S3 User Guide</i>.</p> * <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* </ul> * </ul>
* </note> * </note>
* <p>The operation supports two modes for the response: verbose and quiet. By default, the * <p>The operation supports two modes for the response: verbose and quiet. By default, the operation uses
* operation uses verbose mode in which the response includes the result of deletion of each * verbose mode in which the response includes the result of deletion of each key in your request. In quiet
* key in your request. In quiet mode the response includes only keys where the delete * mode the response includes only keys where the delete operation encountered an error. For a successful
* operation encountered an error. For a successful deletion in a quiet mode, the operation * deletion in a quiet mode, the operation does not return any information about the delete in the response
* does not return any information about the delete in the response body.</p> * body.</p>
* <p>When performing this action on an MFA Delete enabled bucket, that attempts to delete any * <p>When performing this action on an MFA Delete enabled bucket, that attempts to delete any versioned
* versioned objects, you must include an MFA token. If you do not provide one, the entire * objects, you must include an MFA token. If you do not provide one, the entire request will fail, even if
* request will fail, even if there are non-versioned objects you are trying to delete. If you * there are non-versioned objects you are trying to delete. If you provide an invalid token, whether there
* provide an invalid token, whether there are versioned keys in the request or not, the * are versioned keys in the request or not, the entire Multi-Object Delete request will fail. For
* entire Multi-Object Delete request will fail. For information about MFA Delete, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html#MultiFactorAuthenticationDelete">MFA * information about MFA Delete, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html#MultiFactorAuthenticationDelete">MFA Delete</a> in the
* Delete</a> in the <i>Amazon S3 User Guide</i>.</p> * <i>Amazon S3 User Guide</i>.</p>
* <note> * <note>
* <p> * <p>
* <b>Directory buckets</b> - * <b>Directory buckets</b> - MFA delete is not supported by directory buckets.</p>
* MFA delete is not supported by directory buckets.</p>
* </note> * </note>
* <dl> * <dl>
* <dt>Permissions</dt> * <dt>Permissions</dt>
@@ -75,25 +72,24 @@ declare const DeleteObjectsCommand_base: {
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - The * <b>General purpose bucket permissions</b> - The following
* following permissions are required in your policies when your * permissions are required in your policies when your <code>DeleteObjects</code> request
* <code>DeleteObjects</code> request includes specific headers.</p> * includes specific headers.</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b> * <b>
* <code>s3:DeleteObject</code> * <code>s3:DeleteObject</code>
* </b> * </b> - To delete an
* - To delete an object from a bucket, you must always specify * object from a bucket, you must always specify the <code>s3:DeleteObject</code>
* the <code>s3:DeleteObject</code> permission.</p> * permission.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b> * <b>
* <code>s3:DeleteObjectVersion</code> * <code>s3:DeleteObjectVersion</code>
* </b> - To delete a specific version of an object from a * </b> - To delete a specific version of an object from a versioning-enabled
* versioning-enabled bucket, you must specify the * bucket, you must specify the <code>s3:DeleteObjectVersion</code> permission.</p>
* <code>s3:DeleteObjectVersion</code> permission.</p>
* </li> * </li>
* </ul> * </ul>
* </li> * </li>
@@ -113,19 +109,16 @@ declare const DeleteObjectsCommand_base: {
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket</b> - The Content-MD5 * <b>General purpose bucket</b> - The Content-MD5 request header
* request header is required for all Multi-Object Delete requests. Amazon S3 uses * is required for all Multi-Object Delete requests. Amazon S3 uses the header value to ensure that
* the header value to ensure that your request body has not been altered in * your request body has not been altered in transit.</p>
* transit.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory bucket</b> - The * <b>Directory bucket</b> - The Content-MD5 request header
* Content-MD5 request header or a additional checksum request header * or a additional checksum request header (including <code>x-amz-checksum-crc32</code>,
* (including <code>x-amz-checksum-crc32</code>, * <code>x-amz-checksum-crc32c</code>, <code>x-amz-checksum-sha1</code>, or
* <code>x-amz-checksum-crc32c</code>, <code>x-amz-checksum-sha1</code>, or * <code>x-amz-checksum-sha256</code>) is required for all Multi-Object Delete requests.</p>
* <code>x-amz-checksum-sha256</code>) is required for all Multi-Object
* Delete requests.</p>
* </li> * </li>
* </ul> * </ul>
* </dd> * </dd>
@@ -30,16 +30,16 @@ declare const DeletePublicAccessBlockCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Removes the <code>PublicAccessBlock</code> configuration for an Amazon S3 bucket. To use this * <p>Removes the <code>PublicAccessBlock</code> configuration for an Amazon S3 bucket. To use this operation,
* operation, you must have the <code>s3:PutBucketPublicAccessBlock</code> permission. For * you must have the <code>s3:PutBucketPublicAccessBlock</code> permission. For more information about
* more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to Your Amazon S3
* Access Permissions to Your Amazon S3 Resources</a>.</p> * Resources</a>.</p>
* <p>The following operations are related to <code>DeletePublicAccessBlock</code>:</p> * <p>The following operations are related to <code>DeletePublicAccessBlock</code>:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html">Using Amazon S3 Block * <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html">Using
* Public Access</a> * Amazon S3 Block Public Access</a>
* </p> * </p>
* </li> * </li>
* <li> * <li>
@@ -30,25 +30,22 @@ declare const GetBucketAccelerateConfigurationCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>This implementation of the GET action uses the <code>accelerate</code> subresource to * <p>This implementation of the GET action uses the <code>accelerate</code> subresource to return the
* return the Transfer Acceleration state of a bucket, which is either <code>Enabled</code> or * Transfer Acceleration state of a bucket, which is either <code>Enabled</code> or <code>Suspended</code>.
* <code>Suspended</code>. Amazon S3 Transfer Acceleration is a bucket-level feature that * Amazon S3 Transfer Acceleration is a bucket-level feature that enables you to perform faster data transfers
* enables you to perform faster data transfers to and from Amazon S3.</p> * to and from Amazon S3.</p>
* <p>To use this operation, you must have permission to perform the * <p>To use this operation, you must have permission to perform the
* <code>s3:GetAccelerateConfiguration</code> action. The bucket owner has this permission * <code>s3:GetAccelerateConfiguration</code> action. The bucket owner has this permission by default.
* by default. The bucket owner can grant this permission to others. For more information * The bucket owner can grant this permission to others. For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to your Amazon S3
* about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Resources</a> in the <i>Amazon S3 User Guide</i>.</p>
* Access Permissions to your Amazon S3 Resources</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* <p>You set the Transfer Acceleration state of an existing bucket to <code>Enabled</code> or * <p>You set the Transfer Acceleration state of an existing bucket to <code>Enabled</code> or
* <code>Suspended</code> by using the <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html">PutBucketAccelerateConfiguration</a> operation. </p> * <code>Suspended</code> by using the <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html">PutBucketAccelerateConfiguration</a> operation. </p>
* <p>A GET <code>accelerate</code> request does not return a state value for a bucket that * <p>A GET <code>accelerate</code> request does not return a state value for a bucket that has no
* has no transfer acceleration state. A bucket has no Transfer Acceleration state if a state * transfer acceleration state. A bucket has no Transfer Acceleration state if a state has never been set
* has never been set on the bucket. </p> * on the bucket. </p>
* <p>For more information about transfer acceleration, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html">Transfer Acceleration</a> in * <p>For more information about transfer acceleration, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html">Transfer Acceleration</a> in the
* the Amazon S3 User Guide.</p> * Amazon S3 User Guide.</p>
* <p>The following operations are related to * <p>The following operations are related to <code>GetBucketAccelerateConfiguration</code>:</p>
* <code>GetBucketAccelerateConfiguration</code>:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -37,23 +37,21 @@ declare const GetBucketAclCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>This implementation of the <code>GET</code> action uses the <code>acl</code> subresource * <p>This implementation of the <code>GET</code> action uses the <code>acl</code> subresource to return
* to return the access control list (ACL) of a bucket. To use <code>GET</code> to return the * the access control list (ACL) of a bucket. To use <code>GET</code> to return the ACL of the bucket, you
* ACL of the bucket, you must have the <code>READ_ACP</code> access to the bucket. If * must have the <code>READ_ACP</code> access to the bucket. If <code>READ_ACP</code> permission is granted
* <code>READ_ACP</code> permission is granted to the anonymous user, you can return the * to the anonymous user, you can return the ACL of the bucket without using an authorization
* ACL of the bucket without using an authorization header.</p> * header.</p>
* <p>When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.</p> * <p>When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.</p>
* <p>When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. * <p>When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name.
* If the Object Lambda access point alias in a request is not valid, the error code <code>InvalidAccessPointAliasError</code> is returned. * If the Object Lambda access point alias in a request is not valid, the error code <code>InvalidAccessPointAliasError</code> is returned.
* For more information about <code>InvalidAccessPointAliasError</code>, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList">List of * For more information about <code>InvalidAccessPointAliasError</code>, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList">List of
* Error Codes</a>.</p> * Error Codes</a>.</p>
* <note> * <note>
* <p>If your bucket uses the bucket owner enforced setting for S3 Object Ownership, * <p>If your bucket uses the bucket owner enforced setting for S3 Object Ownership, requests to read
* requests to read ACLs are still supported and return the * ACLs are still supported and return the <code>bucket-owner-full-control</code> ACL with the owner
* <code>bucket-owner-full-control</code> ACL with the owner being the account that * being the account that created the bucket. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html"> Controlling object ownership and
* created the bucket. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html"> Controlling object * disabling ACLs</a> in the <i>Amazon S3 User Guide</i>.</p>
* ownership and disabling ACLs</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* </note> * </note>
* <p>The following operations are related to <code>GetBucketAcl</code>:</p> * <p>The following operations are related to <code>GetBucketAcl</code>:</p>
* <ul> * <ul>
@@ -30,18 +30,15 @@ declare const GetBucketAnalyticsConfigurationCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>This implementation of the GET action returns an analytics configuration (identified by * <p>This implementation of the GET action returns an analytics configuration (identified by the
* the analytics configuration ID) from the bucket.</p> * analytics configuration ID) from the bucket.</p>
* <p>To use this operation, you must have permissions to perform the * <p>To use this operation, you must have permissions to perform the
* <code>s3:GetAnalyticsConfiguration</code> action. The bucket owner has this permission * <code>s3:GetAnalyticsConfiguration</code> action. The bucket owner has this permission by default. The
* by default. The bucket owner can grant this permission to others. For more information * bucket owner can grant this permission to others. For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources"> Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to Your Amazon S3
* about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources"> Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Resources</a> in the <i>Amazon S3 User Guide</i>. </p>
* Access Permissions to Your Amazon S3 Resources</a> in the * <p>For information about Amazon S3 analytics feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon S3 Analytics Storage Class Analysis</a>
* <i>Amazon S3 User Guide</i>. </p> * in the <i>Amazon S3 User Guide</i>.</p>
* <p>For information about Amazon S3 analytics feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon S3 Analytics Storage Class * <p>The following operations are related to <code>GetBucketAnalyticsConfiguration</code>:</p>
* Analysis</a> in the <i>Amazon S3 User Guide</i>.</p>
* <p>The following operations are related to
* <code>GetBucketAnalyticsConfiguration</code>:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -31,17 +31,15 @@ declare const GetBucketCorsCommand_base: {
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Returns the Cross-Origin Resource Sharing (CORS) configuration information set for the * <p>Returns the Cross-Origin Resource Sharing (CORS) configuration information set for the
* bucket.</p> * bucket.</p>
* <p> To use this operation, you must have permission to perform the * <p> To use this operation, you must have permission to perform the <code>s3:GetBucketCORS</code>
* <code>s3:GetBucketCORS</code> action. By default, the bucket owner has this permission * action. By default, the bucket owner has this permission and can grant it to others.</p>
* and can grant it to others.</p>
* <p>When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.</p> * <p>When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.</p>
* <p>When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. * <p>When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name.
* If the Object Lambda access point alias in a request is not valid, the error code <code>InvalidAccessPointAliasError</code> is returned. * If the Object Lambda access point alias in a request is not valid, the error code <code>InvalidAccessPointAliasError</code> is returned.
* For more information about <code>InvalidAccessPointAliasError</code>, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList">List of * For more information about <code>InvalidAccessPointAliasError</code>, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList">List of
* Error Codes</a>.</p> * Error Codes</a>.</p>
* <p> For more information about CORS, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html"> Enabling Cross-Origin Resource * <p> For more information about CORS, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html"> Enabling Cross-Origin Resource Sharing</a>.</p>
* Sharing</a>.</p>
* <p>The following operations are related to <code>GetBucketCors</code>:</p> * <p>The following operations are related to <code>GetBucketCors</code>:</p>
* <ul> * <ul>
* <li> * <li>
@@ -27,23 +27,22 @@ declare const GetBucketEncryptionCommand_base: {
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
}; };
/** /**
* <p>Returns the default encryption configuration for an Amazon S3 bucket. By default, all buckets * <p>Returns the default encryption configuration for an Amazon S3 bucket. By default, all buckets have a
* have a default encryption configuration that uses server-side encryption with Amazon S3 managed * default encryption configuration that uses server-side encryption with Amazon S3 managed keys (SSE-S3). </p>
* keys (SSE-S3). </p>
* <note> * <note>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose buckets</b> - For information * <b>General purpose buckets</b> - For information about the bucket
* about the bucket default encryption feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon S3 Bucket Default * default encryption feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon S3 Bucket Default Encryption</a> in the
* Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> * <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory buckets</b> - * <b>Directory buckets</b> -
* For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS. For information about the default encryption * For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS. For information about the default encryption configuration in
* configuration in directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-bucket-encryption.html">Setting * directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-bucket-encryption.html">Setting default server-side
* default server-side encryption behavior for directory buckets</a>.</p> * encryption behavior for directory buckets</a>.</p>
* </li> * </li>
* </ul> * </ul>
* </note> * </note>
@@ -54,19 +53,17 @@ declare const GetBucketEncryptionCommand_base: {
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - The * <b>General purpose bucket permissions</b> - The
* <code>s3:GetEncryptionConfiguration</code> permission is required in a * <code>s3:GetEncryptionConfiguration</code> permission is required in a policy. The bucket
* policy. The bucket owner has this permission by default. The bucket owner * owner has this permission by default. The bucket owner can grant this permission to others.
* can grant this permission to others. For more information about permissions, * For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to Your
* see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access * Amazon S3 Resources</a>.</p>
* Permissions to Your Amazon S3 Resources</a>.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory bucket permissions</b> - * <b>Directory bucket permissions</b> - To grant access to
* To grant access to this API operation, you must have the * this API operation, you must have the <code>s3express:GetEncryptionConfiguration</code>
* <code>s3express:GetEncryptionConfiguration</code> permission in * permission in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.
* an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. * For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
* For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* </ul> * </ul>
* </dd> * </dd>
@@ -30,16 +30,14 @@ declare const GetBucketInventoryConfigurationCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Returns an inventory configuration (identified by the inventory configuration ID) from * <p>Returns an S3 Inventory configuration (identified by the inventory configuration ID) from the
* the bucket.</p> * bucket.</p>
* <p>To use this operation, you must have permissions to perform the * <p>To use this operation, you must have permissions to perform the
* <code>s3:GetInventoryConfiguration</code> action. The bucket owner has this permission * <code>s3:GetInventoryConfiguration</code> action. The bucket owner has this permission by default and
* by default and can grant this permission to others. For more information about permissions, * can grant this permission to others. For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to Your Amazon S3
* see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Resources</a>.</p>
* Access Permissions to Your Amazon S3 Resources</a>.</p>
* <p>For information about the Amazon S3 inventory feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon S3 Inventory</a>.</p> * <p>For information about the Amazon S3 inventory feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon S3 Inventory</a>.</p>
* <p>The following operations are related to * <p>The following operations are related to <code>GetBucketInventoryConfiguration</code>:</p>
* <code>GetBucketInventoryConfiguration</code>:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -27,19 +27,17 @@ declare const GetBucketLifecycleConfigurationCommand_base: {
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
}; };
/** /**
* <p>Returns the lifecycle configuration information set on the bucket. For information about * <p>Returns the lifecycle configuration information set on the bucket. For information about lifecycle
* lifecycle configuration, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html">Object Lifecycle * configuration, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html">Object Lifecycle Management</a>.</p>
* Management</a>.</p> * <p>Bucket lifecycle configuration now supports specifying a lifecycle rule using an object key name
* <p>Bucket lifecycle configuration now supports specifying a lifecycle rule using an object * prefix, one or more object tags, object size, or any combination of these. Accordingly, this section
* key name prefix, one or more object tags, object size, or any combination of these. * describes the latest API, which is compatible with the new functionality. The previous version of the
* Accordingly, this section describes the latest API, which is compatible with the new * API supported filtering based only on an object key name prefix, which is supported for general purpose
* functionality. The previous version of the API supported filtering based only on an object * buckets for backward compatibility. For the related API description, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html">GetBucketLifecycle</a>.</p>
* key name prefix, which is supported for general purpose buckets for backward compatibility.
* For the related API description, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html">GetBucketLifecycle</a>.</p>
* <note> * <note>
* <p>Lifecyle configurations for directory buckets only support expiring objects and * <p>Lifecyle configurations for directory buckets only support expiring objects and cancelling
* cancelling multipart uploads. Expiring of versioned objects, transitions and tag filters * multipart uploads. Expiring of versioned objects, transitions and tag filters are not
* are not supported.</p> * supported.</p>
* </note> * </note>
* <dl> * <dl>
* <dt>Permissions</dt> * <dt>Permissions</dt>
@@ -47,31 +45,26 @@ declare const GetBucketLifecycleConfigurationCommand_base: {
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - By * <b>General purpose bucket permissions</b> - By default, all Amazon S3
* default, all Amazon S3 resources are private, including buckets, objects, and * resources are private, including buckets, objects, and related subresources (for example,
* related subresources (for example, lifecycle configuration and website * lifecycle configuration and website configuration). Only the resource owner (that is, the
* configuration). Only the resource owner (that is, the Amazon Web Services account that * Amazon Web Services account that created it) can access the resource. The resource owner can optionally
* created it) can access the resource. The resource owner can optionally grant * grant access permissions to others by writing an access policy. For this operation, a user
* access permissions to others by writing an access policy. For this * must have the <code>s3:GetLifecycleConfiguration</code> permission.</p>
* operation, a user must have the <code>s3:GetLifecycleConfiguration</code> * <p>For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to Your
* permission.</p> * Amazon S3 Resources</a>.</p>
* <p>For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access
* Permissions to Your Amazon S3 Resources</a>.</p>
* </li> * </li>
* </ul> * </ul>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>Directory bucket permissions</b> - * <b>Directory bucket permissions</b> - You must have the
* You must have the <code>s3express:GetLifecycleConfiguration</code> * <code>s3express:GetLifecycleConfiguration</code> permission in an IAM identity-based policy
* permission in an IAM identity-based policy to use this operation. * to use this operation. Cross-account access to this API operation isn't supported. The
* Cross-account access to this API operation isn't supported. The resource * resource owner can optionally grant access permissions to others by creating a role or user
* owner can optionally grant access permissions to others by creating a role * for them as long as they are within the same account as the owner and resource.</p>
* or user for them as long as they are within the same account as the owner * <p>For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Authorizing Regional endpoint APIs with IAM</a> in the <i>Amazon S3 User
* and resource.</p> * Guide</i>.</p>
* <p>For more information about directory bucket policies and permissions, see
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Authorizing Regional endpoint APIs with IAM</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* <note> * <note>
* <p> * <p>
* <b>Directory buckets </b> - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format <code>https://s3express-control.<i>region-code</i>.amazonaws.com/<i>bucket-name</i> * <b>Directory buckets </b> - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format <code>https://s3express-control.<i>region-code</i>.amazonaws.com/<i>bucket-name</i>
@@ -86,9 +79,8 @@ declare const GetBucketLifecycleConfigurationCommand_base: {
* <dt>HTTP Host header syntax</dt> * <dt>HTTP Host header syntax</dt>
* <dd> * <dd>
* <p> * <p>
* <b>Directory buckets </b> - The HTTP Host * <b>Directory buckets </b> - The HTTP Host header syntax is
* header syntax is * <code>s3express-control.<i>region</i>.amazonaws.com</code>.</p>
* <code>s3express-control.<i>region</i>.amazonaws.com</code>.</p>
* </dd> * </dd>
* </dl> * </dl>
* <p> * <p>
@@ -110,8 +102,7 @@ declare const GetBucketLifecycleConfigurationCommand_base: {
* </ul> * </ul>
* </li> * </li>
* </ul> * </ul>
* <p>The following operations are related to * <p>The following operations are related to <code>GetBucketLifecycleConfiguration</code>:</p>
* <code>GetBucketLifecycleConfiguration</code>:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -31,17 +31,16 @@ declare const GetBucketLocationCommand_base: {
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Returns the Region the bucket resides in. You set the bucket's Region using the * <p>Returns the Region the bucket resides in. You set the bucket's Region using the
* <code>LocationConstraint</code> request parameter in a <code>CreateBucket</code> * <code>LocationConstraint</code> request parameter in a <code>CreateBucket</code> request. For more
* request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>.</p> * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>.</p>
* <p>When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.</p> * <p>When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.</p>
* <p>When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. * <p>When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name.
* If the Object Lambda access point alias in a request is not valid, the error code <code>InvalidAccessPointAliasError</code> is returned. * If the Object Lambda access point alias in a request is not valid, the error code <code>InvalidAccessPointAliasError</code> is returned.
* For more information about <code>InvalidAccessPointAliasError</code>, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList">List of * For more information about <code>InvalidAccessPointAliasError</code>, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList">List of
* Error Codes</a>.</p> * Error Codes</a>.</p>
* <note> * <note>
* <p>We recommend that you use <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html">HeadBucket</a> to return the Region * <p>We recommend that you use <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html">HeadBucket</a> to return the Region that a bucket
* that a bucket resides in. For backward compatibility, Amazon S3 continues to support * resides in. For backward compatibility, Amazon S3 continues to support GetBucketLocation.</p>
* GetBucketLocation.</p>
* </note> * </note>
* <p>The following operations are related to <code>GetBucketLocation</code>:</p> * <p>The following operations are related to <code>GetBucketLocation</code>:</p>
* <ul> * <ul>
@@ -37,8 +37,8 @@ declare const GetBucketLoggingCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Returns the logging status of a bucket and the permissions users have to view and modify * <p>Returns the logging status of a bucket and the permissions users have to view and modify that
* that status.</p> * status.</p>
* <p>The following operations are related to <code>GetBucketLogging</code>:</p> * <p>The following operations are related to <code>GetBucketLogging</code>:</p>
* <ul> * <ul>
* <li> * <li>
@@ -0,0 +1,146 @@
import { Command as $Command } from "@smithy/smithy-client";
import { MetadataBearer as __MetadataBearer } from "@smithy/types";
import { GetBucketMetadataConfigurationOutput, GetBucketMetadataConfigurationRequest } from "../models/models_0";
import { S3ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../S3Client";
/**
* @public
*/
export type { __MetadataBearer };
export { $Command };
/**
* @public
*
* The input for {@link GetBucketMetadataConfigurationCommand}.
*/
export interface GetBucketMetadataConfigurationCommandInput extends GetBucketMetadataConfigurationRequest {
}
/**
* @public
*
* The output of {@link GetBucketMetadataConfigurationCommand}.
*/
export interface GetBucketMetadataConfigurationCommandOutput extends GetBucketMetadataConfigurationOutput, __MetadataBearer {
}
declare const GetBucketMetadataConfigurationCommand_base: {
new (input: GetBucketMetadataConfigurationCommandInput): import("@smithy/smithy-client").CommandImpl<GetBucketMetadataConfigurationCommandInput, GetBucketMetadataConfigurationCommandOutput, S3ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
new (input: GetBucketMetadataConfigurationCommandInput): import("@smithy/smithy-client").CommandImpl<GetBucketMetadataConfigurationCommandInput, GetBucketMetadataConfigurationCommandOutput, S3ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
};
/**
* <p>Retrieves the S3 Metadata configuration for a general purpose bucket. For more information, see
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html">Accelerating
* data discovery with S3 Metadata</a> in the <i>Amazon S3 User Guide</i>. </p>
* <note>
* <p>You can use the V2 <code>GetBucketMetadataConfiguration</code> API operation with V1 or V2
* metadata configurations. However, if you try to use the V1
* <code>GetBucketMetadataTableConfiguration</code> API operation with V2 configurations, you
* will receive an HTTP <code>405 Method Not Allowed</code> error.</p>
* </note>
* <dl>
* <dt>Permissions</dt>
* <dd>
* <p>To use this operation, you must have the <code>s3:GetBucketMetadataTableConfiguration</code>
* permission. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html">Setting up permissions for
* configuring metadata tables</a> in the <i>Amazon S3 User Guide</i>. </p>
* <note>
* <p>The IAM policy action name is the same for the V1 and V2 API operations.</p>
* </note>
* </dd>
* </dl>
* <p>The following operations are related to <code>GetBucketMetadataConfiguration</code>:</p>
* <ul>
* <li>
* <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html">CreateBucketMetadataConfiguration</a>
* </p>
* </li>
* <li>
* <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataConfiguration.html">DeleteBucketMetadataConfiguration</a>
* </p>
* </li>
* <li>
* <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataInventoryTableConfiguration.html">UpdateBucketMetadataInventoryTableConfiguration</a>
* </p>
* </li>
* <li>
* <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataJournalTableConfiguration.html">UpdateBucketMetadataJournalTableConfiguration</a>
* </p>
* </li>
* </ul>
* @example
* Use a bare-bones client and the command you need to make an API call.
* ```javascript
* import { S3Client, GetBucketMetadataConfigurationCommand } from "@aws-sdk/client-s3"; // ES Modules import
* // const { S3Client, GetBucketMetadataConfigurationCommand } = require("@aws-sdk/client-s3"); // CommonJS import
* const client = new S3Client(config);
* const input = { // GetBucketMetadataConfigurationRequest
* Bucket: "STRING_VALUE", // required
* ExpectedBucketOwner: "STRING_VALUE",
* };
* const command = new GetBucketMetadataConfigurationCommand(input);
* const response = await client.send(command);
* // { // GetBucketMetadataConfigurationOutput
* // GetBucketMetadataConfigurationResult: { // GetBucketMetadataConfigurationResult
* // MetadataConfigurationResult: { // MetadataConfigurationResult
* // DestinationResult: { // DestinationResult
* // TableBucketType: "aws" || "customer",
* // TableBucketArn: "STRING_VALUE",
* // TableNamespace: "STRING_VALUE",
* // },
* // JournalTableConfigurationResult: { // JournalTableConfigurationResult
* // TableStatus: "STRING_VALUE", // required
* // Error: { // ErrorDetails
* // ErrorCode: "STRING_VALUE",
* // ErrorMessage: "STRING_VALUE",
* // },
* // TableName: "STRING_VALUE", // required
* // TableArn: "STRING_VALUE",
* // RecordExpiration: { // RecordExpiration
* // Expiration: "ENABLED" || "DISABLED", // required
* // Days: Number("int"),
* // },
* // },
* // InventoryTableConfigurationResult: { // InventoryTableConfigurationResult
* // ConfigurationState: "ENABLED" || "DISABLED", // required
* // TableStatus: "STRING_VALUE",
* // Error: {
* // ErrorCode: "STRING_VALUE",
* // ErrorMessage: "STRING_VALUE",
* // },
* // TableName: "STRING_VALUE",
* // TableArn: "STRING_VALUE",
* // },
* // },
* // },
* // };
*
* ```
*
* @param GetBucketMetadataConfigurationCommandInput - {@link GetBucketMetadataConfigurationCommandInput}
* @returns {@link GetBucketMetadataConfigurationCommandOutput}
* @see {@link GetBucketMetadataConfigurationCommandInput} for command's `input` shape.
* @see {@link GetBucketMetadataConfigurationCommandOutput} for command's `response` shape.
* @see {@link S3ClientResolvedConfig | config} for S3Client's `config` shape.
*
* @throws {@link S3ServiceException}
* <p>Base exception class for all service exceptions from S3 service.</p>
*
*
* @public
*/
export declare class GetBucketMetadataConfigurationCommand extends GetBucketMetadataConfigurationCommand_base {
/** @internal type navigation helper, not in runtime. */
protected static __types: {
api: {
input: GetBucketMetadataConfigurationRequest;
output: GetBucketMetadataConfigurationOutput;
};
sdk: {
input: GetBucketMetadataConfigurationCommandInput;
output: GetBucketMetadataConfigurationCommandOutput;
};
};
}
@@ -27,17 +27,34 @@ declare const GetBucketMetadataTableConfigurationCommand_base: {
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
}; };
/** /**
* <p> * <important>
* Retrieves the metadata table configuration for a general purpose bucket. For more * <p>
* information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html">Accelerating data * We recommend that you retrieve your S3 Metadata configurations by using the V2
* discovery with S3 Metadata</a> in the <i>Amazon S3 User Guide</i>. </p> * <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataTableConfiguration.html">GetBucketMetadataTableConfiguration</a> API operation. We no longer recommend using the V1
* <code>GetBucketMetadataTableConfiguration</code> API operation.
* </p>
* <p>If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete
* and re-create your configuration by using <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html">CreateBucketMetadataConfiguration</a> so that you can expire journal table records and create
* a live inventory table.</p>
* </important>
* <p> Retrieves the V1 S3 Metadata configuration for a general purpose bucket. For more information, see
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html">Accelerating
* data discovery with S3 Metadata</a> in the <i>Amazon S3 User Guide</i>. </p>
* <note>
* <p>You can use the V2 <code>GetBucketMetadataConfiguration</code> API operation with V1 or V2
* metadata table configurations. However, if you try to use the V1
* <code>GetBucketMetadataTableConfiguration</code> API operation with V2 configurations, you
* will receive an HTTP <code>405 Method Not Allowed</code> error.</p>
* <p>Make sure that you update your processes to use the new V2 API operations
* (<code>CreateBucketMetadataConfiguration</code>, <code>GetBucketMetadataConfiguration</code>, and
* <code>DeleteBucketMetadataConfiguration</code>) instead of the V1 API operations. </p>
* </note>
* <dl> * <dl>
* <dt>Permissions</dt> * <dt>Permissions</dt>
* <dd> * <dd>
* <p>To use this operation, you must have the <code>s3:GetBucketMetadataTableConfiguration</code> permission. For more * <p>To use this operation, you must have the <code>s3:GetBucketMetadataTableConfiguration</code>
* information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html">Setting up * permission. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html">Setting up permissions for
* permissions for configuring metadata tables</a> in the * configuring metadata tables</a> in the <i>Amazon S3 User Guide</i>. </p>
* <i>Amazon S3 User Guide</i>. </p>
* </dd> * </dd>
* </dl> * </dl>
* <p>The following operations are related to <code>GetBucketMetadataTableConfiguration</code>:</p> * <p>The following operations are related to <code>GetBucketMetadataTableConfiguration</code>:</p>
@@ -30,17 +30,15 @@ declare const GetBucketMetricsConfigurationCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Gets a metrics configuration (specified by the metrics configuration ID) from the * <p>Gets a metrics configuration (specified by the metrics configuration ID) from the bucket. Note that
* bucket. Note that this doesn't include the daily storage metrics.</p> * this doesn't include the daily storage metrics.</p>
* <p> To use this operation, you must have permissions to perform the * <p> To use this operation, you must have permissions to perform the
* <code>s3:GetMetricsConfiguration</code> action. The bucket owner has this permission by * <code>s3:GetMetricsConfiguration</code> action. The bucket owner has this permission by default. The
* default. The bucket owner can grant this permission to others. For more information about * bucket owner can grant this permission to others. For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to Your Amazon S3
* permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Resources</a>.</p>
* Access Permissions to Your Amazon S3 Resources</a>.</p> * <p> For information about CloudWatch request metrics for Amazon S3, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring Metrics with Amazon
* <p> For information about CloudWatch request metrics for Amazon S3, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring * CloudWatch</a>.</p>
* Metrics with Amazon CloudWatch</a>.</p> * <p>The following operations are related to <code>GetBucketMetricsConfiguration</code>:</p>
* <p>The following operations are related to
* <code>GetBucketMetricsConfiguration</code>:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -59,7 +57,8 @@ declare const GetBucketMetricsConfigurationCommand_base: {
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring Metrics with Amazon CloudWatch</a> * <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring
* Metrics with Amazon CloudWatch</a>
* </p> * </p>
* </li> * </li>
* </ul> * </ul>
@@ -32,19 +32,18 @@ declare const GetBucketNotificationConfigurationCommand_base: {
* </note> * </note>
* <p>Returns the notification configuration of a bucket.</p> * <p>Returns the notification configuration of a bucket.</p>
* <p>If notifications are not enabled on the bucket, the action returns an empty * <p>If notifications are not enabled on the bucket, the action returns an empty
* <code>NotificationConfiguration</code> element.</p> * <code>NotificationConfiguration</code> element.</p>
* <p>By default, you must be the bucket owner to read the notification configuration of a * <p>By default, you must be the bucket owner to read the notification configuration of a bucket.
* bucket. However, the bucket owner can use a bucket policy to grant permission to other * However, the bucket owner can use a bucket policy to grant permission to other users to read this
* users to read this configuration with the <code>s3:GetBucketNotification</code> * configuration with the <code>s3:GetBucketNotification</code> permission.</p>
* permission.</p>
* <p>When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.</p> * <p>When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.</p>
* <p>When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. * <p>When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name.
* If the Object Lambda access point alias in a request is not valid, the error code <code>InvalidAccessPointAliasError</code> is returned. * If the Object Lambda access point alias in a request is not valid, the error code <code>InvalidAccessPointAliasError</code> is returned.
* For more information about <code>InvalidAccessPointAliasError</code>, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList">List of * For more information about <code>InvalidAccessPointAliasError</code>, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList">List of
* Error Codes</a>.</p> * Error Codes</a>.</p>
* <p>For more information about setting and reading the notification configuration on a * <p>For more information about setting and reading the notification configuration on a bucket, see
* bucket, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Setting Up Notification of Bucket Events</a>. For more information about bucket * <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Setting Up Notification
* policies, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using Bucket Policies</a>.</p> * of Bucket Events</a>. For more information about bucket policies, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using Bucket Policies</a>.</p>
* <p>The following action is related to <code>GetBucketNotification</code>:</p> * <p>The following action is related to <code>GetBucketNotification</code>:</p>
* <ul> * <ul>
* <li> * <li>
@@ -30,24 +30,25 @@ declare const GetBucketOwnershipControlsCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Retrieves <code>OwnershipControls</code> for an Amazon S3 bucket. To use this operation, you * <p>Retrieves <code>OwnershipControls</code> for an Amazon S3 bucket. To use this operation, you must have
* must have the <code>s3:GetBucketOwnershipControls</code> permission. For more information * the <code>s3:GetBucketOwnershipControls</code> permission. For more information about Amazon S3 permissions,
* about Amazon S3 permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html">Specifying permissions in a * see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html">Specifying
* policy</a>. </p> * permissions in a policy</a>. </p>
* <note> * <note>
* <p>A bucket doesn't have <code>OwnershipControls</code> settings in the following cases:</p> * <p>A bucket doesn't have <code>OwnershipControls</code> settings in the following cases:</p>
* <ul> * <ul>
* <li> * <li>
* <p>The bucket was created before the <code>BucketOwnerEnforced</code> ownership setting was introduced and you've never explicitly applied this value</p> * <p>The bucket was created before the <code>BucketOwnerEnforced</code> ownership setting was
* introduced and you've never explicitly applied this value</p>
* </li> * </li>
* <li> * <li>
* <p>You've manually deleted the bucket ownership control value using the <code>DeleteBucketOwnershipControls</code> API operation.</p> * <p>You've manually deleted the bucket ownership control value using the
* <code>DeleteBucketOwnershipControls</code> API operation.</p>
* </li> * </li>
* </ul> * </ul>
* <p>By default, Amazon S3 sets <code>OwnershipControls</code> for all newly created buckets.</p> * <p>By default, Amazon S3 sets <code>OwnershipControls</code> for all newly created buckets.</p>
* </note> * </note>
* <p>For information about Amazon S3 Object Ownership, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">Using Object * <p>For information about Amazon S3 Object Ownership, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">Using Object Ownership</a>. </p>
* Ownership</a>. </p>
* <p>The following operations are related to <code>GetBucketOwnershipControls</code>:</p> * <p>The following operations are related to <code>GetBucketOwnershipControls</code>:</p>
* <ul> * <ul>
* <li> * <li>
@@ -39,51 +39,46 @@ declare const GetBucketPolicyCommand_base: {
* <dl> * <dl>
* <dt>Permissions</dt> * <dt>Permissions</dt>
* <dd> * <dd>
* <p>If you are using an identity other than the root user of the Amazon Web Services account that * <p>If you are using an identity other than the root user of the Amazon Web Services account that owns the
* owns the bucket, the calling identity must both have the * bucket, the calling identity must both have the <code>GetBucketPolicy</code> permissions on the
* <code>GetBucketPolicy</code> permissions on the specified bucket and belong to * specified bucket and belong to the bucket owner's account in order to use this operation.</p>
* the bucket owner's account in order to use this operation.</p> * <p>If you don't have <code>GetBucketPolicy</code> permissions, Amazon S3 returns a <code>403 Access
* <p>If you don't have <code>GetBucketPolicy</code> permissions, Amazon S3 returns a * Denied</code> error. If you have the correct permissions, but you're not using an identity that
* <code>403 Access Denied</code> error. If you have the correct permissions, but * belongs to the bucket owner's account, Amazon S3 returns a <code>405 Method Not Allowed</code>
* you're not using an identity that belongs to the bucket owner's account, Amazon S3 * error.</p>
* returns a <code>405 Method Not Allowed</code> error.</p>
* <important> * <important>
* <p>To ensure that bucket owners don't inadvertently lock themselves out of * <p>To ensure that bucket owners don't inadvertently lock themselves out of their own buckets,
* their own buckets, the root principal in a bucket owner's Amazon Web Services account can * the root principal in a bucket owner's Amazon Web Services account can perform the
* perform the <code>GetBucketPolicy</code>, <code>PutBucketPolicy</code>, and * <code>GetBucketPolicy</code>, <code>PutBucketPolicy</code>, and
* <code>DeleteBucketPolicy</code> API actions, even if their bucket policy * <code>DeleteBucketPolicy</code> API actions, even if their bucket policy explicitly denies the
* explicitly denies the root principal's access. Bucket owner root principals can * root principal's access. Bucket owner root principals can only be blocked from performing these
* only be blocked from performing these API actions by VPC endpoint policies and * API actions by VPC endpoint policies and Amazon Web Services Organizations policies.</p>
* Amazon Web Services Organizations policies.</p>
* </important> * </important>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - The * <b>General purpose bucket permissions</b> - The
* <code>s3:GetBucketPolicy</code> permission is required in a policy. For * <code>s3:GetBucketPolicy</code> permission is required in a policy. For more information
* more information about general purpose buckets bucket policies, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using Bucket Policies and User Policies</a> in the * about general purpose buckets bucket policies, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using Bucket Policies and User
* <i>Amazon S3 User Guide</i>.</p> * Policies</a> in the <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory bucket permissions</b> - * <b>Directory bucket permissions</b> - To grant access to
* To grant access to this API operation, you must have the * this API operation, you must have the <code>s3express:GetBucketPolicy</code> permission in
* <code>s3express:GetBucketPolicy</code> permission in * an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.
* an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. * For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
* For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* </ul> * </ul>
* </dd> * </dd>
* <dt>Example bucket policies</dt> * <dt>Example bucket policies</dt>
* <dd> * <dd>
* <p> * <p>
* <b>General purpose buckets example bucket policies</b> * <b>General purpose buckets example bucket policies</b> - See <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html">Bucket policy
* - See <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html">Bucket policy * examples</a> in the <i>Amazon S3 User Guide</i>.</p>
* examples</a> in the <i>Amazon S3 User Guide</i>.</p>
* <p> * <p>
* <b>Directory bucket example bucket policies</b> * <b>Directory bucket example bucket policies</b> - See <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html">Example
* - See <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html">Example bucket policies for S3 Express One Zone</a> in the * bucket policies for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
* <i>Amazon S3 User Guide</i>.</p>
* </dd> * </dd>
* <dt>HTTP Host header syntax</dt> * <dt>HTTP Host header syntax</dt>
* <dd> * <dd>
@@ -30,17 +30,16 @@ declare const GetBucketPolicyStatusCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Retrieves the policy status for an Amazon S3 bucket, indicating whether the bucket is public. * <p>Retrieves the policy status for an Amazon S3 bucket, indicating whether the bucket is public. In order to
* In order to use this operation, you must have the <code>s3:GetBucketPolicyStatus</code> * use this operation, you must have the <code>s3:GetBucketPolicyStatus</code> permission. For more
* permission. For more information about Amazon S3 permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying Permissions in a * information about Amazon S3 permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying Permissions in a
* Policy</a>.</p> * Policy</a>.</p>
* <p> For more information about when Amazon S3 considers a bucket public, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The Meaning of "Public"</a>. </p> * <p> For more information about when Amazon S3 considers a bucket public, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The Meaning of "Public"</a>. </p>
* <p>The following operations are related to <code>GetBucketPolicyStatus</code>:</p> * <p>The following operations are related to <code>GetBucketPolicyStatus</code>:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html">Using Amazon S3 Block * <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html">Using Amazon S3 Block Public Access</a>
* Public Access</a>
* </p> * </p>
* </li> * </li>
* <li> * <li>
@@ -32,20 +32,19 @@ declare const GetBucketReplicationCommand_base: {
* </note> * </note>
* <p>Returns the replication configuration of a bucket.</p> * <p>Returns the replication configuration of a bucket.</p>
* <note> * <note>
* <p> It can take a while to propagate the put or delete a replication configuration to * <p> It can take a while to propagate the put or delete a replication configuration to all Amazon S3
* all Amazon S3 systems. Therefore, a get request soon after put or delete can return a wrong * systems. Therefore, a get request soon after put or delete can return a wrong result. </p>
* result. </p>
* </note> * </note>
* <p> For information about replication configuration, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> in the * <p> For information about replication configuration, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a> in the
* <i>Amazon S3 User Guide</i>.</p> * <i>Amazon S3 User Guide</i>.</p>
* <p>This action requires permissions for the <code>s3:GetReplicationConfiguration</code> * <p>This action requires permissions for the <code>s3:GetReplicationConfiguration</code> action. For
* action. For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using Bucket Policies and User * more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using Bucket Policies and User
* Policies</a>.</p> * Policies</a>.</p>
* <p>If you include the <code>Filter</code> element in a replication configuration, you must * <p>If you include the <code>Filter</code> element in a replication configuration, you must also include
* also include the <code>DeleteMarkerReplication</code> and <code>Priority</code> elements. * the <code>DeleteMarkerReplication</code> and <code>Priority</code> elements. The response also returns
* The response also returns those elements.</p> * those elements.</p>
* <p>For information about <code>GetBucketReplication</code> errors, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ReplicationErrorCodeList">List of * <p>For information about <code>GetBucketReplication</code> errors, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ReplicationErrorCodeList">List of replication-related
* replication-related error codes</a> * error codes</a>
* </p> * </p>
* <p>The following operations are related to <code>GetBucketReplication</code>:</p> * <p>The following operations are related to <code>GetBucketReplication</code>:</p>
* <ul> * <ul>
@@ -30,9 +30,8 @@ declare const GetBucketRequestPaymentCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Returns the request payment configuration of a bucket. To use this version of the * <p>Returns the request payment configuration of a bucket. To use this version of the operation, you
* operation, you must be the bucket owner. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html">Requester Pays * must be the bucket owner. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html">Requester Pays Buckets</a>.</p>
* Buckets</a>.</p>
* <p>The following operations are related to <code>GetBucketRequestPayment</code>:</p> * <p>The following operations are related to <code>GetBucketRequestPayment</code>:</p>
* <ul> * <ul>
* <li> * <li>
@@ -31,9 +31,8 @@ declare const GetBucketTaggingCommand_base: {
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Returns the tag set associated with the bucket.</p> * <p>Returns the tag set associated with the bucket.</p>
* <p>To use this operation, you must have permission to perform the * <p>To use this operation, you must have permission to perform the <code>s3:GetBucketTagging</code>
* <code>s3:GetBucketTagging</code> action. By default, the bucket owner has this * action. By default, the bucket owner has this permission and can grant this permission to others.</p>
* permission and can grant this permission to others.</p>
* <p> * <p>
* <code>GetBucketTagging</code> has the following special error:</p> * <code>GetBucketTagging</code> has the following special error:</p>
* <ul> * <ul>
@@ -32,9 +32,9 @@ declare const GetBucketVersioningCommand_base: {
* </note> * </note>
* <p>Returns the versioning state of a bucket.</p> * <p>Returns the versioning state of a bucket.</p>
* <p>To retrieve the versioning state of a bucket, you must be the bucket owner.</p> * <p>To retrieve the versioning state of a bucket, you must be the bucket owner.</p>
* <p>This implementation also returns the MFA Delete status of the versioning state. If the * <p>This implementation also returns the MFA Delete status of the versioning state. If the MFA Delete
* MFA Delete status is <code>enabled</code>, the bucket owner must use an authentication * status is <code>enabled</code>, the bucket owner must use an authentication device to change the
* device to change the versioning state of the bucket.</p> * versioning state of the bucket.</p>
* <p>The following operations are related to <code>GetBucketVersioning</code>:</p> * <p>The following operations are related to <code>GetBucketVersioning</code>:</p>
* <ul> * <ul>
* <li> * <li>
@@ -30,13 +30,12 @@ declare const GetBucketWebsiteCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Returns the website configuration for a bucket. To host website on Amazon S3, you can * <p>Returns the website configuration for a bucket. To host website on Amazon S3, you can configure a bucket
* configure a bucket as website by adding a website configuration. For more information about * as website by adding a website configuration. For more information about hosting websites, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting Websites on Amazon S3</a>. </p>
* hosting websites, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting Websites on Amazon S3</a>. </p> * <p>This GET action requires the <code>S3:GetBucketWebsite</code> permission. By default, only the
* <p>This GET action requires the <code>S3:GetBucketWebsite</code> permission. By default, * bucket owner can read the bucket website configuration. However, bucket owners can allow other users to
* only the bucket owner can read the bucket website configuration. However, bucket owners can * read the website configuration by writing a bucket policy granting them the
* allow other users to read the website configuration by writing a bucket policy granting * <code>S3:GetBucketWebsite</code> permission.</p>
* them the <code>S3:GetBucketWebsite</code> permission.</p>
* <p>The following operations are related to <code>GetBucketWebsite</code>:</p> * <p>The following operations are related to <code>GetBucketWebsite</code>:</p>
* <ul> * <ul>
* <li> * <li>
@@ -31,20 +31,18 @@ declare const GetObjectAclCommand_base: {
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Returns the access control list (ACL) of an object. To use this operation, you must have * <p>Returns the access control list (ACL) of an object. To use this operation, you must have
* <code>s3:GetObjectAcl</code> permissions or <code>READ_ACP</code> access to the object. * <code>s3:GetObjectAcl</code> permissions or <code>READ_ACP</code> access to the object. For more
* For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#acl-access-policy-permission-mapping">Mapping of ACL permissions and access policy permissions</a> in the <i>Amazon S3 * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#acl-access-policy-permission-mapping">Mapping of ACL
* User Guide</i> * permissions and access policy permissions</a> in the <i>Amazon S3 User Guide</i>
* </p> * </p>
* <p>This functionality is not supported for Amazon S3 on Outposts.</p> * <p>This functionality is not supported for Amazon S3 on Outposts.</p>
* <p>By default, GET returns ACL information about the current version of an object. To * <p>By default, GET returns ACL information about the current version of an object. To return ACL
* return ACL information about a different version, use the versionId subresource.</p> * information about a different version, use the versionId subresource.</p>
* <note> * <note>
* <p>If your bucket uses the bucket owner enforced setting for S3 Object Ownership, * <p>If your bucket uses the bucket owner enforced setting for S3 Object Ownership, requests to read
* requests to read ACLs are still supported and return the * ACLs are still supported and return the <code>bucket-owner-full-control</code> ACL with the owner
* <code>bucket-owner-full-control</code> ACL with the owner being the account that * being the account that created the bucket. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html"> Controlling object ownership and
* created the bucket. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html"> Controlling object * disabling ACLs</a> in the <i>Amazon S3 User Guide</i>.</p>
* ownership and disabling ACLs</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* </note> * </note>
* <p>The following operations are related to <code>GetObjectAcl</code>:</p> * <p>The following operations are related to <code>GetObjectAcl</code>:</p>
* <ul> * <ul>
@@ -27,16 +27,15 @@ declare const GetObjectAttributesCommand_base: {
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
}; };
/** /**
* <p>Retrieves all of the metadata from an object without returning the object itself. This * <p>Retrieves all of the metadata from an object without returning the object itself. This operation is
* operation is useful if you're interested only in an object's metadata. </p> * useful if you're interested only in an object's metadata. </p>
* <p> * <p>
* <code>GetObjectAttributes</code> combines the functionality of <code>HeadObject</code> * <code>GetObjectAttributes</code> combines the functionality of <code>HeadObject</code> and
* and <code>ListParts</code>. All of the data returned with both of those individual calls * <code>ListParts</code>. All of the data returned with both of those individual calls can be returned
* can be returned with a single call to <code>GetObjectAttributes</code>.</p> * with a single call to <code>GetObjectAttributes</code>.</p>
* <note> * <note>
* <p> * <p>
* <b>Directory buckets</b> - * <b>Directory buckets</b> - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format <code>https://<i>amzn-s3-demo-bucket</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com/<i>key-name</i>
* For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format <code>https://<i>amzn-s3-demo-bucket</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com/<i>key-name</i>
* </code>. Path-style requests are not supported. For more information about endpoints in Availability Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html">Regional and Zonal endpoints for directory buckets in Availability Zones</a> in the * </code>. Path-style requests are not supported. For more information about endpoints in Availability Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html">Regional and Zonal endpoints for directory buckets in Availability Zones</a> in the
* <i>Amazon S3 User Guide</i>. For more information about endpoints in Local Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html">Concepts for directory buckets in Local Zones</a> in the * <i>Amazon S3 User Guide</i>. For more information about endpoints in Local Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html">Concepts for directory buckets in Local Zones</a> in the
* <i>Amazon S3 User Guide</i>.</p> * <i>Amazon S3 User Guide</i>.</p>
@@ -47,37 +46,33 @@ declare const GetObjectAttributesCommand_base: {
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - To * <b>General purpose bucket permissions</b> - To use
* use <code>GetObjectAttributes</code>, you must have READ access to the object.</p> * <code>GetObjectAttributes</code>, you must have READ access to the object.</p>
* <p>The other permissions that you need to use this operation depend on * <p>The other permissions that you need to use this operation depend on whether the bucket is
* whether the bucket is versioned and if a version ID is passed in the <code>GetObjectAttributes</code> request. </p> * versioned and if a version ID is passed in the <code>GetObjectAttributes</code> request. </p>
* <ul> * <ul>
* <li> * <li>
* <p>If you pass a version ID in your request, you need both the <code>s3:GetObjectVersion</code> and * <p>If you pass a version ID in your request, you need both the
* <code>s3:GetObjectVersionAttributes</code> permissions.</p> * <code>s3:GetObjectVersion</code> and <code>s3:GetObjectVersionAttributes</code>
* permissions.</p>
* </li> * </li>
* <li> * <li>
* <p>If you do not pass a version ID in your request, you need the * <p>If you do not pass a version ID in your request, you need the
* <code>s3:GetObject</code> and <code>s3:GetObjectAttributes</code> * <code>s3:GetObject</code> and <code>s3:GetObjectAttributes</code> permissions. </p>
* permissions. </p>
* </li> * </li>
* </ul> * </ul>
* <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying Permissions in a
* Permissions in a Policy</a> in the * Policy</a> in the <i>Amazon S3 User Guide</i>.</p>
* <i>Amazon S3 User Guide</i>.</p> * <p>If the object that you request does not exist, the error Amazon S3 returns depends on whether
* <p>If the object that you request does * you also have the <code>s3:ListBucket</code> permission.</p>
* not exist, the error Amazon S3 returns depends on whether you also have the
* <code>s3:ListBucket</code> permission.</p>
* <ul> * <ul>
* <li> * <li>
* <p>If you have the <code>s3:ListBucket</code> permission on the * <p>If you have the <code>s3:ListBucket</code> permission on the bucket, Amazon S3 returns an
* bucket, Amazon S3 returns an HTTP status code <code>404 Not Found</code> * HTTP status code <code>404 Not Found</code> ("no such key") error.</p>
* ("no such key") error.</p>
* </li> * </li>
* <li> * <li>
* <p>If you don't have the <code>s3:ListBucket</code> permission, Amazon S3 * <p>If you don't have the <code>s3:ListBucket</code> permission, Amazon S3 returns an HTTP
* returns an HTTP status code <code>403 Forbidden</code> ("access * status code <code>403 Forbidden</code> ("access denied") error.</p>
* denied") error.</p>
* </li> * </li>
* </ul> * </ul>
* </li> * </li>
@@ -90,34 +85,30 @@ declare const GetObjectAttributesCommand_base: {
* <code>CreateSession</code> * <code>CreateSession</code>
* </a>.</p> * </a>.</p>
* <p>If * <p>If
* the * the
* object is encrypted with SSE-KMS, you must also have the * object is encrypted with SSE-KMS, you must also have the <code>kms:GenerateDataKey</code> and
* <code>kms:GenerateDataKey</code> and <code>kms:Decrypt</code> permissions * <code>kms:Decrypt</code> permissions in IAM identity-based policies and KMS key policies
* in IAM identity-based policies and KMS key policies for the KMS * for the KMS key.</p>
* key.</p>
* </li> * </li>
* </ul> * </ul>
* </dd> * </dd>
* <dt>Encryption</dt> * <dt>Encryption</dt>
* <dd> * <dd>
* <note> * <note>
* <p>Encryption request headers, like <code>x-amz-server-side-encryption</code>, * <p>Encryption request headers, like <code>x-amz-server-side-encryption</code>, should not be
* should not be sent for <code>HEAD</code> requests if your object uses * sent for <code>HEAD</code> requests if your object uses server-side encryption with Key Management Service
* server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer * (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or
* server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side * server-side encryption with Amazon S3 managed encryption keys (SSE-S3). The
* encryption with Amazon S3 managed encryption keys (SSE-S3). The * <code>x-amz-server-side-encryption</code> header is used when you <code>PUT</code> an object
* <code>x-amz-server-side-encryption</code> header is used when you * to S3 and want to specify the encryption method. If you include this header in a
* <code>PUT</code> an object to S3 and want to specify the encryption method. * <code>GET</code> request for an object that uses these types of keys, youll get an HTTP
* If you include this header in a <code>GET</code> request for an object that * <code>400 Bad Request</code> error. It's because the encryption method can't be changed when
* uses these types of keys, youll get an HTTP <code>400 Bad Request</code> * you retrieve the object.</p>
* error. It's because the encryption method can't be changed when you retrieve
* the object.</p>
* </note> * </note>
* <p>If you encrypted an object when you stored the object in Amazon S3 by using server-side encryption with customer-provided * <p>If you encrypted an object when you stored the object in Amazon S3 by using server-side encryption
* encryption keys (SSE-C), then when you retrieve * with customer-provided encryption keys (SSE-C), then when you retrieve the metadata from the
* the metadata from the object, you must use the following headers. These headers provide the * object, you must use the following headers. These headers provide the server with the encryption
* server with the encryption key required to retrieve the object's metadata. The * key required to retrieve the object's metadata. The headers are: </p>
* headers are: </p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -135,13 +126,12 @@ declare const GetObjectAttributesCommand_base: {
* </p> * </p>
* </li> * </li>
* </ul> * </ul>
* <p>For more information about SSE-C, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side * <p>For more information about SSE-C, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side Encryption (Using
* Encryption (Using Customer-Provided Encryption Keys)</a> in the * Customer-Provided Encryption Keys)</a> in the <i>Amazon S3 User Guide</i>.</p>
* <i>Amazon S3 User Guide</i>.</p>
* <note> * <note>
* <p> * <p>
* <b>Directory bucket permissions</b> - * <b>Directory bucket permissions</b> -
* For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (<code>AES256</code>) and server-side encryption with KMS keys (SSE-KMS) (<code>aws:kms</code>). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your * For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (<code>AES256</code>) and server-side encryption with KMS keys (SSE-KMS) (<code>aws:kms</code>). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your
* <code>CreateSession</code> requests or <code>PUT</code> object requests. Then, new objects * <code>CreateSession</code> requests or <code>PUT</code> object requests. Then, new objects
* are automatically encrypted with the desired encryption settings. For more * are automatically encrypted with the desired encryption settings. For more
* information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html">Protecting data with server-side encryption</a> in the <i>Amazon S3 User Guide</i>. For more information about the encryption overriding behaviors in directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html">Specifying server-side encryption with KMS for new object uploads</a>.</p> * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html">Protecting data with server-side encryption</a> in the <i>Amazon S3 User Guide</i>. For more information about the encryption overriding behaviors in directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html">Specifying server-side encryption with KMS for new object uploads</a>.</p>
@@ -150,47 +140,42 @@ declare const GetObjectAttributesCommand_base: {
* <dt>Versioning</dt> * <dt>Versioning</dt>
* <dd> * <dd>
* <p> * <p>
* <b>Directory buckets</b> - * <b>Directory buckets</b> - S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the <code>null</code> value of the version ID is supported by directory buckets.
* S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the <code>null</code> value of the version ID is supported by directory buckets. You can only specify <code>null</code> to the * You can only specify <code>null</code> to the <code>versionId</code> query parameter in the
* <code>versionId</code> query parameter in the request.</p> * request.</p>
* </dd> * </dd>
* <dt>Conditional request headers</dt> * <dt>Conditional request headers</dt>
* <dd> * <dd>
* <p>Consider the following when using request headers:</p> * <p>Consider the following when using request headers:</p>
* <ul> * <ul>
* <li> * <li>
* <p>If both of the <code>If-Match</code> and <code>If-Unmodified-Since</code> * <p>If both of the <code>If-Match</code> and <code>If-Unmodified-Since</code> headers are
* headers are present in the request as follows, then Amazon S3 returns the HTTP * present in the request as follows, then Amazon S3 returns the HTTP status code <code>200 OK</code>
* status code <code>200 OK</code> and the data requested:</p> * and the data requested:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <code>If-Match</code> condition evaluates to * <code>If-Match</code> condition evaluates to <code>true</code>.</p>
* <code>true</code>.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <code>If-Unmodified-Since</code> condition evaluates to * <code>If-Unmodified-Since</code> condition evaluates to <code>false</code>.</p>
* <code>false</code>.</p>
* </li> * </li>
* </ul> * </ul>
* <p>For more information about conditional requests, see <a href="https://tools.ietf.org/html/rfc7232">RFC 7232</a>.</p> * <p>For more information about conditional requests, see <a href="https://tools.ietf.org/html/rfc7232">RFC 7232</a>.</p>
* </li> * </li>
* <li> * <li>
* <p>If both of the <code>If-None-Match</code> and * <p>If both of the <code>If-None-Match</code> and <code>If-Modified-Since</code> headers are
* <code>If-Modified-Since</code> headers are present in the request as * present in the request as follows, then Amazon S3 returns the HTTP status code <code>304 Not
* follows, then Amazon S3 returns the HTTP status code <code>304 Not * Modified</code>:</p>
* Modified</code>:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <code>If-None-Match</code> condition evaluates to * <code>If-None-Match</code> condition evaluates to <code>false</code>.</p>
* <code>false</code>.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <code>If-Modified-Since</code> condition evaluates to * <code>If-Modified-Since</code> condition evaluates to <code>true</code>.</p>
* <code>true</code>.</p>
* </li> * </li>
* </ul> * </ul>
* <p>For more information about conditional requests, see <a href="https://tools.ietf.org/html/rfc7232">RFC 7232</a>.</p> * <p>For more information about conditional requests, see <a href="https://tools.ietf.org/html/rfc7232">RFC 7232</a>.</p>
@@ -31,18 +31,17 @@ declare const GetObjectCommand_base: {
* <p>Retrieves an object from Amazon S3.</p> * <p>Retrieves an object from Amazon S3.</p>
* <p>In the <code>GetObject</code> request, specify the full key name for the object.</p> * <p>In the <code>GetObject</code> request, specify the full key name for the object.</p>
* <p> * <p>
* <b>General purpose buckets</b> - Both the virtual-hosted-style * <b>General purpose buckets</b> - Both the virtual-hosted-style requests
* requests and the path-style requests are supported. For a virtual hosted-style request * and the path-style requests are supported. For a virtual hosted-style request example, if you have the
* example, if you have the object <code>photos/2006/February/sample.jpg</code>, specify the * object <code>photos/2006/February/sample.jpg</code>, specify the object key name as
* object key name as <code>/photos/2006/February/sample.jpg</code>. For a path-style request * <code>/photos/2006/February/sample.jpg</code>. For a path-style request example, if you have the
* example, if you have the object <code>photos/2006/February/sample.jpg</code> in the bucket * object <code>photos/2006/February/sample.jpg</code> in the bucket named <code>examplebucket</code>,
* named <code>examplebucket</code>, specify the object key name as * specify the object key name as <code>/examplebucket/photos/2006/February/sample.jpg</code>. For more
* <code>/examplebucket/photos/2006/February/sample.jpg</code>. For more information about * information about request types, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html#VirtualHostingSpecifyBucket">HTTP Host Header Bucket
* request types, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html#VirtualHostingSpecifyBucket">HTTP Host * Specification</a> in the <i>Amazon S3 User Guide</i>.</p>
* Header Bucket Specification</a> in the <i>Amazon S3 User Guide</i>.</p>
* <p> * <p>
* <b>Directory buckets</b> - * <b>Directory buckets</b> -
* Only virtual-hosted-style requests are supported. For a virtual hosted-style request example, if you have the object <code>photos/2006/February/sample.jpg</code> in the bucket named <code>amzn-s3-demo-bucket--usw2-az1--x-s3</code>, specify the object key name as <code>/photos/2006/February/sample.jpg</code>. Also, when you make requests to this API operation, your requests are sent to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format <code>https://<i>bucket-name</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com/<i>key-name</i> * Only virtual-hosted-style requests are supported. For a virtual hosted-style request example, if you have the object <code>photos/2006/February/sample.jpg</code> in the bucket named <code>amzn-s3-demo-bucket--usw2-az1--x-s3</code>, specify the object key name as <code>/photos/2006/February/sample.jpg</code>. Also, when you make requests to this API operation, your requests are sent to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format <code>https://<i>bucket-name</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com/<i>key-name</i>
* </code>. Path-style requests are not supported. For more information about endpoints in Availability Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html">Regional and Zonal endpoints for directory buckets in Availability Zones</a> in the * </code>. Path-style requests are not supported. For more information about endpoints in Availability Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html">Regional and Zonal endpoints for directory buckets in Availability Zones</a> in the
* <i>Amazon S3 User Guide</i>. For more information about endpoints in Local Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html">Concepts for directory buckets in Local Zones</a> in the * <i>Amazon S3 User Guide</i>. For more information about endpoints in Local Zones, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html">Concepts for directory buckets in Local Zones</a> in the
* <i>Amazon S3 User Guide</i>.</p> * <i>Amazon S3 User Guide</i>.</p>
@@ -52,35 +51,28 @@ declare const GetObjectCommand_base: {
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - You * <b>General purpose bucket permissions</b> - You must have the
* must have the required permissions in a policy. To use * required permissions in a policy. To use <code>GetObject</code>, you must have the
* <code>GetObject</code>, you must have the <code>READ</code> access to the * <code>READ</code> access to the object (or version). If you grant <code>READ</code> access
* object (or version). If you grant <code>READ</code> access to the anonymous * to the anonymous user, the <code>GetObject</code> operation returns the object without using
* user, the <code>GetObject</code> operation returns the object without using * an authorization header. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying permissions in a
* an authorization header. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying permissions in a policy</a> in the * policy</a> in the <i>Amazon S3 User Guide</i>.</p>
* <i>Amazon S3 User Guide</i>.</p> * <p>If you include a <code>versionId</code> in your request header, you must have the
* <p>If you include a <code>versionId</code> in your request header, you must * <code>s3:GetObjectVersion</code> permission to access a specific version of an object. The
* have the <code>s3:GetObjectVersion</code> permission to access a specific * <code>s3:GetObject</code> permission is not required in this scenario.</p>
* version of an object. The <code>s3:GetObject</code> permission is not * <p>If you request the current version of an object without a specific <code>versionId</code>
* required in this scenario.</p> * in the request header, only the <code>s3:GetObject</code> permission is required. The
* <p>If you request the current version of an object without a specific * <code>s3:GetObjectVersion</code> permission is not required in this scenario. </p>
* <code>versionId</code> in the request header, only the * <p>If the object that you request doesnt exist, the error that Amazon S3 returns depends on
* <code>s3:GetObject</code> permission is required. The * whether you also have the <code>s3:ListBucket</code> permission.</p>
* <code>s3:GetObjectVersion</code> permission is not required in this
* scenario. </p>
* <p>If the object that you request doesnt exist, the error that Amazon S3 returns
* depends on whether you also have the <code>s3:ListBucket</code>
* permission.</p>
* <ul> * <ul>
* <li> * <li>
* <p>If you have the <code>s3:ListBucket</code> permission on the * <p>If you have the <code>s3:ListBucket</code> permission on the bucket, Amazon S3 returns an
* bucket, Amazon S3 returns an HTTP status code <code>404 Not Found</code> * HTTP status code <code>404 Not Found</code> error.</p>
* error.</p>
* </li> * </li>
* <li> * <li>
* <p>If you dont have the <code>s3:ListBucket</code> permission, Amazon S3 * <p>If you dont have the <code>s3:ListBucket</code> permission, Amazon S3 returns an HTTP
* returns an HTTP status code <code>403 Access Denied</code> * status code <code>403 Access Denied</code> error.</p>
* error.</p>
* </li> * </li>
* </ul> * </ul>
* </li> * </li>
@@ -92,60 +84,54 @@ declare const GetObjectCommand_base: {
* Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html"> * Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html">
* <code>CreateSession</code> * <code>CreateSession</code>
* </a>.</p> * </a>.</p>
* <p>If * <p>If the object is
* the * encrypted using SSE-KMS, you must also have the <code>kms:GenerateDataKey</code> and
* object is encrypted using SSE-KMS, you must also have the * <code>kms:Decrypt</code> permissions in IAM identity-based policies and KMS key policies
* <code>kms:GenerateDataKey</code> and <code>kms:Decrypt</code> permissions * for the KMS key.</p>
* in IAM identity-based policies and KMS key policies for the KMS
* key.</p>
* </li> * </li>
* </ul> * </ul>
* </dd> * </dd>
* <dt>Storage classes</dt> * <dt>Storage classes</dt>
* <dd> * <dd>
* <p>If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval * <p>If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval storage class,
* storage class, the S3 Glacier Deep Archive storage class, the * the S3 Glacier Deep Archive storage class, the S3 Intelligent-Tiering Archive Access tier, or the
* S3 Intelligent-Tiering Archive Access tier, or the S3 Intelligent-Tiering Deep Archive Access tier, * S3 Intelligent-Tiering Deep Archive Access tier, before you can retrieve the object you must first restore a
* before you can retrieve the object you must first restore a copy using <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>. Otherwise, this operation returns an * copy using <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>. Otherwise, this operation returns an <code>InvalidObjectState</code>
* <code>InvalidObjectState</code> error. For information about restoring archived * error. For information about restoring archived objects, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring Archived Objects</a> in the
* objects, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring Archived * <i>Amazon S3 User Guide</i>.</p>
* Objects</a> in the <i>Amazon S3 User Guide</i>.</p>
* <p> * <p>
* <b>Directory buckets </b> - * <b>Directory buckets </b> -
* Directory buckets only support <code>EXPRESS_ONEZONE</code> (the S3 Express One Zone storage class) in Availability Zones and <code>ONEZONE_IA</code> (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones. * Directory buckets only support <code>EXPRESS_ONEZONE</code> (the S3 Express One Zone storage class) in Availability Zones and <code>ONEZONE_IA</code> (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.
* Unsupported storage class values won't write a destination object and will respond with the HTTP status code <code>400 Bad Request</code>.</p> * Unsupported storage class values won't write a destination object and will respond with the HTTP status code <code>400 Bad Request</code>.</p>
* </dd> * </dd>
* <dt>Encryption</dt> * <dt>Encryption</dt>
* <dd> * <dd>
* <p>Encryption request headers, like <code>x-amz-server-side-encryption</code>, * <p>Encryption request headers, like <code>x-amz-server-side-encryption</code>, should not be sent
* should not be sent for the <code>GetObject</code> requests, if your object uses * for the <code>GetObject</code> requests, if your object uses server-side encryption with Amazon S3
* server-side encryption with Amazon S3 managed encryption keys (SSE-S3), server-side * managed encryption keys (SSE-S3), server-side encryption with Key Management Service (KMS) keys (SSE-KMS), or
* encryption with Key Management Service (KMS) keys (SSE-KMS), or dual-layer server-side * dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS). If you include the header in
* encryption with Amazon Web Services KMS keys (DSSE-KMS). If you include the header in your * your <code>GetObject</code> requests for the object that uses these types of keys, youll get an
* <code>GetObject</code> requests for the object that uses these types of keys, * HTTP <code>400 Bad Request</code> error.</p>
* youll get an HTTP <code>400 Bad Request</code> error.</p>
* <p> * <p>
* <b>Directory buckets</b> - * <b>Directory buckets</b> -
* For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS. SSE-C isn't supported. For more * For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS. SSE-C isn't supported. For more
* information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html">Protecting data with server-side encryption</a> in the <i>Amazon S3 User Guide</i>.</p> * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html">Protecting data with server-side encryption</a> in the <i>Amazon S3 User Guide</i>.</p>
* </dd> * </dd>
* <dt>Overriding response header values through the request</dt> * <dt>Overriding response header values through the request</dt>
* <dd> * <dd>
* <p>There are times when you want to override certain response header values of a * <p>There are times when you want to override certain response header values of a
* <code>GetObject</code> response. For example, you might override the * <code>GetObject</code> response. For example, you might override the
* <code>Content-Disposition</code> response header value through your * <code>Content-Disposition</code> response header value through your <code>GetObject</code>
* <code>GetObject</code> request.</p> * request.</p>
* <p>You can override values for a set of response headers. These modified response * <p>You can override values for a set of response headers. These modified response header values
* header values are included only in a successful response, that is, when the HTTP * are included only in a successful response, that is, when the HTTP status code <code>200 OK</code>
* status code <code>200 OK</code> is returned. The headers you can override using * is returned. The headers you can override using the following query parameters in the request are
* the following query parameters in the request are a subset of the headers that * a subset of the headers that Amazon S3 accepts when you create an object. </p>
* Amazon S3 accepts when you create an object. </p> * <p>The response headers that you can override for the <code>GetObject</code> response are
* <p>The response headers that you can override for the <code>GetObject</code> * <code>Cache-Control</code>, <code>Content-Disposition</code>, <code>Content-Encoding</code>,
* response are <code>Cache-Control</code>, <code>Content-Disposition</code>, * <code>Content-Language</code>, <code>Content-Type</code>, and <code>Expires</code>.</p>
* <code>Content-Encoding</code>, <code>Content-Language</code>, * <p>To override values for a set of response headers in the <code>GetObject</code> response, you
* <code>Content-Type</code>, and <code>Expires</code>.</p> * can use the following query parameters in the request.</p>
* <p>To override values for a set of response headers in the <code>GetObject</code>
* response, you can use the following query parameters in the request.</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -179,9 +165,9 @@ declare const GetObjectCommand_base: {
* </li> * </li>
* </ul> * </ul>
* <note> * <note>
* <p>When you use these parameters, you must sign the request by using either an * <p>When you use these parameters, you must sign the request by using either an Authorization
* Authorization header or a presigned URL. These parameters cannot be used with * header or a presigned URL. These parameters cannot be used with an unsigned (anonymous)
* an unsigned (anonymous) request.</p> * request.</p>
* </note> * </note>
* </dd> * </dd>
* <dt>HTTP Host header syntax</dt> * <dt>HTTP Host header syntax</dt>
@@ -294,13 +280,12 @@ declare const GetObjectCommand_base: {
* *
* @throws {@link InvalidObjectState} (client fault) * @throws {@link InvalidObjectState} (client fault)
* <p>Object is archived and inaccessible until restored.</p> * <p>Object is archived and inaccessible until restored.</p>
* <p>If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval storage * <p>If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval storage class, the
* class, the S3 Glacier Deep Archive storage class, the S3 Intelligent-Tiering Archive Access * S3 Glacier Deep Archive storage class, the S3 Intelligent-Tiering Archive Access tier, or the
* tier, or the S3 Intelligent-Tiering Deep Archive Access tier, before you can retrieve the object you * S3 Intelligent-Tiering Deep Archive Access tier, before you can retrieve the object you must first restore a copy
* must first restore a copy using <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>. Otherwise, this * using <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>. Otherwise, this operation returns an <code>InvalidObjectState</code> error. For
* operation returns an <code>InvalidObjectState</code> error. For information about restoring * information about restoring archived objects, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring Archived Objects</a> in the
* archived objects, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring Archived Objects</a> in * <i>Amazon S3 User Guide</i>.</p>
* the <i>Amazon S3 User Guide</i>.</p>
* *
* @throws {@link NoSuchKey} (client fault) * @throws {@link NoSuchKey} (client fault)
* <p>The specified key does not exist.</p> * <p>The specified key does not exist.</p>
@@ -30,8 +30,7 @@ declare const GetObjectLegalHoldCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Gets an object's current legal hold status. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking * <p>Gets an object's current legal hold status. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking Objects</a>.</p>
* Objects</a>.</p>
* <p>This functionality is not supported for Amazon S3 on Outposts.</p> * <p>This functionality is not supported for Amazon S3 on Outposts.</p>
* <p>The following action is related to <code>GetObjectLegalHold</code>:</p> * <p>The following action is related to <code>GetObjectLegalHold</code>:</p>
* <ul> * <ul>
@@ -30,9 +30,9 @@ declare const GetObjectLockConfigurationCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Gets the Object Lock configuration for a bucket. The rule specified in the Object Lock * <p>Gets the Object Lock configuration for a bucket. The rule specified in the Object Lock configuration
* configuration will be applied by default to every new object placed in the specified * will be applied by default to every new object placed in the specified bucket. For more information, see
* bucket. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking Objects</a>.</p> * <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking Objects</a>.</p>
* <p>The following action is related to <code>GetObjectLockConfiguration</code>:</p> * <p>The following action is related to <code>GetObjectLockConfiguration</code>:</p>
* <ul> * <ul>
* <li> * <li>
@@ -30,8 +30,7 @@ declare const GetObjectRetentionCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Retrieves an object's retention settings. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking * <p>Retrieves an object's retention settings. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking Objects</a>.</p>
* Objects</a>.</p>
* <p>This functionality is not supported for Amazon S3 on Outposts.</p> * <p>This functionality is not supported for Amazon S3 on Outposts.</p>
* <p>The following action is related to <code>GetObjectRetention</code>:</p> * <p>The following action is related to <code>GetObjectRetention</code>:</p>
* <ul> * <ul>
@@ -30,16 +30,14 @@ declare const GetObjectTaggingCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Returns the tag-set of an object. You send the GET request against the tagging * <p>Returns the tag-set of an object. You send the GET request against the tagging subresource
* subresource associated with the object.</p> * associated with the object.</p>
* <p>To use this operation, you must have permission to perform the * <p>To use this operation, you must have permission to perform the <code>s3:GetObjectTagging</code>
* <code>s3:GetObjectTagging</code> action. By default, the GET action returns information * action. By default, the GET action returns information about current version of an object. For a
* about current version of an object. For a versioned bucket, you can have multiple versions * versioned bucket, you can have multiple versions of an object in your bucket. To retrieve tags of any
* of an object in your bucket. To retrieve tags of any other version, use the versionId query * other version, use the versionId query parameter. You also need permission for the
* parameter. You also need permission for the <code>s3:GetObjectVersionTagging</code> * <code>s3:GetObjectVersionTagging</code> action.</p>
* action.</p> * <p> By default, the bucket owner has this permission and can grant this permission to others.</p>
* <p> By default, the bucket owner has this permission and can grant this permission to
* others.</p>
* <p> For information about the Amazon S3 object tagging feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html">Object Tagging</a>.</p> * <p> For information about the Amazon S3 object tagging feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html">Object Tagging</a>.</p>
* <p>The following actions are related to <code>GetObjectTagging</code>:</p> * <p>The following actions are related to <code>GetObjectTagging</code>:</p>
* <ul> * <ul>
@@ -31,12 +31,11 @@ declare const GetObjectTorrentCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Returns torrent files from a bucket. BitTorrent can save you bandwidth when you're * <p>Returns torrent files from a bucket. BitTorrent can save you bandwidth when you're distributing
* distributing large files.</p> * large files.</p>
* <note> * <note>
* <p>You can get torrent only for objects that are less than 5 GB in size, and that are * <p>You can get torrent only for objects that are less than 5 GB in size, and that are not encrypted
* not encrypted using server-side encryption with a customer-provided encryption * using server-side encryption with a customer-provided encryption key.</p>
* key.</p>
* </note> * </note>
* <p>To use GET, you must have READ access to the object.</p> * <p>To use GET, you must have READ access to the object.</p>
* <p>This functionality is not supported for Amazon S3 on Outposts.</p> * <p>This functionality is not supported for Amazon S3 on Outposts.</p>
@@ -30,25 +30,23 @@ declare const GetPublicAccessBlockCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Retrieves the <code>PublicAccessBlock</code> configuration for an Amazon S3 bucket. To use * <p>Retrieves the <code>PublicAccessBlock</code> configuration for an Amazon S3 bucket. To use this
* this operation, you must have the <code>s3:GetBucketPublicAccessBlock</code> permission. * operation, you must have the <code>s3:GetBucketPublicAccessBlock</code> permission. For more information
* For more information about Amazon S3 permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying Permissions in a * about Amazon S3 permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying Permissions in a
* Policy</a>.</p> * Policy</a>.</p>
* <important> * <important>
* <p>When Amazon S3 evaluates the <code>PublicAccessBlock</code> configuration for a bucket or * <p>When Amazon S3 evaluates the <code>PublicAccessBlock</code> configuration for a bucket or an object, it
* an object, it checks the <code>PublicAccessBlock</code> configuration for both the * checks the <code>PublicAccessBlock</code> configuration for both the bucket (or the bucket that
* bucket (or the bucket that contains the object) and the bucket owner's account. If the * contains the object) and the bucket owner's account. If the <code>PublicAccessBlock</code> settings
* <code>PublicAccessBlock</code> settings are different between the bucket and the * are different between the bucket and the account, Amazon S3 uses the most restrictive combination of the
* account, Amazon S3 uses the most restrictive combination of the bucket-level and * bucket-level and account-level settings.</p>
* account-level settings.</p>
* </important> * </important>
* <p>For more information about when Amazon S3 considers a bucket or an object public, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The Meaning of "Public"</a>.</p> * <p>For more information about when Amazon S3 considers a bucket or an object public, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The Meaning of "Public"</a>.</p>
* <p>The following operations are related to <code>GetPublicAccessBlock</code>:</p> * <p>The following operations are related to <code>GetPublicAccessBlock</code>:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html">Using Amazon S3 Block * <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html">Using Amazon S3 Block Public Access</a>
* Public Access</a>
* </p> * </p>
* </li> * </li>
* <li> * <li>
@@ -27,33 +27,31 @@ declare const HeadBucketCommand_base: {
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
}; };
/** /**
* <p>You can use this operation to determine if a bucket exists and if you have permission to * <p>You can use this operation to determine if a bucket exists and if you have permission to access it.
* access it. The action returns a <code>200 OK</code> if the bucket exists and you have * The action returns a <code>200 OK</code> if the bucket exists and you have permission to access
* permission to access it.</p> * it.</p>
* <note> * <note>
* <p>If the bucket does not exist or you do not have permission to access it, the * <p>If the bucket does not exist or you do not have permission to access it, the <code>HEAD</code>
* <code>HEAD</code> request returns a generic <code>400 Bad Request</code>, <code>403 * request returns a generic <code>400 Bad Request</code>, <code>403 Forbidden</code> or <code>404 Not
* Forbidden</code> or <code>404 Not Found</code> code. A message body is not included, * Found</code> code. A message body is not included, so you cannot determine the exception beyond
* so you cannot determine the exception beyond these HTTP response codes.</p> * these HTTP response codes.</p>
* </note> * </note>
* <dl> * <dl>
* <dt>Authentication and authorization</dt> * <dt>Authentication and authorization</dt>
* <dd> * <dd>
* <p> * <p>
* <b>General purpose buckets</b> - Request to public * <b>General purpose buckets</b> - Request to public buckets that
* buckets that grant the s3:ListBucket permission publicly do not need to be signed. * grant the s3:ListBucket permission publicly do not need to be signed. All other
* All other <code>HeadBucket</code> requests must be authenticated and signed by * <code>HeadBucket</code> requests must be authenticated and signed by using IAM credentials
* using IAM credentials (access key ID and secret access key for the IAM * (access key ID and secret access key for the IAM identities). All headers with the
* identities). All headers with the <code>x-amz-</code> prefix, including * <code>x-amz-</code> prefix, including <code>x-amz-copy-source</code>, must be signed. For more
* <code>x-amz-copy-source</code>, must be signed. For more information, see * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html">REST Authentication</a>.</p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html">REST Authentication</a>.</p>
* <p> * <p>
* <b>Directory buckets</b> - You must use IAM * <b>Directory buckets</b> - You must use IAM credentials to
* credentials to authenticate and authorize your access to the * authenticate and authorize your access to the <code>HeadBucket</code> API operation, instead of
* <code>HeadBucket</code> API operation, instead of using the temporary security * using the temporary security credentials through the <code>CreateSession</code> API
* credentials through the <code>CreateSession</code> API operation.</p> * operation.</p>
* <p>Amazon Web Services CLI or SDKs handles authentication and authorization on your * <p>Amazon Web Services CLI or SDKs handles authentication and authorization on your behalf.</p>
* behalf.</p>
* </dd> * </dd>
* <dt>Permissions</dt> * <dt>Permissions</dt>
* <dd> * <dd>
@@ -61,26 +59,26 @@ declare const HeadBucketCommand_base: {
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - To * <b>General purpose bucket permissions</b> - To use this
* use this operation, you must have permissions to perform the * operation, you must have permissions to perform the <code>s3:ListBucket</code> action. The
* <code>s3:ListBucket</code> action. The bucket owner has this permission * bucket owner has this permission by default and can grant this permission to others. For more
* by default and can grant this permission to others. For more information * information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing access permissions to your
* about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing access * Amazon S3 resources</a> in the <i>Amazon S3 User Guide</i>.</p>
* permissions to your Amazon S3 resources</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory bucket permissions</b> - * <b>Directory bucket permissions</b> - You must have the
* You must have the <b> * <b>
* <code>s3express:CreateSession</code> * <code>s3express:CreateSession</code>
* </b> permission in the * </b> permission in the
* <code>Action</code> element of a policy. By default, the session is in * <code>Action</code> element of a policy. By default, the session is in the
* the <code>ReadWrite</code> mode. If you want to restrict the access, you can * <code>ReadWrite</code> mode. If you want to restrict the access, you can explicitly set the
* explicitly set the <code>s3express:SessionMode</code> condition key to * <code>s3express:SessionMode</code> condition key to <code>ReadOnly</code> on the
* <code>ReadOnly</code> on the bucket.</p> * bucket.</p>
* <p>For more information about example bucket policies, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html">Example bucket policies for S3 Express One Zone</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html">Amazon Web Services Identity and Access Management (IAM) identity-based policies for * <p>For more information about example bucket policies, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html">Example
* S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p> * bucket policies for S3 Express One Zone</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html">Amazon Web Services
* Identity and Access Management (IAM) identity-based policies for S3 Express One Zone</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* </li> * </li>
* </ul> * </ul>
* </dd> * </dd>
@@ -27,20 +27,17 @@ declare const HeadObjectCommand_base: {
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
}; };
/** /**
* <p>The <code>HEAD</code> operation retrieves metadata from an object without returning the * <p>The <code>HEAD</code> operation retrieves metadata from an object without returning the object
* object itself. This operation is useful if you're interested only in an object's * itself. This operation is useful if you're interested only in an object's metadata.</p>
* metadata.</p>
* <note> * <note>
* <p>A <code>HEAD</code> request has the same options as a <code>GET</code> operation on * <p>A <code>HEAD</code> request has the same options as a <code>GET</code> operation on an object. The
* an object. The response is identical to the <code>GET</code> response except that there * response is identical to the <code>GET</code> response except that there is no response body. Because
* is no response body. Because of this, if the <code>HEAD</code> request generates an * of this, if the <code>HEAD</code> request generates an error, it returns a generic code, such as
* error, it returns a generic code, such as <code>400 Bad Request</code>, <code>403 * <code>400 Bad Request</code>, <code>403 Forbidden</code>, <code>404 Not Found</code>, <code>405
* Forbidden</code>, <code>404 Not Found</code>, <code>405 Method Not Allowed</code>, * Method Not Allowed</code>, <code>412 Precondition Failed</code>, or <code>304 Not Modified</code>.
* <code>412 Precondition Failed</code>, or <code>304 Not Modified</code>. It's not * It's not possible to retrieve the exact exception of these error codes.</p>
* possible to retrieve the exact exception of these error codes.</p>
* </note> * </note>
* <p>Request headers are limited to 8 KB in size. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html">Common * <p>Request headers are limited to 8 KB in size. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html">Common Request Headers</a>.</p>
* Request Headers</a>.</p>
* <dl> * <dl>
* <dt>Permissions</dt> * <dt>Permissions</dt>
* <dd> * <dd>
@@ -48,26 +45,23 @@ declare const HeadObjectCommand_base: {
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
* <b>General purpose bucket permissions</b> - To * <b>General purpose bucket permissions</b> - To use
* use <code>HEAD</code>, you must have the <code>s3:GetObject</code> * <code>HEAD</code>, you must have the <code>s3:GetObject</code> permission. You need the
* permission. You need the relevant read object (or version) permission for * relevant read object (or version) permission for this operation. For more information, see
* this operation. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html">Actions, resources, and * <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html">Actions, resources,
* condition keys for Amazon S3</a> in the <i>Amazon S3 User * and condition keys for Amazon S3</a> in the <i>Amazon S3 User Guide</i>. For more
* Guide</i>. For more information about the permissions to S3 API * information about the permissions to S3 API operations by S3 resource types, see <a href="/AmazonS3/latest/userguide/using-with-s3-policy-actions.html">Required permissions for
* operations by S3 resource types, see <a href="/AmazonS3/latest/userguide/using-with-s3-policy-actions.html">Required permissions for Amazon S3 API operations</a> in the * Amazon S3 API operations</a> in the <i>Amazon S3 User Guide</i>.</p>
* <i>Amazon S3 User Guide</i>.</p> * <p>If the object you request doesn't exist, the error that Amazon S3 returns depends on whether
* <p>If the object you request doesn't exist, the error that Amazon S3 returns * you also have the <code>s3:ListBucket</code> permission.</p>
* depends on whether you also have the <code>s3:ListBucket</code>
* permission.</p>
* <ul> * <ul>
* <li> * <li>
* <p>If you have the <code>s3:ListBucket</code> permission on the * <p>If you have the <code>s3:ListBucket</code> permission on the bucket, Amazon S3 returns an
* bucket, Amazon S3 returns an HTTP status code <code>404 Not Found</code> * HTTP status code <code>404 Not Found</code> error.</p>
* error.</p>
* </li> * </li>
* <li> * <li>
* <p>If you dont have the <code>s3:ListBucket</code> permission, Amazon S3 * <p>If you dont have the <code>s3:ListBucket</code> permission, Amazon S3 returns an HTTP
* returns an HTTP status code <code>403 Forbidden</code> error.</p> * status code <code>403 Forbidden</code> error.</p>
* </li> * </li>
* </ul> * </ul>
* </li> * </li>
@@ -79,34 +73,31 @@ declare const HeadObjectCommand_base: {
* Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html"> * Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html">
* <code>CreateSession</code> * <code>CreateSession</code>
* </a>.</p> * </a>.</p>
* <p>If you enable <code>x-amz-checksum-mode</code> in the request and the * <p>If you enable <code>x-amz-checksum-mode</code> in the request and the object is encrypted
* object is encrypted with Amazon Web Services Key Management Service (Amazon Web Services KMS), you must * with Amazon Web Services Key Management Service (Amazon Web Services KMS), you must also have the
* also have the <code>kms:GenerateDataKey</code> and <code>kms:Decrypt</code> * <code>kms:GenerateDataKey</code> and <code>kms:Decrypt</code> permissions in IAM
* permissions in IAM identity-based policies and KMS key policies for the * identity-based policies and KMS key policies for the KMS key to retrieve the checksum of
* KMS key to retrieve the checksum of the object.</p> * the object.</p>
* </li> * </li>
* </ul> * </ul>
* </dd> * </dd>
* <dt>Encryption</dt> * <dt>Encryption</dt>
* <dd> * <dd>
* <note> * <note>
* <p>Encryption request headers, like <code>x-amz-server-side-encryption</code>, * <p>Encryption request headers, like <code>x-amz-server-side-encryption</code>, should not be
* should not be sent for <code>HEAD</code> requests if your object uses * sent for <code>HEAD</code> requests if your object uses server-side encryption with Key Management Service
* server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer * (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or
* server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side * server-side encryption with Amazon S3 managed encryption keys (SSE-S3). The
* encryption with Amazon S3 managed encryption keys (SSE-S3). The * <code>x-amz-server-side-encryption</code> header is used when you <code>PUT</code> an object
* <code>x-amz-server-side-encryption</code> header is used when you * to S3 and want to specify the encryption method. If you include this header in a
* <code>PUT</code> an object to S3 and want to specify the encryption method. * <code>HEAD</code> request for an object that uses these types of keys, youll get an HTTP
* If you include this header in a <code>HEAD</code> request for an object that * <code>400 Bad Request</code> error. It's because the encryption method can't be changed when
* uses these types of keys, youll get an HTTP <code>400 Bad Request</code> * you retrieve the object.</p>
* error. It's because the encryption method can't be changed when you retrieve
* the object.</p>
* </note> * </note>
* <p>If you encrypt an object by using server-side encryption with customer-provided * <p>If you encrypt an object by using server-side encryption with customer-provided encryption
* encryption keys (SSE-C) when you store the object in Amazon S3, then when you retrieve * keys (SSE-C) when you store the object in Amazon S3, then when you retrieve the metadata from the
* the metadata from the object, you must use the following headers to provide the * object, you must use the following headers to provide the encryption key for the server to be able
* encryption key for the server to be able to retrieve the object's metadata. The * to retrieve the object's metadata. The headers are: </p>
* headers are: </p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -124,13 +115,12 @@ declare const HeadObjectCommand_base: {
* </p> * </p>
* </li> * </li>
* </ul> * </ul>
* <p>For more information about SSE-C, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side * <p>For more information about SSE-C, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side Encryption (Using
* Encryption (Using Customer-Provided Encryption Keys)</a> in the * Customer-Provided Encryption Keys)</a> in the <i>Amazon S3 User Guide</i>.</p>
* <i>Amazon S3 User Guide</i>.</p>
* <note> * <note>
* <p> * <p>
* <b>Directory bucket </b> - * <b>Directory bucket </b> -
* For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS. SSE-C isn't supported. For more * For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS. SSE-C isn't supported. For more
* information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html">Protecting data with server-side encryption</a> in the <i>Amazon S3 User Guide</i>. </p> * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html">Protecting data with server-side encryption</a> in the <i>Amazon S3 User Guide</i>. </p>
* </note> * </note>
* </dd> * </dd>
@@ -138,14 +128,12 @@ declare const HeadObjectCommand_base: {
* <dd> * <dd>
* <ul> * <ul>
* <li> * <li>
* <p>If the current version of the object is a delete marker, Amazon S3 behaves as * <p>If the current version of the object is a delete marker, Amazon S3 behaves as if the object was
* if the object was deleted and includes <code>x-amz-delete-marker: * deleted and includes <code>x-amz-delete-marker: true</code> in the response.</p>
* true</code> in the response.</p>
* </li> * </li>
* <li> * <li>
* <p>If the specified version is a delete marker, the response returns a * <p>If the specified version is a delete marker, the response returns a <code>405 Method Not
* <code>405 Method Not Allowed</code> error and the <code>Last-Modified: * Allowed</code> error and the <code>Last-Modified: timestamp</code> response header.</p>
* timestamp</code> response header.</p>
* </li> * </li>
* </ul> * </ul>
* <note> * <note>
@@ -153,13 +141,13 @@ declare const HeadObjectCommand_base: {
* <li> * <li>
* <p> * <p>
* <b>Directory buckets</b> - * <b>Directory buckets</b> -
* Delete marker is not supported for directory buckets.</p> * Delete marker is not supported for directory buckets.</p>
* </li> * </li>
* <li> * <li>
* <p> * <p>
* <b>Directory buckets</b> - * <b>Directory buckets</b> -
* S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the <code>null</code> value of the version ID is supported by directory buckets. You can only specify <code>null</code> * S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the <code>null</code> value of the version ID is supported by directory buckets. You can only specify <code>null</code> to the
* to the <code>versionId</code> query parameter in the request.</p> * <code>versionId</code> query parameter in the request.</p>
* </li> * </li>
* </ul> * </ul>
* </note> * </note>
@@ -30,25 +30,22 @@ declare const ListBucketAnalyticsConfigurationsCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Lists the analytics configurations for the bucket. You can have up to 1,000 analytics * <p>Lists the analytics configurations for the bucket. You can have up to 1,000 analytics configurations
* configurations per bucket.</p> * per bucket.</p>
* <p>This action supports list pagination and does not return more than 100 configurations at * <p>This action supports list pagination and does not return more than 100 configurations at a time. You
* a time. You should always check the <code>IsTruncated</code> element in the response. If * should always check the <code>IsTruncated</code> element in the response. If there are no more
* there are no more configurations to list, <code>IsTruncated</code> is set to false. If * configurations to list, <code>IsTruncated</code> is set to false. If there are more configurations to
* there are more configurations to list, <code>IsTruncated</code> is set to true, and there * list, <code>IsTruncated</code> is set to true, and there will be a value in
* will be a value in <code>NextContinuationToken</code>. You use the * <code>NextContinuationToken</code>. You use the <code>NextContinuationToken</code> value to continue
* <code>NextContinuationToken</code> value to continue the pagination of the list by * the pagination of the list by passing the value in continuation-token in the request to <code>GET</code>
* passing the value in continuation-token in the request to <code>GET</code> the next * the next page.</p>
* page.</p>
* <p>To use this operation, you must have permissions to perform the * <p>To use this operation, you must have permissions to perform the
* <code>s3:GetAnalyticsConfiguration</code> action. The bucket owner has this permission * <code>s3:GetAnalyticsConfiguration</code> action. The bucket owner has this permission by default. The
* by default. The bucket owner can grant this permission to others. For more information * bucket owner can grant this permission to others. For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to Your Amazon S3
* about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Resources</a>.</p>
* Access Permissions to Your Amazon S3 Resources</a>.</p>
* <p>For information about Amazon S3 analytics feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon S3 Analytics Storage Class * <p>For information about Amazon S3 analytics feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon S3 Analytics Storage Class
* Analysis</a>. </p> * Analysis</a>. </p>
* <p>The following operations are related to * <p>The following operations are related to <code>ListBucketAnalyticsConfigurations</code>:</p>
* <code>ListBucketAnalyticsConfigurations</code>:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -30,24 +30,21 @@ declare const ListBucketInventoryConfigurationsCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Returns a list of inventory configurations for the bucket. You can have up to 1,000 * <p>Returns a list of S3 Inventory configurations for the bucket. You can have up to 1,000 analytics
* analytics configurations per bucket.</p> * configurations per bucket.</p>
* <p>This action supports list pagination and does not return more than 100 configurations at * <p>This action supports list pagination and does not return more than 100 configurations at a time.
* a time. Always check the <code>IsTruncated</code> element in the response. If there are no * Always check the <code>IsTruncated</code> element in the response. If there are no more configurations
* more configurations to list, <code>IsTruncated</code> is set to false. If there are more * to list, <code>IsTruncated</code> is set to false. If there are more configurations to list,
* configurations to list, <code>IsTruncated</code> is set to true, and there is a value in * <code>IsTruncated</code> is set to true, and there is a value in <code>NextContinuationToken</code>.
* <code>NextContinuationToken</code>. You use the <code>NextContinuationToken</code> value * You use the <code>NextContinuationToken</code> value to continue the pagination of the list by passing
* to continue the pagination of the list by passing the value in continuation-token in the * the value in continuation-token in the request to <code>GET</code> the next page.</p>
* request to <code>GET</code> the next page.</p>
* <p> To use this operation, you must have permissions to perform the * <p> To use this operation, you must have permissions to perform the
* <code>s3:GetInventoryConfiguration</code> action. The bucket owner has this permission * <code>s3:GetInventoryConfiguration</code> action. The bucket owner has this permission by default. The
* by default. The bucket owner can grant this permission to others. For more information * bucket owner can grant this permission to others. For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to Your Amazon S3
* about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Resources</a>.</p>
* Access Permissions to Your Amazon S3 Resources</a>.</p>
* <p>For information about the Amazon S3 inventory feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon S3 Inventory</a> * <p>For information about the Amazon S3 inventory feature, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon S3 Inventory</a>
* </p> * </p>
* <p>The following operations are related to * <p>The following operations are related to <code>ListBucketInventoryConfigurations</code>:</p>
* <code>ListBucketInventoryConfigurations</code>:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -30,25 +30,22 @@ declare const ListBucketMetricsConfigurationsCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Lists the metrics configurations for the bucket. The metrics configurations are only for * <p>Lists the metrics configurations for the bucket. The metrics configurations are only for the request
* the request metrics of the bucket and do not provide information on daily storage metrics. * metrics of the bucket and do not provide information on daily storage metrics. You can have up to 1,000
* You can have up to 1,000 configurations per bucket.</p> * configurations per bucket.</p>
* <p>This action supports list pagination and does not return more than 100 configurations at * <p>This action supports list pagination and does not return more than 100 configurations at a time.
* a time. Always check the <code>IsTruncated</code> element in the response. If there are no * Always check the <code>IsTruncated</code> element in the response. If there are no more configurations
* more configurations to list, <code>IsTruncated</code> is set to false. If there are more * to list, <code>IsTruncated</code> is set to false. If there are more configurations to list,
* configurations to list, <code>IsTruncated</code> is set to true, and there is a value in * <code>IsTruncated</code> is set to true, and there is a value in <code>NextContinuationToken</code>.
* <code>NextContinuationToken</code>. You use the <code>NextContinuationToken</code> value * You use the <code>NextContinuationToken</code> value to continue the pagination of the list by passing
* to continue the pagination of the list by passing the value in * the value in <code>continuation-token</code> in the request to <code>GET</code> the next page.</p>
* <code>continuation-token</code> in the request to <code>GET</code> the next page.</p>
* <p>To use this operation, you must have permissions to perform the * <p>To use this operation, you must have permissions to perform the
* <code>s3:GetMetricsConfiguration</code> action. The bucket owner has this permission by * <code>s3:GetMetricsConfiguration</code> action. The bucket owner has this permission by default. The
* default. The bucket owner can grant this permission to others. For more information about * bucket owner can grant this permission to others. For more information about permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing Access Permissions to Your Amazon S3
* permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions Related to Bucket Subresource Operations</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing * Resources</a>.</p>
* Access Permissions to Your Amazon S3 Resources</a>.</p> * <p>For more information about metrics configurations and CloudWatch request metrics, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring Metrics with
* <p>For more information about metrics configurations and CloudWatch request metrics, see * Amazon CloudWatch</a>.</p>
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring Metrics with Amazon CloudWatch</a>.</p> * <p>The following operations are related to <code>ListBucketMetricsConfigurations</code>:</p>
* <p>The following operations are related to
* <code>ListBucketMetricsConfigurations</code>:</p>
* <ul> * <ul>
* <li> * <li>
* <p> * <p>
@@ -37,16 +37,17 @@ declare const ListBucketsCommand_base: {
* <note> * <note>
* <p>This operation is not supported for directory buckets.</p> * <p>This operation is not supported for directory buckets.</p>
* </note> * </note>
* <p>Returns a list of all buckets owned by the authenticated sender of the request. To grant IAM permission to use * <p>Returns a list of all buckets owned by the authenticated sender of the request. To grant IAM
* this operation, you must add the <code>s3:ListAllMyBuckets</code> policy action. </p> * permission to use this operation, you must add the <code>s3:ListAllMyBuckets</code> policy action. </p>
* <p>For information about Amazon S3 buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html">Creating, configuring, and * <p>For information about Amazon S3 buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html">Creating, configuring, and working with Amazon S3
* working with Amazon S3 buckets</a>.</p> * buckets</a>.</p>
* <important> * <important>
* <p>We strongly recommend using only paginated <code>ListBuckets</code> requests. Unpaginated <code>ListBuckets</code> requests are only supported for * <p>We strongly recommend using only paginated <code>ListBuckets</code> requests. Unpaginated
* Amazon Web Services accounts set to the default general purpose bucket quota of 10,000. If you have an approved * <code>ListBuckets</code> requests are only supported for Amazon Web Services accounts set to the default general
* general purpose bucket quota above 10,000, you must send paginated <code>ListBuckets</code> requests to list your accounts buckets. * purpose bucket quota of 10,000. If you have an approved general purpose bucket quota above 10,000, you
* All unpaginated <code>ListBuckets</code> requests will be rejected for Amazon Web Services accounts with a general purpose bucket quota * must send paginated <code>ListBuckets</code> requests to list your accounts buckets. All unpaginated
* greater than 10,000. </p> * <code>ListBuckets</code> requests will be rejected for Amazon Web Services accounts with a general purpose bucket
* quota greater than 10,000. </p>
* </important> * </important>
* @example * @example
* Use a bare-bones client and the command you need to make an API call. * Use a bare-bones client and the command you need to make an API call.
@@ -27,8 +27,9 @@ declare const ListDirectoryBucketsCommand_base: {
getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
}; };
/** /**
* <p>Returns a list of all Amazon S3 directory buckets owned by the authenticated sender of the * <p>Returns a list of all Amazon S3 directory buckets owned by the authenticated sender of the request. For
* request. For more information about directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html">Directory buckets</a> in the <i>Amazon S3 User Guide</i>.</p> * more information about directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html">Directory buckets</a> in the
* <i>Amazon S3 User Guide</i>.</p>
* <note> * <note>
* <p> * <p>
* <b>Directory buckets </b> - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format <code>https://s3express-control.<i>region-code</i>.amazonaws.com/<i>bucket-name</i> * <b>Directory buckets </b> - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format <code>https://s3express-control.<i>region-code</i>.amazonaws.com/<i>bucket-name</i>
@@ -40,21 +41,20 @@ declare const ListDirectoryBucketsCommand_base: {
* <dl> * <dl>
* <dt>Permissions</dt> * <dt>Permissions</dt>
* <dd> * <dd>
* <p>You must have the <code>s3express:ListAllMyDirectoryBuckets</code> permission * <p>You must have the <code>s3express:ListAllMyDirectoryBuckets</code> permission in
* in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. * an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.
* For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p> * For more information about directory bucket policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html">Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
* </dd> * </dd>
* <dt>HTTP Host header syntax</dt> * <dt>HTTP Host header syntax</dt>
* <dd> * <dd>
* <p> * <p>
* <b>Directory buckets </b> - The HTTP Host * <b>Directory buckets </b> - The HTTP Host header syntax is
* header syntax is * <code>s3express-control.<i>region</i>.amazonaws.com</code>.</p>
* <code>s3express-control.<i>region</i>.amazonaws.com</code>.</p>
* </dd> * </dd>
* </dl> * </dl>
* <note> * <note>
* <p> The <code>BucketRegion</code> response element is not part of the * <p> The <code>BucketRegion</code> response element is not part of the
* <code>ListDirectoryBuckets</code> Response Syntax.</p> * <code>ListDirectoryBuckets</code> Response Syntax.</p>
* </note> * </note>
* @example * @example
* Use a bare-bones client and the command you need to make an API call. * Use a bare-bones client and the command you need to make an API call.

Some files were not shown because too many files have changed in this diff Show More