機械翻訳について

ファイル・アップロード

post

/documents/api/1.2/files/data

アップロード先とファイル情報を指定するマルチパート・リクエストを使用して、新しいファイルをアップロードします。

ノート:

ファイル名は大文字/小文字が区別されません。すなわち、File_Namefile_nameは同じであるとみなされます。 特定のフォルダ内で、2つのファイルに同じ名前を指定することはできません。

デフォルトでは、同じ名前のファイルがターゲット宛先に存在する場合、アップロードされたファイルが新規リビジョンとして既存のファイルを置き換えます。

リクエストはマルチパートのHTTPリクエストであり、一方のパートがparentIDありのJSONオブジェクト(jsonInputParameters)で、もう一方のパートがファイル自体の内容(primaryFile)です。 別のJSONオブジェクト(metadataValues)を使用してメタデータ値を設定することもできます。

リクエスト

サポートされるメディア・タイプ
ヘッダー・パラメータ
  • 現在のユーザーに親フォルダへのアクセスを許可するApplinkアクセス・トークン。 このパラメータは、appLinkIDが使用されている場合は必須です。 これはaccessTokenまたはAccessTokenとして使用できます。

  • 現在のユーザーに親フォルダへのアクセスを許可するApplink ID。 パラメータappLinkIDが使用されるときはいつでも、パラメータaccessTokenも提供されなければなりません。 働くには、このapplinkは、少なくともコントリビュータ・ロールが付与されていなければなりません。 appLinkIDまたはAppLinkIDとして使用できます。

  • 保護されたパブリック・リンクを使用するために必要なアクセス・コード。 次の形式のCookieヘッダーの一部として送信する必要があります: dAccessCode-<linkID>=<passcodeValue>

  • 現在のユーザーにこのファイルへのアクセスを許可する、パブリック・リンクのパブリック・リンクID。 機能させるには、このパブリック・リンクにコントリビュータ・ロールが付与されている必要があります。 linkIDまたはLinkIDとして使用できます。

フォーム・パラメータ
  • このパラメータを使用して、parentIDパラメータとduplicateResolutionパラメータをJSONペイロードとしてリクエストに含めることができます。 このパラメータは、primaryFileパラメータの前にする必要があります。

    parentIDを、ファイルをアップロードするフォルダのグローバル一意識別子(GUID)に設定します。

    parentIDパラメータは、このJSONペイロードの一部として送信する必要があります。 このパラメータは必須です。

    たとえば:

    {

    "parentID": "FB4CD874EF94CD2CC1B60B72T"

    }

    また、重複するファイル名との競合を解決するために、duplicateResolutionTimeStampSuffixに設定できます。

    duplicateResolutionパラメータは、このJSONペイロードの一部として送信できます。 このパラメータは省略可能です。

    たとえば:

    {

    "parentID": "FB4CD874EF94CD2CC1B60B72T",

    "duplicateResolution": "TimeStampSuffix"

    }

  • このパラメータを使用して、メタデータ値を、すでに親フォルダに割り当てられているコレクションに設定できます。 ルールは、設定メタデータ値REST APIに適用されるルールと同じです。 Content-Type: application/jsonを使用して、この情報をJSONオブジェクトとして示します。

    たとえば:

    {

    "collection": "CollectionA",

    "fieldA": "valueA",

    "fieldB": "valueB",

    "fieldC": "valueC"

    }
  • アップロードするファイル。 これは、jsonInputParametersパラメータの後にする必要があります。
トップに戻る

レスポンス

サポートされるメディア・タイプ

201レスポンス

作成されました。 リクエストが処理され、新規のリソースが作成されました。
ヘッダー
  • 新規作成されたリソースのURIは、Locationヘッダーフィールドにあります。
本文 ()
ルート・スキーマ: FileUploadResponse
タイプ: object
レスポンス本文には、ファイルに関する情報が含まれます。
ソースを表示
すべてに一致
ソースを表示
ネストされたスキーマ: FileDefinition
タイプ: object
ファイル情報
ソースを表示
ネストされたスキーマ: User
タイプ: object
ユーザー情報
ソースを表示
レスポンスの例(application/json)
{
    "id":"DB1C5AF480FFE61C588027A8T0000000000100000001",
    "parentID":"FF4729683CD68C1AFB1AE87DT0000000000100000001",
    "name":"example.txt",
    "type":"file",
    "size":"13",
    "version":"1",
    "createdTime":"2014-02-21T21:32:37Z",
    "modifiedTime":"2014-02-21T21:32:37Z",
    "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",
    "errorMessage":"Successfully checked in content item 'ADC412030000000000000000000002'."
}

