プロパティー

プロパティーは、CRMレコードに情報を格納するために使用します。HubSpotでは、CRMオブジェクトごとに既定のプロパティーのセットが用意されています。HubSpot上で、またはプロパティーAPIを使用して、独自のカスタムプロパティーを作成および管理することもできます。 

プロパティーを作成する際には、データの構築方法を考慮することが重要です。多くの場合、HubSpotの標準オブジェクト上にカスタムプロパティーを作成することで適切に対応できます。しかし場合によっては、独自のプロパティーを備えたカスタムオブジェクトを別途作成することが必要になります。

既定のプロパティー

CRMオブジェクトは、主な「タイプ」と「プロパティー」によって定義されます。タイプごとに標準のプロパティーがあり、名前と値のペアで表されます。 

オブジェクトごとの既定のプロパティーをご覧ください。

プロパティーグループ

プロパティーグループは、関連する複数のプロパティーをグループ化するために使用します。グループ化されたプロパティーは各HubSpotレコード上に隣接して表示されます。カスタムプロパティーを作成して連携を行う場合は、カスタムプロパティーのグループを活用することでデータの特定が容易になります。

プロパティーのtypeとfieldTypeの値

プロパティーの作成または更新の際には、typefieldTypeの両方の値が必要です。typeの値により、プロパティーの型、つまり文字列か数値かが決まります。fieldTypeプロパティーによって、プレーンテキストフィールド、ドロップダウンメニュー、日付入力など、HubSpotでのプロパティーの表示形式が決まります。

以下の表に、プロパティーの使用可能なtypeと、それに対応するfieldTypeの値を示します。

typeフィールドの有効な値と、それに対応するfieldTypeの値
type 説明 有効なfieldTypeの値
bool バイナリーオプション(YesまたはNoTrueまたはFalseなど)を格納するフィールド。 booleancheckboxcalculation_equation
enumeration 一連のオプションを表す文字列。各オプションはセミコロンで区切ります。 booleancheckbox、checkboxradioselectcalculation_equation
date 特定の年、月、日を表す値。値はUTC時間で表す必要があります。値の形式は、ISO 8601文字列またはミリ秒単位のエポック時間のタイムスタンプ(UTC深夜0時)にできます。 date
dateTime 特定の年、月、日、時刻を表す値。HubSpotアプリ上には時刻は表示されません。値はUTC時間で表す必要があります。値の形式は、ISO 8601文字列またはUNIXタイムスタンプ(ミリ秒単位)にできます。 date
string プレーンテキスト文字列。文字数の上限は65,536文字です。 filetexttextareacalculation_equationhtml
number 数値。小数の桁数は最大1つまで。 numbercalculation_equation

有効なfieldTypeの値

Fieldtype説明
booleancheckbox

ユーザーが「はい」または「いいえ」のいずれかを選択できる入力。フォーム内で使用する場合、1つのチェックボックスとして表示されます。

calculation_equation

他のプロパティー値や関連付けに基づいて値を計算できるカスタム式。

checkbox

プロパティー内で使用可能な選択肢の中からユーザーが複数選択できるチェックボックスのリスト。

date

日付値。日付入力として表示されます。

file

ファイルのフォームへのアップロードが可能。ファイルへのURLリンクとして格納および表示されます。

number

一連の数字。10進数または指数表記として記述。

radio

プロパティーで許容される選択肢の中からユーザーがいずれか1つを選択できる入力。フォーム内で使用する場合、一連のラジオボタンとして表示されます。

select

プロパティーで許容される選択肢の中からユーザーがいずれか1つを選択できるドロップダウンの入力。

text

プレーンテキスト文字列。単行テキスト入力として表示されます。

textarea

プレーンテキスト文字列。複数行テキスト入力として表示されます。

html

サニタイズ(エスケープ)されたHTMLとしてレンダリングされる文字列。プロパティーに対するリッチ テキスト エディターの使用が可能になります。

計算プロパティー

計算プロパティーは、同じオブジェクトレコード内の他のプロパティーに基づいてプロパティー値を定義します。計算プロパティーを定義するには、最小値、最大値、件数、合計、平均などを求める演算を含めた式を使用します。プロパティーAPIを使用すると、フィールドタイプとしてcalculation_equation、データ型としてnumberboolstring、またはenumerationを使用して、HubSpotアカウントで計算プロパティーを読み取ったり作成したりできます。

プロパティーの計算式は、calculationFormulaフィールドを使用して定義できます。

注:APIを使用して作成された計算プロパティーは、HubSpot内で編集することはできません。これらの計算プロパティーを編集するには、プロパティーAPIを使用する必要があります。

計算プロパティー構文

calculationFormulaを使用すると、算術演算子、比較演算子、論理演算子、条件文、およびその他の関数を使用して式を記述できます。

