HubSpotデベロッパー ファイル システム内で、ファイルを作成、取得、更新、または削除します。また、ファイルにエラーや警告がないかを検証できます。
environment
パラメーターとpath
パラメーターを使用します。このパラメーターは通常、エンドポイントパス自体に、例えば/cms/v3/source-code/{environment}/content/{path}
のように指定します。
environment
パラメーターは、各ファイルの未公開バージョンまたは公開バージョンのいずれを操作するかを示します。未公開のバージョンの場合はdraft
を使用します。公開中のバージョンの場合はpublished
を使用します。
published
へのアップロードはデザインマネージャー上で[公開]ボタンを押すことに相当する点に注意してください。そのため、draft
にある全ての内容が消去されます。path
パラメーターは、CMSデベロッパー ファイル システムでのファイルの位置を示します。UNIXベースのオペレーティングシステムとは異なり、最上位レベルのアセットの前に/
文字は付きません。新しいファイルをアップロードする際には、ファイルの作成先となる場所を指定する必要があります。既存のファイルを取得する、または既存のファイルに対する変更をアップロードする場合は、既存のファイルのパスに一致している必要があります。
全てのアセットタイプに、ローカルのファイル形式が使用されます。つまりアセットが、タイプによっては複数のファイルで構成されます。例えば、モジュールは実際には.module
サフィックスが末尾に付くディレクトリーとして表されます。このため、モジュールのHTMLを取得するには、foo.module/module.html
のようなパスを使用する必要があります。詳細については、ローカル開発のドキュメントを参照してください。
/cms/v3/source-code/{environment}/content/{path}
エンドポイントを使用してファイルをダウンロードできます。
このためには、application/octet-stream
コンテンツタイプを受け入れるHTTP GETリクエストを使用します。これにより、指定したパスの実際のバイナリーファイルの内容をダウンロードできます。
例:
/cms/v3/source-code/published/content/my-file.js
Accept: application/octet-stream
/cms/v3/source-code/{environment}/metadata/{path}
エンドポイントを使用することで、HubSpotアカウント上のファイルまたはフォルダーのメタデータ(パス、ファイル名、作成/更新時のタイムスタンプなど)を取得できます。
このためには、application/json
コンテンツタイプを受け入れるHTTP GETリクエストを使用します。これにより、そのファイルの関連メタデータを含むJSONオブジェクトを取得できます。
フォルダーのメタデータは、folder: true
プロパティーにより示されます。children
配列は、フォルダー内のファイルとサブフォルダーの名前を示します。これらのファイル名をフォルダーツリーの走査に使用します。1つのフォルダーのメタデータを取得し、そのフォルダーの子と全てのサブフォルダーを再帰的に取得します。
例:
/cms/v3/source-code/published/metadata/my-folder
Accept: application/json
/cms/v3/source-code/{environment}/content/{path}
エンドポイントを使用してローカルのファイルをアップロードできます。ファイルは、multipart/form-data
コンテンツタイプを指定したHTTP PUTリクエストによってアップロードする必要があります。バイナリー ファイル データをfile
という名前のフィールドとして含める必要があります。
例:
/cms/v3/source-code/published/content/my-new-file.html
Content-Type: multipart/form-dataフォームデータ:{ file: [バイナリー ファイル データ] }
/cms/v3/source-code/draft/content/path/to/existing-file.html
Content-Type: multipart/form-dataフォームデータ:{ file: [バイナリー ファイル データ] }
css
js
json
html
txt
md
jpg
jpeg
png
gif
map
svg
ttf
woff
woff2
/cms/v3/source-code/{environment}/validate/{path}
エンドポイントを使用して検証できます。
これは、テンプレート/モジュール、またはテーマまたはモジュールのJSON内のHubLの検証に使用できます。これにより、デザインマネージャーに表示される警告とエラーが示されます。
multipart/form-data
コンテンツタイプを指定したHTTP POSTリクエストによって送信する必要があります。バイナリー ファイル データをfile
という名前のフィールドとして含める必要があります。検証にエラーがあった場合、400
レスポンスと関連するエラーのリストが返されます。
例:
/cms/v3/source-code/published/validate/my-file.html
Content-Type: multipart/form-dataフォームデータ:{ file: \[バイナリー ファイル データ\] }
/cms/v3/source-code/{environment}/content/{path}
エンドポイント経由でHTTP DELETEリクエストを使用してファイルを削除できます。
published
(公開)環境から削除すると、ファイルは完全に削除されます。draft
(下書き)環境から削除すると、未公開の変更が消去されるだけです。公開ファイルを削除すると、使用されていたファイルが公開中のコンテンツに即座に影響を与えます。このため、ファイルに対する全ての参照を削除してから、ファイルを削除してください。
例:
/cms/v3/source-code/published/content/my-file.html
/cms/v3/source-code/extract/{path}
エンドポイント経由でHTTP POSTリクエストを使用してzipファイルを展開できます。
このpath
は、アカウントにアップロード済みのzipファイルである必要があります。展開プロセスは非同期で、圧縮ファイルの数とサイズに応じて最大で1分程度かかることがあります。zipの内容は、zipファイルが置かれているのと同じフォルダーに展開されます。展開が正常に完了しても、元のzipファイルは自動削除されません。
例:
/cms/v3/source-code/published/content/my-package.zip
Content-Type: multipart/form-dataフォームデータ:{ file: \[バイナリー ファイル データ\] }
/cms/v3/source-code/extract/my-package.zip