Eigenschaften

Verwenden Sie Eigenschaften, um Informationen in CRM-Datensätzen zu speichern. HubSpot bietet eine Reihe von Standardeigenschaften für jedes CRM-Objekt. Außerdem können Sie Ihre eigenen benutzerdefinierten Eigenschaften entweder in HubSpot oder mit der Eigenschaften-API erstellen und verwalten. 

Beim Erstellen von Eigenschaften sollte die Architektur Ihrer gut überlegt sein. In vielen Fällen ist das Erstellen benutzerdefinierter Eigenschaften für Standardobjekte von HubSpot die richtige Vorgehensweise. Es kann jedoch vorkommen, dass Sie ein separates benutzerdefiniertes Objekt mit seinem eigenen Satz an Eigenschaften erstellen müssen.

Standardeigenschaften

CRM-Objekte werden durch einen primären Typ und einen Satz von Eigenschaften definiert. Jeder Typ verfügt über einen eindeutigen Satz an Standardeinstellungen, die von einer Zuordnung von Name/Wert-Paaren dargestellt werden. 

Erfahren Sie mehr über Standardeigenschaften für verschiedene Objekte:

Eigenschaftsgruppen

Gruppen von Eigenschaften werden verwendet, um zugehörige Eigenschaften zu gruppieren. Gruppierte Eigenschaften werden nebeneinander in HubSpot-Datensätzen angezeigt. Wenn Ihre Integration beliebige benutzerdefinierte Objekteigenschaften erstellt, erleichtert eine benutzerdefinierte Eigenschaftsgruppe das Identifizieren dieser Daten.

Eigenschafttype und fieldType-Werte

Beim Erstellen oder Aktualisieren von Eigenschaften sind sowohl der type-Wert als auch der fieldType-Wert erforderlich. Der type-Wert bestimmt den Typ der Eigenschaft, d. h. eine Zeichenfolge oder eine Zahl. Die fieldType-Eigenschaft bestimmt, wie die Eigenschaft in HubSpot oder in einem Formular angezeigt wird, also als Klartext, als ein Dropdown-Menü oder als eine Datumsauswahl.

Erfahren Sie in der folgenden Tabelle mehr über die verfügbaren type-Werte für Eigenschaften und die entsprechenden fieldType-Werte.

Gültige Werte für das type-Feld und kompatible fieldType-Werte
type Beschreibung Zulässige fieldType-Werte
bool Ein Feld mit binären Optionen (z. B. Yes oder No, True oder False). booleancheckbox, calculation_equation
enumeration Eine Zeichenfolge, die eine Reihe von Optionen enthält, die durch ein Semikolon getrennt sind booleancheckbox, checkbox, radio, select, calculation_equation
date Ein Wert, der einen bestimmten Tag, einen bestimmten Monat und ein bestimmtes Jahr darstellt. Werte müssen in UTC-Zeit angegeben werden und können als ISO 8601-Zeichenfolgen oder EPOCH-Zeitstempel in Millisekunden (d. h. Mitternacht UTC) formatiert werden. date
dateTime Ein Wert, der einen bestimmten Tag, einen bestimmten Monat, ein bestimmtes Jahr und eine bestimmte Uhrzeit darstellt. Die HubSpot-App zeigt nicht die Uhrzeit an. Werte müssen in UTC-Zeit angegeben werden und können als ISO 8601-Zeichenfolgen oder UNIX-Zeitstempel in Millisekunden formatiert werden. date
string Eine Klartext-Zeichenfolge, die auf 65.536 Zeichen begrenzt ist. file, text, textarea, calculation_equation, html, phonenumber
number Ein Zahlenwert mit numerischen Ziffern und höchstens einer Dezimalstelle. number, calculation_equation
object_coordinates Ein Textwert, der zum Verweisen auf andere HubSpot-Objekte verwendet wird und nur für interne Eigenschaften verwendet wird. Eigenschaften dieses Typs können nicht erstellt oder bearbeitet werden und sind in HubSpot nicht sichtbar. text
json Ein Textwert, der als formatiertes json gespeichert ist und nur für interne Eigenschaften verwendet wird. Eigenschaften dieses Typs können nicht erstellt oder bearbeitet werden und sind in HubSpot nicht sichtbar. text

