フォルダ作成
/documents/api/1.2/folders/{folderId}
指定した対象フォルダに新規サブフォルダを作成します。
ノート:
特定のフォルダ内で、2つのフォルダに同じ名前を指定することはできません。 フォルダ名は大文字/小文字が区別されません。すなわち、Folder_Nameとfolder_nameは同じであるとみなされます。 対象フォルダに同じ名前のフォルダが存在する場合は、新規フォルダの名前に増分の数字が追加されます。 たとえば、my_folderという名前のフォルダがすでに存在する場合、新規フォルダの名前はmy_folder(2)となります。
リクエスト
- application/json
- application/xml
- folderId: string
フォルダのグローバル一意識別子(GUID)。 参照されるフォルダがユーザーのホーム・フォルダの場合、
folderIdの値はselfです。
- accessToken(optional): string
現在のユーザーにこのフォルダへのアクセスを許可するApplinkアクセス・トークン。 このパラメータは、
appLinkIDが使用されている場合は必須です。 これはaccessTokenまたはAccessTokenとして使用できます。 - appLinkID(optional): string
現在のユーザーにこのフォルダへのアクセスを許可するApplink ID。 パラメータ
appLinkIDが使用されるときはいつでも、パラメータaccessTokenも提供されなければなりません。 働くには、このapplinkは、少なくともコントリビュータ・ロールが付与されていなければなりません。 appLinkIDまたはAppLinkIDとして使用できます。 - dAccessCode(optional): string
保護されたパブリック・リンクを使用するために必要なアクセス・コード。 次の形式のCookieヘッダーの一部として送信する必要があります:
dAccessCode-<linkID>=<passcodeValue> - linkID(optional): string
現在のユーザーにこのフォルダへのアクセスを許可する、パブリック・リンクのパブリック・リンクID。 機能させるには、このパブリック・リンクにコントリビュータ・ロールが付与されている必要があります。 linkIDまたはLinkIDとして使用できます。
object- description(optional): string
(オプション)新規作成するフォルダの説明を指定します。
- name: string
(必須)新規作成するフォルダの名前を指定します。
{
"name":"restFolder",
"description":"rest folder"
}
レスポンス
- application/json
- application/xml
201レスポンス
レスポンス本文には、新たに作成したフォルダに関する情報が含まれます。
object- errorCode(optional): string
エラー・コードがゼロ(0)の場合は、エラーなしです
- object FolderDefinition
フォルダのメタデータ情報。
object- childitemsCount(optional): string
フォルダに含まれるアイテムの数
- createdBy(optional): object User
ユーザー情報
- createdTime(optional): string
フォルダが作成された日付
- description(optional): string
フォルダの説明。
- id(optional): string
フォルダのグローバル一意識別子(GUID)。
- modifiedBy(optional): object User
ユーザー情報
- modifiedTime(optional): string
フォルダが最終的に更新された日付
- name(optional): string
フォルダ名。
- ownedBy(optional): object User
ユーザー情報
- parentID(optional): string
親フォルダのグローバル一意識別子(GUID)。 親フォルダがユーザーのホーム・フォルダの場合、
parentIDの値はselfです。 - size(optional): string
含まれるファイルとフォルダをすべて含めたフォルダのサイズ(バイト単位)
- type(optional): string
アイテム・タイプ
folder。
object- displayName(optional): string
ユーザーの表示名
- id(optional): string
ユーザーのグローバル一意識別子(GUID)。
- loginName(optional): string
ユーザーのログイン名。
- type(optional): string
アイテム・タイプ
user。
{
"id":"FB4CD874EF94CD2CC1B60B72T0000000000100000001",
"parentID":"FF4729683CD68C1AFB1AE87DT0000000000100000001",
"name":"restFolder",
"description":"rest folder",
"type":"folder",
"size":"0",
"childItemsCount":"0",
"createdTime":"2014-02-21T20:56:07Z",
"modifiedTime":"2014-02-21T20:59:57Z",
"createdBy":{
"displayName":"User AA",
"id":"U0EAA20910FAF3052ACB79E4T00000000001",
"loginName":"userAALoginName",
"type":"user"
},
"ownedBy":{
"displayName":"User AA",
"id":"U0EAA20910FAF3052ACB79E4T00000000001",
"loginName":"userAALoginName",
"type":"user"
},
"modifiedBy":{
"displayName":"User AA",
"id":"U0EAA20910FAF3052ACB79E4T00000000001",
"loginName":"userAALoginName",
"type":"user"
},
"errorCode":"0"
}
400レスポンス
リクエスト・パラメータが正しい形式ではありません。
403レスポンス
ユーザーに書込み権限がない場合は禁止されています。
404レスポンス
フォルダIDが見つかりません。
例
次の例では、新規フォルダを作成します。
POST .../folders/FF4729683CD68C1AFB1AE87DT0000000000100000001
リクエスト・ヘッダー
なし。
リクエスト本文
{
"name": "restFolder",
"description": "rest folder"
}
JSONレスポンス
{
"childItemsCount": "0",
"createdBy": {
"displayName": "User AA",
"loginName": "userAALoginName",
"id": "U0EAA20910FAF3052ACB79E4T00000000001",
"type": "user"
},
"createdTime": "2014-02-21T20:54:50Z",
"description": "rest folder",
"errorCode": "0",
"id": "FB4CD874EF94CD2CC1B60B72T0000000000100000001",
"modifiedBy": {
"displayName": "User AA",
"loginName": "userAALoginName",
"id": "U0EAA20910FAF3052ACB79E4T00000000001",
"type": "user"
},
"modifiedTime": "2014-02-21T20:54:50Z",
"name": "restFolder",
"ownedBy": "{
"displayName": "User AA",
"loginName": "userAALoginName",
"id": "U0EAA20910FAF3052ACB79E4T00000000001",
"type": "user"
},
"parentID": "FF4729683CD68C1AFB1AE87DT0000000000100000001",
"type": "folder"
}
例2
次の例では、新規フォルダを作成します。 このフォルダは現在のユーザーに所有または共有されていないフォルダ構造にあるため、この例では、パブリック・リンクIDを使用します。
POST .../folders/FF4729683CD68C1AFB1AE87DT0000000000100000001
リクエスト・ヘッダー
LinkID: LF8D36FAFAB4388BECEAC4AEB5D17B95F47087F4E518
リクエスト本文
{
"name": "UserBBFolder",
"description": "User BB folder created via public link"
}
HTTPステータス・コード
HTTP_STATUS = 201
JSONレスポンス
{
"childItemsCount": "0",
"createdBy": {
"displayName": "User BB",
"loginName": "userBBLoginName",
"id": "U6A0B35B0548F250914D18FDB5D17B95F470",
"type": "user"
},
"createdTime": "2016-06-30T23:34:21Z",
"description": "User BB folder created via public link",
"errorCode": "0",
"id": "F81175D40FF57F19884AED0CB5D17B95F47087F4E518",
"modifiedBy": {
"displayName": "User BB",
"loginName": "userBBLoginName",
"id": "U6A0B35B0548F250914D18FDB5D17B95F470",
"type": "user"
},
"modifiedTime": "2016-06-30T23:34:21Z",
"name": "UserBBFolder",
"ownedBy": {
"displayName": "User AA",
"loginName": "userAALoginName",
"id": "UEB6AD431E4357AE752CE3F2B5D17B95F470",
"type": "user"
},
"parentID": "FF4729683CD68C1AFB1AE87DT0000000000100000001",
"type": "folder"
}
例3
次の例では、新規フォルダを作成します。 このフォルダは現在のユーザーに所有または共有されていないフォルダ構造にあるため、この例では、アクセス・コードで保護されているパブリック・リンクIDを使用します。 アクセス・コード( test12345)は、リクエスト・ヘッダーのCookieの一部として発行されます
POST .../folders/FF4729683CD68C1AFB1AE87DT0000000000100000001
リクエスト・ヘッダー
LinkID: LF8D36FAFAB4388BECEAC4AEB5D17B95F47087F4E518 Cookie: dAccessCode-LF8D36FAFAB4388BECEAC4AEB5D17B95F47087F4E518=test12345
リクエスト本文
{
"name": "UserBBFolder",
"description": "User BB folder created via public link"
}
HTTPステータス・コード
HTTP_STATUS = 201
JSONレスポンス
{
"childItemsCount": "0",
"createdBy": {
"displayName": "User BB",
"loginName": "userBBLoginName",
"id": "U6A0B35B0548F250914D18FDB5D17B95F470",
"type": "user"
},
"createdTime": "2016-06-30T23:34:21Z",
"description": "User BB folder created via public link",
"errorCode": "0",
"id": "F81175D40FF57F19884AED0CB5D17B95F47087F4E518",
"modifiedBy": {
"displayName": "User BB",
"loginName": "userBBLoginName",
"id": "U6A0B35B0548F250914D18FDB5D17B95F470",
"type": "user"
},
"modifiedTime": "2016-06-30T23:34:21Z",
"name": "UserBBFolder",
"ownedBy": {
"displayName": "User AA",
"loginName": "userAALoginName",
"id": "UEB6AD431E4357AE752CE3F2B5D17B95F470",
"type": "user"
},
"parentID": "FF4729683CD68C1AFB1AE87DT0000000000100000001",
"type": "folder"
}
例4
次の例では、新しいフォルダの作成をリクエストします。 このフォルダは現在のユーザーに所有または共有されていないフォルダ構造にあるため、アクセス拒否エラー・メッセージが返されます。
POST .../folders/FF4729683CD68C1AFB1AE87DT0000000000100000001
リクエスト・ヘッダー
なし。
リクエスト本文
{
"name": "UserBBFolder",
"description": "User BB folder created via public link"
}
HTTPステータス・コード
HTTP_STATUS = 403
JSONレスポンス
{
"description": "User BB folder created via public link",
"errorCode": "-20",
"errorKey": "!csFldUnableToCreateFolder!csCloudItemInsufficientPrivileges,User BB,fFolderGUID:FF4729683CD68C1AFB1AE87DT0000000000100000001,FLD_CREATE_FOLDER",
"errorMessage": "Unable to create folder. User 'User BB' has insufficient privilege to access fFolderGUID:FF4729683CD68C1AFB1AE87DT0000000000100000001 with service FLD_CREATE_FOLDER.",
"errorType": "folder",
"name": "UserBBFolder",
"parentID": "FF4729683CD68C1AFB1AE87DT0000000000100000001",
"title": "Unable to create folder. User 'User BB' has insufficient privilege to access fFolderGUID:FF4729683CD68C1AFB1AE87DT0000000000100000001 with service FLD_CREATE_FOLDER.",
"type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}
例5
次の例では、新しいフォルダの作成をリクエストします。 このフォルダは現在のユーザーに所有または共有されていないフォルダ構造にあります。また、アクセス・コードで保護されているパブリック・リンクのみを使用可能です。 アクセス・コードがリクエストの一部として送信されなかったため、エラーが返されます。
POST .../folders/FF4729683CD68C1AFB1AE87DT0000000000100000001
リクエスト・ヘッダー
LinkID: LF8D36FAFAB4388BECEAC4AEB5D17B95F47087F4E518
リクエスト本文
{
"name": "UserBBFolder",
"description": "User BB folder created via public link"
}
HTTPステータス・コード
HTTP_STATUS = 403
JSONレスポンス
{
"description": "User BB folder created via public link",
"errorCode": "-18",
"errorKey": "!csFldUnableToCreateFolder!csAccessCodeRequiredForLinkAccess",
"errorMessage": "Unable to create folder. The access code must be provided to access the link.",
"errorType": "folder",
"name": "UserBBFolder",
"parentID": "FF4729683CD68C1AFB1AE87DT0000000000100000001",
"title": "Unable to create folder. The access code must be provided to access the link.",
"type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}
例6
次の例では、新規フォルダを作成します。 現在のユーザーが所有していない、または共有していないフォルダ構造の下にあるため、この例ではapplinkを使用しています。 applink IDとアクセス・トークンはリクエスト・ヘッダーに送信されます。
POST .../folders/FAD7A87F0613A0CBDD4DA521B5D17B95F47087F4E518
リクエスト・ヘッダー
appLinkID: LF5Bxj4TPo_p4n4qWn0tbKTicR2cTUJKv7X_ng9E7ry93rRuDokPqS1d6-wKwhb_wtcGYFDsI_cNMxeKQ-HR-FXQhiVoGRTYM_MPZY8qpICfYU94mmnMjM_cvsRhKMzc0NJgvwEJfqqDwPsAVrhc8cmg== accessToken: 352FpiMmW66PeYI1Gh5b83I9CXRwZhLfYAu4TXdqpzD8uNKUBMZVVJ3ZvivUW8kQ
リクエスト本文
{
"name": "subFolderTestByUserB",
"description": "subFolderTestByUserB CONTRIBUTOR applink"
}
HTTPステータス・コード
HTTP_STATUS = 201
JSONレスポンス
{
"childItemsCount": "0",
"createdBy": {
"displayName": "User BB",
"id": "U5083EA1954687218BA6C3D9B5D17B95F470",
"loginName": "U5083EA1954687218BA6C3D9B5D17B95F470",
"type": "user"
},
"createdTime": "2017-06-15T21:08:54Z",
"description": "subFolderTestByUserB CONTRIBUTOR applink",
"errorCode": "0",
"id": "F4927423081AA3C261E1D45AB5D17B95F47087F4E518",
"modifiedBy": {
"displayName": "User BB",
"id": "U5083EA1954687218BA6C3D9B5D17B95F470",
"loginName": "U5083EA1954687218BA6C3D9B5D17B95F470",
"type": "user"
},
"modifiedTime": "2017-06-15T21:08:54Z",
"name": "subFolderTestByUserB",
"ownedBy": {
"displayName": "User AA",
"id": "UEB6AD431E4357AE752CE3F2B5D17B95F470",
"loginName": "userAALoginName",
"type": "user"
},
"parentID": "FAD7A87F0613A0CBDD4DA521B5D17B95F47087F4E518",
"type": "folder"
}