files-com 1.5.5__py3-none-any.whl → 1.6.0__py3-none-any.whl

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.

Potentially problematic release.


This version of files-com might be problematic. Click here for more details.

README.md CHANGED
@@ -357,14 +357,20 @@ except files_sdk.error.Error as err:
357
357
 
358
358
  ## Foreign Language Support
359
359
 
360
- The Files.com Python SDK will soon be updated to support localized responses by using a configuration
361
- method. When available, it can be used to guide the API in selecting a preferred language for applicable response content.
360
+ The Files.com PHP SDK supports localized responses by using the `files_sdk.set_language` configuration method.
361
+ When configured, this guides the API in selecting a preferred language for applicable response content.
362
362
 
363
363
  Language support currently applies to select human-facing fields only, such as notification messages
364
364
  and error descriptions.
365
365
 
366
366
  If the specified language is not supported or the value is omitted, the API defaults to English.
367
367
 
368
+ ```shell title="Example Request"
369
+ import files_sdk
370
+
371
+ files_sdk.set_language('es')
372
+ ```
373
+
368
374
  ## Errors
369
375
 
370
376
  The Files.com Python SDK will return errors by raising exceptions. There are many exception classes defined in the Files SDK that correspond
_VERSION CHANGED
@@ -1 +1 @@
1
- 1.5.5
1
+ 1.6.0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: files_com
3
- Version: 1.5.5
3
+ Version: 1.6.0
4
4
  Summary: Python bindings for the Files.com API
5
5
  License: MIT
6
6
  Requires-Python: >=3.5
@@ -369,14 +369,20 @@ except files_sdk.error.Error as err:
369
369
 
370
370
  ## Foreign Language Support
371
371
 
372
- The Files.com Python SDK will soon be updated to support localized responses by using a configuration
373
- method. When available, it can be used to guide the API in selecting a preferred language for applicable response content.
372
+ The Files.com PHP SDK supports localized responses by using the `files_sdk.set_language` configuration method.
373
+ When configured, this guides the API in selecting a preferred language for applicable response content.
374
374
 
375
375
  Language support currently applies to select human-facing fields only, such as notification messages
376
376
  and error descriptions.
377
377
 
378
378
  If the specified language is not supported or the value is omitted, the API defaults to English.
379
379
 
380
+ ```shell title="Example Request"
381
+ import files_sdk
382
+
383
+ files_sdk.set_language('es')
384
+ ```
385
+
380
386
  ## Errors
381
387
 
382
388
  The Files.com Python SDK will return errors by raising exceptions. There are many exception classes defined in the Files SDK that correspond
@@ -1,9 +1,9 @@
1
- README.md,sha256=rVOUbl9T_vio5S50NXggbFF5vlAtu7TOWgMQOWVXrl0,28303
2
- _VERSION,sha256=BMk7fnY1pD0MttCX-a8KcqmXMEHRGEflIcxoLxZoxgU,6
3
- files_com-1.5.5.dist-info/licenses/LICENSE,sha256=ziANl9OTD-5-iE8XYIZNm6IYBDxOCHwQ-mdhci7lNew,1102
4
- files_sdk/__init__.py,sha256=Ujtxe062kdVfC3ymeJ-Of3pdkNx2uXNGgR-uAJZBHpI,12163
5
- files_sdk/api.py,sha256=pApkR1SYNByTLJICNnuC3S9DP5QzIsGv401Z_00oEpI,1717
6
- files_sdk/api_client.py,sha256=bMzG89eFrAfqy3u69AuZlIj3AFwEKbufC0w2EEKdHPA,11041
1
+ README.md,sha256=g4zPluTMBI4fOaRMhczJi2WgpYWAUVg8YJsXEZwQvmM,28378
2
+ _VERSION,sha256=yx2aMLxKuKOX85t9eGu4KsoLgWB37vw118giAX119qU,6
3
+ files_com-1.6.0.dist-info/licenses/LICENSE,sha256=ziANl9OTD-5-iE8XYIZNm6IYBDxOCHwQ-mdhci7lNew,1102
4
+ files_sdk/__init__.py,sha256=fa-JZ5RGXnGEYJCEuDbC6tkEQOG58K2ozFYaDaEvpSc,12329
5
+ files_sdk/api.py,sha256=HOLk50HLQCbnHwnAr9OElQEWvdA_BABBSEvvFSt1S4A,1846
6
+ files_sdk/api_client.py,sha256=cfFvm-o4Ao8SWADiJv7t7qnJfG_LJmWV3l6ALTC-Opo,11264
7
7
  files_sdk/error.py,sha256=lZKht6lYj9i99CzRbHschmdSs6T2Y51-YrZX_5Y_o7A,64945
8
8
  files_sdk/list_obj.py,sha256=MWgmESLAmfh1uaSw76PWxmnf9f6_08TLUHe8_mCYKL4,1157
9
9
  files_sdk/path_util.py,sha256=7x8X3JLoMkcqNefCaBeHYXD8MGvPby4AOy-xnBX_LNk,1694
@@ -11,27 +11,27 @@ files_sdk/util.py,sha256=6aA4N0Wq_ykINW7eMrs2ntFAL2hRLM6IvJf6n_yP34c,962
11
11
  files_sdk/models/__init__.py,sha256=EMUJH1Czex_D7fflGe6S6_xHGGy0Ka8gt9pGmErqYkw,5542
12
12
  files_sdk/models/account_line_item.py,sha256=8FLg83Aqpz4y_QYy3fZ_KZsZFWv1f1KGD9T5CH1WSGs,1929
13
13
  files_sdk/models/action.py,sha256=M1lyMybE7SKht2nGXtYWp2l8b4oVkeImo6KF8DLiCos,2034
