flatfile_api 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.
@@ -0,0 +1,372 @@
1
+ ---
2
+ - :method: POST
3
+ :description: Exchange access key for JWT
4
+ :path: "/auth/access-key-exchange"
5
+ :body_params:
6
+ - Name: accessKeyId
7
+ Required: 'true'
8
+ Type: string
9
+ Value: ''
10
+ Description: Access Key generated in app
11
+ - Name: expiresIn
12
+ Required: ''
13
+ Type: number
14
+ Value: 43200 (default)
15
+ Description: Sets an expiration (in seconds)
16
+ - Name: secretAccessKey
17
+ Required: 'true'
18
+ Type: string
19
+ Value: ''
20
+ Description: Secret Access Key generated in app
21
+ - :method: GET
22
+ :description: Download an upload
23
+ :path: "/batch/:batchId/export.csv"
24
+ :path_params:
25
+ - Name: batchId
26
+ Required: 'true'
27
+ Type: string
28
+ Value: ''
29
+ Description: A valid UUID
30
+ :query_params:
31
+ - Name: type
32
+ Required: 'true'
33
+ Type: string
34
+ Value: 'Enum: original, processed'
35
+ Description: File to download
36
+ - :method: DELETE
37
+ :description: Delete an upload
38
+ :path: "/batch/:batchId"
39
+ :path_params:
40
+ - Name: batchId
41
+ Required: 'true'
42
+ Type: string
43
+ Value: ''
44
+ Description: A valid UUID
45
+ - :method: GET
46
+ :description: Bulk delete uploads
47
+ :path: "/delete/batches"
48
+ :query_params:
49
+ - Name: olderThanQuantity
50
+ Required: 'true'
51
+ Type: string
52
+ Value: ''
53
+ Description: ''
54
+ - Name: olderThanUnit
55
+ Required: 'true'
56
+ Type: string
57
+ Value: 'Enum: minute, hour, day, week, month'
58
+ Description: ''
59
+ - Name: sendEmail
60
+ Required: 'true'
61
+ Type: string
62
+ Value: 'Enum: true, false'
63
+ Description: ''
64
+ - Name: teamId
65
+ Required: 'true'
66
+ Type: string
67
+ Value: ''
68
+ Description: ''
69
+ - :method: GET
70
+ :description: List Workspace uploads
71
+ :path: "/rest/batches"
72
+ :query_params:
73
+ - Name: endUserId
74
+ Required: ''
75
+ Type: string
76
+ Value: ''
77
+ Description: Valid endUserId for the Workspace
78
+ - Name: environmentId
79
+ Required: ''
80
+ Type: string
81
+ Value: ''
82
+ Description: Valid environmentId for the Workspace
83
+ - Name: licenseKey
84
+ Required: 'true'
85
+ Type: string
86
+ Value: ''
87
+ Description: A valid licenseKey for the Workspace
88
+ - Name: search
89
+ Required: ''
90
+ Type: string
91
+ Value: ''
92
+ Description: Searches fileName, originalFile, memo
93
+ - Name: skip
94
+ Required: ''
95
+ Type: number
96
+ Value: 0 (default)
97
+ Description: The rows to skip before listing
98
+ - Name: take
99
+ Required: ''
100
+ Type: number
101
+ Value: 50 (default)
102
+ Description: The maximum number of rows to return
103
+ - Name: workspaceId
104
+ Required: ''
105
+ Type: string
106
+ Value: ''
107
+ Description: Valid workspaceId for the Workspace
108
+ - :method: GET
109
+ :description: File upload meta data
110
+ :path: "/rest/batch/:batchId"
111
+ :path_params:
112
+ - Name: batchId
113
+ Required: 'true'
114
+ Type: string
115
+ Value: ''
116
+ Description: A valid UUID
117
+ - :method: GET
118
+ :description: Sheet name for file upload
119
+ :path: "/upload/:uploadId/dataSources"
120
+ :path_params:
121
+ - Name: uploadId
122
+ Required: 'true'
123
+ Type: string
124
+ Value: ''
125
+ Description: A valid UUID
126
+ :query_params:
127
+ - Name: licenseKey
128
+ Required: ''
129
+ Type: string
130
+ Value: ''
131
+ Description: A valid licenseKey for the Workspace
132
+ - :method: GET
133
+ :description: Records for file upload
134
+ :path: "/rest/batch/:batchId/rows"
135
+ :path_params:
136
+ - Name: batchId
137
+ Required: 'true'
138
+ Type: string
139
+ Value: ''
140
+ Description: A valid UUID
141
+ :query_params:
142
+ - Name: createdAtEndDate
143
+ Required: ''
144
+ Type: string
145
+ Value: ISO 8601
146
+ Description: The maximum createdAt date to return
147
+ - Name: createdAtStartDate
148
+ Required: ''
149
+ Type: string
150
+ Value: ISO 8601
151
+ Description: The minimum createdAt date to return
152
+ - Name: deleted
153
+ Required: ''
154
+ Type: string
155
+ Value: 'Enum: true, t, y, false, f, n'
156
+ Description: Return only deleted rows
157
+ - Name: skip
158
+ Required: ''
159
+ Type: number
160
+ Value: 0 (default)
161
+ Description: The rows to skip before listing
162
+ - Name: take
163
+ Required: ''
164
+ Type: number
165
+ Value: 50 (default)
166
+ Description: The maximum number of rows to return
167
+ - Name: updatedAtEndDate
168
+ Required: ''
169
+ Type: string
170
+ Value: ISO 8601
171
+ Description: The maximum updatedAt date to return
172
+ - Name: updatedAtStartDate
173
+ Required: ''
174
+ Type: string
175
+ Value: ISO 8601
176
+ Description: The minimum updatedAt date to return
177
+ - Name: valid
178
+ Required: ''
179
+ Type: string
180
+ Value: 'Enum: true, t, y, false, f, n'
181
+ Description: Return only valid rows
182
+ - :method: POST
183
+ :description: Upload to Workspace sheet
184
+ :path: "/workspace/:workspaceId/sheet/:sheetId/data"
185
+ :path_params:
186
+ - Name: sheetId
187
+ Required: 'true'
188
+ Type: string
189
+ Value: ''
190
+ Description: A valid UUID
191
+ - Name: workspaceId
192
+ Required: 'true'
193
+ Type: string
194
+ Value: ''
195
+ Description: A valid UUID
196
+ - :method: GET
197
+ :description: Fetch Workspace sheet records
198
+ :path: "/workspace/:workspaceId/sheet/:sheetId/records"
199
+ :path_params:
200
+ - Name: sheetId
201
+ Required: 'true'
202
+ Type: string
203
+ Value: ''
204
+ Description: A valid UUID
205
+ - Name: workspaceId
206
+ Required: 'true'
207
+ Type: string
208
+ Value: ''
209
+ Description: A valid UUID
210
+ :query_params:
211
+ - Name: filter
212
+ Required: ''
213
+ Type: string
214
+ Value: 'Enum: review, dismissed, accepted'
215
+ Description: Return only the filtered rows
216
+ - Name: mergeId
217
+ Required: ''
218
+ Type: string
219
+ Value: ''
220
+ Description: ''
221
+ - Name: nested
222
+ Required: ''
223
+ Type: boolean
224
+ Value: ''
225
+ Description: ''
226
+ - Name: recordIds
227
+ Required: ''
228
+ Type: string[]
229
+ Value: ''
230
+ Description: ''
231
+ - Name: skip
232
+ Required: ''
233
+ Type: number
234
+ Value: 0 (default)
235
+ Description: The rows to skip before listing
236
+ - Name: take
237
+ Required: ''
238
+ Type: number
239
+ Value: 50 (default)
240
+ Description: The maximum number of rows to return
241
+ - Name: valid
242
+ Required: ''
243
+ Type: string
244
+ Value: 'Enum: true, t, y, false, f, n'
245
+ Description: Return only valid rows
246
+ - :method: GET
247
+ :description: List team Workspaces
248
+ :path: "/rest/teams/:teamId/workspaces"
249
+ :path_params:
250
+ - Name: teamId
251
+ Required: 'true'
252
+ Type: string
253
+ Value: ''
254
+ Description: ''
255
+ :query_params:
256
+ - Name: environmentId
257
+ Required: ''
258
+ Type: string
259
+ Value: ''
260
+ Description: Valid environmentId for the Workspace
261
+ - Name: skip
262
+ Required: ''
263
+ Type: number
264
+ Value: 0 (default)
265
+ Description: The rows to skip before listing
266
+ - Name: take
267
+ Required: ''
268
+ Type: number
269
+ Value: 50 (default)
270
+ Description: The maximum number of rows to return
271
+ - :method: GET
272
+ :description: Detail Workspace
273
+ :path: "/rest/workspace/:workspaceId"
274
+ :path_params:
275
+ - Name: workspaceId
276
+ Required: 'true'
277
+ Type: string
278
+ Value: ''
279
+ Description: A valid UUID
280
+ - :method: POST
281
+ :description: Invite Workspace collaborator
282
+ :path: "/rest/teams/:teamId/workspaces/:workspaceId/invitations"
283
+ :path_params:
284
+ - Name: teamId
285
+ Required: 'true'
286
+ Type: string
287
+ Value: ''
288
+ Description: ''
289
+ - Name: workspaceId
290
+ Required: 'true'
291
+ Type: string
292
+ Value: ''
293
+ Description: A valid UUID
294
+ :body_params:
295
+ - Name: email
296
+ Required: 'true'
297
+ Type: string
298
+ Value: ''
299
+ Description: Email address of invited collaborator
300
+ - :method: GET
301
+ :description: List Workspace invitations
302
+ :path: "/rest/teams/:teamId/workspaces/:workspaceId/invitations"
303
+ :path_params:
304
+ - Name: teamId
305
+ Required: 'true'
306
+ Type: string
307
+ Value: ''
308
+ Description: ''
309
+ - Name: workspaceId
310
+ Required: 'true'
311
+ Type: string
312
+ Value: ''
313
+ Description: A valid UUID
314
+ - :method: GET
315
+ :description: List Workspace collaborators
316
+ :path: "/rest/teams/:teamId/workspaces/:workspaceId/collaborators"
317
+ :path_params:
318
+ - Name: teamId
319
+ Required: 'true'
320
+ Type: string
321
+ Value: ''
322
+ Description: ''
323
+ - Name: workspaceId
324
+ Required: 'true'
325
+ Type: string
326
+ Value: ''
327
+ Description: A valid UUID
328
+ - :method: DELETE
329
+ :description: Revoke Workspace invitation
330
+ :path: "/rest/teams/:teamId/workspaces/:workspaceId/invitations"
331
+ :path_params:
332
+ - Name: teamId
333
+ Required: 'true'
334
+ Type: string
335
+ Value: ''
336
+ Description: ''
337
+ - Name: workspaceId
338
+ Required: 'true'
339
+ Type: string
340
+ Value: ''
341
+ Description: A valid UUID
342
+ :body_params:
343
+ - Name: email
344
+ Required: 'true'
345
+ Type: string
346
+ Value: ''
347
+ Description: Email address of invited collaborator
348
+ - :method: DELETE
349
+ :description: Remove Workspace collaborator
350
+ :path: "/rest/teams/:teamId/workspaces/:workspaceId/collaborators/:userId"
351
+ :path_params:
352
+ - Name: teamId
353
+ Required: 'true'
354
+ Type: string
355
+ Value: ''
356
+ Description: ''
357
+ - Name: userId
358
+ Required: 'true'
359
+ Type: string
360
+ Value: ''
361
+ Description: ''
362
+ - Name: workspaceId
363
+ Required: 'true'
364
+ Type: string
365
+ Value: ''
366
+ Description: A valid UUID
367
+ :body_params:
368
+ - Name: email
369
+ Required: 'true'
370
+ Type: string
371
+ Value: ''
372
+ Description: Email address of collaborator
@@ -0,0 +1,115 @@
1
+ class FlatfileApi
2
+ VERSION: String
3
+
4
+ def initialize: (?access_key_id: String, ?secret_access_key: String, ?debug: bool) -> void
5
+
6
+ def exchange_access_key_for_jwt(
7
+ access_key_id: String,
8
+ ?expires_in: Integer,
9
+ secret_access_key: String
10
+ ) -> Response
11
+
12
+ def download_an_upload(
13
+ batch_id:,
14
+ type:
15
+ ) -> Response
16
+
17
+ def delete_an_upload(
18
+ batch_id: String
19
+ ) -> Response
20
+
21
+ def bulk_delete_uploads(
22
+ older_than_quantity: String,
23
+ older_than_unit: String,
24
+ send_email: bool,
25
+ team_id: String
26
+ ) -> Response
27
+
28
+ def list_workspace_uploads(
29
+ ?end_user_id: String,
30
+ ?environment_id: String,
31
+ license_key: String,
32
+ ?search: String,
33
+ ?skip: Integer,
34
+ ?take: Integer,
35
+ ?workspace_id: String
36
+ ) -> PaginatedResponse
37
+
38
+ def file_upload_meta_data(
39
+ batch_id: String
40
+ ) -> Response
41
+
42
+ def sheet_name_for_file_upload(
43
+ upload_id: String,
44
+ ?license_key: String
45
+ ) -> Response
46
+
47
+ def records_for_file_upload(
48
+ batch_id: String,
49
+ ?created_at_end_date: (String | Time | DateTime),
50
+ ?created_at_start_date: (String | Time | DateTime),
51
+ ?deleted: bool,
52
+ ?skip: Integer,
53
+ ?take: Integer,
54
+ ?updated_at_end_date: (String | Time | DateTime),
55
+ ?updated_at_start_date: (String | Time | DateTime),
56
+ ?valid: bool
57
+ ) -> PaginatedResponse
58
+
59
+ def upload_to_workspace_sheet(
60
+ sheet_id: String,
61
+ workspace_id: String,
62
+ ) -> Response
63
+
64
+ def fetch_workspace_sheet_records(
65
+ sheet_id: String,
66
+ workspace_id: String,
67
+ ?filter: String,
68
+ ?merge_id: String,
69
+ ?nested: bool,
70
+ ?record_ids: Array[String],
71
+ ?skip: Integer,
72
+ ?take: Integer,
73
+ ?valid: bool
74
+ ) -> PaginatedResponse
75
+
76
+ def list_team_workspaces(
77
+ team_id: String,
78
+ ?environment_id: String,
79
+ ?skip: Integer,
80
+ ?take: Integer
81
+ ) -> PaginatedResponse
82
+
83
+ def detail_workspace(
84
+ workspace_id: String
85
+ ) -> Response
86
+
87
+ def invite_workspace_collaborator(
88
+ team_id: String,
89
+ workspace_id: String,
90
+ email: String
91
+ ) -> Response
92
+
93
+ def list_workspace_invitations(
94
+ team_id: String,
95
+ workspace_id: String
96
+ ) -> Response
97
+
98
+ def list_workspace_collaborators(
99
+ team_id: String,
100
+ workspace_id: String
101
+ ) -> Response
102
+
103
+ def revoke_workspace_invitation(
104
+ team_id: String,
105
+ workspace_id: String,
106
+ email: String
107
+ ) -> Response
108
+
109
+ def remove_workspace_collaborator(
110
+ team_id: String,
111
+ user_id: String,
112
+ workspace_id: String,
113
+ email: String
114
+ ) -> Response
115
+ end
metadata ADDED
@@ -0,0 +1,62 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: flatfile_api
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - cyclotron3k
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2022-12-07 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: A thin wrapper around the Flatfile RESTful API
14
+ email:
15
+ - aidan.samuel@gmail.com
16
+ executables: []
17
+ extensions: []
18
+ extra_rdoc_files: []
19
+ files:
20
+ - ".editorconfig"
21
+ - CHANGELOG.md
22
+ - Gemfile
23
+ - README.md
24
+ - Rakefile
25
+ - lib/flatfile_api.rb
26
+ - lib/flatfile_api/paginated_response.rb
27
+ - lib/flatfile_api/response.rb
28
+ - lib/flatfile_api/string_tools.rb
29
+ - lib/flatfile_api/version.rb
30
+ - scripts/code_gen.rb
31
+ - scripts/doc_gen.rb
32
+ - scripts/parse_docs.rb
33
+ - scripts/spec_2022-12-02.yaml
34
+ - sig/flatfile_api.rbs
35
+ homepage: https://github.com/cyclotron3k/flatfile_api
36
+ licenses: []
37
+ metadata:
38
+ bug_tracker_uri: https://github.com/cyclotron3k/flatfile_api/issues
39
+ changelog_uri: https://github.com/cyclotron3k/flatfile_api/blob/master/CHANGELOG.md
40
+ documentation_uri: https://github.com/cyclotron3k/flatfile_api/blob/v0.1.0/README.md
41
+ homepage_uri: https://github.com/cyclotron3k/flatfile_api
42
+ source_code_uri: https://github.com/cyclotron3k/flatfile_api
43
+ post_install_message:
44
+ rdoc_options: []
45
+ require_paths:
46
+ - lib
47
+ required_ruby_version: !ruby/object:Gem::Requirement
48
+ requirements:
49
+ - - ">="
50
+ - !ruby/object:Gem::Version
51
+ version: 2.6.0
52
+ required_rubygems_version: !ruby/object:Gem::Requirement
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: '0'
57
+ requirements: []
58
+ rubygems_version: 3.3.7
59
+ signing_key:
60
+ specification_version: 4
61
+ summary: Flatfile API client
62
+ test_files: []