リテラル構文

  • 文字列リテラル:定数列は、単一引用符('constant')または二重引用符("constant")のいずれかを使用して表現できます。
  • 数値リテラル:定数は任意の実数にできます。小数点表現を含めることもできます。10051.5589は、どちらも有効な定数です。
  • ブール値リテラル:ブール型定数はtrueまたはfalseにできます。

プロパティー構文

  • 文字列プロパティー変数:識別文字列を文字列プロパティーとして解釈させるには、string関数でラップする必要があります。例えば、string(var1)は文字列プロパティーvar1として解釈されます。
  • 数値プロパティー変数:全ての識別子は数値プロパティー変数として解釈されます。例えば、var1は数値プロパティーvar1の値として解釈されます。
  • ブール型プロパティー変数:識別子をブール型プロパティーとして解釈させるには、bool関数でラップする必要があります。例えば、識別子bool(var1)はブール型プロパティーvar1の値として解釈されます。

注:使用する言語は、文字列を除き、全てのデータ型で大文字と小文字が区別されます。例えば、If A ThEn Bif a then bと同じ文字列として扱われますが、'a''A'と異なります。スペース、タブ、改行はトークン化に使用されますが、それ以外では無視されます。

演算子

演算子は、リテラル値とプロパティー値で使用できます。算術演算子の場合、乗算には接頭辞表記を使用し、演算の順序を指定するには括弧を使用します。

演算子説明
+
数値または文字列を加算します。

property1 + 100

数値を減算します。property1 + 100 - property2
*
数値を乗算します。10property1 = 10 * property1
/
数値を除算します。property1 * (100 - property2/(50 - property3))
<
ある値が別の値より小さいかどうかを確認します。数値プロパティーまたは定数に対応します。a < 100
&gt;
ある値が別の値より大きいかどうかを確認します。数値プロパティーまたは定数に対応します。a > 50
&lt;=
ある値が別の値より小さい、またはそれに等しいかどうかを確認します。数値プロパティーまたは定数に対応します。a <= b
&gt;=
ある値が別の値より大きい、またはそれに等しいかどうかを確認します。数値プロパティーまたは定数に対応します。

b >= c

ある値が別の値に等しいかどうかを確認します。数値と文字列の両方に対応します。(a + b - 100c * 150.652) = 150-230b
equals
ある値が別の値に等しいかどうかを確認します。数値と文字列の両方に対応します。a + b - 100.2c * 150 equals 150 - 230
!=
ある値が別の値に等しくないかどうかを確認します。数値と文字列の両方に対応します。string(property1) != 'test_string'
or
どちらか1つまたは両方がtrueかどうかを確認します。a > b or b <= c
and
両方の値がtrueかどうかを確認します。bool(a) and bool(c)
not
どの値もtrueでないかどうかを確認します。not (bool(a) and bool(c))

関数

サポートされている関数は次のとおりです。

Use this table to describe parameters / fields
関数説明
max
2~100の間の数値を入力値とします。入力された数値の中から最大数を返します。max(a, b, c, 100)またはmax(a, b)
min
2~100の間の数値を入力値とします。入力された数値の中から最小数を返します。

min(a, b, c, 100)またはmin(a, b)

is_present
式を評価できるかどうかを検証します。

is_present(bool(a)) = true(プロパティーがブール型の場合)、is_present(bool(a)) = false(プロパティーが空またはブール型でない場合)

contains
2つの文字列を入力値とします。最初の値に2つ目の文字列が含まれる場合はtrueを返します。

contains('hello', 'ello') = truecontains('ello', 'hello') = false

concatenate
文字列のリストを連結します。リストの範囲は、2から最大100まで入力できます。

concatenate('a', 'b', string(a), string(b))

次の2つの解析関数もあります。

  • number_to_string:入力された数値式を文字列に変換しようと試みます。
  • string_to_number:入力された文字列式を数値に変換しようと試みます。

例えば、"Number of cars: " + num_carsは、文字列と数値を加算することはできないため、有効なプロパティーではありませんが、"Number of cars: " + number_to_string(num_cars)であれば有効なプロパティーです。

条件文

ifelseifendif、およびelseを使った条件文を使用して式を記述することもできます。

条件文の例:if boolean_expression then statement [elseif expression then statement]* [else statement | endif](ここで、括弧で囲まれた[a]はオプションであることを表し、a|bは「a」または「b」のいずれかが有効であることを表します。*は「0」以上であることを意味します。endifを使用すると、条件文を早期に終了して、パーサーが次のelseifが属するifを特定できるようにすることができます。

式の例

以下の例を参考にして、独自の計算式を定義できます。

//Example formula "calculationFormula": "closed - started"

以下に、条件文を使用した高度な例を示します。

//Example formula "calculationFormula": "if is_present(hs_latest_sequence_enrolled_date) then if is_present(hs_sequences_actively_enrolled_count) an hs_sequences_actively_enrolled_count >= 1 then true else false else ''"

参考になりましたか?
こちらのフォームではドキュメントに関するご意見をご提供ください。HubSpotがご提供しているヘルプはこちらでご確認ください。