نیاز به مجوز دارد
یک ماکرو GTM را به روز می کند. اکنون آن را امتحان کنید یا نمونه ای را ببینید .
درخواست
درخواست HTTP
PUT https://www.googleapis.com/tagmanager/v1/accounts/accountId/containers/containerId/macros/macroId
مولفه های
نام پارامتر | ارزش | شرح |
---|---|---|
پارامترهای مسیر | ||
accountId | string | شناسه حساب GTM. |
containerId | string | شناسه کانتینر GTM. |
macroId | string | شناسه ماکرو GTM |
پارامترهای پرس و جو اختیاری | ||
fingerprint | string | در صورت ارائه، این اثر انگشت باید با اثر انگشت ماکرو موجود در حافظه مطابقت داشته باشد. |
مجوز
این درخواست به مجوز با محدوده زیر نیاز دارد ( در مورد احراز هویت و مجوز بیشتر بخوانید ).
محدوده |
---|
https://www.googleapis.com/auth/tagmanager.edit.containers |
درخواست بدن
در بدنه درخواست، یک منبع Macros با ویژگی های زیر ارائه کنید:
نام ملک | ارزش | شرح | یادداشت |
---|---|---|---|
خواص مورد نیاز | |||
parameter[]. type | string | نوع پارامتر مقادیر معتبر عبارتند از:
مقادیر قابل قبول عبارتند از:
| قابل نوشتن |
type | string | نوع ماکرو GTM. | قابل نوشتن |
ویژگی های اختیاری | |||
disablingRuleId[] | list | فقط برای کانتینرهای موبایل: فهرستی از شناسههای قانون برای غیرفعال کردن ماکروهای شرطی. اگر یکی از قوانین فعال کننده درست باشد، ماکرو فعال می شود در حالی که همه قوانین غیرفعال نادرست هستند. به عنوان یک مجموعه نامرتب رفتار می شود. | قابل نوشتن |
enablingRuleId[] | list | فقط برای کانتینرهای موبایل: فهرستی از شناسههای قانون برای فعال کردن ماکروهای شرطی. اگر یکی از قوانین فعال کننده درست باشد، ماکرو فعال می شود در حالی که همه قوانین غیرفعال نادرست هستند. به عنوان یک مجموعه نامرتب رفتار می شود. | قابل نوشتن |
name | string | نام نمایشی ماکرو | قابل نوشتن |
notes | string | یادداشت های کاربر در مورد نحوه اعمال این ماکرو در ظرف. | قابل نوشتن |
parameter[] | list | پارامترهای ماکرو | قابل نوشتن |
parameter[]. key | string | کلید نامگذاری شده که به طور منحصر به فرد یک پارامتر را شناسایی می کند. برای پارامترهای سطح بالا و همچنین مقادیر نقشه مورد نیاز است. برای مقادیر لیست نادیده گرفته شد. | قابل نوشتن |
parameter[]. list[] | list | پارامترهای این پارامتر فهرست (کلیدها نادیده گرفته خواهند شد). | قابل نوشتن |
parameter[]. map[] | list | پارامترهای این پارامتر نقشه (باید کلید داشته باشد؛ کلیدها باید منحصر به فرد باشند). | قابل نوشتن |
parameter[]. value | string | مقدار یک پارامتر (ممکن است حاوی ارجاعات کلان مانند "") متناسب با نوع مشخص شده باشد. | قابل نوشتن |
scheduleEndMs | long | مهر زمان پایان در میلی ثانیه برای برنامه ریزی یک ماکرو. | قابل نوشتن |
scheduleStartMs | long | مهر زمان شروع در میلی ثانیه برای برنامه ریزی یک ماکرو. | قابل نوشتن |
واکنش
در صورت موفقیت آمیز بودن، این روش یک منبع Macros را در بدنه پاسخ برمی گرداند.
مثال ها
توجه: نمونههای کد موجود برای این روش همه زبانهای برنامهنویسی پشتیبانیشده را نشان نمیدهند (برای فهرست زبانهای پشتیبانیشده به صفحه کتابخانههای سرویس گیرنده مراجعه کنید).
جاوا
از کتابخانه سرویس گیرنده جاوا استفاده می کند.
/* * Note: This code assumes you have an authorized tagmanager service object. */ /* * This request updates an existing macro for the authorized user. */ // Construct the macro object. Macro macro = new Macro(); macro.setName("Updated URL Macro"); macro.setType("u"); // Construct the parameters. Parameter arg0 = new Parameter(); arg0.setType("template"); arg0.setKey("component"); arg0.setValue("URL"); Parameter arg1 = new Parameter(); arg1.setType("template"); arg1.setKey("customUrlSource"); arg1.setValue("{{element}}"); // set the parameters on the macro. macro.setParameter(Arrays.asList(arg0, arg1)); try { Macro response = tagmanager.accounts().containers(). macros().update("123456", "54321", "18", macro).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());
پایتون
از کتابخانه کلاینت پایتون استفاده می کند.
# Note: This code assumes you have an authorized tagmanager service object. # This request updates an existing macro for the authorized user. try: response = tagmanager.accounts().containers().macros().update( accountId='123456', containerId='54321', macroId='19', body={ 'name': 'Sample URL Macro', 'type': 'u', 'parameter': [ { 'type': 'template', 'key': 'component', 'value': 'URL' }, { 'type': 'template', 'key': 'customUrlSource', 'value': '{{element}}' } ] } ).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')
آن را امتحان کنید!
از APIs Explorer زیر برای فراخوانی این روش در دادههای زنده و دیدن پاسخ استفاده کنید.