Nextcloud API

Nextcloudに用意されている内部API・外部APIについて

NextcloudにはWebDAVやShare API等の外部アプリケーションから呼び出し可能な外部APIやHooks、Background Jobs等のカスタマイズアプリケーションから利用可能な内部APIが用意されています。そのようなAPIを利用することで独自の実装を行わずに容易に連携・拡張が可能です。

代表的な外部API

Nextcloudでは、coreのフューチャーやカスタマイズアプリケーションを実装するために柔軟性のあるAPIが標準で実装されており、そのAPIを有効活用することで開発パフォーマンスを高めることが可能です。

動作WebDAVメソッドURIオプション
ファイルリスト/ファイル確認PROPFIND/remote.php/dav/<ディレクトリ名>
ファイル取得GET/remote.php/dav/<ファイルパス>
ファイル送信PUT/remote.php/dav/<ファイルパス>
ファイル移動・ファイル名変更 MOVE/remote.php/dav/<ファイルパス>Destination:/remote.php/webdav/<ファイルパス>
ファイルコピーCOPY/remote.php/dav/<ファイルパス>Destination:/remote.php/webdav/<ファイルパス>
ファイル属性変更PROPPATCH/remote.php/dav/<ファイルパス>
ディレクトリ作成MKCOL/remote.php/dav/<ディレクトリ名>
ディレクトリ削除DELETE/remote.php/dav/<ディレクトリ名>
動作メソッドURIオプション
共有ファイルの取得GET/shares
特定フォルダの共有取得GET/shares/<ファイルパス>
共有情報の取得GET/shares/<シェアID>
新規共有POST/shares/path=<共有フォルダパス>
shareType=<共有の種類>
'0' = user
'1' = group
'3' = リンク公開
shareWith=<共有先ユーザー/グループ>
publicUpload=
'true' = アップロード許可
'false' = アップロード不許可
password=<閲覧パスワード>
permission=<共有権限>
'1' = read(URL共有時のデフォルト)
'2' = update
'4' = create
'8' = delete
'16' = share
'31' = all(デフォルト)
必須項目:shareType,path,shareWith
共有削除DELETE/shares/<シェアID>
共有の更新PUT/shares/<シェアID>permission=<共有権限>(指定方法は新規共有と同じ)
password=<閲覧パスワード>
publicUpload=(指定方法は新規共有と同じ)