} from "@volcengine/tos-sdk";
const client = new TosVectorsClient({
accessKeyId: process.env["TOS_ACCESS_KEY"],
accessKeySecret: process.env["TOS_SECRET_KEY"],
region: 'Provide your region',
endpoint: 'Provide your vector endpoint',
const vectorBucketName = 'Provide your vector bucket name';
const accountId = process.env["TOS_ACCOUNT_ID"];
function handleError(error: Error) {
if (error instanceof TosClientError) {
console.log("Client Error:");
console.log(" Message:", error.message);
console.log(" Stack:", error.stack);
} else if (error instanceof TosServerError) {
console.log("Server Error:");
console.log(" Request ID:", error.requestId);
console.log(" Status Code:", error.statusCode);
console.log(" Code:", error.code);
console.log(" Message:", error.message);
console.log(" Headers:", error.headers);
console.log("Unexpected Error:");
console.log(" Message:", error.message);
const result = await client.getVectorBucketPolicy({
console.log("The request has been successfully returned:");
console.log(" Request ID:", result.requestId);
console.log(" Status Code:", result.statusCode);
console.log(" Headers:", result.headers);
const policy = result.data;
console.log("No Policy data was retrieved.");
console.log("Basic information of the policy:");
console.log(" Version:", policy.Version);
const statements = policy.Statement || [];
if (!Array.isArray(statements) || statements.length === 0) {
console.log(" The current policy does not contain any statements.");
console.log("Statement list (Statements):");
statements.forEach((statement: any, index: number) => {
console.log(` [Statement ${index + 1}]`);
if (statement.Sid !== undefined) {
console.log(" Sid:", statement.Sid);
console.log(" Effect:", statement.Effect);
const actions = statement.Action;
if (Array.isArray(actions)) {
console.log(" Action:", actions.join(", "));
} else if (actions !== undefined) {
console.log(" Action:", actions);
const principal = statement.Principal;
if (Array.isArray(principal)) {
console.log(" Principal:", principal.join(", "));
principal !== undefined &&
typeof principal === "object"
console.log(" Principal:", JSON.stringify(principal, null, 2));
} else if (principal !== undefined) {
console.log(" Principal:", principal);
const resource = statement.Resource;
if (Array.isArray(resource)) {
console.log(" Resource:", resource.join(", "));
} else if (resource !== undefined) {
console.log(" Resource:", resource);