ToolJet/plugins/packages/s3/lib/manifest.json
Ganesh Kumar 8c89a6a745
Feat : Add S3 bucket name to configuration page (#16251)
* S3 bucket name added in Config page

* S3 plugin bugfix

* S3 bucket name in configuration page
2026-05-07 21:56:31 +05:30

185 lines
6.9 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "AWS S3 datasource",
"description": "A schema defining AWS S3 datasource",
"type": "object",
"tj:version": "1.0.0",
"tj:source": {
"name": "AWS S3",
"kind": "s3",
"type": "cloud-storage"
},
"properties": {
"instance_metadata_credentials": {
"type": "string",
"title": "Authentication",
"description": "Single select dropdown for choosing credentials",
"enum": ["iam_access_keys", "aws_instance_credentials", "aws_arn_role", "default_credentials_provider_chain"],
"default": "iam_access_keys"
},
"access_key": {
"type": "string",
"title": "Access key",
"description": "Enter access key"
},
"secret_key": {
"type": "string",
"title": "Secret key",
"description": "Enter secret key"
},
"region": {
"type": "string",
"title": "Region",
"description": "Single select dropdown for region"
},
"endpoint_enabled": {
"type": "boolean",
"title": "Custom Endpoint",
"description": "Toggle for endpoint_enabled",
"default": false
},
"endpoint": {
"type": "string",
"title": "Custom endpoint",
"description": "Enter custom endpoint"
},
"role_arn": {
"type": "string",
"title": "Role ARN",
"description": "Enter role ARN, e.g. arn:aws:iam::123456789012:role/role-name"
},
"bucket_name": {
"type": "string",
"title": "Bucket",
"description": "Enter bucket name",
"default": ""
},
"allow_dynamic_connection_parameters": {
"type": "boolean",
"title": "Allow dynamic connection parameters",
"description": "Toggle to allow bucket name to be set per query. When enabled, bucket name is read from query options; when disabled, it is read from the configuration below.",
"default": true
}
},
"tj:encrypted": ["secret_key"],
"required": ["instance_metadata_credentials"],
"tj:ui:properties": {
"credentials": {
"order": 1,
"$ref": "#/properties/instance_metadata_credentials",
"key": "instance_metadata_credentials",
"label": "Authentication",
"description": "Single select dropdown for choosing credentials",
"widget": "dropdown-component-flip",
"list": [
{ "value": "iam_access_keys", "name": "Use IAM Access Keys" },
{ "value": "aws_instance_credentials", "name": "Use AWS Instance Credentials" },
{ "value": "aws_arn_role", "name": "Use AWS ARN Role" },
{ "value": "default_credentials_provider_chain", "name": "Default Credential Provider Chain" }
],
"commonFields": {
"region": {
"order": 10,
"$ref": "#/properties/region",
"key": "region",
"label": "Region",
"description": "Single select dropdown for region",
"widget": "dropdown",
"list": [
{ "name": "US East (Ohio)", "value": "us-east-2" },
{ "name": "US East (N. Virginia)", "value": "us-east-1" },
{ "name": "US West (N. California)", "value": "us-west-1" },
{ "name": "US West (Oregon)", "value": "us-west-2" },
{ "name": "Africa (Cape Town)", "value": "af-south-1" },
{ "name": "Asia Pacific (Hong Kong)", "value": "ap-east-1" },
{ "name": "Asia Pacific (Mumbai)", "value": "ap-south-1" },
{ "name": "Asia Pacific (Osaka)", "value": "ap-northeast-3" },
{ "name": "Asia Pacific (Seoul)", "value": "ap-northeast-2" },
{ "name": "Asia Pacific (Singapore)", "value": "ap-southeast-1" },
{ "name": "Asia Pacific (Sydney)", "value": "ap-southeast-2" },
{ "name": "Asia Pacific (Tokyo)", "value": "ap-northeast-1" },
{ "name": "Canada (Central)", "value": "ca-central-1" },
{ "name": "China (Beijing)", "value": "cn-north-1" },
{ "name": "China (Ningxia)", "value": "cn-northwest-1" },
{ "name": "Europe (Frankfurt)", "value": "eu-central-1" },
{ "name": "Europe (Ireland)", "value": "eu-west-1" },
{ "name": "Europe (London)", "value": "eu-west-2" },
{ "name": "Europe (Milan)", "value": "eu-south-1" },
{ "name": "Europe (Paris)", "value": "eu-west-3" },
{ "name": "Europe (Stockholm)", "value": "eu-north-1" },
{ "name": "Middle East (UAE)", "value": "me-central-1" },
{ "name": "Middle East (Bahrain)", "value": "me-south-1" },
{ "name": "South America (São Paulo)", "value": "sa-east-1" },
{ "name": "AWS GovCloud (US-East)", "value": "us-gov-east-1" },
{ "name": "AWS GovCloud (US-West)", "value": "us-gov-west-1" }
]
},
"bucket_name": {
"order": 20,
"$ref": "#/properties/bucket_name",
"key": "bucket_name",
"label": "Bucket",
"description": "Enter bucket name",
"widget": "text-v3"
}
}
},
"iam_access_keys": {
"access_key": {
"order": 10,
"$ref": "#/properties/access_key",
"key": "access_key",
"label": "Access key",
"description": "Enter access key",
"widget": "text-v3"
},
"secret_key": {
"order": 20,
"$ref": "#/properties/secret_key",
"key": "secret_key",
"label": "Secret key",
"description": "Enter secret key",
"widget": "password-v3"
},
"endpoint_enabled": {
"order": 30,
"$ref": "#/properties/endpoint_enabled",
"key": "endpoint_enabled",
"label": "Custom Endpoint",
"description": "Toggle for endpoint_enabled",
"widget": "toggle-flip",
"true": {
"endpoint": {
"order": 40,
"$ref": "#/properties/endpoint",
"key": "endpoint",
"description": "Enter custom endpoint",
"widget": "text-v3"
}
},
"false": {}
}
},
"aws_instance_credentials": {},
"aws_arn_role": {
"role_arn": {
"order": 10,
"$ref": "#/properties/role_arn",
"key": "role_arn",
"label": "Role ARN",
"description": "Enter role ARN, e.g. arn:aws:iam::123456789012:role/role-name",
"widget": "text-v3"
}
},
"default_credentials_provider_chain": {},
"allow_dynamic_connection_parameters": {
"order": 200,
"$ref": "#/properties/allow_dynamic_connection_parameters",
"key": "allow_dynamic_connection_parameters",
"label": "Allow dynamic connection parameters",
"description": "Toggle to allow bucket name to be set per query. When enabled, bucket name is read from query options; when disabled, it is read from the configuration below.",
"widget": "toggle-v2",
"help_text": "Enable this to allow overriding the bucket name per query at runtime"
}
}
}