{"id":63250,"date":"2025-02-02T00:42:37","date_gmt":"2025-02-02T00:42:37","guid":{"rendered":"https:\/\/peraltafinancing.com\/analytics\/gtmtips-setup-iam-for-manual-installation-of-server-side-gtm\/"},"modified":"2025-02-02T00:42:37","modified_gmt":"2025-02-02T00:42:37","slug":"gtmtips-setup-iam-for-manual-installation-of-server-side-gtm","status":"publish","type":"post","link":"https:\/\/fivemor.com\/?p=63250","title":{"rendered":"#GTMTips: Setup IAM For Manual Installation Of Server-side GTM"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<div>\n<p>If you want to <a href=\"https:\/\/www.simoahava.com\/analytics\/provision-server-side-tagging-application-manually\/\">manually install server-side Google Tag Manager<\/a> on App Engine in the Google Cloud Platform, you are of course welcome to do so.<\/p>\n<p>The main benefits of doing this are that you get to <strong>choose the region where App Engine is deployed<\/strong> and that you can use <strong>existing project resources<\/strong> instead of having a new project automatically created for you.<\/p>\n<p>However, to run the script without errors, there are a number of things you need to enable first. In this article, I\u2019ll walk you through the required permissions.<\/p>\n<p>It\u2019s tempting to just use <strong>Project Editor<\/strong> or even <strong>Project Owner<\/strong> rights everywhere, but sometimes you need more granularity. This article will walk you through the <strong>bare minimum<\/strong> permissions and services that need to be enabled for the manual deployment to work.<\/p>\n<p>                <span class=\"simmer\"><br \/>\n  <span class=\"close\">X<\/span><\/p>\n<p>\n    <span class=\"fa fa-md fa-bell\"\/><br \/>\n    <strong>The Simmer Newsletter<\/strong>\n  <\/p>\n<p>\n    Subscribe to the <a href=\"https:\/\/www.simoahava.com\/newsletter\/\">Simmer newsletter<\/a> to get the latest news and content from Simo Ahava into your email inbox!\n  <\/p>\n<p>  <\/span><\/p>\n<h2 id=\"tip-131-setup-iam-for-manual-deployment-of-server-side-gtm\">Tip 131: Setup IAM for manual deployment of server-side GTM<\/h2>\n<div style=\"aspect-ratio: 960 \/ 540;\" class=\"figure nocaption\">\n<p>    <a href=\"https:\/\/www.simoahava.com\/images\/2022\/04\/iam-server-side-gtm.jpg\" title=\"IAM for server-side GTM\"><\/p>\n<p>    <img decoding=\"async\" class=\"fig-img\" height=\"540\" width=\"960\" loading=\"lazy\" src=\"https:\/\/www.simoahava.com\/images\/2022\/04\/iam-server-side-gtm.jpg#ZgotmplZ\" alt=\"IAM for server-side GTM\"\/><\/p>\n<p>    <\/a><\/p>\n<\/div>\n<p>For the <a href=\"https:\/\/developers.google.com\/tag-platform\/tag-manager\/server-side\/script-user-guide#create_a_tagging_server_or_reconfigure_an_existing_tagging_server\">manual deployment script<\/a> to actually work in a <strong>Cloud Shell Instance<\/strong>, you need to run through the following steps first.<\/p>\n<p>[<strong>Project Owner<\/strong>] 1. Create an App Engine application.<\/p>\n<p>The Project Owner should first go to the <a href=\"https:\/\/console.cloud.google.com\/appengine\">App Engine console<\/a> and create an App Engine application. If an application has already been created, you can skip this step. When creating the application, you need to choose a <strong>region<\/strong> for the application.<\/p>\n<blockquote>\n<p>Be careful when choosing the region. The <strong>project<\/strong> is stuck with this region for its entire lifetime. If you ever want to change the region, you need to create a new project.<\/p>\n<\/blockquote>\n<p>By creating the application, the <strong>App Engine Default Service Account<\/strong> is also created.<\/p>\n<p>[<strong>Project Owner<\/strong>] 2. Enable the Compute Engine API.<\/p>\n<p>The Project Owner needs to go to the <a href=\"https:\/\/console.cloud.google.com\/marketplace\/product\/google\/compute.googleapis.com\">Compute Engine API<\/a> page and enable the API. This creates the <strong>Compute Engine Default Service Account<\/strong>.<\/p>\n<p>[<strong>Project Owner<\/strong>] 3. Enable the Cloud Deployment Manager V2 API.<\/p>\n<p>The Project Owner needs to go to the <a href=\"https:\/\/console.cloud.google.com\/marketplace\/product\/google\/deploymentmanager.googleapis.com\">Cloud Deployment Manager V2 API<\/a> page and enable the API. This is required for the script to run its automated processes.<\/p>\n<p>[<strong>User who runs the script<\/strong>] 4. Add the following roles.<\/p>\n<p>The user who\u2019s going to <a href=\"https:\/\/www.simoahava.com\/analytics\/provision-server-side-tagging-application-manually\/#run-the-script\">run the deployment script<\/a> in Cloud Shell needs the following <strong>roles<\/strong> added to them in <a href=\"https:\/\/console.cloud.google.com\/iam-admin\/iam\">IAM<\/a>, ideally by the Project Owner:<\/p>\n<pre><code>roles\/appengine.appAdmin\nroles\/iam.serviceAccountUser\nroles\/cloudbuild.builds.editor\nroles\/storage.objectAdmin\n<\/code><\/pre>\n<p>To find the corresponding roles in the GCP UI, you can use the following image as guidance:<\/p>\n<div style=\"aspect-ratio: 1090 \/ 970;\" class=\"figure nocaption\">\n<p>    <a href=\"https:\/\/www.simoahava.com\/images\/2022\/04\/gcp-roles.jpg\" title=\"Google Cloud Platform roles\"><\/p>\n<p>    <img decoding=\"async\" class=\"fig-img\" height=\"970\" width=\"1090\" loading=\"lazy\" src=\"https:\/\/www.simoahava.com\/images\/2022\/04\/gcp-roles.jpg#ZgotmplZ\" alt=\"Google Cloud Platform roles\"\/><\/p>\n<p>    <\/a><\/p>\n<\/div>\n<p>Once you have completed these four steps, you should be able to run the deployment script without issue using the user login from step (4).<\/p>\n<\/p><\/div>\n\n","protected":false},"excerpt":{"rendered":"<p>If you want to manually install server-side Google Tag Manager on App Engine in the Google Cloud Platform, you are of course welcome to do so. The main benefits of doing this are that you get to choose the region where App Engine is deployed and that you can use existing project resources instead of [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":63251,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12033],"tags":[32680,14492,34587,15026,1421,18475,7003],"dealstore":[],"offerexpiration":[],"class_list":["post-63250","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-analytics","tag-gtm","tag-gtmtips","tag-iam","tag-installation","tag-manual","tag-serverside","tag-setup"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>#GTMTips: Setup IAM For Manual Installation Of Server-side GTM - Som2ny Network<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fivemor.com\/?p=63250\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"#GTMTips: Setup IAM For Manual Installation Of Server-side GTM - Som2ny Network\" \/>\n<meta property=\"og:description\" content=\"If you want to manually install server-side Google Tag Manager on App Engine in the Google Cloud Platform, you are of course welcome to do so. The main benefits of doing this are that you get to choose the region where App Engine is deployed and that you can use existing project resources instead of [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fivemor.com\/?p=63250\" \/>\n<meta property=\"og:site_name\" content=\"Som2ny Network\" \/>\n<meta property=\"article:published_time\" content=\"2025-02-02T00:42:37+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/02\/iam-server-side-gtm.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"960\" \/>\n\t<meta property=\"og:image:height\" content=\"540\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fivemor.com\/?p=63250#article\",\"isPartOf\":{\"@id\":\"https:\/\/fivemor.com\/?p=63250\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371\"},\"headline\":\"#GTMTips: Setup IAM For Manual Installation Of Server-side GTM\",\"datePublished\":\"2025-02-02T00:42:37+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fivemor.com\/?p=63250\"},\"wordCount\":440,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fivemor.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/fivemor.com\/?p=63250#primaryimage\"},\"thumbnailUrl\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/02\/iam-server-side-gtm.jpg\",\"keywords\":[\"GTM\",\"GTMTips\",\"IAM\",\"Installation\",\"MANUAL\",\"Serverside\",\"Setup\"],\"articleSection\":[\"Analytics\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fivemor.com\/?p=63250#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fivemor.com\/?p=63250\",\"url\":\"https:\/\/fivemor.com\/?p=63250\",\"name\":\"#GTMTips: Setup IAM For Manual Installation Of Server-side GTM - Som2ny Network\",\"isPartOf\":{\"@id\":\"https:\/\/fivemor.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/fivemor.com\/?p=63250#primaryimage\"},\"image\":{\"@id\":\"https:\/\/fivemor.com\/?p=63250#primaryimage\"},\"thumbnailUrl\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/02\/iam-server-side-gtm.jpg\",\"datePublished\":\"2025-02-02T00:42:37+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fivemor.com\/?p=63250#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fivemor.com\/?p=63250\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/fivemor.com\/?p=63250#primaryimage\",\"url\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/02\/iam-server-side-gtm.jpg\",\"contentUrl\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/02\/iam-server-side-gtm.jpg\",\"width\":960,\"height\":540},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fivemor.com\/?p=63250#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/fivemor.com\/?bp_activities=1\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"#GTMTips: Setup IAM For Manual Installation Of Server-side GTM\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fivemor.com\/#website\",\"url\":\"https:\/\/fivemor.com\/\",\"name\":\"Som2ny Network\",\"description\":\"Daily Deals\",\"publisher\":{\"@id\":\"https:\/\/fivemor.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fivemor.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/fivemor.com\/#organization\",\"name\":\"Som2ny Network\",\"url\":\"https:\/\/fivemor.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png\",\"contentUrl\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png\",\"width\":300,\"height\":86,\"caption\":\"Som2ny Network\"},\"image\":{\"@id\":\"https:\/\/fivemor.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png\",\"caption\":\"admin\"},\"sameAs\":[\"https:\/\/fivemor.com\"],\"url\":\"https:\/\/fivemor.com\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"#GTMTips: Setup IAM For Manual Installation Of Server-side GTM - Som2ny Network","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fivemor.com\/?p=63250","og_locale":"en_US","og_type":"article","og_title":"#GTMTips: Setup IAM For Manual Installation Of Server-side GTM - Som2ny Network","og_description":"If you want to manually install server-side Google Tag Manager on App Engine in the Google Cloud Platform, you are of course welcome to do so. The main benefits of doing this are that you get to choose the region where App Engine is deployed and that you can use existing project resources instead of [&hellip;]","og_url":"https:\/\/fivemor.com\/?p=63250","og_site_name":"Som2ny Network","article_published_time":"2025-02-02T00:42:37+00:00","og_image":[{"width":960,"height":540,"url":"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/02\/iam-server-side-gtm.jpg","type":"image\/jpeg"}],"author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"admin","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fivemor.com\/?p=63250#article","isPartOf":{"@id":"https:\/\/fivemor.com\/?p=63250"},"author":{"name":"admin","@id":"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371"},"headline":"#GTMTips: Setup IAM For Manual Installation Of Server-side GTM","datePublished":"2025-02-02T00:42:37+00:00","mainEntityOfPage":{"@id":"https:\/\/fivemor.com\/?p=63250"},"wordCount":440,"commentCount":0,"publisher":{"@id":"https:\/\/fivemor.com\/#organization"},"image":{"@id":"https:\/\/fivemor.com\/?p=63250#primaryimage"},"thumbnailUrl":"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/02\/iam-server-side-gtm.jpg","keywords":["GTM","GTMTips","IAM","Installation","MANUAL","Serverside","Setup"],"articleSection":["Analytics"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fivemor.com\/?p=63250#respond"]}]},{"@type":"WebPage","@id":"https:\/\/fivemor.com\/?p=63250","url":"https:\/\/fivemor.com\/?p=63250","name":"#GTMTips: Setup IAM For Manual Installation Of Server-side GTM - Som2ny Network","isPartOf":{"@id":"https:\/\/fivemor.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/fivemor.com\/?p=63250#primaryimage"},"image":{"@id":"https:\/\/fivemor.com\/?p=63250#primaryimage"},"thumbnailUrl":"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/02\/iam-server-side-gtm.jpg","datePublished":"2025-02-02T00:42:37+00:00","breadcrumb":{"@id":"https:\/\/fivemor.com\/?p=63250#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fivemor.com\/?p=63250"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/fivemor.com\/?p=63250#primaryimage","url":"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/02\/iam-server-side-gtm.jpg","contentUrl":"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/02\/iam-server-side-gtm.jpg","width":960,"height":540},{"@type":"BreadcrumbList","@id":"https:\/\/fivemor.com\/?p=63250#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/fivemor.com\/?bp_activities=1"},{"@type":"ListItem","position":2,"name":"#GTMTips: Setup IAM For Manual Installation Of Server-side GTM"}]},{"@type":"WebSite","@id":"https:\/\/fivemor.com\/#website","url":"https:\/\/fivemor.com\/","name":"Som2ny Network","description":"Daily Deals","publisher":{"@id":"https:\/\/fivemor.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fivemor.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/fivemor.com\/#organization","name":"Som2ny Network","url":"https:\/\/fivemor.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/fivemor.com\/#\/schema\/logo\/image\/","url":"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png","contentUrl":"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png","width":300,"height":86,"caption":"Som2ny Network"},"image":{"@id":"https:\/\/fivemor.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/fivemor.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png","caption":"admin"},"sameAs":["https:\/\/fivemor.com"],"url":"https:\/\/fivemor.com\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/posts\/63250","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=63250"}],"version-history":[{"count":0,"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/posts\/63250\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/media\/63251"}],"wp:attachment":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=63250"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=63250"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=63250"},{"taxonomy":"dealstore","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fdealstore&post=63250"},{"taxonomy":"offerexpiration","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fofferexpiration&post=63250"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}