14
- files_sdk/models/action_notification_export.py,sha256=CLXnmKCKTL9mXwMT6ZU63GSFua4G6RVhax044ARx7Mg,6432
14
+ files_sdk/models/action_notification_export.py,sha256=4cdEo2ZCDV3RH3GLSqHV7RWyJ2ONRSUq0glCEi94zd0,6636
15
15
  files_sdk/models/action_notification_export_result.py,sha256=yusHopmVJ9zO5lHG2C4sq4-kDnX3trRdb52SRL-R9Go,4071
16
16
  files_sdk/models/api_key.py,sha256=yhdiocQ-_7g8vqUw6exR5qj25YioH17ENd9MSZGjeCw,17105
17
17
  files_sdk/models/api_request_log.py,sha256=BReib32VqbMIvssa_wtWb-189EtoOmmEm4oFAvul_mE,62902
18
18
  files_sdk/models/app.py,sha256=JiK40FW3FOp_sUehb3RCWfkc9-1OcjWai15tn9BtxbU,4678
19
19
  files_sdk/models/as2_incoming_message.py,sha256=VEkva5pSbXo_mM4UWQLcaL3EZSgBWIPqNY8PMLTMn2o,7153
20
20
  files_sdk/models/as2_outgoing_message.py,sha256=7mSM2Ce-9HUsk7klRmS30kBBPMJBRWsXmWCI7Uz85MQ,6696
21
- files_sdk/models/as2_partner.py,sha256=QGdGtpdkNDP1OHeD8-oHtkEaZm1nIPGPKMT7CGYaGNQ,19376
21
+ files_sdk/models/as2_partner.py,sha256=ISmZcO_Jnh8nX5Ia-cFqlcCbd9HCQsRJ5LsnIceHgxQ,19826
22
22
  files_sdk/models/as2_station.py,sha256=ZFjSw2sBRQgh9x1m76dFB2crSp4P__9xqStaBZa8ZBY,10955
23
23
  files_sdk/models/auto.py,sha256=nODYUPqEsTw7suz0s6zDTsFd8j5yeSIzBELTiaXxzRE,995
24
- files_sdk/models/automation.py,sha256=kswZXOs6kh-EnZBqAfrAlihwtS0zK4clDYs1vv4VxVw,43565
24
+ files_sdk/models/automation.py,sha256=gdfUWTPS-poA5U3HDkceshdg8h2J2etr-q99V0tH3Uw,46259
25
25
  files_sdk/models/automation_log.py,sha256=hzaEoc1_ZG8aLmymK4QpB1OD-tYphg2NTNggF8UMFqs,15299
26
26
  files_sdk/models/automation_run.py,sha256=ThDA_5inLYaunKOcNgXFD9QLlhndJXC2TOl7-GqK098,5341
27
27
  files_sdk/models/bandwidth_snapshot.py,sha256=IBcRP5r_iFl86lhHOb5o5UZdsT8_-cBrAjKyPAc7OBw,4722
28
- files_sdk/models/behavior.py,sha256=Z0TbXgoh8-5wGX-jMFEgsF0znbNhdDPlEOZGdGmA6L4,17328
29
- files_sdk/models/bundle.py,sha256=Ei8V8dkGu3hEJ_qZZC63tHclKNHrbRlDLCuhUYcGOXE,30030
28
+ files_sdk/models/behavior.py,sha256=uzjgb559rhcwYKDJy3ofnkhQRjzje4bHpOIt9axLuRE,18369
29
+ files_sdk/models/bundle.py,sha256=Fsc4-IKCFnkzbgnf5Ss8Ie0cmhy6ARF4M9fu6FTGY2Q,34172
30
30
  files_sdk/models/bundle_action.py,sha256=lgDrrFake0zkxE0Cq5QDwlJi2M2ZyJrquP5sgh_XnA0,5039
31
31
  files_sdk/models/bundle_download.py,sha256=ZSjf6R0kCiFGgjQq7bu5nsFAtaW0sE72IZhCx2g5D10,4832
32
- files_sdk/models/bundle_notification.py,sha256=1qJP1wvruz3seXj1Pj0sqFT8wyQhDgp0AD7utAT0ofQ,8530
32
+ files_sdk/models/bundle_notification.py,sha256=ryYyNXjcLDnnWO3bP5S5xBG-EwhPOL9sxoE2G_VTK7U,9418
33
33
  files_sdk/models/bundle_path.py,sha256=UQc3Y1zD6s2AWEoFZ1H5_FuXr3cuNoLw18XGHxauMVA,1249
34
- files_sdk/models/bundle_recipient.py,sha256=Aw1TGxCiVDez20eH43pKpfOjpnjPOPZRhVn2ty9olpQ,5587
34
+ files_sdk/models/bundle_recipient.py,sha256=g0kULXfY-RgR0SRVoVXQNKTo3Z9Xzt5EqoVZsTRdVo0,5806
35
35
  files_sdk/models/bundle_registration.py,sha256=Igvrg3K2dT0re8MO4hmXg6u02ljiR569nOOyG0L7NHE,3910
36
36
  files_sdk/models/clickwrap.py,sha256=6xCBvo38zlA2s7U0lIH1nmbEjv2U2A_FL_5pAtbjkGE,11563
37
37
  files_sdk/models/dns_record.py,sha256=iXrDPyaovMmPopCGaiPcK1hcuKCYaqnhnsj0Olxjq8g,2370
@@ -40,40 +40,40 @@ files_sdk/models/email_log.py,sha256=yJ4gHyCmQiXWDP4dGB8KsxcvjGUFahEy9DVyOhe9tn8
40
40
  files_sdk/models/errors.py,sha256=x9hbHLBuLNp-2wq3n8A7nrzRP0QuhKqyQwhtVsgTwpE,1117
41
41
  files_sdk/models/exavault_api_request_log.py,sha256=OOSa5J-GZA6CMvz-BtIsNEdYSdwCzVu3Nphwl9OqyGY,5863
42
42
  files_sdk/models/external_event.py,sha256=4hRg9t9W0QIB8SiJ2LUxwFefR4Odo7ip-bqdignqxpk,7594
