End2End暗号化対応・ノーログで、安心安全のオープンソースの匿名ファイルアップロードサービス。
End2End.techでは、外部のスクリプトやコマンドラインから簡単にファイルをアップロードできるAPIを用意しています。 これらのAPIの利用に登録は必要ありませんが、極端にサーバーへ負荷をかける行為やスクレイピングなどはお止めください。
ファイルを新規にアップロードするには、以下のURLにPOSTリクエストを送信して下さい。
curl https://api.end2end.tech/upload
-X POST
-F file=@/fakepath/helloworld.png
レスポンスは以下のようになります。
リクエストに成功した場合:
{
"Status": "OK",
"FileID": "ファイルID",
"FileName": "ファイル名",
"URL": "ファイルのダウンロード用URL",
"SHA256": "ファイルのSHA256ハッシュ",
"RemovePassword": "ファイルの削除パスワード"
}
リクエストに失敗した場合:
{
"Error": "エラーの詳細メッセージ"
}
また、以下のようにリクエストにオプションを付属させることもできます。
curl https://api.end2end.tech/upload
-X POST
-F file=@/fakepath/helloworld.png
-F setLimitDownload=on
-F maxDownloadCount=100
-F blockVPN=on
現在、対応しているオプションは以下の通りです。
ファイルをダウンロードするには、以下のURLにGETリクエストを送信して下さい。
curl https://api.end2end.tech/download?id={ファイルID} -o {出力先ファイル名}
ただし、{ファイルID}にはアップロード時のFileIDを指定し、{出力先ファイル名}の指定は任意です。
ファイルを削除するには、以下のURLにGETリクエストを送信して下さい。
curl https://api.end2end.tech/delete?id={ファイルID}&password={削除用パスワード}
ただし、{ファイルID}にはアップロード時のFileIDを指定し、{削除用パスワード}にはアップロード時のRemovePasswordを指定して下さい。 この操作は取り消せず、ディスク及びデータベースから完全にファイルが消去されますので、注意して下さい。
Apache 2.4.6以降 + PHP 7.4.33以降 + MySQL 5.7以降
以下のようにコマンドを実行して、リポジトリをクローンして下さい。
git clone https://github.com/ActiveTK/End2End.tech.git
または、ZIP形式でダウンロードしてサーバー上に展開することもできます。
MySQLユーザーとデータベースを作成し、以下のようにテーブルを構築して下さい。
CREATE TABLE `UploadFiles` (
`FileID` varchar(40) DEFAULT '',
`FileName` varchar(500) DEFAULT '',
`FileSize` varchar(20) DEFAULT '',
`FileHash` varchar(400) DEFAULT '',
`DownloadCount` varchar(20) DEFAULT '',
`UploadDate` varchar(20) DEFAULT '',
`FileDownloadLimit` varchar(20) DEFAULT '',
`FileValidDateLimit` varchar(20) DEFAULT '',
`EndtoEndEncrypted` varchar(5) DEFAULT '',
`BlockVPN` varchar(5) DEFAULT '',
`DeletePassword` varchar(8) DEFAULT ''
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
ルートディレクトリ直下にあるConfig.php
をUTF-8としてテキストエディタで開き、「設定はここから」から「設定はここまで」の間を適切に編集して下さい。
設定項目は以下の通りです。
The MIT License