Rules: create

Wymaga autoryzacji

Tworzy regułę Menedżera tagów Google. Wypróbuj lub zobacz przykład.

Prośba

Żądanie HTTP

POST https://www.googleapis.com/tagmanager/v1/accounts/accountId/containers/containerId/rules

Parametry

Nazwa parametru Wartość Opis
Parametry ścieżki
accountId string Identyfikator konta Menedżera tagów Google.
containerId string Identyfikator kontenera Menedżera tagów Google.

Upoważnienie

To żądanie wymaga autoryzacji z tym zakresem (więcej informacji o uwierzytelnianiu i autoryzacji).

Zakres
https://www.googleapis.com/auth/tagmanager.edit.containers

Treść żądania

W treści żądania podaj zasób reguł z tymi właściwościami:

nazwa usługi, Wartość Opis Uwagi
Właściwości wymagane
condition[].parameter[] list Lista nazwanych parametrów (klucz/wartość) w zależności od typu warunku. Uwagi:
  • W przypadku operatorów binarnych uwzględnij parametry o nazwach arg0 i arg1, aby określić odpowiednio lewy i prawy operand.
  • Obecnie lewy operand (arg0) musi być odwołaniem do makra.
  • Aby nie rozróżniać wielkości liter w wyrażeniach regularnych, dodaj parametr logiczny o nazwie ignore_case ustawiony na true. Jeśli nie określisz żadnej wartości ani nie wybierzesz żadnej innej wartości, podczas dopasowywania rozróżniana będzie wielkość liter.
  • Aby zanegować operator, dołącz parametr logiczny o nazwie negate i ustaw go na true.
z możliwością zapisu
condition[].parameter[].type string Typ parametru. Prawidłowe wartości to:
  • boolean: wartość jest wartością logiczną „true” (prawda) lub „false” (fałsz).
  • integer: wartość przedstawia 64-bitową liczbę całkowitą ze znakiem w systemie 10
  • list: należy określić listę parametrów
  • map: należy określić mapę parametrów
  • template: wartość reprezentuje dowolny tekst; może to obejmować odwołania do makr (nawet odwołania do makr, które mogą zwracać typy niebędące ciągami znaków).


Akceptowane wartości:
  • "boolean"
  • "integer"
  • "list"
  • "map"
  • "template"
z możliwością zapisu
condition[].type string Typ operatora tego warunku.

Akceptowane wartości:
  • "contains"
  • "cssSelector"
  • "endsWith"
  • "equals"
  • "greater"
  • "greaterOrEquals"
  • "less"
  • "lessOrEquals"
  • "matchRegex"
  • "startsWith"
  • "urlMatches"
z możliwością zapisu
name string Wyświetlana nazwa reguły. z możliwością zapisu
Właściwości opcjonalne
condition[] list Lista warunków, które składają się na tę regułę (między nimi ORAZ). z możliwością zapisu
condition[].parameter[].key string Nazwany klucz, który jednoznacznie identyfikuje parametr. Wymagane dla parametrów najwyższego poziomu oraz wartości mapy. Ignorowana w przypadku wartości list. z możliwością zapisu
condition[].parameter[].list[] list Parametry tego parametru listy (klucze będą ignorowane). z możliwością zapisu
condition[].parameter[].map[] list Parametry tego parametru mapy (muszą mieć klucze, a klucze muszą być unikalne). z możliwością zapisu
condition[].parameter[].value string Wartość parametru (może zawierać odwołania do makr, np. „”), odpowiednio do określonego typu. z możliwością zapisu
notes string Uwagi użytkownika na temat stosowania tej reguły w kontenerze. z możliwością zapisu

Odpowiedź

Jeśli operacja się uda, metoda zwróci w treści odpowiedzi zasób reguł.

Przykłady

Uwaga: dostępne dla tej metody przykłady kodu nie odzwierciedlają wszystkich obsługiwanych języków programowania. Listę obsługiwanych języków znajdziesz na stronie z bibliotekami klienta.

Java

Korzysta z biblioteki klienta Java.

/*
 * Note: This code assumes you have an authorized tagmanager service object.
 */

/*
 * This request creates a new rule for the authorized user.
 */

// Construct the condition parameters.
Parameter arg0 = new Parameter();
arg0.setType("template");
arg0.setKey("arg0");
arg0.setValue("{{url}}");

Parameter arg1 = new Parameter();
arg1.setType("template");
arg1.setKey("arg1");
arg1.setValue(".*hellowworld.html");

// Construct the condition object
Condition condition = new Condition();
condition.setType("endsWith");
condition.setParameter(Arrays.asList(arg0, arg1));

// Construct the rule object.
Rule rule = new Rule();
rule.setName("Ends With Rule");
rule.setCondition(Arrays.asList(condition));

try {
  Rule response = tagmanager.accounts().
      containers().rules().create("123456", "54321", rule).execute();
} catch (GoogleJsonResponseException e) {
  System.err.println("There was a service error: "
      + e.getDetails().getCode() + " : "
      + e.getDetails().getMessage());
}

/*
 * The results of the create method are stored in the response object.
 * The following code shows how to access the created Id and Fingerprint.
 */
System.out.println("Rule Id = " + response.getRuleId());
System.out.println("Rule Fingerprint = " + response.getFingerprint());

Python

Używa biblioteki klienta dla języka Python.

# Note: This code assumes you have an authorized tagmanager service object.

# This request creates a new rule for the authorized user.
try:
  response = tagmanager.accounts().containers().rules().create(
      accountId='123456',
      containerId='54321',
      body={
          'name': 'Ends with Rule',
          'condition': [
              {
                  'type': 'endsWith',
                  'parameter': [
                      {
                          'type': 'template',
                          'key': 'arg0',
                          'value': '{{url}}'
                      },
                      {
                          'type': 'template',
                          'key': 'arg1',
                          'value': '.*hellowworld.html'
                      }
                  ]
              }
          ]
      }
  ).execute()

except TypeError, error:
  # Handle errors in constructing a query.
  print 'There was an error in constructing your query : %s' % error

except HttpError, error:
  # Handle API errors.
  print ('There was an API error : %s : %s' %
         (error.resp.status, error.resp.reason))

# The results of the create method are stored in the response object.
# The following code shows how to access the created id and fingerprint.
print 'Rule Id = %s' % response.get('ruleId')
print 'Rule Fingerprint = %s' % response.get('fingerprint')

Wypróbuj

Użyj Eksploratora interfejsów API poniżej, aby wywołać tę metodę na aktywnych danych i zobaczyć odpowiedź.