400レスポンス

リクエスト・パラメータが正しい形式ではありません。

403レスポンス

ユーザーに書込み権限がない場合は禁止されています。

404レスポンス

フォルダIDが見つかりません。
トップに戻る

次の例では、マルチパート・リクエストを使用して新しいファイルをアップロードします。

POST .../files/data

リクエスト・ヘッダー

このリクエストは、次の一般形式の境界デリミタを指定したマルチパート・リクエストです。

Content-Type: multipart/form-data; boundary=---1234567890

リクエスト本文

-----1234567890
Content-Disposition: form-data; name="parameters"
Content-Type: application/json

{
"parentID":"FB4CD874EF94CD2CC1B60B72T0000000000100000001"
}
-----1234567890
Content-Disposition: form-data; name="primaryFile"; filename="example.txt"
Content-Type: text/plain
 
<File Content>
-----1234567890--

代替リクエスト本文の例を次に示します。

-----1234567890
Content-Disposition: form-data; name="jsonInputParameters"

{
"parentID":"FB4CD874EF94CD2CC1B60B72T0000000000100000001"
}
-----1234567890
Content-Disposition: form-data; name="primaryFile"; filename="example.txt"
Content-Type: text/plain

<File Content>
-----1234567890--

HTTPステータス・コード

HTTP_STATUS = 200

JSONレスポンス

{
    "createdBy": {
        "displayName": "User AA",
        "loginName": "userAALoginName",
        "id": "U0EAA20910FAF3052ACB79E4T00000000001",
        "type": "user"
    },
    "createdTime": "2014-02-21T21:11:24Z",
    "errorCode": "0",
    "errorMessage": "Successfully checked in content item 'ADC412030000000000000000000002'.",
    "id": "D34A657B8723A96097F80926T0000000000100000001",
    "modifiedBy": {
        "displayName": "User AA",
        "loginName": "userAALoginName",
        "id": "U0EAA20910FAF3052ACB79E4T00000000001",
        "type": "user"
    },
    "modifiedTime": "2014-02-21T21:11:24Z",
    "name": "example.txt",
    "ownedBy": {
        "displayName": "User AA",
        "loginName": "userAALoginName",
        "id": "U0EAA20910FAF3052ACB79E4T00000000001",
        "type": "user"
    },
    "parentID": "FB4CD874EF94CD2CC1B60B72T0000000000100000001",
    "size": "13",
    "type": "file",
    "version": "1"
}

例2

次の例では、マルチパート・リクエストを使用して新しいファイルをアップロードします。 このファイルは現在のユーザーに所有または共有されていないフォルダ構造にあるため、この例では、パブリック・リンクIDを使用します。

POST .../files/data

リクエスト・ヘッダー

Content-Type: multipart/form-data; boundary=---------------------------7dc7c172076a
LinkID: LF8D36FAFAB4388BECEAC4AEB5D17B95F47087F4E518

リクエスト本文

-----------------------------7dc7c172076a
Content-Disposition: form-data; name="parameters"
Content-Type: application/json

{
"parentID":"F4AB9FC75860ECB429D36BA2B5D17B95F47087F4E518"
}
-----------------------------7dc7c172076a
Content-Disposition: form-data; name="primaryFile"; filename="idcTestNewFileREST.txt"
Content-Type: text/plain

This is idcTestNewFileREST.txt v1
-----------------------------7dc7c172076a--

HTTPステータス・コード

HTTP_STATUS = 201

JSONレスポンス