Zulässige Werte für fieldType umfassen:

FieldtypeDescription
booleancheckbox

Eine Eingabe, die es Benutzern ermöglicht, entweder „Ja“ oder „Nein“ auszuwählen. Bei Verwendung in einem Formular wird sie als einzelnes Kontrollkästchen angezeigt. Erfahren Sie, wie Sie einen Wert zu Eigenschaften mit einem einzelnen Kontrollkästchen hinzufügen.

calculation_equation

Eine benutzerdefinierte Gleichung, die Werte basierend auf anderen Eigenschaftswerten und/oder Zuordnungen berechnen kann. Erfahren Sie, wie Sie berechnete Eigenschaften definieren.

Kontrollkästchen

Eine Liste der Kontrollkästchen, anhand derer ein Benutzer mehrere Optionen aus einer Reihe von Optionen auswählen kann, die für die Eigenschaft zulässig sind. Erfahren Sie, wie Sie Werte beim Aktualisieren von Eigenschaften mit mehreren Kontrollkästchen formatieren.

date

Ein Datumswert, der als Datumsauswahl angezeigt wird.

file

Ermöglicht das Hochladen einer Datei in einen Datensatz oder über ein Formular. Speichert eine Datei-ID.

html

Eine Zeichenfolge, die als bereinigter HTML-Code gerendert wird und die Verwendung eines Rich-Text-Editors für die Eigenschaft ermöglicht.

number

Eine Ziffernfolge oder Zahlen in Dezimalschreibweise oder in wissenschaftlicher Notation.

phonenumber

Eine Klartext-Zeichenfolge, die als eine formatierte Telefonnummer angezeigt wird.

radio

Eine Eingabe, die es Benutzern ermöglicht, eine Option aus einer Reihe von Optionen auszuwählen, die für die Eigenschaft zulässig sind. Bei Verwendung in einem Formular wird dies als eine Reihe von Optionsfeldern angezeigt.

select

Eine Dropdown-Eingabe, die es Benutzern ermöglicht, eine Option aus einer Reihe von Optionen auszuwählen, die für die Eigenschaft zulässig sind.

text

Eine Klartext-Zeichenfolge, die als eine einzeilige Texteingabe angezeigt wird.

textarea

Eine Klartext-Zeichenfolge, die als eine mehrzeilige Texteingabe angezeigt wird.

Eine Eigenschaft erstellen

Um eine Eigenschaft zur erstellen, führen Sie eine POST-Anfrage an /crm/v3/properties/{objectType} durch. Geben Sie in Ihrem Anfragetext die folgenden Pflichtfelder an:

  • groupName: die Eigenschaftsgruppe, in der sich die Eigenschaft befindet.
  • name: der interne Name der Eigenschaft (z. B. favorite_food).
  • label: der Name der Eigenschaft, wie sie in HubSpot erscheint (z. B. Favorite Food).
  • type: der Typ der Eigenschaft.
  • fieldType: der Feldtyp der Eigenschaft.

Um beispielsweise eine Kontakteigenschaft mit dem Namen Favorite Food zu erstellen, würde Ihre Anfrage wie folgt aussehen:

/// Example request body POST crm/v3/properties/contacts { "groupName": "contactinformation", "name":"favorite_food", "label": "Favorite Food", "type": "string", "fieldType": "text" }

„Eindeutige ID“-Eigenschaften erstellen

Wenn ein Datensatz in HubSpot erstellt wird, wird automatisch eine eindeutige Datensatz-ID (hs_object_id) generiert, die als Zeichenfolge behandelt werden sollte. Diese IDs sind nur innerhalb dieses Objekts eindeutig. Daher kann es sowohl einen Kontakt als auch ein Unternehmen mit derselben ID geben. Für Kontakte und Unternehmen gibt es zusätzliche eindeutige IDs, einschließlich der E-Mail-Adresse (email) eines Kontakts und des Domain-Namens (domain) eines Unternehmens.

