Rules: update

Autorisierung erforderlich

Aktualisiert eine GTM-Regel. Probieren Sie es aus oder sehen Sie sich ein Beispiel an.

Anfragen

HTTP-Anfrage

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

Parameter

Parametername Wert Beschreibung
Pfadparameter
accountId string Die Google Tag Manager-Konto-ID.
containerId string Die GTM-Container-ID.
ruleId string Die GTM-Regel-ID.
Optionale Abfrageparameter
fingerprint string Wenn dieser Fingerabdruck angegeben wird, muss er mit dem Fingerabdruck der Regel im Speicher übereinstimmen.

Autorisierung

Für diese Anfrage ist eine Autorisierung in folgendem Bereich erforderlich. Weitere Informationen zur Authentifizierung und Autorisierung

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

Anfragetext

Geben Sie im Anfragetext eine Ressource vom Typ "Regel" mit den folgenden Eigenschaften an:

Property-Name Wert Beschreibung Hinweise
Erforderliche Eigenschaften
condition[].parameter[] list Eine Liste benannter Parameter (Schlüssel/Wert), je nach Art der Bedingung. Hinweise:
  • Geben Sie für binäre Operatoren die Parameter arg0 und arg1 an, um den linken bzw. rechten Operanden anzugeben.
  • Derzeit muss der linke Operand (arg0) ein Verweis auf ein Makro sein.
  • Für den Abgleich von regulären Ausdrücken ohne Berücksichtigung der Groß- und Kleinschreibung fügen Sie einen booleschen Parameter namens ignore_case hinzu, der auf true gesetzt ist. Wenn kein Wert angegeben oder auf einen anderen Wert festgelegt ist, wird beim Abgleich zwischen Groß- und Kleinschreibung unterschieden.
  • Um einen Operator zu negieren, fügen Sie den booleschen Parameter negate hinzu und setzen Sie ihn auf true.
Bearbeitbar
condition[].parameter[].type string Der Parametertyp. Gültige Werte sind:
  • boolean: Der Wert steht für einen booleschen Wert, der als „wahr“ oder „falsch“ dargestellt wird.
  • integer: Der Wert stellt einen vorzeichenbehafteten 64-Bit-Ganzzahlwert in Basis 10 dar.
  • list: Es muss eine Liste mit Parametern angegeben werden
  • map: Es muss eine Zuordnung von Parametern angegeben werden.
  • template: Der Wert steht für beliebigen Text. Dieser kann Makroreferenzen enthalten, auch Makroreferenzen, die möglicherweise Typen zurückgeben, die keine Strings sind.


Zulässige Werte sind:
  • "boolean"
  • "integer"
  • "list"
  • "map"
  • "template"
Bearbeitbar
condition[].type string Der Operatortyp für diese Bedingung.

Zulässige Werte sind:
  • "contains"
  • "cssSelector"
  • "endsWith"
  • "equals"
  • "greater"
  • "greaterOrEquals"
  • "less"
  • "lessOrEquals"
  • "matchRegex"
  • "startsWith"
  • "urlMatches"
Bearbeitbar
Optionale Attribute
condition[] list Die Liste der Bedingungen, aus denen diese Regel besteht (implizites UND dazwischen). Bearbeitbar
condition[].parameter[].key string Der benannte Schlüssel, der einen Parameter eindeutig identifiziert. Erforderlich für Parameter der obersten Ebene sowie für Zuordnungswerte. Wird für Listenwerte ignoriert. Bearbeitbar
condition[].parameter[].list[] list Die Parameter dieses Listenparameters (Schlüssel werden ignoriert). Bearbeitbar
condition[].parameter[].map[] list Die Parameter dieses Zuordnungsparameters (muss Schlüssel aufweisen; Schlüssel müssen eindeutig sein). Bearbeitbar
condition[].parameter[].value string Der Wert eines Parameters (kann Makroreferenzen wie "" enthalten) je nach Typ. Bearbeitbar
name string Anzeigename der Regel. Bearbeitbar
notes string Nutzerhinweise zur Anwendung dieser Regel auf den Container. Bearbeitbar

Antwort

Wenn der Vorgang erfolgreich ist, wird mit dieser Methode eine Regelressource im Antworttext zurückgegeben.

Beispiele

Hinweis: Bei den für diese Methode verfügbaren Codebeispielen sind nicht alle unterstützten Programmiersprachen vertreten. Eine Liste der unterstützten Sprachen finden Sie auf der Seite für Clientbibliotheken.

Java

Verwendet die Java-Clientbibliothek.

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

/*
 * This request updates an existing 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("Updated Rule");
rule.setCondition(Arrays.asList(condition));

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

/*
 * The results of the update method are stored in the response object.
 * The following code shows how to access the updated name and fingerprint.
 */
System.out.println("Updated Name = " + response.getName());
System.out.println("Updated Fingerprint = " + response.getFingerprint());

Python

Verwendet die Python-Clientbibliothek.

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

# This request updates an existing rule for the authorized user.
try:
  response = tagmanager.accounts().containers().rules().update(
      accountId='123456',
      containerId='54321',
      ruleId='2',
      body={
          'name': 'Updated 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 update method are stored in the response object.
# The following code shows how to access the updated name and fingerprint.
print 'Updated Name = %s' % response.get('name')
print 'Updated Fingerprint = %s' % response.get('fingerprint')

Jetzt testen

Verwenden Sie den unten angegebenen APIs Explorer, um diese Methode für Livedaten aufzurufen und die Antwort einzusehen.