# 1x3 grid title_bucket_prefix: &title_bucket_prefix - type: text name: title label: Storage Name required: true - type: text name: bucket label: Bucket Name allowEmpty: false required: true - type: text name: prefix label: Bucket Prefix # 2x3 grid aws_params_import: &aws_params_import - type: text name: region_name label: Region Name placeholder: us-east-1 - type: text name: s3_endpoint label: S3 Endpoint - null - type: password name: aws_access_key_id label: Access Key ID autoComplete: "off" skipAutofill: true allowEmpty: false protectedValue: true tooltip: "Leave blank if already set up as an Environment Variable." - type: password name: aws_secret_access_key label: Secret Access Key autoComplete: "new-password" skipAutofill: true allowEmpty: false protectedValue: true tooltip: "Leave blank if already set up as an Environment Variable." - type: password name: aws_session_token autoComplete: "new-password" label: Session Token skipAutofill: true allowEmpty: true protectedValue: true # 2x3 grid aws_params_export: &aws_params_export - type: text name: region_name label: Region Name placeholder: us-east-1 - type: text name: s3_endpoint label: S3 Endpoint - type: text name: aws_sse_kms_key_id label: SSE KMS Key ID - type: password name: aws_access_key_id label: Access Key ID autoComplete: "off" skipAutofill: true allowEmpty: false protectedValue: true - type: password name: aws_secret_access_key label: Secret Access Key autoComplete: "new-password" skipAutofill: true allowEmpty: false protectedValue: true - type: password name: aws_session_token autoComplete: "new-password" label: Session Token skipAutofill: true allowEmpty: true protectedValue: true ImportStorage: # Title, Bucket, Prefix - columnCount: 3 fields: *title_bucket_prefix # Regex filter - columnCount: 1 fields: - type: text name: regex_filter label: File Filter Regex placeholder: '.*csv or .*(jpe?g|png|tiff) or .\w+-\d+.text' validators: - regexp # AWS specific params - columnCount: 3 fields: *aws_params_import # Import method selection - columnCount: 1 fields: - type: select name: use_blob_urls label: Import method description: Choose how to import your data from storage placeholder: "Select an option" required: true options: - value: true label: "Files - Automatically creates a task for each storage object (e.g. JPG, MP3, TXT)" - value: false label: "Tasks - Treat each JSON or JSONL file as a task definition (one or more tasks per file)" # 2 column grid - columnCount: 2 columns: - width: 468 fields: - type: toggle name: presign label: "Use pre-signed URLs (On)\n Proxy through the platform (Off)" description: "When pre-signed URLs are enabled, all data bypasses the platform and user browsers directly read data from storage" value: true - fields: - type: counter name: presign_ttl label: Expire pre-signed URLs (minutes) min: 1 value: 15 dependency: presign - columnCount: 1 columns: - fields: - type: toggle name: recursive_scan label: Scan all sub-folders description: Include files from all nested folders ExportStorage: - columnCount: 3 fields: *title_bucket_prefix - columnCount: 3 fields: *aws_params_export # 1 columns grid - columnCount: 1 columns: - fields: - type: toggle name: can_delete_objects label: Can delete objects from storage description: If unchecked, annotations will not be deleted from storage