43
- files_sdk/models/file.py,sha256=dbq8NUtxUNJWlJAognUOxEhF9ukoFha44RxYV1r7oBM,32708
43
+ files_sdk/models/file.py,sha256=JmwBcBFAdbdzEGIbOfoWkZCYgpgAfneaAdYi8C6M2_4,34960
44
44
  files_sdk/models/file_action.py,sha256=xRUSlnikXt2Y-SbWyuSdG75l0or9Ebl518Jy8btPux4,1231
45
45
  files_sdk/models/file_comment.py,sha256=LcfN0FRcGU6xr_Y6ItLWYAkp3Nxg8wvf_JToj-Q9z-c,7160
46
46
  files_sdk/models/file_comment_reaction.py,sha256=FHvRIpcV69qwN7WEbUyMZ-8dI2EGZsLMGFDUwKzLMLc,4350
47
47
  files_sdk/models/file_migration.py,sha256=s5btcbmfKgxBzKJF60OHmQjtPEev3B04S-IlYzdzua4,2341
48
48
  files_sdk/models/file_migration_log.py,sha256=iyLobFuIUs85RG-XczqiMewmPDHuI9lmLRjEIEi08jg,8370
49
49
  files_sdk/models/file_upload_part.py,sha256=Js2XmLdG6lpkMHgehQkoNKQ0yoKpsCbSKOXHKnHWa-8,2584
50
- files_sdk/models/folder.py,sha256=N33yCWlDZYJz5_whAkmIs0JxnazehxDNjMKuX0TEIOU,9865
50
+ files_sdk/models/folder.py,sha256=5pxgJvuk8MpyVCUW2c9vT77LAAHZQaBZ_mBdjaTOo2I,10676
51
51
  files_sdk/models/form_field.py,sha256=xaaLnvctZ3Do5lnppn-s6UQguzfsyVpfdmz-Ykij9Nw,1509
52
- files_sdk/models/form_field_set.py,sha256=9SUzf_3FNSOMmBvJln__Hdpdk89a1ZUghkxQvUsiaLI,9319
52
+ files_sdk/models/form_field_set.py,sha256=npeb9GQlcV5Y-j6gQNDcsEjNOrM7MPFws5VbKfcjEjw,10395
53
53
  files_sdk/models/ftp_action_log.py,sha256=gYMgzhu8E4q-_ioeKEy044cXiglNZ9wEqXWWUDiUEvU,122900
54
54
  files_sdk/models/gpg_key.py,sha256=mzHuq2RVmJ7ppK0lFkmsnSqNENZ-AzI8dOMg8_oG4-s,10412
55
- files_sdk/models/group.py,sha256=vs-TVBRyB2Juhf-ytpBVePFOEx04IYwi94EaqoDvpqs,14133
56
- files_sdk/models/group_user.py,sha256=8ib3R5KfLQGKY11e2GnausgmvjJmmUb2fa9QfGsthbo,9799
55
+ files_sdk/models/group.py,sha256=NCWhnhjBK8jAeCgLp2qYLV2lURxuSD1QO4EsmTF_tzw,16062
56
+ files_sdk/models/group_user.py,sha256=ZVl2vQ2FuPFC9YW5Geo9iST438eLvs6Pc_BlQRGg9Sg,10087
57
57
  files_sdk/models/history.py,sha256=Elc04ji3rWWhEc68KzPzcEeCqfMSA4Jmjb9sAZ4LvKc,14138
58
58
  files_sdk/models/history_export.py,sha256=M7sfb60oVCWTsP5ZnIsQTx7743BlehM2ciLv6WOqHMk,14400
59
59
  files_sdk/models/history_export_result.py,sha256=bn7GrrQRN4v09uyWsf9kELgj4PXtfDtbhjvL4vWmutg,6358
60
60
  files_sdk/models/image.py,sha256=xGDz4VULw5EkYGS0h6cmsRkpYv-c1qi5bhOgiyLA3mM,1052
61
- files_sdk/models/inbox_recipient.py,sha256=VIhDCwid_5y_RiMpAzOOaWbmpiWZ6tvb81ZSzfhPuu4,5543
61
+ files_sdk/models/inbox_recipient.py,sha256=_iUVVsBJLmAU2GatfjxYNBTEiv4D-DoJ0vbBKAwbG1I,5762
62
62
  files_sdk/models/inbox_registration.py,sha256=d2JxmVNko0G3W1_YHdGwgs6o1RiCxagtEFMf4UKS0mA,3341
63
63
  files_sdk/models/inbox_upload.py,sha256=37SxR8JX_eMn9wJQMeAfDDhqEl-_1o6nCJMHzMGW8no,4484
64
64
  files_sdk/models/invoice.py,sha256=W5fGwC5s53PZsEu_SzGXsIdxN1Pw7MQ0wGZq4brMZ1c,3753
65
65
  files_sdk/models/invoice_line_item.py,sha256=qzClkGS7nHcKxon_yZdWCCwui3e7M9jetw_HacdsE8g,1578
66
66
  files_sdk/models/ip_address.py,sha256=Uyqd0-8gpbv2Nlt1ttTLH9ylDSTdw1dcrmRjtwDgkIw,5783
67
- files_sdk/models/lock.py,sha256=3A2Ejutu9xMOagBlxNeXQQEMpMXJKlWzdhaX-UoB_X0,6467
67
+ files_sdk/models/lock.py,sha256=RjMPVJJsWOKJ8ll3YwalC64NHDtq5GIBIh9A1w3bM7o,7229
68
68
  files_sdk/models/message.py,sha256=Lp2CHdf2AyXNjSF0giOdozvch-_sdC8FlemSPJMOZLs,10192
69
69
  files_sdk/models/message_comment.py,sha256=6Y0k_uRCKExD-0g9NobqTp22lprrwpZndrmKYhRnuHQ,8546