In einigen Fällen möchten Sie möglicherweise Ihre eigene „Eindeutige ID“-Eigenschaft erstellen, damit Sie nicht den gleichen Wert für mehrere Datensätze eingeben können. Sie können über bis zu zehn eindeutige ID-Eigenschaften pro Objekt verfügen. So erstellen Sie eine Eigenschaft, die eindeutige Werte über die API erfordert:

  • Führen Sie eine POST-Anfrage an /crm/v3/properties/{objectType} durch.
  • Legen Sie in Ihrem Anfragetext für das Feld hasUniqueValue den Wert auf true fest.
/// Example request body { "groupName": "dealinformation", "name":"system_a_unique", "label": "Unique ID for System A", "hasUniqueValue": true, "type": "string", "fieldType": "text" }

Nachdem Sie Ihr Feld für die „Eindeutige ID“-Eigenschaft erstellt haben, können Sie sie in einem API-Aufruf verwenden, um spezifische Datensätze abzurufen. Die Anfrage-URL könnte wie folgt aussehen: GET https://api.hubapi.com/crm/v3/objects/deals/abc?idProperty=system_a_unique. Dadurch wird der Deal mit dem Wert abc im system_a_unique-Feld zurückgegeben.

Sie können dann diesen „Eindeutige ID“-Eigenschaftswert verwenden, um bestimmte Datensätze auf die gleiche Weise zu identifizieren und zu aktualisieren, wie Sie hs_object_id, email (Kontakte) oder domain (Unternehmen) verwenden könnten.

Berechnungseigenschaften erstellen

Berechnungseigenschaften definieren einen Eigenschaftswert basierend auf anderen Eigenschaften innerhalb desselben Objektdatensatzes. Sie werden mithilfe einer Formel definiert, die Operationen wie min, max, count, sum oder average umfassen kann. Sie können die Eigenschaften-API verwenden, um Berechnungseigenschaften in Ihrem HubSpot-Account zu lesen oder zu erstellen, indem Sie einen Feldtyp von calculation_equation und einen Typ von number, bool, string oder enumeration verwenden.

Sie können die Berechnungsformel der Eigenschaft mit dem calculationFormula-Feld definieren.

Bitte beachten: Berechnungseigenschafte, die über die API erstellt wurden, können in HubSpot nicht bearbeitet werden. Sie können diese Eigenschaften nur über die Eigenschaften-API bearbeiten.

Berechnungseigenschaftensyntax

Mithilfe von calculationFormula können Sie Ihre Formel mit arithmetischen Operatoren, Vergleichsoperatoren, logischen Operatoren, bedingten Anweisungen und anderen Funktionen schreiben.

Literalsyntax

  • Zeichenfolgenliteral: konstante Zeichenfolgen können entweder mit einfachen Anführungszeichen ('konstant') oder doppelten Anführungszeichen ("konstant") dargestellt werden.
  • Zahlliteral: konstante Zahlen können beliebige reelle Zahlen sein und Punktnotation enthalten. 1005 und 1.5589 sind jeweils zulässige konstante Zahlen.
  • Boolesches Literal: konstante boolesche Werte können true oder false sein.

Eigenschaftssyntax

  • Zeichenfolgeneigenschaftsvariablen: damit eine Bezeichnerzeichenfolge als Zeichenfolgeneigenschaft interpretiert werden kann, muss sie in die string-Funktion gehüllt sein. Beispielsweise wird string(var1) als Wert für die Zeichenfolgeneigenschaft var1 interpretiert.
  • Zahleneigenschaftsvariablen: alle Bezeichner werden als Zahleneigenschaftsvariablen interpretiert.  Beispielsweise wird var1 als Wert für die Zahleneigenschaft var1 interpretiert.
  • Boolesche Eigenschaftsvariablen: damit ein Bezeichner als boolesche Eigenschaft interpretiert werden kann, muss er in die bool-Funktion gehüllt sein. Zum Beispiel wird der Bezeichner bool(var1) als Wert für die boolesche Eigenschaft var1 interpretiert.

