
メディアライブラリーでは、APIから以下の各種機能を利用できます
- フォルダ内のファイル閲覧、検索、アップロード
- ユーザー情報取得、作成、更新、削除
- グループ情報取得、作成、更新、削除
- etc..
API利用方法について
APIの利用手順は次のとおりです。
- HTTPSにて必要なデータを送信(GET, POST)
- サーバーから受信したJSONデータの内容に沿って処理を行う。
具体的な操作を行う際には、まず /api/login にてログインを行ってください。
その際にサーバーから発行された Cookie を次回以降のリクエストヘッダに加えてください。
サーバーから受信したデータ
サーバーから受信したJSONデータのstatusの値は ok または ng です。
ok の場合はリクエスト成功となりますが、ng の場合は何らかの理由でリクエストの処理に
失敗しています。code や message の内容をもとに対処ください。
code は HTTP Status に似せた数値となっています(4xx で一時的なエラー等)。
message はテキストでエラーの内容等が書かれています。
API一覧
URL | 説明 |
---|---|
POST /api/login | システムにログインする |
GET /api/logout | システムからログアウトする |
POST /api/alive | セッションが有効性を確認する |
POST /api/folder | フォルダー内のファイル一覧を取得する |
POST /api/upload | ファイルをアップロードする |
POST /api/get-file | ファイルのメタ情報を取得する |
POST /api/get-image | 画像を取得する |
POST /api/get-image-info | 画像データ群を取得する |
POST /api/get-movie | 動画を取得する |
POST /api/get-movie-info | 動画のメタ情報を取得する |
POST /api/get-movie-meta | 動画のHLS情報を取得する |
POST /api/update-file | ファイル情報を更新する |
POST /api/delete-file | ファイルを削除する |
POST /api/get-search-cond | 検索条件を取得する |
POST /api/search | ファイルを検索する |
POST /api/search-in-file | ファイル内のテキストを検索する |
POST /api/thumbnail | サムネイルを取得する |
POST /api/make-folder | フォルダーを新規作成する |
POST /api/create-user | ユーザーを新規作成する |
POST /api/find-user | ユーザー情報を取得する |
POST /api/find-all-user | すべてのユーザー情報を取得する |
POST /api/update-user | ユーザー情報を更新する |
POST /api/delete-user | ユーザー情報を削除する |
POST /api/create-group | グループを新規作成する |
POST /api/find-group | グループ情報を取得する |
POST /api/find-all-group | すべてのグループ情報を取得する |
POST /api/update-group | グループ情報を更新する |
POST /api/delete-group | グループ情報を削除する |
POST /api/create-attr | ファイル属性を新規作成する |
POST /api/find-attr | ファイル属性情報を取得する |
POST /api/find-all-attr | すべてのファイル属性情報を取得する |
POST /api/update-attr | ファイル属性情報を更新する |
POST /api/delete-attr | ファイル属性情報を削除する |
POST /api/find-restriction | アクセス元情報を取得する |
POST /api/update-restriction | アクセス元情報を更新する |
API詳細
システムにログインする
POST /api/login
パラメーター
- loginId ログインID
- password パスワード
返り値
- statusステータス: ok,ng
- code コード: 数値
- userId ユーザーID
- aesKey 共有鍵
システムからログアウトする
POST /api/logout
リクエスト
- (Cookie)PHPSESSID セッションID
レスポンス
- status ステータス: ok,ng
- code コード: 数値
セッションの有効性を確認する
POST /api/alive
リクエスト
- (Cookie)PHPSESSID セッションID
レスポンス
- status ステータス: ok,ng
- code コード: 数値
フォルダー内のファイル一覧を取得する
POST /api/folder
リクエスト
- id フォルダーID (id=1はトップフォルダ)
- (Cookie)PHPSESSID セッションID
レスポンス
- status OK, NG
- code 数値
- list 検索結果のリスト
- 検索結果 画像群の場合
- title タイトル
- targetURL データ取得先URL
- fileId ファイルID
- path ディレクトリ階層
- favorite お気に入り: on, off
- contentType 1 (メディアの種類)
- thumbnailURL サムネイル取得先URL
- pageCount ページ数
- updatedAt 最終更新日時
- 検索結果 動画の場合
- title タイトル
- subTitle サブタイトル
- fileName アップロード元ファイル名
- targetURL データ取得先
- path ディレクトリ階層
- contentType 2 (メディアの種類)
- thumbnailURL サムネイル取得先URL
- 検索結果 ディレクトリの場合
- title タイトル
- subTitle サブタイトル
- fileName アップロード元ファイル名
- targetURL データ取得先
- path ディレクトリ階層
- contentType 3 (メディアの種類)
- thumbnailURL サムネイル取得先URL
ファイルをアップロードする
POST /api/upload
リクエスト
- folderId アップロード先のフォルダID
- file アップロードするファイル実体
- (Cookie)PHPSESSID セッションID
レスポンス
- status OK, NG
- code 数値
ファイルのメタ情報を取得する
POST /api/get-file
リクエスト
- id ファイルID
- (Cookie)PHPSESSID セッションID
レスポンス
- status OK, NG
- code 数値
- metas 属性のリスト
- key ファイル属性ID
- value ファイル属性値
画像を取得する
POST /api/get-image
リクエスト
- id 画像ID
- page ページ数: オプション: 省略時は0
- zoom ズームレベル(1,2,3,5で1が最小): オプション: 省略時は1
- x 分割されたうちのx座標 (0 ~ (zoom-1)*3-1)Number オプション:省略時は0
- y 分割されたうちのy座標 (0 ~ (zoom-1)*3-1)Number オプション:省略時は0
- width 画像幅(600 or 800)Numberオプション:省略時は800
- encrypt 暗号化するかStringオプション:falseだと暗号化しない
- (Cookie)PHPSESSID セッションID
レスポンス
- 画像データ(バイナリー、AES暗号化済み)
画像データ群を取得する
POST /api/get-image-info
リクエスト
- id ファイルID
- (Cookie)PHPSESSID セッションID
レスポンス
- status OK, NG
- code 数値
- pageCount 画像数
- title タイトル
- file_id ファイルID
- startPage 表示開始ページ
- fileNameString アップロード元ファイル名
- pathString ディレクトリ階層
- contents リスト
- item0 ハッシュ
- page ページ番号
- thumnailURL サムネイル取得先
- targerURLString コンテンツ取得先
- titleString 画像タイトル
- width 横
- height 縦
- metas 属性(ファイルサイズなど)のリスト
- key ex:スポンサー
- value ex:テスト食品
動画を取得する
POST /api/get-movie
リクエスト
- id ファイルID
- (Cookie)PHPSESSID セッションID
レスポンス
- 動画のバイナリー
動画メタデータ取得
POST /api/get-movie-info
リクエスト
- id 動画ID
- (Cookie)PHPSESSID セッションID
レスポンス
- title 一覧表示用タイトル
- targetURL コンテンツ取得先
- path ディレクトリ階層
- metas (key, value)の配列 ex:(スポンサー, トヨタ)
- status OK, NG
- code コード: 数値
動画のHLS情報を取得する
POST /api/get-movie-meta
リクエスト
- id ファイルID
- (Cookie)PHPSESSID セッションID
レスポンス
- 動画メタファイル
ファイル情報を更新する
POST /api/update-file
リクエスト
- id ファイルID
- metas 属性のリスト
- key ファイル属性ID
- value ファイル属性値
- (Cookie)PHPSESSID セッションID
レスポンス
- status OK, NG
- code 数値
ファイルを削除する
POST /api/delete-file
リクエスト
- id ファイルID
- (Cookie)PHPSESSID セッションID
レスポンス
- status OK, NG
- code 数値
検索条件を取得する
POST /api/get-search-cond
リクエスト
- (Cookie)PHPSESSID セッションID
レスポンス
- status OK, NG
- code 数値
- list 検索条件のリスト
- 検索条件 トグルスイッチの場合
- name クエリパラメータ
- title 検索項目タイトル
- type 1 (検索条件タイプ)
- section 0=通常検索、1=詳細検索
- default デフォルト選択値
- data 送付すべきデータのハッシュ
- ON ONの場合に送付すべき値
- OFF OFFの場合に送付すべき値
- 検索条件 リストの場合
- type 2 (検索条件タイプ)
- section 0=通常検索、1=詳細検索
- default デフォルト選択値のリスト
- item0 1項目めのデフォルト選択値
- item1 2項目めのデフォルト選択値(以下略)
- data 選択値、複数項目対応のため配列で
- item0 1項目めの選択値データのハッシュ
- item1 2項目めの選択値データのハッシュ
- 検索条件 テキストの場合
- type 3 (検索条件タイプ)
- section 0=通常検索、1=詳細検索
- default デフォルト選択値
- 検索条件 日付の場合
- type 4 (検索条件タイプ)
- section 0=通常検索、1=詳細検索
- default デフォルト選択値のリスト(FromとTo)
- item0 Fromのデフォルト
- item1 Toのデフォルト
ファイルを検索する
POST /api/search
リクエスト
- name 検索項目名(get-search-condの返り値のkey)
- (Cookie)PHPSESSID セッションID
レスポンス
- status OK, NG
- code 数値
- list 検索結果のリスト
- 検索結果 画像群の場合
- title タイトル
- targetURL データ取得先URL
- fileId ファイルID
- path ディレクトリ階層
- favorite お気に入り: on, off
- contentType 1 (メディアの種類)
- thumbnailURL サムネイル取得先URL
- pageCount ページ数
- updatedAt 最終更新日時
- 検索結果 動画の場合
- title タイトル
- subTitle サブタイトル
- fileName アップロード元ファイル名
- targetURL データ取得先
- path ディレクトリ階層
- contentType 2 (メディアの種類)
- thumbnailURL サムネイル取得先URL
- 検索結果 ディレクトリの場合
- title タイトル
- subTitle サブタイトル
- fileName アップロード元ファイル名
- targetURL データ取得先
- path ディレクトリ階層
- contentType 3 (メディアの種類)
- thumbnailURL サムネイル取得先URL
ファイル内検索
POST /api/search-in-file
リクエスト
- fileId ファイルID
- keyword パスワード
- (Cookie)PHPSESSID セッションID
レスポンス
- status ステータス: ok,ng
- code コード: 数値
- list 結果のリスト
- page ページ数
- phrase フレーズ
- pageWidth ページの幅
- pageHeight ページの高さ
- xMin ワードの格納されているboxの左上のx座標
- yMin ワードの格納されているboxの左上のy座標
- xMax ワードの格納されているboxの右上のx座標
- yMax ワードの格納されているboxの右上のy座標
サムネイルを取得する
POST /api/thumbnail
リクエスト
- id ファイルID
- page ページ番号
- (Cookie)PHPSESSID セッションID
レスポンス
- 画像データ(バイナリー、AES暗号化済み)
フォルダーを新規作成する
POST /api/make-folder
リクエスト
- parent_id 親フォルダーID
- name フォルダー名
- (Cookie)PHPSESSID セッションID
レスポンス
- status OK, NG
- code 数値
- id 作成されたフォルダーID
ファイル属性を更新する
POST /api/update-attr?id=ファイル属性ID
リクエスト
- name 名前
- position 表示順
- type 種別
- required 必須か否か。yes=必須。no=必須でない。
- search 検索に使うか否か。basic=基本検索項目として使う, extra=詳細検索項目として使う、(データなし)=使わない
- (Cookie)PHPSESSID セッションID
レスポンス
- status ステータス: ok,ng
- code コード: 数値
- data ファイル属性情報
- id ファイル属性番号
- name 名前
- position 表示順
- type 種別
- required 必須か否か。yes=必須。no=必須でない。
- search 検索に使うか否か。basic=基本検索項目として使う, extra=詳細検索項目として使う、(データなし)=使わない
- created_at 作成日時
- updated_at 更新日時
グループ情報を更新する
POST /api/update-group?id=グループ番号
リクエスト
- name グループ名
- (Cookie)PHPSESSID セッションID
レスポンス
- status ステータス: ok,ng
- code コード: 数値
- data グループ情報
- id グループ番号
- name 名前
- created_at 作成日時
- updated_at 更新日時
アクセス元情報を更新する
POST /api/update-restriction
リクエスト
- browser ブラウザーから
- api APIから
- (Cookie)PHPSESSID セッションID
レスポンス
- status ステータス: ok,ng
- code コード: 数値
- data アクセス元情報
- browser ブラウザーから
- api APIから
- created_at 作成日時
- updated_at 更新日時
タグを更新する
POST /api/update-tag?id=タグID
リクエスト
- name タグ名
- (Cookie)PHPSESSID セッションID
レスポンス
- status ステータス: ok,ng
- code コード: 数値
- data タグ情報
- id タグ番号
- name 名前
- created_at 作成日時
- updated_at 更新日時
ユーザー情報を更新する
POST /api/update-user?id=ユーザーID
リクエスト
- name 名前
- login_id ログインID
- email メールアドレス
- roll 役割: normal = 一般ユーザー、admin = 管理者
- (Cookie)PHPSESSID セッションID
レスポンス
- status ステータス: ok,ng
- code コード: 数値
- data 更新されたユーザー情報
- id ユーザー番号
- name 名前
- login_id ログインID
- password パスワード
- email メールアドレス
- roll 役割
- created_at 作成日時
- updated_at 更新日時