Bin
2025-12-17 d616898802dfe7e5dd648bcf53c6d1f86b6d3642
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
# 1x3 grid
title_bucket_prefix: &title_bucket_prefix
  - type: text
    name: title
    label: Storage Name
    required: true
  - type: text
    name: bucket
    label: Bucket Name
    required: true
  - type: text
    name: prefix
    label: Bucket Prefix
 
gcs_credentials: &gcs_credentials
  - type: password
    name: google_application_credentials
    label: Google Application Credentials
    footer: Paste the contents of credentials.json in this field OR leave it blank to use ADC.
    autoComplete: "new-password"
    skipAutofill: true
    allowEmpty: false
    validators:
      - json
 
project_id: &project_id
  - type: text
    name: google_project_id
    label: Google Project ID
    footer: Leave blank to inherit from Google Application Credentials.
 
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
 
  # GCS credentials
  - columnCount: 1
    fields: *gcs_credentials
  # Project ID
  - columnCount: 1
    fields: *project_id
 
  # 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 columns 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
 
ExportStorage:
  - columnCount: 3
    fields: *title_bucket_prefix
  - columnCount: 1
    fields: *gcs_credentials
  # Project ID
  - columnCount: 1
    fields: *project_id