{
    "createdBy": {
        "displayName": "User BB",
        "loginName": "userBBLoginName",
        "id": "U6A0B35B0548F250914D18FDB5D17B95F470",
        "type": "user"
    },
    "createdTime": "2016-06-30T20:09:54Z",
    "errorCode": "0",
    "errorKey": "!csServiceStatusMessage_checkin,SOMETHING00004370530000000801",
    "errorMessage": "Successfully checked in content item 'SOMETHING00004370530000000801'.",
    "id": "D34BA589F6ACC07B6EA371C7B5D17B95F47087F4E518",
    "mimeType": "text/plain",
    "modifiedBy": {
        "displayName": "User BB",
        "loginName": "userBBLoginName",
        "id": "U6A0B35B0548F250914D18FDB5D17B95F470",
        "type": "user"
    },
    "modifiedTime": "2016-06-30T20:09:54Z",
    "name": "idcTestNewFileREST.txt",
    "ownedBy": {
        "displayName": "User AA",
        "loginName": "userAALoginName",
        "id": "UEB6AD431E4357AE752CE3F2B5D17B95F470",
        "type": "user"
    },
    "parentID": "F4AB9FC75860ECB429D36BA2B5D17B95F47087F4E518",
    "size": "33",
    "type": "file",
    "version": "1"
}

例3

次の例では、マルチパート・リクエストを使用して新しいファイルをアップロードします。 このファイルは現在のユーザーに所有または共有されていないフォルダ構造にあるため、この例では、アクセス・コードで保護されているパブリック・リンクIDを使用します。 アクセス・コード( test12345)は、Cookieの一部としてリクエスト・ヘッダーに発行されます。

POST .../files/data

リクエスト・ヘッダー

Content-Type: multipart/form-data; boundary=---------------------------7dc7c172076a
LinkID: LF8D36FAFAB4388BECEAC4AEB5D17B95F47087F4E518
Cookie: dAccessCode-LF8D36FAFAB4388BECEAC4AEB5D17B95F47087F4E518=test12345

リクエスト本文

-----------------------------7dc7c172076a
Content-Disposition: form-data; name="parameters"
Content-Type: application/json

{
"parentID":"F4AB9FC75860ECB429D36BA2B5D17B95F47087F4E518"
}
-----------------------------7dc7c172076a
Content-Disposition: form-data; name="primaryFile"; filename="idcTestNewFileREST.txt"
Content-Type: text/plain

This is idcTestNewFileREST.txt v1
-----------------------------7dc7c172076a--

HTTPステータス・コード

HTTP_STATUS = 201

JSONレスポンス

{
    "createdBy": {
        "displayName": "User BB",
        "loginName": "userBBLoginName",
        "id": "U6A0B35B0548F250914D18FDB5D17B95F470",
        "type": "user"
    },
    "createdTime": "2016-06-30T20:09:54Z",
    "errorCode": "0",
    "errorKey": "!csServiceStatusMessage_checkin,SOMETHING00004370530000000801",
    "errorMessage": "Successfully checked in content item 'SOMETHING00004370530000000801'.",
    "id": "D34BA589F6ACC07B6EA371C7B5D17B95F47087F4E518",
    "mimeType": "text/plain",
    "modifiedBy": {
        "displayName": "User BB",
        "loginName": "userBBLoginName",
        "id": "U6A0B35B0548F250914D18FDB5D17B95F470",
        "type": "user"
    },
    "modifiedTime": "2016-06-30T20:09:54Z",
    "name": "idcTestNewFileREST.txt",
    "ownedBy": {
        "displayName": "User AA",
        "loginName": "userAALoginName",
        "id": "UEB6AD431E4357AE752CE3F2B5D17B95F470",
        "type": "user"
    },
    "parentID": "F4AB9FC75860ECB429D36BA2B5D17B95F47087F4E518",
    "size": "33",
    "type": "file",
    "version": "1"
}

例4

次の例では、マルチパート・リクエストを使用して、新しいファイルのアップロードをリクエストします。 このファイルは現在のユーザーに所有または共有されていないフォルダ構造にあるため、アクセス拒否エラー・メッセージが返されます。

POST .../files/data

リクエスト・ヘッダー

Content-Type: multipart/form-data; boundary=---------------------------7dc7c172076a

リクエスト本文

-----------------------------7dc7c172076a
Content-Disposition: form-data; name="parameters"
Content-Type: application/json

{
"parentID":"F4AB9FC75860ECB429D36BA2B5D17B95F47087F4E518"
}
-----------------------------7dc7c172076a
Content-Disposition: form-data; name="primaryFile"; filename="idcTestNewFileREST.txt"
Content-Type: text/plain

