このインターフェースは、ダッシュボードで行える操作に対応しています。アカウント情報とストレージの確認、アップロードサーバーの取得とファイル送信、URLからの動画インポート、ファイルの一覧表示と詳細確認、移動と名前変更、フォルダ作成、動画検索、リモートアップロードのキュー管理が可能です。リモートアドレスからスプラッシュ画像や字幕を追加する機能もあります。
リクエストはシンプルなHTTPのGETまたはPOSTです。APIキーはkeyパラメーターに指定し、アカウント設定で確認できます。すべての応答はJSONで、メッセージ、ステータスコード、サーバー時刻、結果が含まれます。応答ステータス429は、1秒あたり10リクエストの上限に達したことを意味します。さらに必要な場合はサポートにご連絡ください。
ビルドサーバーから完成した動画を直接送る公開ワークフロー、スプレッドシートのリンクを取り込むコンテンツツール、クリエイターのライブラリをサイトに一覧表示するプラグイン、エンコード状況を監視するスクリプトなどです。公式のPHPとPythonのクライアントは近日公開予定のため、現時点では以下のようにエンドポイントを直接呼び出します。
公開されているメソッドの一覧です。
プロフィール、残高、ストレージを取得し、期間を指定してレポート統計を取得、DMCA通知を一覧表示します。
アップロードサーバーを取得し、ファイルをマルチパートフォームデータで送信して、コードとリンクを受け取ります。
URLの追加、ジョブの一覧、状態とスロットの確認、失敗したインポートの再開や削除ができます。
フォルダと、その中のファイルを作成、名前変更、一覧表示できます。
ファイルの一覧表示、確認、詳細取得、名前変更、移動、複製と、サムネイルの取得ができます。
検索語で動画を探し、URLからスプラッシュ画像や字幕を追加できます。
最初の呼び出しはキーを確認します。2つ目は、アップロードサーバー呼び出しで返されたサーバーアドレスにファイルを送信します。
curl "https://filehost.net/api/account/info?key=YOUR_API_KEY"
curl "https://filehost.net/api/upload/server?key=YOUR_API_KEY"
curl -X POST -F 'api_key=YOUR_API_KEY' -F '[email protected]' \
"https://filehost.net/api/upload/server/01?key=YOUR_API_KEY"リモートアップロードのジョブを追加し、ファイルコードを出力します。元のアドレスにはurlencodeを使ってください。
<?php
$key = 'YOUR_API_KEY';
$src = urlencode('https://example.com/video.mp4');
$res = json_decode(file_get_contents(
"https://filehost.net/api/upload/url?key=$key&url=$src"
), true);
echo $res['result']['filecode'] ?? 'failed';Node 18以降とブラウザで動作します。ただしキーはサーバー側に置いてください。
const key = process.env.FILEHOST_KEY;
const code = 'FILE_CODE';
const r = await fetch(
`https://filehost.net/api/file/check?key=${key}&file_code=${code}`
);
const data = await r.json();
console.log(data.result[0].status);キーはクライアント側のコードに置かないでください。見た人は誰でもあなたのアカウントとして操作できてしまいます。1秒あたり10リクエストの制限を守るため、呼び出しをキューに入れ、429の応答では待機してください。アップロードで返されたファイルコードは保存しましょう。ほかのすべての呼び出しは、そのコードでファイルを指定します。
大きなファイルのアップロードは、安定した回線のサーバーから行うのが最適です。すでにオンラインにあるファイルは、サーバーの回線を使い、ジョブコードをすぐに返すURLインポートがおすすめです。
HTTPステータスとJSON本文内のstatusフィールドの両方を確認し、原因が分かることの多いメッセージ文をログに残しましょう。ファイルコードがない、またはキーの期限切れは致命的な失敗として扱い、429の応答は待ってから再試行する合図と考えます。バッチ処理を作る場合は、返されたすべてのファイルコードをローカルに記録しておくと、スクリプトが落ちても二重にアップロードせず再開できます。
ドキュメント化されたWebhookコールバックはないため、完了の確認はポーリングで行います。公開されているアップロード応答にはファイルコードとリンクが含まれ、公式クライアントライブラリはまだ公開されていません。足りない機能がある場合は、お問い合わせページからサポートにお知らせください。
連携するホストを検討中ですか?各社が公開している機能を比べてみましょう。