{"description":"\u0421\u0435\u0440\u0432\u0438\u0441 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f, \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432","endpoints":{"objects":[{"auth_required":true,"description":"\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0444\u0430\u0439\u043b\u0430 \u0438 \u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0430 \u0435\u0433\u043e \u043a object_id. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 multipart/form-data \u0438 JSON (base64).","method":"POST","path":"/upload","request_formats":{"application/json":{"body":{"base64":"data:image/jpeg;base64,/9j/4AAQSkZJRg...","filename":"image.jpg","object_id":"191e8e60-ebaa-4e21-ae93-2c34ca75b0d3"},"curl_example":"curl -X POST https://storage.sysassysdba.com/upload -H \"Application: <APP>\" -H \"Authorization: Bearer <TOKEN>\" -H \"Content-Type: application/json\" -d '{\"object_id\":\"191e8e60-ebaa-4e21-ae93-2c34ca75b0d3\",\"filename\":\"image.jpg\",\"base64\":\"data:image/jpeg;base64,...\"}'"},"multipart/form-data":{"curl_example":"curl -X POST https://storage.sysassysdba.com/upload -H \"Application: <APP>\" -H \"Authorization: Bearer <TOKEN>\" -F \"object_id=191e8e60-ebaa-4e21-ae93-2c34ca75b0d3\" -F \"file=@image.jpg\"","form_fields":{"file":"binary (\u0444\u0430\u0439\u043b) [\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e]","object_id":"string (UUID) [\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e]"}}},"responses":{"201":{"saved_files":[{"application":"app1","id":1,"object_id":"191e8e60-ebaa-4e21-ae93-2c34ca75b0d3","path":"c/0/2/e/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3.jpg","type":"multipart"}],"status":"ok"},"400":{"error":"Missing required 'object_id' for file upload","status":"ko"}}},{"auth_required":true,"curl_example":"curl -X GET \"https://storage.sysassysdba.com/files/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3,567b8bba-a078-44ef-9ea1-b05876c17c8a\" -H \"Application: <APP>\" -H \"Authorization: Bearer <TOKEN>\"","description":"\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u043f\u0438\u0441\u043a\u0430 \u0444\u0430\u0439\u043b\u043e\u0432 \u043f\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u0438\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c object_id (\u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u043c \u0437\u0430\u043f\u044f\u0442\u043e\u0439)","method":"GET","path":"/files/<object_ids>","responses":{"200":{"count":1,"files":[{"application":"app1","id":1,"object_id":"191e8e60-ebaa-4e21-ae93-2c34ca75b0d3","path":"c/0/2/e/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3.jpg","user_id":1}],"status":"ok"},"400":{"error":"No object_ids provided","status":"ko"}},"url_params":{"object_ids":"string (UUID \u0438\u043b\u0438 \u0441\u043f\u0438\u0441\u043e\u043a UUID \u0447\u0435\u0440\u0435\u0437 \u0437\u0430\u043f\u044f\u0442\u0443\u044e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: id1 \u0438\u043b\u0438 id1,id2)"}},{"auth_required":true,"curl_example":"curl -X DELETE \"https://storage.sysassysdba.com/files/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3\" -H \"Application: <APP>\" -H \"Authorization: Bearer <TOKEN>\"","description":"\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0432\u0441\u0435\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0438 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0438\u0437 \u0411\u0414 \u043f\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u043e\u043c\u0443 object_id","method":"DELETE","path":"/files/<object_id>","responses":{"200":{"deleted_files_on_disk":1,"deleted_records":1,"message":"Successfully deleted records and files for object_id: 191e8e60-ebaa-4e21-ae93-2c34ca75b0d3","status":"ok"},"404":{"error":"Files not found or access denied","status":"ko"}},"url_params":{"object_id":"string (UUID \u043e\u0431\u044a\u0435\u043a\u0442\u0430, \u0444\u0430\u0439\u043b\u044b \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043d\u0443\u0436\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c)"}},{"auth_required":true,"curl_example":"curl -X DELETE \"https://storage.sysassysdba.com/files/user\" -H \"Application: <APP>\" -H \"Authorization: Bearer <TOKEN>\"","description":"\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0432\u0441\u0435\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f (user_id \u0431\u0435\u0440\u0451\u0442\u0441\u044f \u0438\u0437 JWT)","method":"DELETE","path":"/files/user","responses":{"200":{"deleted_files_on_disk":5,"deleted_records":5,"message":"Successfully deleted all files for user_id: 1","status":"ok"},"404":{"error":"No files found for this user","status":"ko"}}}],"system":[{"auth_required":false,"description":"\u041b\u0451\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u044b\u0439 \u044d\u043d\u0434\u043f\u043e\u0438\u043d\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 (heartbeat)","method":"GET","path":"/ping"},{"auth_required":false,"description":"\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0441 \u0431\u0430\u0437\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445","method":"GET","path":"/health"}]},"headers_required":{"Application":"\u0421\u0442\u0440\u043e\u043a\u0430 \u0438\u0437 Config.APPLICATIONS_POOL (\u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 before_request, \u043a\u0440\u043e\u043c\u0435 /, /ping, /health \u0438 \u0441\u0442\u0430\u0442\u0438\u043a\u0438 /files/)","Authorization":"Bearer <JWT_TOKEN> (\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0437\u0430\u0449\u0438\u0449\u0435\u043d\u043d\u044b\u0445 API \u0440\u043e\u0443\u0442\u043e\u0432)"},"image_transformations":{"base_static_url":"https://storage.sysassysdba.com/<path>","description":"\u041f\u0440\u044f\u043c\u043e\u0439 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0444\u0430\u0439\u043b\u0430\u043c \u0438 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u0447\u0435\u0440\u0435\u0437 Nginx (\u0431\u0435\u0437 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438)","rules":[{"description":"\u041f\u0440\u044f\u043c\u043e\u0439 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u0443 \u0444\u0430\u0439\u043b\u0430","example":"https://storage.sysassysdba.com/c/0/2/e/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3.jpg","prefix":"/<path>"},{"description":"\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0439 \u0448\u0438\u0440\u0438\u043d\u0435","example":"https://storage.sysassysdba.com/rw/800/c/0/2/e/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3.jpg","prefix":"/rw/<width>/<path>"},{"description":"\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0439 \u0432\u044b\u0441\u043e\u0442\u0435","example":"https://storage.sysassysdba.com/rh/600/c/0/2/e/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3.jpg","prefix":"/rh/<height>/<path>"},{"description":"\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043f\u043e\u0434 \u0442\u043e\u0447\u043d\u043e \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0435 \u0448\u0438\u0440\u0438\u043d\u0443 \u0438 \u0432\u044b\u0441\u043e\u0442\u0443 (\u0441 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0438\u0439)","example":"https://storage.sysassysdba.com/rwh/800x600/c/0/2/e/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3.jpg","prefix":"/rwh/<width>x<height>/<path>"},{"description":"\u041e\u0431\u0440\u0435\u0437\u043a\u0430 (Crop) \u043f\u043e\u0434 \u0441\u0442\u0440\u043e\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u044b WxH","example":"https://storage.sysassysdba.com/cwh/400x300/c/0/2/e/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3.jpg","prefix":"/cwh/<width>x<height>/<path>"},{"description":"\u041a\u0432\u0430\u0434\u0440\u0430\u0442\u043d\u0430\u044f \u043e\u0431\u0440\u0435\u0437\u043a\u0430 (Square Crop WxW)","example":"https://storage.sysassysdba.com/qw/300/c/0/2/e/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3/191e8e60-ebaa-4e21-ae93-2c34ca75b0d3.jpg","prefix":"/qw/<width>/<path>"}]},"service":"storage.sysassysdba.com","version":"1.1.2"}