This is idcTestNewFileREST.txt v1
-----------------------------7dc7c172076a--

HTTPステータス・コード

HTTP_STATUS = 403

JSONレスポンス

{
    "errorCode": "-20",
    "errorKey": "!csUnableToCheckIn,idcTestNewFileREST.txt!csCloudItemInsufficientPrivileges,User BB,fFolderGUID:F4AB9FC75860ECB429D36BA2B5D17B95F47087F4E518,CHECKIN_UNIVERSAL",
    "errorMessage": "Content item 'idcTestNewFileREST.txt' was not successfully checked in. User 'User BB' has insufficient privilege to access fFolderGUID:F4AB9FC75860ECB429D36BA2B5D17B95F47087F4E518 with service CHECKIN_UNIVERSAL.",
    "parentID": "F4AB9FC75860ECB429D36BA2B5D17B95F47087F4E518",
    "title": "Content item 'idcTestNewFileREST.txt' was not successfully checked in. User 'User BB' has insufficient privilege to access fFolderGUID:F4AB9FC75860ECB429D36BA2B5D17B95F47087F4E518 with service CHECKIN_UNIVERSAL.",
    "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}

例5

次の例では、マルチパート・リクエストを使用して、新しいファイルのアップロードをリクエストします。 このファイルは現在のユーザーに所有または共有されていないフォルダ構造にあります。また、アクセス・コードで保護されているパブリック・リンクのみを使用可能です。 アクセス・コードがリクエストの一部として送信されなかったため、エラーが返されます。

POST .../files/data

リクエスト・ヘッダー

Content-Type: multipart/form-data; boundary=---------------------------7dc7c172076a
LinkID: LF8D36FAFAB4388BECEAC4AEB5D17B95F47087F4E518

リクエスト本文

-----------------------------7dc7c172076a
Content-Disposition: form-data; name="parameters"
Content-Type: application/json

{
"parentID":"F4AB9FC75860ECB429D36BA2B5D17B95F47087F4E518"
}
-----------------------------7dc7c172076a
Content-Disposition: form-data; name="primaryFile"; filename="idcTestNewFileREST.txt"
Content-Type: text/plain

This is idcTestNewFileREST.txt v1
-----------------------------7dc7c172076a--

HTTPステータス・コード

HTTP_STATUS = 403

JSONレスポンス

{
    "errorCode": "-18",
    "errorKey": "!csUnableToCheckIn,idcTestNewFileREST.txt!csAccessCodeRequiredForLinkAccess",
    "errorMessage": "Content item 'idcTestNewFileREST.txt' was not successfully checked in. The access code must be provided to access the link.",
    "parentID": "F4AB9FC75860ECB429D36BA2B5D17B95F47087F4E518",
    "title": "Content item 'idcTestNewFileREST.txt' was not successfully checked in. The access code must be provided to access the link.",
    "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}

例6

次の例では、マルチパート・リクエストを使用して新しいファイルをアップロードします。 この例では、グローバル・コレクションCollectionAのメタデータ値も設定します。

POST .../files/data

リクエスト・ヘッダー

Content-Type: multipart/form-data; boundary=---------------------------7dc7c172076a

リクエスト本文

-----------------------------7dc7c172076a
Content-Disposition: form-data; name="jsonInputParameters"

{
    "parentID":"F79B040D5393DAC0F3511BBAB5D17B95F47087F4E518"
}
-----------------------------7dc7c172076a
Content-Disposition: form-data; name="primaryFile"; filename="fileWithMetadata.txt"
Content-Type: text/plain

This is a file containing metadata values.
-----------------------------7dc7c172076a
Content-Disposition: form-data; name="metadataValues"
Content-Type: application/json

{
    "collection": "CollectionA",
    "fieldA": "valueA",
    "fieldB": "valueB",
    "fieldC": "valueC"
}
-----------------------------7dc7c172076a--

HTTPステータス・コード

HTTP_STATUS = 201

JSONレスポンス

{
    "createdBy": {
        "displayName": "User AA",
        "loginName": "userAALoginName",
        "id": "UEB6AD431E4357AE752CE3F2B5D17B95F470",
        "type": "user"
    },
    "createdTime": "2016-07-13T19:47:23Z",
    "errorCode": "0",
    "errorKey": "!csServiceStatusMessage_checkin,SOMETHING00004370530000001200",
    "errorMessage": "Successfully checked in content item 'SOMETHING00004370530000001200'.",
    "id": "D4100E975A8096829C9CCB06B5D17B95F47087F4E518",
    "metadata": {
        "CollectionA": {
            "fieldA": "valueA",
            "fieldB": "valueB",
            "fieldC": "valueC"
        }
    },
    "mimeType": "text/plain",
    "modifiedBy": {
        "displayName": "User AA",
        "loginName": "userAALoginName",
        "id": "UEB6AD431E4357AE752CE3F2B5D17B95F470",
        "type": "user"
    },
    "modifiedTime": "2016-07-13T19:47:23Z",
    "name": "fileWithMetadata.txt",
    "ownedBy": {
        "displayName": "User AA",
        "loginName": "userAALoginName",
        "id": "UEB6AD431E4357AE752CE3F2B5D17B95F470",
        "type": "user"
    },
    "parentID": "F79B040D5393DAC0F3511BBAB5D17B95F47087F4E518",
    "size": "42",
    "type": "file",
    "version": "1"
}

例7

次の例では、マルチパート・リクエストを使用して新しいファイルをアップロードします。 このファイルは、現在のユーザーが所有していない、または共有していないフォルダ構造の下にあるため、この例ではapplinkを使用しています。 applink IDとアクセス・トークンはリクエスト・ヘッダーに送信されます。

POST .../files/data

リクエスト・ヘッダー

Content-Type: multipart/form-data; boundary=---------------------------7dc7c172076a
appLinkID: LF5Bxj4TPo_p4n4qWn0tbKTicR2cTUJKv7X_ng9E7ry93rRuDokPqS1d6-wKwhb_wtcGYFDsI_cNMxeKQ-HR-FXQhiVoGRTYM_MPZY8qpICfYU94mmnMjM_cvsRhKMzc0NJgvwEJfqqDwPsAVrhc8cmg==
accessToken: 352FpiMmW66PeYI1Gh5b83I9CXRwZhLfYAu4TXdqpzD8uNKUBMZVVJ3ZvivUW8kQ

リクエスト本文

-----------------------------7dc7c172076a
Content-Disposition: form-data; name="parameters"
Content-Type: application/json

{
    "parentID":"FDC22B65E850730CAA60AF83B5D17B95F47087F4E518"
}
-----------------------------7dc7c172076a
Content-Disposition: form-data; name="primaryFile"; filename="fileViaApplink.txt"
Content-Type: text/plain

This is fileViaApplink.txt v1
-----------------------------7dc7c172076a--

HTTPステータス・コード

HTTP_STATUS = 201

JSONレスポンス

{
    "createdBy": {
        "displayName": "User BB",
        "id": "U5083EA1954687218BA6C3D9B5D17B95F470",
        "loginName": "U5083EA1954687218BA6C3D9B5D17B95F470",
        "type": "user"
    },
    "createdTime": "2017-06-26T15:29:00Z",
    "errorCode": "0",
    "errorKey": "!csServiceStatusMessage_checkin,SOMETHING00004370530000007006",
    "errorMessage": "Successfully checked in content item 'SOMETHING00004370530000007006'.",
    "id": "DED694950C14AFF280419F9AB5D17B95F47087F4E518",
    "mimeType": "text/plain",
    "modifiedBy": {
        "displayName": "User BB",
        "id": "U5083EA1954687218BA6C3D9B5D17B95F470",
        "loginName": "U5083EA1954687218BA6C3D9B5D17B95F470",
        "type": "user"
    },
    "modifiedTime": "2017-06-26T15:29:00Z",
    "name": "fileViaApplink.txt",
    "ownedBy": {
        "displayName": "User AA",
        "id": "UEB6AD431E4357AE752CE3F2B5D17B95F470",
        "loginName": "userAALoginName",
        "type": "user"
    },
    "parentID": "FDC22B65E850730CAA60AF83B5D17B95F47087F4E518",
    "size": "29",
    "type": "file",
    "version": "1"
}
先頭に戻る