フォルダ名からフォルダIDを取得する方法について(API, .NETSDK, C#)

解決済み
解決策を見る
Highlighted
New Contributor

フォルダ名からフォルダIDを取得する方法について(API, .NETSDK, C#)

お世話になっております。

 

[質問内容]
①フォルダ名(またはフォルダパス)からフォルダIDを取得する方法はありますでしょうか。
②フォルダ名には規則がございますでしょうか。(..\/><は無効文字など)

 

[実現したいこと]
指定されたフォルダ名(またはフォルダパス)からフォルダIDを取得する。
取得したフォルダIDをもとに、ファイルをアップロードする。

 

[現状わかっていること]
大まかには2つの方法があるのではと思っております。可能であれば、1の方針で実装したいです。
1.フォルダ情報の取得
 https://ja.developer.box.com/reference/get-folders-id/
 まず、ルートフォルダのフォルダ詳細を取得する。
 詳細にはフォルダ名とIDが含まれているため、紐づくフォルダ名のフォルダIDを取得する。
 (多階層の場合は、保存先のフォルダにたどり着くまで続ける。)
 【問題点・疑問点】
 ・フォルダ内の最初の100エントリまでしか取得できません。
  アイテムが100エントリを超えている場合、超過分を取得する方法はありますでしょうか。
 ・現状、本APIをたたくと、100エントリにはフォルダとファイルが含まれます。
  取得するアイテムをフォルダのみ(type=folder)にすることは可能でしょうか。

 

または

 

2.コンテンツを検索
 https://ja.developer.box.com/reference/get-search/
 こちらのAPIにて、フォルダ名(query=test)とアイテム種類(type=folder)で実行する。
 【問題点】
 ・検索結果がうまく取得できていない模様。
  フォルダを追加して、すぐAPIを呼び出しても、追加したフォルダ情報が検索結果として取得できない。
  ブラウザの検索ボックスでもヒットしない。ログインし直すと、ヒットする。

 

[参照]

https://community.box.com/t5/Platform-and-Development-Forum/Get-folder-Ids-from-folder-names-in-API-...

 
[補足]
API
C#
.NET SDK

 

ご教授のほど、宜しくお願い致します。

タグ(2)
2件の返信2
Highlighted
Occasional Contributor

Re: フォルダ名からフォルダIDを取得する方法について(API, .NETSDK, C#)

> 1.フォルダ情報の取得
 https://ja.developer.box.com/reference/get-folders-id-items/ 使う方がいいですよ。

 

> 2.コンテンツを検索
>  【問題点】
>  ・検索結果がうまく取得できていない模様。

 作成してすぐに検索できないのは仕様ですね。
 https://support.box.com/hc/ja/articles/360043696314-ファイル-フォルダ-コンテンツの検索#search_hdsiw

 

Highlighted
New Contributor

Re: フォルダ名からフォルダIDを取得する方法について(API, .NETSDK, C#)

早速、ご回答いただきまして、ありがとうございます。

 

>1.フォルダ情報の取得

参照URLを確認致しました。

こちらで、対象フォルダのアイテムをすべて取得することができることを確認できました。

FolderManager.GetFolderItemsAsync(folderId, 1000, autoPaginate:true);

上記で問題点としていたことを解決することができました。ありがとうございます。

 

>2.コンテンツを検索

こちらは仕様なのですね。承知いたしました。