70
70
  files_sdk/models/message_comment_reaction.py,sha256=h9Kuk1Y2ztqMG7XkyP-ufGQyS7OdxqXtgNMh0VwbVBw,6790
71
71
  files_sdk/models/message_reaction.py,sha256=ZGir-4Qj9k_FRC_X3Av7Yek-SZzFBK-IbvPn5HmaG5g,6288
72
- files_sdk/models/notification.py,sha256=T8BpLbw-_6YUEOFsDc_pJD5Slsfr1Qpgl8UH9aaPslo,18411
72
+ files_sdk/models/notification.py,sha256=HEPLDynR4lCF_vZ7-RJD8hoxaWMl3BrrkGEIbQk6-yg,21993
73
73
  files_sdk/models/outbound_connection_log.py,sha256=AifnDpRo4I7dzdsrjhEXS-GGh7tDJg7UlT4QkxYM_lI,33408
74
74
  files_sdk/models/payment.py,sha256=UUWxK3x2RVYQdRAWeA-WA_Oegh5TDXYPQA_m3BYd0bQ,3753
75
75
  files_sdk/models/payment_line_item.py,sha256=x97h4kBtul5S1EqI_jskhbebnucwA-EOnQn1oV8Hid0,1284
76
- files_sdk/models/permission.py,sha256=s_va1kNyQcTqHp9-I8zNZ831bswYV-BirUgyaEMGEy8,8326
76
+ files_sdk/models/permission.py,sha256=-_Rb1315rwtfn2-a18cfSogkX7oTth9H-jH1v7H4WUE,8689
77
77
  files_sdk/models/preview.py,sha256=XaKqSEC0RPBW87Kt6qlvRLeui5YeA6JUumUoZKMvARU,1347
78
78
  files_sdk/models/priority.py,sha256=kByzhOOVwKVSxrMI5xJb1RwUtQdSuFFBLBNEHYzWSm0,2680
79
79
  files_sdk/models/project.py,sha256=nDpX0qc7jY6evRprjQ7l4YgjM9WNH0aXaRbE2mpo6zk,7510
@@ -81,18 +81,18 @@ files_sdk/models/public_hosting_request_log.py,sha256=N3QWRTV0fmKNNrSRlw04-xwPez
81
81
  files_sdk/models/public_ip_address.py,sha256=5VSlJ4PZQilV6tpGRCnyvGJzqRzdSRpwVDZxKwsplcU,1259
82
82
  files_sdk/models/public_key.py,sha256=I0svinQm9cN_VjvzLluUv7t_8_mxpW0-qRZhPST76rU,8414
83
83
  files_sdk/models/remote_bandwidth_snapshot.py,sha256=kryNewGqe_ZN4D3JBL26DoVYKDowubUNLXn7NQtEJb8,4476
84
- files_sdk/models/remote_server.py,sha256=4YfXLuQgs2LUy9Oj725_VpEuYNJaMMUw5vWm9fbLI9o,83650
84
+ files_sdk/models/remote_server.py,sha256=crDqrWv56GEYW49Y0vUiZhXCvjymMyn-ByWmqfEof3k,86036
85
85
  files_sdk/models/remote_server_configuration_file.py,sha256=m6kfh5yUAYTP42nHuYJ-GFu73981kjjqPuZX3SeHbiA,3330
86
- files_sdk/models/request.py,sha256=dFhqI7rWdWr0j2UHaTmVzHVrpO0b8ogEqo-k7v6xHXQ,8585
87
- files_sdk/models/restore.py,sha256=3dZO18DGH_hjAoGN1FnS1K4S9QIwmPz2oswuTQ-RQ-A,6010
86
+ files_sdk/models/request.py,sha256=mWOS36b5pRiAZqDuf1tGidw-FAikYPDqfv5LXdDJA9Q,8867
87
+ files_sdk/models/restore.py,sha256=ukXp-fwsuGFhWl2ULAEWiKarIY3DjOIk3x3hHlshjqE,6685
88
88
  files_sdk/models/session.py,sha256=kgRwlDHDtwyMA3U9rk2T37Wfoo8VVr76vwLcZyaJJxM,3790
89
89
  files_sdk/models/settings_change.py,sha256=KdcDdnJVPJGRLLx-W_7pTXSJ5TJnjNHADjU9MnSr2tc,3412
90
90
  files_sdk/models/sftp_action_log.py,sha256=Posx1EpctwiAetd9kJ3uhIhfLqTAk-Qk3FqK9Yxh6oQ,123408
91
91
  files_sdk/models/sftp_host_key.py,sha256=3r5noHhRg-Hn3TLGBUDQYayKIw_Dn5waB9YmGSfZOWI,7920
92
92
  files_sdk/models/share_group.py,sha256=rw-W2x5XFBPc48rvazaro28HfjOli885417i702Mowc,9066
93
93
  files_sdk/models/share_group_member.py,sha256=m0BUE4AhClJIoaV-_kU0yryCOwQ5EloZlyHQ4WaCVdU,1248
94
- files_sdk/models/siem_http_destination.py,sha256=lgxnG--m5nVuZ7HpS4aUYsX0bO9ShZtvt1gNUQb7254,41323
95
- files_sdk/models/site.py,sha256=MsWhEzM7rZm1N6HHfrH-n_-Qk6qdG7vHUT4zRxBbyUU,49783
94
+ files_sdk/models/siem_http_destination.py,sha256=BDExKltNMH8q3ZoKJO_fBRtjVliqzjnj1KHEKycXiCw,49945
95
+ files_sdk/models/site.py,sha256=Q9PRXxXrWDcKB5UPkmN6qxjJOuv5TX4CktMr-1I6W6U,70093
96
96
  files_sdk/models/snapshot.py,sha256=zmdQWKR8EhUkF1mFQHFzWfreaEVXG1p_jEtmY4j3cKA,9840
