1. アップロードAPI

アップロードAPI (V1)

日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

アップロードAPIを使用すると、Sitecore Content Hub Web UI以外のクライアントからアップロードできます。例えば、Creative CloudのSitecore Connectを使用できます。

メモ

このバージョンのアップロードAPIは廃止され、Creative CloudコネクタのSitecore Connectでのみ使用されるようになりました。

アップロードAPIは、次のエンドポイントを公開します。

  • api/v1.0/upload: アップロードURLをリクエストします。

  • api/v1.0/upload/assets: すでにアップロードされているファイルから新しいアセットをアップロード (作成) します。

  • api/v1.0/upload/assets/{id}: 既存のアセットのマスターファイルをアップロードします。

  • api/v1.0/upload/assets/{id}/alternative: 既存のアセットの代替ファイルをアップロードします。

完全なアップロード フローは、次の3つの手順で構成されます。

  1. アップロードURLをリクエストする

  2. 受信したURLにファイルをアップロードする

  3. 新しいアセットをアップロードまたは作成するか、既存のアセットをマスターファイルまたは代替ファイルで更新します

アップロードURLをリクエストする

アップロードURLを取得するには、エンドポイントapi/v1.0/uploadPOSTリクエストを送信します。

リクエストフォームの本文には、次のフィールドが含まれている必要があります。

  • fileName - アップロードするファイルの名前。

  • fileSize - アップロードするファイルのサイズ。

応答が成功すると、locationヘッダーのアップロードURLと、次のように構造化された情報を含むJSON本文が返されます。

{
  "fileIdentifier": "azr123grz3",
  "storageIdentifier": "weu"
}
  • fileIdentifierは、システム内のファイルの識別子を表します。

  • storageIdentifierは、ファイルが保存されている場所を表します。nullにすることも、JSONに存在しないこともあります。

アップロードURLはAzureストレージBLOBを指しています。

受信したURLにファイルをアップロードする

受信したアップロードURLは、AzureストレージBLOBへのパブリックURLであるため、Azure BLOBサービスREST APIを使用してファイルをアップロードできます。

アップロードを実行するには、次の必須ヘッダーを含むPUTリクエストをアップロードURLに送信します。

  • x-ms-blob-type: Azureは、値がBlockBlobであると想定しています。

  • x-ms-blob-content-type: ファイルのcontent-type

  • x-ms-meta-Filename: ファイルのname

大きなファイルをAzure Blob Storageにアップロードする

ファイルが200 MBを超える場合は、ファイルを分割し、クエリ文字列パラメーターを使用してアップロードURLを拡張して、各ブロックを個別にAzureに送信しますcomp=block&blockid={blockid}

  • blockidは、ブロックを識別するための有効なBase64文字列値です。

  • 特定のBLOBでは、指定されたblockid値の長さは、各ブロックで同じサイズである必要があります。

すべてのブロックが送信されたら、アップロードURLに別のリクエストを送信して、アップロードが完了したこと、およびすべてのブロックをまとめる必要があることを通知します。

  • アップロードURLをクエリ文字列パラメーター comp=blocklistで拡張します。

  • リクエストの本文はXML形式である必要があり、blockidを使用してブロックをロードする順序を指定する必要があります。

次のコード スニペットは、blockidを使用してブロックを読み込む方法を示しています。

<?xml version="1.0" encoding="utf-8"?>  
<BlockList>  
  <Latest>AAAAAA==</Latest>  
  <Latest>AQAAAA==</Latest>  
  <Latest>AZAAAA==</Latest>  
</BlockList>

この最終リクエストには、次のヘッダーが必要です。

  • x-ms-blob-content-type: ファイルのcontent-type

  • x-ms-meta-Filename: ファイルの特定のname

手記

詳細については、Azureのputブロック のドキュメントを参照してください。さらに、JavaScript Azure SDKを使用して、前述のアクションを実行できます。

新しいアセットをアップロードまたは作成するか、既存のアセットをマスターファイルまたは代替ファイルで更新します

アップロードしたファイルから新しいアセットを作成するには、api/v1.0/upload/assetsPOSTリクエストを送信します。

既存のアセットのマスターファイルをアップロードするには、アセットのIDを使用してPOSTリクエストをapi/v1.0/upload/assets/{id} に送信します。

既存のアセットの代替ファイルをアップロードするには、アセットのIDを使用してapi/v1.0/upload/assets/{id}/alternativePOSTリクエストを送信します。

大事な

いずれの場合も、要求本文には、以前に受信したJSONコンテンツが含まれている必要があります。

アップロードは、アップロード設定を使用して処理されます。アップロード設定には、次のものが含まれます。

  • maximum allowed file sizeは、アップロードできるファイルのサイズを制限します。

  • disallowed extensionsは、アップロードが許可されていないファイル拡張子を定義します。

  • DefaultUploadConfigurationは、デフォルトの設定を定義します。

手記

スーパーユーザーは、ApiUploadConfigurationsettingを使用して、リポジトリと作成されたアセットのライフサイクルのアップロード設定を上書きできます。この設定を変更するには、メニュー バーでManageをクリックし、ManageページでSettingsをクリックします。 PortalConfigurationApiUploadConfigurationsettingを選択します。

この記事を改善するための提案がある場合は、 お知らせください!