Workspaces: sync

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

Синхронизирует рабочую область с последней версией контейнера, обновляя все неизмененные объекты и показывая конфликты для измененных. Попробовать

Запрос

HTTP-запрос

POST https://www.googleapis.com/tagmanager/v2/+path:sync

Параметры

Название параметра Значение Описание
Параметры пути
path string Относительный путь для API к рабочей области Менеджера тегов. Пример: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}.

Авторизация

Этот запрос требует авторизации в указанной ниже области доступа. Подробнее об аутентификации и авторизации

Область доступа
https://www.googleapis.com/auth/tagmanager.edit.containers

Тело запроса

При работе с данным методом тело запроса не используется.

Ответ

В случае успеха метод возвращает тело ответа со следующей структурой:

{
  "syncStatus": {
    "mergeConflict": boolean,
    "syncError": boolean
  },
  "mergeConflict": [
    {
      "entityInWorkspace": {
        "tag": accounts.containers.workspaces.tags Resource,
        "trigger": accounts.containers.workspaces.triggers Resource,
        "variable": accounts.containers.workspaces.variables Resource,
        "folder": accounts.containers.workspaces.folders Resource,
        "changeStatus": string
      },
      "entityInBaseVersion": {
        "tag": accounts.containers.workspaces.tags Resource,
        "trigger": accounts.containers.workspaces.triggers Resource,
        "variable": accounts.containers.workspaces.variables Resource,
        "folder": accounts.containers.workspaces.folders Resource,
        "changeStatus": string
      }
    }
  ]
}
Название свойства Значение Описание Примечания
syncStatus nested object Конфликт слияния или ошибка в результате синхронизации.
syncStatus.mergeConflict boolean Конфликт слияния в процессе синхронизации.
syncStatus.syncError boolean Ошибка в процессе синхронизации.
mergeConflict[] list Конфликт слияния после синхронизации. Если это поле заполнено, синхронизация считается успешной, однако новая версия будет создана только после устранения всех конфликтов.
mergeConflict[].entityInWorkspace nested object Объект рабочей области, который содержит изменения, конфликтующие с базовой версией. Если объект удален из рабочей области, он будет отображаться со статусом "Удалено".
mergeConflict[].entityInWorkspace.tag nested object Тег, представляемый объектом.
mergeConflict[].entityInWorkspace.trigger nested object Триггер, представляемый объектом.
mergeConflict[].entityInWorkspace.variable nested object Переменная, представляемая объектом.
mergeConflict[].entityInWorkspace.folder nested object Папка, представляемая объектом.
mergeConflict[].entityInWorkspace.changeStatus string Как объект был изменен в рабочей области.

Допустимые значения:
  • "added"
  • "changeStatusUnspecified"
  • "deleted"
  • "none"
  • "updated"
mergeConflict[].entityInBaseVersion nested object Объект базовой версии (сохраненный при последней синхронизации), который содержит изменения, конфликтующие с рабочей областью. Если этого поля нет, значит объект рабочей области удален из базовой версии.
mergeConflict[].entityInBaseVersion.tag nested object Тег, представляемый объектом.
mergeConflict[].entityInBaseVersion.trigger nested object Триггер, представляемый объектом.
mergeConflict[].entityInBaseVersion.variable nested object Переменная, представляемая объектом.
mergeConflict[].entityInBaseVersion.folder nested object Папка, представляемая объектом.
mergeConflict[].entityInBaseVersion.changeStatus string Как объект был изменен в рабочей области.

Допустимые значения:
  • "added"
  • "changeStatusUnspecified"
  • "deleted"
  • "none"
  • "updated"

Практическое задание

Воспользуйтесь инструментом API Explorer, чтобы применить этот метод к реальным данным и узнать, как он работает.