97
97
  files_sdk/models/sso_strategy.py,sha256=vWNCPfot8z15xUhAoFsS52W-1vg8IpKIqAALZ6pBwd0,9112
98
98
  files_sdk/models/status.py,sha256=IIY3RiJ2RZ2yPByAAh8eIq_cgZFTj13eR4UpqHTANQI,1363
@@ -101,13 +101,13 @@ files_sdk/models/sync_log.py,sha256=JFIUCOmFon9qMhA6aeruZ55ugMHsM29jlpGVbzqNDoY,
101
101
  files_sdk/models/usage_by_top_level_dir.py,sha256=o_dETvzcgEA9lsdES_yzwPVAZVFk4ZcnsCTugR8O8eY,1185
102
102
  files_sdk/models/usage_daily_snapshot.py,sha256=rWf6GaTlN9spkUPwfF4IJ0Y6z-JTV9TAWjsFrxI-UFg,5477
103
103
  files_sdk/models/usage_snapshot.py,sha256=3GzMIxBjKelgNP7ksWq4XlrRlAFcYxzd_J6vAgb52qc,4005
104
- files_sdk/models/user.py,sha256=dUoxi4amdK0-iZBfsvm7IV2qtyNCYgBmT8fnDxuf4Qw,50520
104
+ files_sdk/models/user.py,sha256=o_9dCTD658FFNjUDSVgvZSsAMmJWwgKJi3uflkJGaCg,58958
105
105
  files_sdk/models/user_cipher_use.py,sha256=FugKNQhWaRuqxLiYabpXeskk9DcWVVCN2iL7A3xY-pM,3011
106
106
  files_sdk/models/user_request.py,sha256=ykA5Lq0MYB7qTDOMMFBuyKa_R_LgQwGVorC-q-6qxgU,6187
107
107
  files_sdk/models/user_sftp_client_use.py,sha256=VnOo3ll6fwSc8grG5ZqGK8o3grYKg5P9b5B_hGS4vCs,2827
108
108
  files_sdk/models/web_dav_action_log.py,sha256=jPX4sOmR9TbYnsU8DU3b0-KQ8E2cHNaqdmFZKTjzpwE,56358
109
- files_sdk/models/webhook_test.py,sha256=dHqPZ-xhsC83rq7suHA5n6tb9M8yhg0k6i9-u-N_WWQ,4601
110
- files_com-1.5.5.dist-info/METADATA,sha256=vA5Btky5xghq98a7IXtfgjJjEU3B89o4VBKbXtiY1yc,28594
111
- files_com-1.5.5.dist-info/WHEEL,sha256=0CuiUZ_p9E4cD6NyLD6UG80LBXYyiSYZOKDm5lp32xk,91
112
- files_com-1.5.5.dist-info/top_level.txt,sha256=p_2P-gluT_8boeXQNixTP3x-tFd1-la2NedKOiln21I,10
113
- files_com-1.5.5.dist-info/RECORD,,
109
+ files_sdk/models/webhook_test.py,sha256=AWGH8ULsgltBJL2YtTYGnAJ80cCVekrjZ2sUP0UlWgc,5018
110
+ files_com-1.6.0.dist-info/METADATA,sha256=jwQIDyUdXRdH9rdGR0FZPUr24WcmUusDqGdTbb0Yx4M,28669
111
+ files_com-1.6.0.dist-info/WHEEL,sha256=0CuiUZ_p9E4cD6NyLD6UG80LBXYyiSYZOKDm5lp32xk,91
112
+ files_com-1.6.0.dist-info/top_level.txt,sha256=p_2P-gluT_8boeXQNixTP3x-tFd1-la2NedKOiln21I,10
113
+ files_com-1.6.0.dist-info/RECORD,,
files_sdk/__init__.py CHANGED
@@ -208,11 +208,12 @@ import socket
208
208
  from urllib.parse import urlparse
209
209
 
210
210
  the_api_key = ""
211
+ language = None
211
212
  session_id = None
212
213
  source_ip = None
213
214
  base_url = "https://app.files.com"
214
215
  base_path = "api/rest/v1"
215
- version = "1.5.5"
216
+ version = "1.6.0"
216
217
 
217
218
  __version__ = version
218
219
 
@@ -224,7 +225,7 @@ max_network_retries = 3
224
225
 
225
226
  console_log_level = "none"
226
227
 
227
- OPTS = ("api_key", "client", "session_id", "source_ip")
228
+ OPTS = ("api_key", "client", "session_id", "source_ip", "language")
228
229
 
229
230
 
230
231
  def set_api_key(_api_key):
@@ -237,6 +238,16 @@ def get_api_key():
237
238
  return the_api_key
238
239
 
239
240
 
241
+ def set_language(_language):
242
+ global language
243
+ language = _language
244
+
245
+
246
+ def get_language():
247
+ global language
248
+ return language
249
+
250
+
240
251
  def set_session(_session):
241
252
  if not _session.id:
242
253
  _session.save()
files_sdk/api.py CHANGED
@@ -23,6 +23,7 @@ class Api:
23
23
  headers = copy.deepcopy(options)
24
24
  api_key = headers.pop("api_key", None)
25
25
  session_id = headers.pop("session_id", None)
26
+ language = headers.pop("language", None)
26
27
 
27
28
  session = headers.pop("session", None)
28
29
  if session:
@@ -31,7 +32,12 @@ class Api:
31
32
  session_id = str(session.id)
32
33
 
33
34
  response = Api.client().send_request(
34
- verb, path, api_key=api_key, session_id=session_id, params=params
35
+ verb,
36
+ path,
37
+ api_key=api_key,
38
+ session_id=session_id,
39
+ language=language,
40
+ params=params,
35
41
  )
36
42
 
37
43
  # Remove options not in the allow list
files_sdk/api_client.py CHANGED
@@ -48,6 +48,7 @@ class ApiClient:
48
48
  path,
