{"components":{"schemas":{"DownloadByCodeBody":{"properties":{"code":{"title":"Code","type":"string"},"password":{"title":"Password","type":"string"}},"required":["code","password"],"title":"DownloadByCodeBody","type":"object"},"LicenseBody":{"properties":{"action":{"default":"grant","enum":["grant","revoke","check"],"title":"Action","type":"string"},"user_id":{"description":"ID \u043a\u043b\u0438\u0435\u043d\u0442\u0430","title":"User Id","type":"integer"}},"required":["user_id"],"title":"LicenseBody","type":"object"},"ValidationErrorModel":{"properties":{"ctx":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"default":null,"description":"an optional object which contains values required to render the error message.","title":"Error context"},"loc":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"description":"the error's location as a list. ","title":"Location"},"msg":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"a computer-readable identifier of the error type.","title":"Message"},"type_":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"a human readable explanation of the error.","title":"Error Type"}},"title":"ValidationErrorModel","type":"object"}},"securitySchemes":null},"info":{"description":"Flask API with auto Swagger/ReDoc","title":"SoloBot Site API","version":"1.0.0"},"openapi":"3.1.0","paths":{"/solonetbot/api":{"get":{"operationId":"api_root_solonetbot_api_get","responses":{},"tags":["default"]}},"/solonetbot/api/v1/modules/{module_name}/download":{"post":{"description":"JSON: {code, password}. \u0414\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0430\u0432\u0442\u043e\u0440\u0430\u043c/\u0430\u0434\u043c\u0438\u043d\u0430\u043c \u0438\u043b\u0438 \u043f\u0440\u0438 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438 \u043d\u0430 \u043c\u043e\u0434\u0443\u043b\u044c.","operationId":"modules_download_zip_by_code","parameters":[{"in":"path","name":"module_name","required":true,"schema":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_\\-]{0,98}[A-Za-z0-9]$","title":"Module Name","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DownloadByCodeBody"}}},"required":true},"responses":{"200":{"description":"\u0424\u0430\u0439\u043b \u043e\u0442\u0434\u0430\u043d"},"400":{"description":"\u041e\u0448\u0438\u0431\u043a\u0430 \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438"},"401":{"description":"\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043a\u043e\u0434\u0430/\u043f\u0430\u0440\u043e\u043b\u044f"},"403":{"description":"\u041d\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u0430"},"404":{"description":"\u041c\u043e\u0434\u0443\u043b\u044c \u0438\u043b\u0438 \u0444\u0430\u0439\u043b \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d"},"422":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/ValidationErrorModel"},"type":"array"}}},"description":"Unprocessable Entity"},"500":{"description":"\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430"}},"summary":"\u0421\u043a\u0430\u0447\u0430\u0442\u044c ZIP \u043c\u043e\u0434\u0443\u043b\u044f \u043f\u043e client_code","tags":["Modules"]}},"/solonetbot/api/v1/modules/{module_name}/license":{"post":{"description":"BasicAuth + JSON {user_id, action}. \u0414\u043e\u0441\u0442\u0443\u043f \u043c\u043e\u0436\u043d\u043e grant(\u0432\u044b\u0434\u0430\u0442\u044c)/revoke(\u043e\u0442\u043e\u0437\u0432\u0430\u0442\u044c)/check(\u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c).","operationId":"modules_license","parameters":[{"in":"path","name":"module_name","required":true,"schema":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_\\-]{0,98}[A-Za-z0-9]$","title":"Module Name","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LicenseBody"}}},"required":true},"responses":{"200":{"description":"\u041e\u043a (check/revoke)"},"201":{"description":"\u041e\u043a (grant \u0441\u043e\u0437\u0434\u0430\u043d)"},"400":{"description":"\u041e\u0448\u0438\u0431\u043a\u0430 \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438"},"401":{"description":"\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0435 \u043a\u0440\u0435\u0434\u044b"},"403":{"description":"\u041d\u0435\u0442 \u043f\u0440\u0430\u0432 (\u043d\u0435 \u0430\u0432\u0442\u043e\u0440/\u0430\u0434\u043c\u0438\u043d)"},"404":{"description":"\u041c\u043e\u0434\u0443\u043b\u044c/\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d"},"422":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/ValidationErrorModel"},"type":"array"}}},"description":"Unprocessable Entity"}},"summary":"\u0412\u044b\u0434\u0430\u0442\u044c/\u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c/\u043e\u0442\u043e\u0437\u0432\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f","tags":["Modules"]}},"/solonetbot/api/v1/modules/{module_name}/upload":{"post":{"description":"BasicAuth + multipart/form-data (\u043f\u043e\u043b\u0435 'file'). \u0412 \u043a\u043e\u0440\u043d\u0435 \u0430\u0440\u0445\u0438\u0432\u0430 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c VERSION / VERSION.txt","operationId":"modules_upload_zip","parameters":[{"in":"path","name":"module_name","required":true,"schema":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_\\-]{0,98}[A-Za-z0-9]$","title":"Module Name","type":"string"}}],"responses":{"201":{"description":"\u0417\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043e"},"400":{"description":"\u041e\u0448\u0438\u0431\u043a\u0430 \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438 / \u043d\u0435 ZIP / \u043d\u0435\u0442 VERSION"},"401":{"description":"\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0435 \u043a\u0440\u0435\u0434\u044b"},"403":{"description":"\u041d\u0435\u0442 \u043f\u0440\u0430\u0432 (\u043d\u0435 \u0430\u0432\u0442\u043e\u0440/\u0430\u0434\u043c\u0438\u043d)"},"404":{"description":"\u041c\u043e\u0434\u0443\u043b\u044c \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d"},"409":{"description":"\u041e\u0442\u043a\u0430\u0442 \u0432\u0435\u0440\u0441\u0438\u0438 \u0437\u0430\u043f\u0440\u0435\u0449\u0451\u043d"},"422":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/ValidationErrorModel"},"type":"array"}}},"description":"Unprocessable Entity"},"500":{"description":"\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043e\u0448\u0438\u0431\u043a\u0430"}},"summary":"\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 ZIP \u0430\u0440\u0445\u0438\u0432\u0430 \u043c\u043e\u0434\u0443\u043b\u044f","tags":["Modules"]}}},"tags":[{"description":"\u041c\u043e\u0434\u0443\u043b\u0438 \u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438","name":"Modules"}]}