Bitte beachten: Die verwendete Sprache unterscheidet zwischen Groß- und Kleinschreibung für alle Typen außer Zeichenfolgen. Zum Beispiel, wenn If A ThEn B genau das gleiche ist wie if a then b, aber 'a' nicht das gleiche wie 'A' ist. Leerzeichen, Tabulatoren und neue Zeilen werden für die Tokenisierung verwendet, aber ignoriert.

Operator

Operatoren können mit Literal- und Eigenschaftswerten verwendet werden. Bei arithmetischen Operatoren können Sie die Präfixnotation zum Multiplizieren verwenden, und mithilfe von Klammern kann die Reihenfolge der Operationen festgelegt werden.

OperatorBeschreibungExamples
+
Add numbers or strings.

property1 + 100

-
Subtract numbers.property1 + 100 - property2
*
Multiply numbers. 10property1 = 10 * property1
/
Divide numbers.property1 * (100 - property2/(50 - property3))
<
Checks if a value is less than another. Supported by number properties or constants.a < 100
&gt;
Checks if a value is greater than another. Supported by number properties or constants.a > 50
&lt;=
Checks if a value is less than or equal to another. Supported by number properties or constants.a <= b
&gt;=
Checks if a value is greater than or equal to another. Supported by number properties or constants.

b>= c

=
Checks if a value is equal to another. Supported by both numbers and strings.(a + b - 100c * 150.652) = 150-230b
equals
Checks if a value is equal to another. Supported by both numbers and strings.a + b - 100.2c * 150 equals 150 - 230
!=
Checks if a value is not equal to another. Supported by both numbers and strings.string(property1) != 'test_string'
or
Checks if either or two values are true. a > b or b <= c
and
Checks if both values are true.bool(a) and bool(c)
not
Checks if none of the values are true.not (bool(a) and bool(c))

Funktionen

Die folgenden Funktionen werden unterstützt:

Use this table to describe parameters / fields
FunktionBeschreibungExamples
max
Will have between 2 and 100 input numbers, and will return the maximum number out of all the inputs.max(a, b, c, 100) oder max(a, b)
min
Will have between 2 and 100 input numbers, and will return the minimum number of out all the inputs.

min(a, b, c, 100) oder min(a, b)

is_present
Evaluates whether an expression can be evaluated.

is_present(bool(a))= true, wenn die Eigenschaft boolesch ist, aber is_present(bool(a)) = false, wenn die Eigenschaft leer oder nicht boolesch ist.

contains
Has two strings as inputs and will return true if the first input contains the second.

contains('hallo', 'allo') = true während contains('allo', 'hallo') = false.

concatenate
Joins a list of strings. The list of inputs can go from 2 up to 100.

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

Es gibt auch zwei Parsing-Funktionen:

  • number_to_string: versucht, den eingegebenen Zahlenausdruck in eine Zeichenfolge zu konvertieren.
  • string_to_number: versucht, den eingegebenen Zeichenfolgenausdruck in eine Zahl zu konvertieren.

Beispielsweise ist "Anzahl der Autos: " + num_cars keine gültige Eigenschaft, da Sie keine Zeichenfolge mit einer Zahl hinzufügen können, "Anzahl der Autos: " + number_to_string(num_cars) dagegen schon.

Bedingte Anweisungen

Sie können Ihre Formel auch mit bedingten Anweisungen schreiben, indem Sie if, elseif, endif und else verwenden.

Beispielsweise könnte eine bedingte Anweisung wie folgt aussehen: if boolean_expression then statement [elseif expression then statement]* [else statement | endif] wobei die [a]-Klammern angeben, dass a optional ist, a|b gibt an, dass entweder a oder b funktionieren wird, und * 0 oder mehr bedeutet. endif kann verwendet werden, um eine bedingte Anweisung vorzeitig zu beenden, um sicherzustellen, dass der Parser identifizieren kann, zu welchem if das nächste elseif gehört.

Beispielformeln

Im Folgenden finden Sie Beispiele, mit denen Sie Ihre eigenen Berechnungsformeln definieren können:

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