49
49
  api_key=None,
50
50
  session_id=None,
51
+ language=None,
51
52
  headers=None,
52
53
  params=None,
53
54
  ):
@@ -66,7 +67,13 @@ class ApiClient:
66
67
  api_key = files_sdk.get_api_key()
67
68
  self.check_api_key(api_key)
68
69
 
69
- headers = {**headers, **self.request_headers(api_key, session_id)}
70
+ if files_sdk.language:
71
+ language = files_sdk.language
72
+
73
+ headers = {
74
+ **headers,
75
+ **self.request_headers(api_key, session_id, language),
76
+ }
70
77
 
71
78
  data = None
72
79
  query_params = None
@@ -187,7 +194,7 @@ class ApiClient:
187
194
  sleep_seconds *= 0.5 * (1 + random.random())
188
195
  return max(files_sdk.initial_network_retry_delay, sleep_seconds)
189
196
 
190
- def request_headers(self, api_key, session_id):
197
+ def request_headers(self, api_key, session_id, language):
191
198
  user_agent = "Files.com Python SDK v{version}".format(
192
199
  version=files_sdk.version
193
200
  )
@@ -201,6 +208,8 @@ class ApiClient:
201
208
  headers["X-FilesAPI-Key"] = api_key
202
209
  if session_id:
203
210
  headers["X-FilesAPI-Auth"] = session_id
211
+ if language:
212
+ headers["Accept-Language"] = language
204
213
 
205
214
  return headers
206
215
 
@@ -129,6 +129,12 @@ def create(params=None, options=None):
129
129
  raise InvalidParameterError(
130
130
  "Bad parameter: query_status must be an str"
131
131
  )
132
+ if "query_success" in params and not isinstance(
133
+ params["query_success"], bool
134
+ ):
135
+ raise InvalidParameterError(
136
+ "Bad parameter: query_success must be an bool"
137
+ )
132
138
  if "query_path" in params and not isinstance(params["query_path"], str):
133
139
  raise InvalidParameterError("Bad parameter: query_path must be an str")
134
140
  if "query_folder" in params and not isinstance(
@@ -212,6 +212,12 @@ def create(params=None, options=None):
212
212
  params = {}
213
213
  if not isinstance(options, dict):
214
214
  options = {}
215
+ if "enable_dedicated_ips" in params and not isinstance(
216
+ params["enable_dedicated_ips"], bool
217
+ ):
218
+ raise InvalidParameterError(
219
+ "Bad parameter: enable_dedicated_ips must be an bool"
220
+ )
215
221
  if "http_auth_username" in params and not isinstance(
216
222
  params["http_auth_username"], str
217
223
  ):
@@ -297,6 +303,12 @@ def update(id, params=None, options=None):
297
303
  params["id"] = id
298
304
  if "id" in params and not isinstance(params["id"], int):
299
305
  raise InvalidParameterError("Bad parameter: id must be an int")
306
+ if "enable_dedicated_ips" in params and not isinstance(
307
+ params["enable_dedicated_ips"], bool
308
+ ):
309
+ raise InvalidParameterError(
310
+ "Bad parameter: enable_dedicated_ips must be an bool"
311
+ )
300
312
  if "http_auth_username" in params and not isinstance(
301
313
  params["http_auth_username"], str
302
314
  ):
@@ -438,10 +438,18 @@ def create(params=None, options=None):
438
438
  raise InvalidParameterError(
439
439
  "Bad parameter: schedule_time_zone must be an str"
440
440
  )
441
+ if "always_overwrite_size_matching_files" in params and not isinstance(
442
+ params["always_overwrite_size_matching_files"], bool
443
+ ):
444
+ raise InvalidParameterError(
445
+ "Bad parameter: always_overwrite_size_matching_files must be an bool"
446
+ )
441
447
  if "description" in params and not isinstance(params["description"], str):
442
448
  raise InvalidParameterError(
443
449
  "Bad parameter: description must be an str"
444
450
  )
451
+ if "disabled" in params and not isinstance(params["disabled"], bool):
452
+ raise InvalidParameterError("Bad parameter: disabled must be an bool")
445
453
  if "exclude_pattern" in params and not isinstance(
446
454
  params["exclude_pattern"], str
447
455
  ):
@@ -454,8 +462,32 @@ def create(params=None, options=None):
454
462
  raise InvalidParameterError(
455
463
  "Bad parameter: import_urls must be an list"
456
464
  )
465
+ if "flatten_destination_structure" in params and not isinstance(
466
+ params["flatten_destination_structure"], bool
467
+ ):
468
+ raise InvalidParameterError(
469
+ "Bad parameter: flatten_destination_structure must be an bool"
470
+ )
471
+ if "ignore_locked_folders" in params and not isinstance(
472
+ params["ignore_locked_folders"], bool
473
+ ):
474
+ raise InvalidParameterError(
475
+ "Bad parameter: ignore_locked_folders must be an bool"
476
+ )
477
+ if "legacy_folder_matching" in params and not isinstance(
478
+ params["legacy_folder_matching"], bool
479
+ ):
480
+ raise InvalidParameterError(
481
+ "Bad parameter: legacy_folder_matching must be an bool"
482
+ )
457
483
  if "name" in params and not isinstance(params["name"], str):
458
484
  raise InvalidParameterError("Bad parameter: name must be an str")
485
+ if "overwrite_files" in params and not isinstance(
486
+ params["overwrite_files"], bool
487
+ ):
488
+ raise InvalidParameterError(
489
+ "Bad parameter: overwrite_files must be an bool"
490
+ )
459
491
  if "path_time_zone" in params and not isinstance(
460
492
  params["path_time_zone"], str
461
493
  ):
@@ -606,10 +638,18 @@ def update(id, params=None, options=None):
606
638
  raise InvalidParameterError(
607
639
  "Bad parameter: schedule_time_zone must be an str"
608
640
  )
641
+ if "always_overwrite_size_matching_files" in params and not isinstance(
642
+ params["always_overwrite_size_matching_files"], bool
643
+ ):
644
+ raise InvalidParameterError(
645
+ "Bad parameter: always_overwrite_size_matching_files must be an bool"
646
+ )
609
647
  if "description" in params and not isinstance(params["description"], str):
610
648
  raise InvalidParameterError(
611
649
  "Bad parameter: description must be an str"
612
650
  )
651
+ if "disabled" in params and not isinstance(params["disabled"], bool):
652
+ raise InvalidParameterError("Bad parameter: disabled must be an bool")
613
653
  if "exclude_pattern" in params and not isinstance(
614
654
  params["exclude_pattern"], str
615
655
  ):
@@ -622,8 +662,32 @@ def update(id, params=None, options=None):
622
662
  raise InvalidParameterError(
623
663
  "Bad parameter: import_urls must be an list"
624
664
  )
665
+ if "flatten_destination_structure" in params and not isinstance(
666
+ params["flatten_destination_structure"], bool
667
+ ):
668
+ raise InvalidParameterError(
669
+ "Bad parameter: flatten_destination_structure must be an bool"
670
+ )
671
+ if "ignore_locked_folders" in params and not isinstance(
672
+ params["ignore_locked_folders"], bool
673
+ ):
674
+ raise InvalidParameterError(
675
+ "Bad parameter: ignore_locked_folders must be an bool"
676
+ )
677
+ if "legacy_folder_matching" in params and not isinstance(
678
+ params["legacy_folder_matching"], bool
679
+ ):
680
+ raise InvalidParameterError(
681
+ "Bad parameter: legacy_folder_matching must be an bool"
682
+ )
625
683
  if "name" in params and not isinstance(params["name"], str):
626
684
  raise InvalidParameterError("Bad parameter: name must be an str")
685
+ if "overwrite_files" in params and not isinstance(
686
+ params["overwrite_files"], bool
687
+ ):
688
+ raise InvalidParameterError(
689
+ "Bad parameter: overwrite_files must be an bool"
690
+ )
627
691
  if "path_time_zone" in params and not isinstance(
628
692
  params["path_time_zone"], str
629
693
  ):
@@ -197,6 +197,12 @@ def list_for(path, params=None, options=None):
197
197
  )
