autorender 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +41 -0
  4. data/README.md +266 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/autorender/client.rb +98 -0
  7. data/lib/autorender/errors.rb +228 -0
  8. data/lib/autorender/file_part.rb +58 -0
  9. data/lib/autorender/internal/page_pagination.rb +96 -0
  10. data/lib/autorender/internal/transport/base_client.rb +576 -0
  11. data/lib/autorender/internal/transport/pooled_net_requester.rb +210 -0
  12. data/lib/autorender/internal/type/array_of.rb +168 -0
  13. data/lib/autorender/internal/type/base_model.rb +531 -0
  14. data/lib/autorender/internal/type/base_page.rb +55 -0
  15. data/lib/autorender/internal/type/boolean.rb +77 -0
  16. data/lib/autorender/internal/type/converter.rb +327 -0
  17. data/lib/autorender/internal/type/enum.rb +131 -0
  18. data/lib/autorender/internal/type/file_input.rb +111 -0
  19. data/lib/autorender/internal/type/hash_of.rb +188 -0
  20. data/lib/autorender/internal/type/request_parameters.rb +42 -0
  21. data/lib/autorender/internal/type/union.rb +237 -0
  22. data/lib/autorender/internal/type/unknown.rb +81 -0
  23. data/lib/autorender/internal/util.rb +968 -0
  24. data/lib/autorender/internal.rb +20 -0
  25. data/lib/autorender/models/file_delete_params.rb +20 -0
  26. data/lib/autorender/models/file_list_params.rb +65 -0
  27. data/lib/autorender/models/file_list_response.rb +167 -0
  28. data/lib/autorender/models/file_rename_params.rb +29 -0
  29. data/lib/autorender/models/file_rename_response.rb +143 -0
  30. data/lib/autorender/models/file_retrieve_params.rb +20 -0
  31. data/lib/autorender/models/file_retrieve_response.rb +143 -0
  32. data/lib/autorender/models/folder_create_params.rb +30 -0
  33. data/lib/autorender/models/folder_create_response.rb +54 -0
  34. data/lib/autorender/models/folder_delete_params.rb +20 -0
  35. data/lib/autorender/models/folder_list_params.rb +49 -0
  36. data/lib/autorender/models/folder_list_response.rb +65 -0
  37. data/lib/autorender/models/folder_rename_params.rb +29 -0
  38. data/lib/autorender/models/folder_rename_response.rb +54 -0
  39. data/lib/autorender/models/multipart_upload_complete_params.rb +26 -0
  40. data/lib/autorender/models/multipart_upload_complete_response.rb +144 -0
  41. data/lib/autorender/models/multipart_upload_start_params.rb +82 -0
  42. data/lib/autorender/models/multipart_upload_start_response.rb +105 -0
  43. data/lib/autorender/models/upload_create_from_url_params.rb +76 -0
  44. data/lib/autorender/models/upload_create_from_url_response.rb +144 -0
  45. data/lib/autorender/models/upload_create_params.rb +86 -0
  46. data/lib/autorender/models/upload_create_response.rb +144 -0
  47. data/lib/autorender/models.rb +65 -0
  48. data/lib/autorender/request_options.rb +77 -0
  49. data/lib/autorender/resources/files.rb +108 -0
  50. data/lib/autorender/resources/folders.rb +109 -0
  51. data/lib/autorender/resources/multipart_uploads.rb +66 -0
  52. data/lib/autorender/resources/uploads.rb +90 -0
  53. data/lib/autorender/version.rb +5 -0
  54. data/lib/autorender.rb +82 -0
  55. data/manifest.yaml +17 -0
  56. data/rbi/autorender/client.rbi +62 -0
  57. data/rbi/autorender/errors.rbi +205 -0
  58. data/rbi/autorender/file_part.rbi +37 -0
  59. data/rbi/autorender/internal/page_pagination.rbi +28 -0
  60. data/rbi/autorender/internal/transport/base_client.rbi +300 -0
  61. data/rbi/autorender/internal/transport/pooled_net_requester.rbi +84 -0
  62. data/rbi/autorender/internal/type/array_of.rbi +104 -0
  63. data/rbi/autorender/internal/type/base_model.rbi +308 -0
  64. data/rbi/autorender/internal/type/base_page.rbi +42 -0
  65. data/rbi/autorender/internal/type/boolean.rbi +58 -0
  66. data/rbi/autorender/internal/type/converter.rbi +216 -0
  67. data/rbi/autorender/internal/type/enum.rbi +82 -0
  68. data/rbi/autorender/internal/type/file_input.rbi +59 -0
  69. data/rbi/autorender/internal/type/hash_of.rbi +104 -0
  70. data/rbi/autorender/internal/type/request_parameters.rbi +29 -0
  71. data/rbi/autorender/internal/type/union.rbi +128 -0
  72. data/rbi/autorender/internal/type/unknown.rbi +58 -0
  73. data/rbi/autorender/internal/util.rbi +515 -0
  74. data/rbi/autorender/internal.rbi +18 -0
  75. data/rbi/autorender/models/file_delete_params.rbi +35 -0
  76. data/rbi/autorender/models/file_list_params.rbi +116 -0
  77. data/rbi/autorender/models/file_list_response.rbi +227 -0
  78. data/rbi/autorender/models/file_rename_params.rbi +49 -0
  79. data/rbi/autorender/models/file_rename_response.rbi +205 -0
  80. data/rbi/autorender/models/file_retrieve_params.rbi +35 -0
  81. data/rbi/autorender/models/file_retrieve_response.rbi +209 -0
  82. data/rbi/autorender/models/folder_create_params.rbi +54 -0
  83. data/rbi/autorender/models/folder_create_response.rbi +75 -0
  84. data/rbi/autorender/models/folder_delete_params.rbi +35 -0
  85. data/rbi/autorender/models/folder_list_params.rbi +97 -0
  86. data/rbi/autorender/models/folder_list_response.rbi +105 -0
  87. data/rbi/autorender/models/folder_rename_params.rbi +49 -0
  88. data/rbi/autorender/models/folder_rename_response.rbi +75 -0
  89. data/rbi/autorender/models/multipart_upload_complete_params.rbi +49 -0
  90. data/rbi/autorender/models/multipart_upload_complete_response.rbi +174 -0
  91. data/rbi/autorender/models/multipart_upload_start_params.rbi +138 -0
  92. data/rbi/autorender/models/multipart_upload_start_response.rbi +146 -0
  93. data/rbi/autorender/models/upload_create_from_url_params.rbi +119 -0
  94. data/rbi/autorender/models/upload_create_from_url_response.rbi +174 -0
  95. data/rbi/autorender/models/upload_create_params.rbi +128 -0
  96. data/rbi/autorender/models/upload_create_response.rbi +174 -0
  97. data/rbi/autorender/models.rbi +28 -0
  98. data/rbi/autorender/request_options.rbi +59 -0
  99. data/rbi/autorender/resources/files.rbi +72 -0
  100. data/rbi/autorender/resources/folders.rbi +75 -0
  101. data/rbi/autorender/resources/multipart_uploads.rbi +53 -0
  102. data/rbi/autorender/resources/uploads.rbi +84 -0
  103. data/rbi/autorender/version.rbi +5 -0
  104. data/sig/autorender/client.rbs +32 -0
  105. data/sig/autorender/errors.rbs +117 -0
  106. data/sig/autorender/file_part.rbs +21 -0
  107. data/sig/autorender/internal/page_pagination.rbs +17 -0
  108. data/sig/autorender/internal/transport/base_client.rbs +133 -0
  109. data/sig/autorender/internal/transport/pooled_net_requester.rbs +48 -0
  110. data/sig/autorender/internal/type/array_of.rbs +48 -0
  111. data/sig/autorender/internal/type/base_model.rbs +102 -0
  112. data/sig/autorender/internal/type/base_page.rbs +24 -0
  113. data/sig/autorender/internal/type/boolean.rbs +26 -0
  114. data/sig/autorender/internal/type/converter.rbs +79 -0
  115. data/sig/autorender/internal/type/enum.rbs +32 -0
  116. data/sig/autorender/internal/type/file_input.rbs +25 -0
  117. data/sig/autorender/internal/type/hash_of.rbs +48 -0
  118. data/sig/autorender/internal/type/request_parameters.rbs +19 -0
  119. data/sig/autorender/internal/type/union.rbs +52 -0
  120. data/sig/autorender/internal/type/unknown.rbs +26 -0
  121. data/sig/autorender/internal/util.rbs +199 -0
  122. data/sig/autorender/internal.rbs +9 -0
  123. data/sig/autorender/models/file_delete_params.rbs +23 -0
  124. data/sig/autorender/models/file_list_params.rbs +79 -0
  125. data/sig/autorender/models/file_list_response.rbs +159 -0
  126. data/sig/autorender/models/file_rename_params.rbs +28 -0
  127. data/sig/autorender/models/file_rename_response.rbs +132 -0
  128. data/sig/autorender/models/file_retrieve_params.rbs +23 -0
  129. data/sig/autorender/models/file_retrieve_response.rbs +132 -0
  130. data/sig/autorender/models/folder_create_params.rbs +30 -0
  131. data/sig/autorender/models/folder_create_response.rbs +50 -0
  132. data/sig/autorender/models/folder_delete_params.rbs +23 -0
  133. data/sig/autorender/models/folder_list_params.rbs +57 -0
  134. data/sig/autorender/models/folder_list_response.rbs +65 -0
  135. data/sig/autorender/models/folder_rename_params.rbs +28 -0
  136. data/sig/autorender/models/folder_rename_response.rbs +50 -0
  137. data/sig/autorender/models/multipart_upload_complete_params.rbs +30 -0
  138. data/sig/autorender/models/multipart_upload_complete_response.rbs +131 -0
  139. data/sig/autorender/models/multipart_upload_start_params.rbs +90 -0
  140. data/sig/autorender/models/multipart_upload_start_response.rbs +92 -0
  141. data/sig/autorender/models/upload_create_from_url_params.rbs +75 -0
  142. data/sig/autorender/models/upload_create_from_url_response.rbs +131 -0
  143. data/sig/autorender/models/upload_create_params.rbs +80 -0
  144. data/sig/autorender/models/upload_create_response.rbs +131 -0
  145. data/sig/autorender/models.rbs +25 -0
  146. data/sig/autorender/request_options.rbs +36 -0
  147. data/sig/autorender/resources/files.rbs +32 -0
  148. data/sig/autorender/resources/folders.rbs +31 -0
  149. data/sig/autorender/resources/multipart_uploads.rbs +26 -0
  150. data/sig/autorender/resources/uploads.rbs +32 -0
  151. data/sig/autorender/version.rbs +3 -0
  152. metadata +223 -0
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Autorender
4
+ module Models
5
+ # @see Autorender::Resources::Folders#delete
6
+ class FolderDeleteParams < Autorender::Internal::Type::BaseModel
7
+ extend Autorender::Internal::Type::RequestParameters::Converter
8
+ include Autorender::Internal::Type::RequestParameters
9
+
10
+ # @!attribute folder_no
11
+ #
12
+ # @return [String]
13
+ required :folder_no, String
14
+
15
+ # @!method initialize(folder_no:, request_options: {})
16
+ # @param folder_no [String]
17
+ # @param request_options [Autorender::RequestOptions, Hash{Symbol=>Object}]
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Autorender
4
+ module Models
5
+ # @see Autorender::Resources::Folders#list
6
+ class FolderListParams < Autorender::Internal::Type::BaseModel
7
+ extend Autorender::Internal::Type::RequestParameters::Converter
8
+ include Autorender::Internal::Type::RequestParameters
9
+
10
+ # @!attribute parent_folder_no
11
+ # Filter by parent folder number
12
+ #
13
+ # @return [String, nil]
14
+ optional :parent_folder_no, String
15
+
16
+ # @!attribute search
17
+ # Partial name match (case-insensitive)
18
+ #
19
+ # @return [String, nil]
20
+ optional :search, String
21
+
22
+ # @!attribute sort
23
+ #
24
+ # @return [Symbol, Autorender::Models::FolderListParams::Sort, nil]
25
+ optional :sort, enum: -> { Autorender::FolderListParams::Sort }
26
+
27
+ # @!method initialize(parent_folder_no: nil, search: nil, sort: nil, request_options: {})
28
+ # @param parent_folder_no [String] Filter by parent folder number
29
+ #
30
+ # @param search [String] Partial name match (case-insensitive)
31
+ #
32
+ # @param sort [Symbol, Autorender::Models::FolderListParams::Sort]
33
+ #
34
+ # @param request_options [Autorender::RequestOptions, Hash{Symbol=>Object}]
35
+
36
+ module Sort
37
+ extend Autorender::Internal::Type::Enum
38
+
39
+ NAME_ASC = :name_asc
40
+ NAME_DESC = :name_desc
41
+ CREATED_AT_ASC = :created_at_asc
42
+ CREATED_AT_DESC = :created_at_desc
43
+
44
+ # @!method self.values
45
+ # @return [Array<Symbol>]
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,65 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Autorender
4
+ module Models
5
+ # @see Autorender::Resources::Folders#list
6
+ class FolderListResponse < Autorender::Internal::Type::BaseModel
7
+ # @!attribute folders
8
+ #
9
+ # @return [Array<Autorender::Models::FolderListResponse::Folder>]
10
+ required :folders,
11
+ -> { Autorender::Internal::Type::ArrayOf[Autorender::Models::FolderListResponse::Folder] }
12
+
13
+ # @!method initialize(folders:)
14
+ # List of folders
15
+ #
16
+ # @param folders [Array<Autorender::Models::FolderListResponse::Folder>]
17
+
18
+ class Folder < Autorender::Internal::Type::BaseModel
19
+ # @!attribute id
20
+ #
21
+ # @return [String]
22
+ required :id, String
23
+
24
+ # @!attribute created_at
25
+ #
26
+ # @return [Time]
27
+ required :created_at, Time
28
+
29
+ # @!attribute folder_no
30
+ #
31
+ # @return [String]
32
+ required :folder_no, String
33
+
34
+ # @!attribute name
35
+ #
36
+ # @return [String]
37
+ required :name, String
38
+
39
+ # @!attribute parent_folder_no
40
+ #
41
+ # @return [String, nil]
42
+ required :parent_folder_no, String, nil?: true
43
+
44
+ # @!attribute path
45
+ #
46
+ # @return [String]
47
+ required :path, String
48
+
49
+ # @!attribute updated_at
50
+ #
51
+ # @return [Time, nil]
52
+ required :updated_at, Time, nil?: true
53
+
54
+ # @!method initialize(id:, created_at:, folder_no:, name:, parent_folder_no:, path:, updated_at:)
55
+ # @param id [String]
56
+ # @param created_at [Time]
57
+ # @param folder_no [String]
58
+ # @param name [String]
59
+ # @param parent_folder_no [String, nil]
60
+ # @param path [String]
61
+ # @param updated_at [Time, nil]
62
+ end
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Autorender
4
+ module Models
5
+ # @see Autorender::Resources::Folders#rename
6
+ class FolderRenameParams < Autorender::Internal::Type::BaseModel
7
+ extend Autorender::Internal::Type::RequestParameters::Converter
8
+ include Autorender::Internal::Type::RequestParameters
9
+
10
+ # @!attribute folder_no
11
+ #
12
+ # @return [String]
13
+ required :folder_no, String
14
+
15
+ # @!attribute name
16
+ # New folder name without slashes
17
+ #
18
+ # @return [String]
19
+ required :name, String
20
+
21
+ # @!method initialize(folder_no:, name:, request_options: {})
22
+ # @param folder_no [String]
23
+ #
24
+ # @param name [String] New folder name without slashes
25
+ #
26
+ # @param request_options [Autorender::RequestOptions, Hash{Symbol=>Object}]
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,54 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Autorender
4
+ module Models
5
+ # @see Autorender::Resources::Folders#rename
6
+ class FolderRenameResponse < Autorender::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ #
9
+ # @return [String]
10
+ required :id, String
11
+
12
+ # @!attribute created_at
13
+ #
14
+ # @return [Time]
15
+ required :created_at, Time
16
+
17
+ # @!attribute folder_no
18
+ #
19
+ # @return [String]
20
+ required :folder_no, String
21
+
22
+ # @!attribute name
23
+ #
24
+ # @return [String]
25
+ required :name, String
26
+
27
+ # @!attribute parent_folder_no
28
+ #
29
+ # @return [String, nil]
30
+ required :parent_folder_no, String, nil?: true
31
+
32
+ # @!attribute path
33
+ #
34
+ # @return [String]
35
+ required :path, String
36
+
37
+ # @!attribute updated_at
38
+ #
39
+ # @return [Time, nil]
40
+ required :updated_at, Time, nil?: true
41
+
42
+ # @!method initialize(id:, created_at:, folder_no:, name:, parent_folder_no:, path:, updated_at:)
43
+ # Renamed folder
44
+ #
45
+ # @param id [String]
46
+ # @param created_at [Time]
47
+ # @param folder_no [String]
48
+ # @param name [String]
49
+ # @param parent_folder_no [String, nil]
50
+ # @param path [String]
51
+ # @param updated_at [Time, nil]
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Autorender
4
+ module Models
5
+ # @see Autorender::Resources::MultipartUploads#complete
6
+ class MultipartUploadCompleteParams < Autorender::Internal::Type::BaseModel
7
+ extend Autorender::Internal::Type::RequestParameters::Converter
8
+ include Autorender::Internal::Type::RequestParameters
9
+
10
+ # @!attribute session_id
11
+ #
12
+ # @return [String]
13
+ required :session_id, String
14
+
15
+ # @!attribute uuid
16
+ #
17
+ # @return [String, nil]
18
+ optional :uuid, String
19
+
20
+ # @!method initialize(session_id:, uuid: nil, request_options: {})
21
+ # @param session_id [String]
22
+ # @param uuid [String]
23
+ # @param request_options [Autorender::RequestOptions, Hash{Symbol=>Object}]
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,144 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Autorender
4
+ module Models
5
+ # @see Autorender::Resources::MultipartUploads#complete
6
+ class MultipartUploadCompleteResponse < Autorender::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ #
9
+ # @return [String]
10
+ required :id, String
11
+
12
+ # @!attribute created_at
13
+ #
14
+ # @return [Time]
15
+ required :created_at, Time
16
+
17
+ # @!attribute custom_id
18
+ #
19
+ # @return [String, nil]
20
+ required :custom_id, String, nil?: true
21
+
22
+ # @!attribute extension
23
+ #
24
+ # @return [String]
25
+ required :extension, String
26
+
27
+ # @!attribute file_no
28
+ #
29
+ # @return [String]
30
+ required :file_no, String
31
+
32
+ # @!attribute folder_no
33
+ #
34
+ # @return [String, nil]
35
+ required :folder_no, String, nil?: true
36
+
37
+ # @!attribute height
38
+ #
39
+ # @return [Integer, nil]
40
+ required :height, Integer, nil?: true
41
+
42
+ # @!attribute is_duplicate
43
+ #
44
+ # @return [Boolean]
45
+ required :is_duplicate, Autorender::Internal::Type::Boolean
46
+
47
+ # @!attribute metadata
48
+ #
49
+ # @return [Hash{Symbol=>Object}, nil]
50
+ required :metadata, Autorender::Internal::Type::HashOf[Autorender::Internal::Type::Unknown], nil?: true
51
+
52
+ # @!attribute mime_type
53
+ #
54
+ # @return [String]
55
+ required :mime_type, String
56
+
57
+ # @!attribute name
58
+ #
59
+ # @return [String]
60
+ required :name, String
61
+
62
+ # @!attribute path
63
+ #
64
+ # @return [String]
65
+ required :path, String
66
+
67
+ # @!attribute size
68
+ #
69
+ # @return [Integer]
70
+ required :size, Integer
71
+
72
+ # @!attribute tags
73
+ #
74
+ # @return [Array<String>]
75
+ required :tags, Autorender::Internal::Type::ArrayOf[String]
76
+
77
+ # @!attribute thumbnail
78
+ #
79
+ # @return [String]
80
+ required :thumbnail, String
81
+
82
+ # @!attribute upload_source
83
+ #
84
+ # @return [String]
85
+ required :upload_source, String
86
+
87
+ # @!attribute url
88
+ #
89
+ # @return [String]
90
+ required :url, String
91
+
92
+ # @!attribute width
93
+ #
94
+ # @return [Integer, nil]
95
+ required :width, Integer, nil?: true
96
+
97
+ # @!attribute workspace_id
98
+ #
99
+ # @return [String]
100
+ required :workspace_id, String
101
+
102
+ # @!attribute format_
103
+ #
104
+ # @return [String, nil]
105
+ optional :format_, String, api_name: :format
106
+
107
+ # @!attribute hash_
108
+ #
109
+ # @return [String, nil]
110
+ optional :hash_, String, api_name: :hash
111
+
112
+ # @!attribute is_private
113
+ #
114
+ # @return [Boolean, nil]
115
+ optional :is_private, Autorender::Internal::Type::Boolean
116
+
117
+ # @!method initialize(id:, created_at:, custom_id:, extension:, file_no:, folder_no:, height:, is_duplicate:, metadata:, mime_type:, name:, path:, size:, tags:, thumbnail:, upload_source:, url:, width:, workspace_id:, format_: nil, hash_: nil, is_private: nil)
118
+ # Upload completed
119
+ #
120
+ # @param id [String]
121
+ # @param created_at [Time]
122
+ # @param custom_id [String, nil]
123
+ # @param extension [String]
124
+ # @param file_no [String]
125
+ # @param folder_no [String, nil]
126
+ # @param height [Integer, nil]
127
+ # @param is_duplicate [Boolean]
128
+ # @param metadata [Hash{Symbol=>Object}, nil]
129
+ # @param mime_type [String]
130
+ # @param name [String]
131
+ # @param path [String]
132
+ # @param size [Integer]
133
+ # @param tags [Array<String>]
134
+ # @param thumbnail [String]
135
+ # @param upload_source [String]
136
+ # @param url [String]
137
+ # @param width [Integer, nil]
138
+ # @param workspace_id [String]
139
+ # @param format_ [String]
140
+ # @param hash_ [String]
141
+ # @param is_private [Boolean]
142
+ end
143
+ end
144
+ end
@@ -0,0 +1,82 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Autorender
4
+ module Models
5
+ # @see Autorender::Resources::MultipartUploads#start
6
+ class MultipartUploadStartParams < Autorender::Internal::Type::BaseModel
7
+ extend Autorender::Internal::Type::RequestParameters::Converter
8
+ include Autorender::Internal::Type::RequestParameters
9
+
10
+ # @!attribute file_name
11
+ #
12
+ # @return [String]
13
+ required :file_name, String
14
+
15
+ # @!attribute format_
16
+ #
17
+ # @return [String]
18
+ required :format_, String, api_name: :format
19
+
20
+ # @!attribute size
21
+ #
22
+ # @return [Integer]
23
+ required :size, Integer
24
+
25
+ # @!attribute custom_id
26
+ #
27
+ # @return [String, nil]
28
+ optional :custom_id, String
29
+
30
+ # @!attribute folder
31
+ #
32
+ # @return [String, nil]
33
+ optional :folder, String
34
+
35
+ # @!attribute metadata
36
+ #
37
+ # @return [Hash{Symbol=>Object}, nil]
38
+ optional :metadata, Autorender::Internal::Type::HashOf[Autorender::Internal::Type::Unknown]
39
+
40
+ # @!attribute random_prefix
41
+ #
42
+ # @return [Boolean, nil]
43
+ optional :random_prefix, Autorender::Internal::Type::Boolean
44
+
45
+ # @!attribute tags
46
+ #
47
+ # @return [Array<String>, String, nil]
48
+ optional :tags, union: -> { Autorender::MultipartUploadStartParams::Tags }
49
+
50
+ # @!attribute ttl_seconds
51
+ #
52
+ # @return [Integer, nil]
53
+ optional :ttl_seconds, Integer
54
+
55
+ # @!method initialize(file_name:, format_:, size:, custom_id: nil, folder: nil, metadata: nil, random_prefix: nil, tags: nil, ttl_seconds: nil, request_options: {})
56
+ # @param file_name [String]
57
+ # @param format_ [String]
58
+ # @param size [Integer]
59
+ # @param custom_id [String]
60
+ # @param folder [String]
61
+ # @param metadata [Hash{Symbol=>Object}]
62
+ # @param random_prefix [Boolean]
63
+ # @param tags [Array<String>, String]
64
+ # @param ttl_seconds [Integer]
65
+ # @param request_options [Autorender::RequestOptions, Hash{Symbol=>Object}]
66
+
67
+ module Tags
68
+ extend Autorender::Internal::Type::Union
69
+
70
+ variant -> { Autorender::Models::MultipartUploadStartParams::Tags::StringArray }
71
+
72
+ variant String
73
+
74
+ # @!method self.variants
75
+ # @return [Array(Array<String>, String)]
76
+
77
+ # @type [Autorender::Internal::Type::Converter]
78
+ StringArray = Autorender::Internal::Type::ArrayOf[String]
79
+ end
80
+ end
81
+ end
82
+ end
@@ -0,0 +1,105 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Autorender
4
+ module Models
5
+ # @see Autorender::Resources::MultipartUploads#start
6
+ class MultipartUploadStartResponse < Autorender::Internal::Type::BaseModel
7
+ # @!attribute expire_at
8
+ # Unix timestamp when the session expires
9
+ #
10
+ # @return [Integer]
11
+ required :expire_at, Integer
12
+
13
+ # @!attribute min_part_size
14
+ #
15
+ # @return [Integer]
16
+ required :min_part_size, Integer
17
+
18
+ # @!attribute part_size
19
+ #
20
+ # @return [Integer]
21
+ required :part_size, Integer
22
+
23
+ # @!attribute parts
24
+ # Pre-signed S3 upload URLs, one per part
25
+ #
26
+ # @return [Array<String>]
27
+ required :parts, Autorender::Internal::Type::ArrayOf[String]
28
+
29
+ # @!attribute policy
30
+ #
31
+ # @return [Autorender::Models::MultipartUploadStartResponse::Policy]
32
+ required :policy, -> { Autorender::Models::MultipartUploadStartResponse::Policy }
33
+
34
+ # @!attribute public_key
35
+ #
36
+ # @return [String]
37
+ required :public_key, String
38
+
39
+ # @!attribute session_id
40
+ #
41
+ # @return [String]
42
+ required :session_id, String
43
+
44
+ # @!attribute uuid
45
+ #
46
+ # @return [String]
47
+ required :uuid, String
48
+
49
+ # @!attribute workspace_id
50
+ #
51
+ # @return [String]
52
+ required :workspace_id, String
53
+
54
+ # @!method initialize(expire_at:, min_part_size:, part_size:, parts:, policy:, public_key:, session_id:, uuid:, workspace_id:)
55
+ # Session created
56
+ #
57
+ # @param expire_at [Integer] Unix timestamp when the session expires
58
+ #
59
+ # @param min_part_size [Integer]
60
+ #
61
+ # @param part_size [Integer]
62
+ #
63
+ # @param parts [Array<String>] Pre-signed S3 upload URLs, one per part
64
+ #
65
+ # @param policy [Autorender::Models::MultipartUploadStartResponse::Policy]
66
+ #
67
+ # @param public_key [String]
68
+ #
69
+ # @param session_id [String]
70
+ #
71
+ # @param uuid [String]
72
+ #
73
+ # @param workspace_id [String]
74
+
75
+ # @see Autorender::Models::MultipartUploadStartResponse#policy
76
+ class Policy < Autorender::Internal::Type::BaseModel
77
+ # @!attribute folder
78
+ #
79
+ # @return [String]
80
+ required :folder, String
81
+
82
+ # @!attribute format_
83
+ #
84
+ # @return [String]
85
+ required :format_, String, api_name: :format
86
+
87
+ # @!attribute size
88
+ #
89
+ # @return [Integer]
90
+ required :size, Integer
91
+
92
+ # @!attribute tags
93
+ #
94
+ # @return [Array<String>]
95
+ required :tags, Autorender::Internal::Type::ArrayOf[String]
96
+
97
+ # @!method initialize(folder:, format_:, size:, tags:)
98
+ # @param folder [String]
99
+ # @param format_ [String]
100
+ # @param size [Integer]
101
+ # @param tags [Array<String>]
102
+ end
103
+ end
104
+ end
105
+ end
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Autorender
4
+ module Models
5
+ # @see Autorender::Resources::Uploads#create_from_url
6
+ class UploadCreateFromURLParams < Autorender::Internal::Type::BaseModel
7
+ extend Autorender::Internal::Type::RequestParameters::Converter
8
+ include Autorender::Internal::Type::RequestParameters
9
+
10
+ # @!attribute remote_url
11
+ # HTTP/HTTPS URL to fetch
12
+ #
13
+ # @return [String]
14
+ required :remote_url, String
15
+
16
+ # @!attribute custom_id
17
+ #
18
+ # @return [String, nil]
19
+ optional :custom_id, String
20
+
21
+ # @!attribute file_name
22
+ # Override file name
23
+ #
24
+ # @return [String, nil]
25
+ optional :file_name, String
26
+
27
+ # @!attribute folder
28
+ # Destination folder path
29
+ #
30
+ # @return [String, nil]
31
+ optional :folder, String
32
+
33
+ # @!attribute metadata
34
+ # JSON string of metadata object
35
+ #
36
+ # @return [String, nil]
37
+ optional :metadata, String
38
+
39
+ # @!attribute random_prefix
40
+ # true/false to append random suffix
41
+ #
42
+ # @return [String, nil]
43
+ optional :random_prefix, String
44
+
45
+ # @!attribute tags
46
+ # Comma-separated tags
47
+ #
48
+ # @return [String, nil]
49
+ optional :tags, String
50
+
51
+ # @!attribute webhook_url
52
+ #
53
+ # @return [String, nil]
54
+ optional :webhook_url, String
55
+
56
+ # @!method initialize(remote_url:, custom_id: nil, file_name: nil, folder: nil, metadata: nil, random_prefix: nil, tags: nil, webhook_url: nil, request_options: {})
57
+ # @param remote_url [String] HTTP/HTTPS URL to fetch
58
+ #
59
+ # @param custom_id [String]
60
+ #
61
+ # @param file_name [String] Override file name
62
+ #
63
+ # @param folder [String] Destination folder path
64
+ #
65
+ # @param metadata [String] JSON string of metadata object
66
+ #
67
+ # @param random_prefix [String] true/false to append random suffix
68
+ #
69
+ # @param tags [String] Comma-separated tags
70
+ #
71
+ # @param webhook_url [String]
72
+ #
73
+ # @param request_options [Autorender::RequestOptions, Hash{Symbol=>Object}]
74
+ end
75
+ end
76
+ end