Rules: update

Требуется авторизация

Обновляет правило GTM. Попробуйте сейчас или посмотрите пример .

Запрос

HTTP-запрос

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

Параметры

Имя параметра Ценить Описание
Параметры пути
accountId string Идентификатор аккаунта GTM.
containerId string Идентификатор контейнера GTM.
ruleId string Идентификатор правила GTM.
Необязательные параметры запроса
fingerprint string Если этот отпечаток предоставлен, он должен совпадать с отпечатком правила в хранилище.

Авторизация

Этот запрос требует авторизации со следующей областью действия ( подробнее об аутентификации и авторизации читайте здесь ).

Объем
https://www.googleapis.com/auth/tagmanager.edit.containers

Тело запроса

В теле запроса укажите ресурс Rules со следующими свойствами:

Имя свойства Ценить Описание Примечания
Обязательные свойства
condition[]. parameter[] list Список именованных параметров (ключ/значение) в зависимости от типа условия. Примечания:
  • Для бинарных операторов включите параметры с именами arg0 и arg1 для указания левого и правого операндов соответственно.
  • В это время левый операнд ( arg0 ) должен быть ссылкой на макрос.
  • Для сопоставления регулярных выражений без учета регистра включите логический параметр с именем ignore_case , которому присвоено значение true . Если оно не указано или не установлено любое другое значение, сопоставление будет чувствительным к регистру.
  • Чтобы отменить оператор, включите логический параметр с именем negate и установите для него значение true .
записываемый
condition[].parameter[]. type string Тип параметра. Допустимые значения:
  • boolean : значение представляет собой логическое значение, представленное как «истина» или «ложь».
  • integer : значение представляет собой 64-битное целое число со знаком в базе 10.
  • list : необходимо указать список параметров.
  • map : должна быть указана карта параметров.
  • template : значение представляет любой текст; это может включать ссылки на макросы (даже ссылки на макросы, которые могут возвращать нестроковые типы)


Приемлемые значения:
  • " boolean "
  • " integer "
  • " list "
  • " map "
  • " template "
записываемый
condition[]. type string Тип оператора для этого условия.

Приемлемые значения:
  • " contains "
  • " cssSelector "
  • " endsWith "
  • " equals "
  • " greater "
  • " greaterOrEquals "
  • " less "
  • " lessOrEquals "
  • " matchRegex "
  • " startsWith "
  • " urlMatches "
записываемый
Дополнительные свойства
condition[] list Список условий, составляющих это правило (неявное И между ними). записываемый
condition[].parameter[]. key string Именованный ключ, который однозначно идентифицирует параметр. Требуется для параметров верхнего уровня, а также значений карты. Игнорируется для значений списка. записываемый
condition[].parameter[]. list[] list Параметры этого списка параметров (ключи будут игнорироваться). записываемый
condition[].parameter[]. map[] list Параметры этого параметра карты (должны иметь ключи; ключи должны быть уникальными). записываемый
condition[].parameter[]. value string Значение параметра (может содержать ссылки на макросы, например «»), соответствующее указанному типу. записываемый
name string Отображаемое имя правила. записываемый
notes string Примечания пользователя о том, как применить это правило в контейнере. записываемый

Ответ

В случае успеха этот метод возвращает ресурс Rules в теле ответа.

Примеры

Примечание. Примеры кода, доступные для этого метода, не представляют все поддерживаемые языки программирования (список поддерживаемых языков см. на странице клиентских библиотек ).

Джава

Использует клиентскую библиотеку Java .

/*
 * 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 .

# 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')

Попробуй это!

Используйте API-интерфейс ниже, чтобы вызвать этот метод для реальных данных и просмотреть ответ.