Ein etwas komplexeres Beispiel mit Bedingungen:

//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 ''"

Eigenschaften abrufen

Sie können Informationen für einzelne Eigenschaften oder alle Eigenschaften innerhalb eines Objekts abrufen.

  • Um eine einzelne Eigenschaft abzurufen, führen Sie eine GET-Anfrage an crm/v3/properties/{object}/{propertyName} durch. Um beispielsweise die Eigenschaft „Favorite Food“ abzurufen, wäre Ihre Anfrage-URL https://
    api.hubspot.com/crm/v3/properties/contacts/favorite_food.
  • Um alle Eigenschaften für ein Objekt abzurufen, führen Sie eine GET-Anfrage an /crm/v3/properties/{objectType} durch.

Die Werte einer Eigenschaft aktualisieren oder löschen

Um einen Eigenschaftswert für einen Datensatz zu aktualisieren, führen Sie eine PATCH-Anfrage an crm/v3/objects/{objectType}/{recordId} durch. Fügen Sie in Ihrem Anfragetext die Eigenschaften und deren Werte in ein Array ein. Erfahren Sie mehr über das Aktualisieren von Datensätzen über die Objekt-APIs.

Werte zu den Eigenschaften des Kontrollkästchentyps hinzufügen

Wenn Sie Werte für die Eigenschaften des Kontrollkästchentyps eines Datensatzes aktualisieren, formatieren Sie die Werte wie folgt:

  • Boolesche Kontrollkästcheneigenschaft: Um als Ja oder in HubSpot markiert angezeigt zu werden, muss Ihr Wert true sein. Um als Nein angezeigt zu werden oder im HubSpot nicht markiert zu werden, muss Ihr Wert false sein.
  • Eigenschaft mit mehreren Kontrollkästchen: Um Werte zu einer Eigenschaft mit mehreren Kontrollkästchen hinzuzufügen oder anzuhängen, fügen Sie ein Semikolon vor dem ersten Wert hinzu und trennen Sie die Werte durch Semikolon ohne Leerzeichen dazwischen. Wenn die Eigenschaft einen vorhandenen Wert hat, hängt das führende Semikolon die Werte an, anstatt den Wert zu überschreiben. Ein Kontakt hat beispielsweise den vorhandenen Wert DECISION_MAKER für die Eigenschaft hs_buying_role. Um zusätzliche Werte hinzuzufügen, ohne den vorhandenen Wert zu ersetzen, würde Ihre Anfrage wie folgt aussehen:
///Example body for PATCH request to /crm/v3/objects/contacts/{contactId} { "properties": { "hs_buying_role": ";BUDGET_HOLDER;END_USER" }}

Für Datensätze zuständige Mitarbeiter mit Benutzereigenschaften zuweisen

Beim Zuweisen von Benutzern zu CRM-Datensätzen über die API muss Ihr Wert die id des Benutzers für den zuständigen Mitarbeiter sein, die Sie in Ihren Eigenschafteneinstellungen oder über die Zuständige Mitarbeite-API finden. Um beispielsweise einen Benutzer als zuständigen Mitarbeiter eines Kontakts zuzuweisen, senden Sie eine PATCH -Anfrage an crm/v3/objects/contacts/{contactId} mit dem Text { "properties":{ "hubspot_owner_id": "41629779"}}.

Einen Eigenschaftswert löschen

Sie können einen Objekteigenschaftswert über die API löschen, indem Sie den Eigenschaftswert auf eine leere Zeichenfolge festlegen.

Um z. B. firstname aus einem Kontaktobjekt zu löschen, senden Sie eine PATCH-Anfrage an https://api.hubapi.com/crm/v3/objects/contacts/{contactId} mit dem Text { "properties": { "firstname": ""} }.


War dieser Artikel hilfreich?
Dieses Formular dient dazu, Feedback zu unserer Entwicklerdokumentation zu sammeln. Wenn Sie uns Ihre Meinung zu HubSpot-Produkten mitteilen möchten, teilen Sie diese bitte im Ideenforum der Community.