198
198
  if "path" in params and not isinstance(params["path"], str):
199
199
  raise InvalidParameterError("Bad parameter: path must be an str")
200
+ if "ancestor_behaviors" in params and not isinstance(
201
+ params["ancestor_behaviors"], bool
202
+ ):
203
+ raise InvalidParameterError(
204
+ "Bad parameter: ancestor_behaviors must be an bool"
205
+ )
200
206
  if "path" not in params:
201
207
  raise MissingParameterError("Parameter missing: path")
202
208
  return ListObj(
@@ -224,6 +230,14 @@ def create(params=None, options=None):
224
230
  options = {}
225
231
  if "value" in params and not isinstance(params["value"], str):
226
232
  raise InvalidParameterError("Bad parameter: value must be an str")
233
+ if "disable_parent_folder_behavior" in params and not isinstance(
234
+ params["disable_parent_folder_behavior"], bool
235
+ ):
236
+ raise InvalidParameterError(
237
+ "Bad parameter: disable_parent_folder_behavior must be an bool"
238
+ )
239
+ if "recursive" in params and not isinstance(params["recursive"], bool):
240
+ raise InvalidParameterError("Bad parameter: recursive must be an bool")
227
241
  if "name" in params and not isinstance(params["name"], str):
228
242
  raise InvalidParameterError("Bad parameter: name must be an str")
229
243
  if "description" in params and not isinstance(params["description"], str):
@@ -291,6 +305,14 @@ def update(id, params=None, options=None):
291
305
  )
292
306
  if "value" in params and not isinstance(params["value"], str):
293
307
  raise InvalidParameterError("Bad parameter: value must be an str")
308
+ if "disable_parent_folder_behavior" in params and not isinstance(
309
+ params["disable_parent_folder_behavior"], bool
310
+ ):
311
+ raise InvalidParameterError(
312
+ "Bad parameter: disable_parent_folder_behavior must be an bool"
313
+ )
314
+ if "recursive" in params and not isinstance(params["recursive"], bool):
315
+ raise InvalidParameterError("Bad parameter: recursive must be an bool")
294
316
  if "name" in params and not isinstance(params["name"], str):
295
317
  raise InvalidParameterError("Bad parameter: name must be an str")
296
318
  if "description" in params and not isinstance(params["description"], str):
@@ -350,8 +350,26 @@ def create(params=None, options=None):
350
350
  raise InvalidParameterError(
351
351
  "Bad parameter: form_field_set_id must be an int"
352
352
  )
353
+ if "create_snapshot" in params and not isinstance(
354
+ params["create_snapshot"], bool
355
+ ):
356
+ raise InvalidParameterError(
357
+ "Bad parameter: create_snapshot must be an bool"
358
+ )
359
+ if "dont_separate_submissions_by_folder" in params and not isinstance(
360
+ params["dont_separate_submissions_by_folder"], bool
361
+ ):
362
+ raise InvalidParameterError(
363
+ "Bad parameter: dont_separate_submissions_by_folder must be an bool"
364
+ )
353
365
  if "expires_at" in params and not isinstance(params["expires_at"], str):
354
366
  raise InvalidParameterError("Bad parameter: expires_at must be an str")
367
+ if "finalize_snapshot" in params and not isinstance(
368
+ params["finalize_snapshot"], bool
369
+ ):
370
+ raise InvalidParameterError(
371
+ "Bad parameter: finalize_snapshot must be an bool"
372
+ )
355
373
  if "max_uses" in params and not isinstance(params["max_uses"], int):
356
374
  raise InvalidParameterError("Bad parameter: max_uses must be an int")
