---
title: "テンプレートREST API"
slug: "template-rest-api"
abstract: "Sitecore PersonalizeテンプレートREST APIで使用されるオブジェクト属性を記述します。"
---
# テンプレートREST API

テンプレートREST APIは、ウェブテンプレートや意思決定テンプレートに対してCRUD操作を行うことを可能にします。オファーやオファーテンプレートはSitecore Personalize REST APIでは利用できません。 

テンプレートには以下の属性を使用します:

属性

種類

概要

例

name

ストリング

テンプレートの名前です。

"Alert bar template"

friendlyId

ストリング

テンプレートのユニークなIDです。  
  
小文字の英数字文字とアンダースコアのみが許可されています。

"alert\_bar\_template\_1"

type

文字列エヌム(大文字)

テンプレートの種類。

以下のいずれかでなければなりません:  
  

-   "WEB"
-   "DECISION"
-   "CONDITION"
-   "JS\_MODULE"

status

文字列エヌム(大文字)

テンプレートの現在の状況。

以下のいずれかでなければなりません:  
  

-   "DRAFT"
-   "PUBLISHED"

description

ストリング

そのつながりの説明。

"Alert bar web template"

render

ブール値

Sitecore Personalizeアプリでウェブテンプレートのプレビューをレンダリングするかどうかを決定します。  
  
ウェブテンプレートがレンダリングできると自信がある場合にのみ、これを true に設定してください。  
  
ハンドルバーループを使うより高度なウェブテンプレートでは、これを true に設定しないでください。

true, false

defaultTemplate

ブール値

これがデフォルトのテンプレートかどうかを判断します。  
  
テンプレートを作成する際は、この値を falseに設定しなければなりません。

false

customTemplate

ブール値

これがカスタムテンプレートかどうかを判断します。  
  
テンプレートを作成する際は、この値を trueに設定しなければなりません。

true

templateElements  
  
任意

JSON JSONオブジェクトの配列

テンプレートを定義するカスタムHTML、CSS、JavaScript、FreeMarkerコード。  
  
コードにはテンプレートパラメータを含めることができます。例えば ProductType | string。テンプレートパラメータはテンプレート変数の値に置き換えられます。例えば、 sneakersはテンプレートをレンダリングします。

"mys3cr3tstr1ingforauth1!x"

archived

ブール値

フロー定義のアーカイブステータス。

true, false

revisions

JSON JSONオブジェクトの配列

フロー定義の改訂版の配列。

"mys3cr3tstr1ingforauth1!x"

revision

整数

テンプレート改訂の連番番号。

2

オプションのオブジェクト配列templateElementsでは、テンプレート内にHTML、CSS、JavaScript、FreeMarkerのコードを組み込むことができます。 templateElementsのオブジェクトについては、以下の属性を使用します。

属性

種類

概要

例

id

文字列エナック(小文字)

template属性に含まれるコードの種類です。  
  
例えば、テンプレートにCSSコードを含めるには、この値を "css"に設定し、 template 属性でカスタムCSSコードを指定します。

以下のいずれかでなければなりません:  
  

-   "html"
-   "css"
-   "js"
-   "freemarker"

template

ストリング

ストリング化されたHTML、CSS、JavaScript、またはFreeMarkerコード。  
  
FreeMarkerコードでは、最低限開頭と閉じるカーリーブラケット {}を含める必要があります。

-   HTML: "<div id=\\"test\\">My test div</div>"
-   CSS: "#test {text-transform: uppercase}"
-   JavaScript: "insertHTMLBefore(\\"body\\");"
-   FreeMarker: "{}"

以下はtemplateElementsオブジェクト配列の例です:

"templateElements": 
 {
 "id": "html",
 "template": "<div id=\\"test\\">My test div</div>"
 },
 {
 "id": "css",
 "template": "#test {text-transform: uppercase}"
 },
 {
 "id": "js",
 "template": "insertHTMLBefore(\\"body\\");\\n\\nconst testDiv = document.querySelector(\\"#test\\");\\ntestDiv.insertAdjacentHTML(\\"afterbegin\\", \\"<p>Hello from JavaScript</p>\\")"
 },
 {
 "id": "freemarker",
 "template": "{}"
 }