{
  "kind": "s3client-provider-preset",
  "schemaVersion": {
    "major": 1,
    "minor": 0
  },
  "software": {
    "name": "S3Client",
    "website": "https://s3client.com"
  },
  "preset": {
    "id": "rustfs.1.0.1",
    "name": "RustFS 1.0.1",
    "serviceProfile": {
      "capabilities": [
        "conditional-copy-source",
        "conditional-delete-object",
        "conditional-overwrite",
        "conditional-upload-part-copy-source",
        "conditional-write",
        "delete-bucket-encryption",
        "delete-bucket-lifecycle",
        "delete-multiple-object-versions",
        "delete-multiple-objects",
        "get-bucket-encryption",
        "get-bucket-lifecycle-configuration",
        "get-bucket-logging",
        "list-multipart-uploads",
        "list-objects-v2",
        "list-objects-v2-start-after",
        "multipart-upload",
        "get-bucket-object-lock-configuration",
        "enable-bucket-object-lock",
        "put-bucket-object-lock-configuration",
        "get-object-retention",
        "put-object-retention",
        "get-object-legal-hold",
        "put-object-legal-hold",
        "put-object-lock",
        "create-multipart-upload-object-lock",
        "copy-object-lock",
        "bypass-governance-retention",
        "presigned-url",
        "put-bucket-encryption",
        "put-bucket-lifecycle-configuration",
        "sse-kms",
        "sse-s3",
        "standard-s3-resource-arn",
        "upload-part-copy",
        "object-versions",
        "get-bucket-versioning",
        "put-bucket-versioning"
      ],
      "serverSideCopyDomain": "",
      "protocol": "https",
      "port": 443,
      "regions": [
        {
          "name": "RustFS",
          "location": "us-east-1",
          "endpoint": "s3.rustfs.example",
          "authentication": "sigv4",
          "accessStyle": "path",
          "serverSideCopyDomain": "",
          "accountRegionalBucketNamespaceAvailable": false,
          "s3ControlRouting": {}
        }
      ],
      "storageClassPolicySet": {
        "defaultPolicyId": "standard",
        "policies": [
          {
            "id": "standard",
            "defaultClassName": "STANDARD",
            "classes": [
              {
                "name": "STANDARD",
                "placementPaths": [
                  "putObject",
                  "createMultipartUpload",
                  "copyObject"
                ],
                "sameObjectStorageClassChange": true,
                "accessStrategy": "alwaysDirect",
                "restorePolicy": {
                  "semantics": "unsupported",
                  "days": {
                    "mode": "forbidden"
                  },
                  "retrievalTier": {
                    "mode": "forbidden",
                    "acceptedTiers": []
                  },
                  "versionSupported": false
                },
                "archiveStateHeaders": []
              },
              {
                "name": "REDUCED_REDUNDANCY",
                "placementPaths": [
                  "putObject",
                  "createMultipartUpload",
                  "copyObject"
                ],
                "sameObjectStorageClassChange": true,
                "accessStrategy": "alwaysDirect",
                "restorePolicy": {
                  "semantics": "unsupported",
                  "days": {
                    "mode": "forbidden"
                  },
                  "retrievalTier": {
                    "mode": "forbidden",
                    "acceptedTiers": []
                  },
                  "versionSupported": false
                },
                "archiveStateHeaders": []
              }
            ],
            "transitions": [],
            "restoreStatusListingOperations": [],
            "intelligentTieringOperations": []
          }
        ],
        "bindings": []
      },
      "bucketTaggingCapabilityPolicy": "bucket-tagging-subresource",
      "objectTaggingCapabilityPolicy": {
        "currentObjectVerification": "versioned-read-then-head",
        "readScope": "object-and-versions",
        "editingScope": "object-and-versions",
        "clearMethod": "deleteTagging",
        "contentOperations": [
          "putObject",
          "createMultipartUpload",
          "copyObject"
        ],
        "copyMode": "independentDirectives"
      },
      "bucketLoggingCompatibilityPolicy": "strictS3",
      "lifecycleCapabilityPolicySet": {
        "defaultPolicyId": "expiration",
        "policies": [
          {
            "id": "expiration",
            "filters": [
              "empty",
              "prefix",
              "tag",
              "objectSizeGreaterThan",
              "objectSizeLessThan",
              "and"
            ],
            "combinedObjectSizeBounds": true,
            "currentExpirations": [
              "days",
              "date",
              "expiredObjectDeleteMarker"
            ],
            "noncurrentVersions": [
              "expiration",
              "newerNoncurrentVersionsForExpiration"
            ],
            "abortIncompleteMultipartUpload": true,
            "transitionTriggers": [],
            "combinations": [
              "multipleActionTypes"
            ],
            "transitionDefaultMinimumObjectSizeModes": [],
            "allowedRuleStatuses": [
              "enabled",
              "disabled"
            ],
            "allowedVersioningStates": [
              "neverEnabled",
              "suspended",
              "enabled"
            ],
            "pairedExpirationRules": false
          }
        ],
        "bindings": []
      },
      "websiteCapabilityPolicySet": {
        "defaultPolicyId": "website",
        "policies": [
          {
            "id": "website",
            "getBucketWebsite": true,
            "putBucketWebsite": true,
            "deleteBucketWebsite": true,
            "redirectAllRequestsTo": true,
            "routingRules": true
          }
        ],
        "bindings": []
      },
      "encryptionCapabilityPolicySet": {
        "defaultPolicyId": "encryption",
        "policies": [
          {
            "id": "encryption",
            "sseS3Operations": [
              "putObject",
              "createMultipartUpload",
              "copyObject"
            ],
            "sseKmsOperations": [
              "putObject",
              "createMultipartUpload",
              "copyObject"
            ],
            "dsseKmsOperations": [],
            "customerKeyOperations": [],
            "customerCopySourceOperations": [],
            "kmsContextOperations": [
              "putObject",
              "createMultipartUpload",
              "copyObject"
            ],
            "bucketKeyOperations": [],
            "bucketEncryptionModes": [
              "sse-s3",
              "sse-kms"
            ],
            "blockedEncryptionTypes": false,
            "bucketKeyConfiguration": false,
            "updateBucketKeys": false
          }
        ],
        "bindings": []
      },
      "defaultRegionLocation": "us-east-1"
    }
  }
}
