files.com 1.1.130 → 1.1.132

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6e4169efeb72ee02d2d20d7bd0ed7c2e2374765043f7210dc4942ab5596a7856
4
- data.tar.gz: eac3fe346a83378aa43975d0916d83c416336ee843f0acd2f4fc3981b07f1d45
3
+ metadata.gz: fa62fc64b293c5a220f872b73b105ec87e7f2dcd75301876507127a94f9b77e7
4
+ data.tar.gz: 5b4ffc31a1cfe804b2e5d319c2af94367ef81adbd2180f0452c74f9f13d164c3
5
5
  SHA512:
6
- metadata.gz: 4691bd6a6d43239fcc5fb4d205d46b44c801fe062cda8ff555f1016aca5499f2bebe144fb81c73813bf8255fbc85b78dc80768548a5b507ea189ee479aed525e
7
- data.tar.gz: 69f3f8f83c8d3e3fbef38b0fa519e0d2f8eec280a615cce1ba3dd9efce526d5629f0682edae642f770857fe473b5d27099bd254dd489e2b73c52c7debebd41fe
6
+ metadata.gz: 015fc04012521d6d7f992a02510cde14c4662443cbf44ca01591085bc5c6768f4b204217c384d19dc731fe56ff3c964534adddfa2033a32d3cb064d19123fb33
7
+ data.tar.gz: 14a14f79dae2222ca4096c12e820af9020d85d42ad14b9ec7e5034a8026cdf556ce9411bb02f4df481f3a617719ba719e5db6680f2021f16033b6f2cffe45678
data/README.md CHANGED
@@ -192,6 +192,93 @@ Maximum number of retries. The default value is 3.
192
192
  Files.max_network_retries = 5
193
193
  ```
194
194
 
195
+ ## Sort and Filter
196
+
197
+ Several of the Files.com API resources have list operations that return multiple instances of the resource. The List operations
198
+ can be sorted and filtered.
199
+
200
+ ### Sorting
201
+
202
+ The returned data can be sorted by passing in the ```sort_by``` method argument.
203
+
204
+ The argument value is a Ruby hash that has a key of the resource field name to sort on and a value of either ```"asc"``` or ```"desc"``` to specify the sort order.
205
+
206
+ Each resource has a set of valid fields for sorting and can be sorted by one field at a time.
207
+
208
+ ### Filters
209
+
210
+ Filters apply selection criteria to the underlying query that returns the results. Filters can be applied individually to select resource fields
211
+ and/or in a combination with each other. The results of applying filters and filter combinations can be sorted by a single field.
212
+
213
+ The passed in argument value is a Ruby hash that has a key of the resource field name to filter on and a passed in value to use in the filter comparison.
214
+
215
+ Each resource has their own set of valid filters and fields, valid combinations of filters, and sortable fields.
216
+
217
+ #### Types of Filters
218
+
219
+ ##### Exact Filter
220
+
221
+ `filter` - find resources that have an exact field value match to a passed in value. (i.e., FIELD_VALUE = PASS_IN_VALUE).
222
+
223
+ #### Range Filters
224
+
225
+ `filter_gt` - find resources that have a field value that is greater than the passed in value. (i.e., FIELD_VALUE > PASS_IN_VALUE).
226
+
227
+ `filter_gte` - find resources that have a field value that is greater than or equal to the passed in value. (i.e., FIELD_VALUE >= PASS_IN_VALUE).
228
+
229
+ `filter_lt` - find resources that have a field value that is less than the passed in value. (i.e., FIELD_VALUE < PASS_IN_VALUE).
230
+
231
+ `filter_lte` - find resources that have a field value that is less than or equal to the passed in value. (i.e., FIELD_VALUE \<= PASS_IN_VALUE).
232
+
233
+ ##### Pattern Filter
234
+
235
+ `filter_prefix` - find resources where the specified field is prefixed by the supplied value. This is applicable to values that are strings.
236
+
237
+ ```ruby title="Sort Example"
238
+ ## users sorted by username
239
+ Files.api_key = 'YOUR_API_KEY'
240
+ Files::User.list(
241
+ sort_by: { "username": "asc"}
242
+ )
243
+ ```
244
+
245
+ ```ruby title="Exact Filter Example"
246
+ ## non admin users
247
+ Files.api_key = 'YOUR_API_KEY'
248
+ Files::User.list(
249
+ filter: { not_site_admin: true },
250
+ sort_by: { "username": "asc"}
251
+ )
252
+ ```
253
+
254
+ ```ruby title="Range Filter Example"
255
+ #users who haven't logged in since 2024-01-01
256
+ Files.api_key = 'YOUR_API_KEY'
257
+ Files::User.list(
258
+ filter_gte: { "last_login_at": "2024-01-01" },
259
+ sort_by: { "last_login_at": "asc"}
260
+ )
261
+ ```
262
+
263
+ ```ruby title="Pattern Filter Example"
264
+ ## users who usernames start with 'test'
265
+ Files.api_key = 'YOUR_API_KEY'
266
+ Files::User.list(
267
+ filter_pre: { username: "test" },
268
+ sort_by: { "username": "asc"}
269
+ )
270
+ ```
271
+
272
+ ```ruby title="Combined Filter Example"
273
+ ## users who usernames start with 'test' and are not admins
274
+ Files.api_key = 'YOUR_API_KEY'
275
+ Files::User.list(
276
+ filter_prefix: { username: "test" },
277
+ filter: { not_site_admin: true },
278
+ sort_by: { "username": "asc"}
279
+ )
280
+ ```
281
+
195
282
  ## Errors
196
283
 
197
284
  The Files.com Ruby SDK will return errors by raising exceptions. There are many exception classes defined in the Files SDK that correspond
data/_VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.130
1
+ 1.1.132
@@ -4,7 +4,23 @@
4
4
 
5
5
  ```
6
6
  {
7
- "bundle_registration": "example",
7
+ "bundle_registration": {
8
+ "code": "abc123",
9
+ "name": "account",
10
+ "company": "Action Verb",
11
+ "email": "john.doe@files.com",
12
+ "ip": "10.1.1.1",
13
+ "inbox_code": "abc123",
14
+ "clickwrap_body": "example",
15
+ "form_field_set_id": 1,
16
+ "form_field_data": {
17
+ "key": "example value"
18
+ },
19
+ "bundle_code": "example",
20
+ "bundle_id": 1,
21
+ "bundle_recipient_id": 1,
22
+ "created_at": "2000-01-01T01:00:00Z"
23
+ },
8
24
  "download_method": "file",
9
25
  "path": "a/b/test.txt",
10
26
  "created_at": "2000-01-01T01:00:00Z"
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Files
4
- VERSION = "1.1.130"
4
+ VERSION = "1.1.132"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: files.com
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.130
4
+ version: 1.1.132
5
5
  platform: ruby
6
6
  authors:
7
7
  - files.com
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-09-10 00:00:00.000000000 Z
11
+ date: 2024-09-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable