@@ -75,6 +75,51 @@ def list(**options)
7575 @req_obj . request ( "get" , url , headers , formatted_options )
7676 end
7777
78+ def get_file_versions ( file_id : nil )
79+ if file_id == '' || file_id . nil?
80+ raise ArgumentError , 'file_id is required'
81+ end
82+ url = "#{ constants . BASE_URL } /#{ file_id } /versions"
83+ headers = @req_obj . create_headers
84+ @req_obj . request ( 'get' , url , headers )
85+ end
86+
87+ def get_file_version_detail ( file_id : nil , version_id : nil )
88+ if file_id == "" || file_id . nil?
89+ raise ArgumentError , "file_id is required"
90+ end
91+ if version_id == "" || version_id . nil?
92+ raise ArgumentError , "version_id is required"
93+ end
94+ url = "#{ constants . BASE_URL } /#{ file_id } /versions/#{ version_id } "
95+ headers = @req_obj . create_headers
96+ @req_obj . request ( 'get' , url , headers )
97+ end
98+
99+ def delete_file_version ( file_id : nil , version_id : nil )
100+ if file_id == "" || file_id . nil?
101+ raise ArgumentError , "file_id is required"
102+ end
103+ if version_id == "" || version_id . nil?
104+ raise ArgumentError , "version_id is required"
105+ end
106+ url = "#{ constants . BASE_URL } /#{ file_id } /versions/#{ version_id } "
107+ headers = @req_obj . create_headers
108+ @req_obj . request ( 'delete' , url , headers )
109+ end
110+
111+ def restore_file_version ( file_id : nil , version_id : nil )
112+ if file_id == "" || file_id . nil?
113+ raise ArgumentError , "file_id is required"
114+ end
115+ if version_id == "" || version_id . nil?
116+ raise ArgumentError , "version_id is required"
117+ end
118+ url = "#{ constants . BASE_URL } /#{ file_id } /versions/#{ version_id } /restore"
119+ headers = @req_obj . create_headers
120+ @req_obj . request ( 'put' , url , headers )
121+ end
122+
78123 def details ( file_identifier : nil )
79124 # Get detail of file by file_identifier
80125 if file_identifier == "" || file_identifier . nil?
0 commit comments