357
375
  if "description" in params and not isinstance(params["description"], str):
@@ -378,6 +396,12 @@ def create(params=None, options=None):
378
396
  raise InvalidParameterError(
379
397
  "Bad parameter: permissions must be an str"
380
398
  )
399
+ if "require_registration" in params and not isinstance(
400
+ params["require_registration"], bool
401
+ ):
402
+ raise InvalidParameterError(
403
+ "Bad parameter: require_registration must be an bool"
404
+ )
381
405
  if "clickwrap_id" in params and not isinstance(
382
406
  params["clickwrap_id"], int
383
407
  ):
@@ -386,6 +410,30 @@ def create(params=None, options=None):
386
410
  )
387
411
  if "inbox_id" in params and not isinstance(params["inbox_id"], int):
388
412
  raise InvalidParameterError("Bad parameter: inbox_id must be an int")
413
+ if "require_share_recipient" in params and not isinstance(
414
+ params["require_share_recipient"], bool
415
+ ):
416
+ raise InvalidParameterError(
417
+ "Bad parameter: require_share_recipient must be an bool"
418
+ )
419
+ if "send_email_receipt_to_uploader" in params and not isinstance(
420
+ params["send_email_receipt_to_uploader"], bool
421
+ ):
422
+ raise InvalidParameterError(
423
+ "Bad parameter: send_email_receipt_to_uploader must be an bool"
424
+ )
425
+ if "skip_email" in params and not isinstance(params["skip_email"], bool):
426
+ raise InvalidParameterError(
427
+ "Bad parameter: skip_email must be an bool"
428
+ )
429
+ if "skip_name" in params and not isinstance(params["skip_name"], bool):
430
+ raise InvalidParameterError("Bad parameter: skip_name must be an bool")
431
+ if "skip_company" in params and not isinstance(
432
+ params["skip_company"], bool
433
+ ):
434
+ raise InvalidParameterError(
435
+ "Bad parameter: skip_company must be an bool"
436
+ )
389
437
  if "start_access_on_date" in params and not isinstance(
390
438
  params["start_access_on_date"], str
391
439
  ):
@@ -485,12 +533,30 @@ def update(id, params=None, options=None):
485
533
  )
486
534
  if "code" in params and not isinstance(params["code"], str):
487
535
  raise InvalidParameterError("Bad parameter: code must be an str")
536
+ if "create_snapshot" in params and not isinstance(
537
+ params["create_snapshot"], bool
538
+ ):
539
+ raise InvalidParameterError(
540
+ "Bad parameter: create_snapshot must be an bool"
541
+ )
488
542
  if "description" in params and not isinstance(params["description"], str):
489
543
  raise InvalidParameterError(
490
544
  "Bad parameter: description must be an str"
491
545
  )
546
+ if "dont_separate_submissions_by_folder" in params and not isinstance(
547
+ params["dont_separate_submissions_by_folder"], bool
548
+ ):
549
+ raise InvalidParameterError(
550
+ "Bad parameter: dont_separate_submissions_by_folder must be an bool"
551
+ )
492
552
  if "expires_at" in params and not isinstance(params["expires_at"], str):
493
553
  raise InvalidParameterError("Bad parameter: expires_at must be an str")
554
+ if "finalize_snapshot" in params and not isinstance(
555
+ params["finalize_snapshot"], bool
556
+ ):
557
+ raise InvalidParameterError(
558
+ "Bad parameter: finalize_snapshot must be an bool"
559
+ )
494
560
  if "inbox_id" in params and not isinstance(params["inbox_id"], int):
495
561
  raise InvalidParameterError("Bad parameter: inbox_id must be an int")
496
562
  if "max_uses" in params and not isinstance(params["max_uses"], int):
@@ -513,12 +579,48 @@ def update(id, params=None, options=None):
513
579
  raise InvalidParameterError(
514
580
  "Bad parameter: permissions must be an str"
515
581
  )
582
+ if "require_registration" in params and not isinstance(
583
+ params["require_registration"], bool
584
+ ):
585
+ raise InvalidParameterError(
586
+ "Bad parameter: require_registration must be an bool"
587
+ )
588
+ if "require_share_recipient" in params and not isinstance(
589
+ params["require_share_recipient"], bool
590
+ ):
591
+ raise InvalidParameterError(
592
+ "Bad parameter: require_share_recipient must be an bool"
593
+ )
594
+ if "send_email_receipt_to_uploader" in params and not isinstance(
595
+ params["send_email_receipt_to_uploader"], bool
596
+ ):
597
+ raise InvalidParameterError(
598
+ "Bad parameter: send_email_receipt_to_uploader must be an bool"
599
+ )
600
+ if "skip_company" in params and not isinstance(
601
+ params["skip_company"], bool
602
+ ):
603
+ raise InvalidParameterError(
604
+ "Bad parameter: skip_company must be an bool"
605
+ )
516
606
  if "start_access_on_date" in params and not isinstance(
517
607
  params["start_access_on_date"], str
518
608
  ):
519
609
  raise InvalidParameterError(
520
610
  "Bad parameter: start_access_on_date must be an str"
521
611
  )
612
+ if "skip_email" in params and not isinstance(params["skip_email"], bool):
613
+ raise InvalidParameterError(
614
+ "Bad parameter: skip_email must be an bool"
615
+ )
616
+ if "skip_name" in params and not isinstance(params["skip_name"], bool):
617
+ raise InvalidParameterError("Bad parameter: skip_name must be an bool")
618
+ if "watermark_attachment_delete" in params and not isinstance(
619
+ params["watermark_attachment_delete"], bool
620
+ ):
621
+ raise InvalidParameterError(
622
+ "Bad parameter: watermark_attachment_delete must be an bool"
623
+ )
522
624
  if "id" not in params:
523
625
  raise MissingParameterError("Parameter missing: id")
524
626
  response, options = Api.send_request(