Requires authorization
Creates a GTM tag. Try it now or see an example.
Request
HTTP request
POST https://www.googleapis.com/tagmanager/v1/accounts/accountId/containers/containerId/tags
Parameters
Parameter name | Value | Description |
---|---|---|
Path parameters | ||
accountId |
string |
The GTM Account ID. |
containerId |
string |
The GTM Container ID. |
Authorization
This request requires authorization with the following scope (read more about authentication and authorization).
Scope |
---|
https://www.googleapis.com/auth/tagmanager.edit.containers |
Request body
In the request body, supply a Tags resource with the following properties:
Property name | Value | Description | Notes |
---|---|---|---|
Required Properties | |||
name |
string |
Tag display name. | writable |
parameter[].type |
string |
The parameter type. Valid values are:
Acceptable values are:
|
writable |
priority.type |
string |
The parameter type. Valid values are:
Acceptable values are:
|
writable |
type |
string |
GTM Tag Type. | writable |
Optional Properties | |||
blockingRuleId[] |
list |
Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire. | writable |
blockingTriggerId[] |
list |
Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire. | writable |
firingRuleId[] |
list |
Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false. |
writable |
firingTriggerId[] |
list |
Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false. |
writable |
liveOnly |
boolean |
If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode). | writable |
notes |
string |
User notes on how to apply this tag in the container. | writable |
parameter[] |
list |
The tag's parameters. | writable |
parameter[].key |
string |
The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values. | writable |
parameter[].list[] |
list |
This list parameter's parameters (keys will be ignored). | writable |
parameter[].map[] |
list |
This map parameter's parameters (must have keys; keys must be unique). | writable |
parameter[].value |
string |
A parameter's value (may contain variable references such as "{{myVariable}}") as appropriate to the specified type. | writable |
paused |
boolean |
True if the tag is paused. | writable |
priority |
nested object |
User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0. | writable |
priority.key |
string |
The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values. | writable |
priority.list[] |
list |
This list parameter's parameters (keys will be ignored). | writable |
priority.map[] |
list |
This map parameter's parameters (must have keys; keys must be unique). | writable |
priority.value |
string |
A parameter's value (may contain variable references such as "{{myVariable}}") as appropriate to the specified type. | writable |
scheduleEndMs |
long |
The end timestamp in milliseconds to schedule a tag. | writable |
scheduleStartMs |
long |
The start timestamp in milliseconds to schedule a tag. | writable |
Response
If successful, this method returns a Tags resource in the response body.
Examples
Note: The code examples available for this method do not represent all supported programming languages (see the client libraries page for a list of supported languages).
Java
Uses the Java client library.
/* * Note: This code assumes you have an authorized tagmanager service object. */ /* * This request creates a new tag. */ // Construct the parameters. Parameter arg0 = new Parameter(); arg0.setType("template"); arg0.setKey("trackingId"); arg0.setValue("UA-123456-1"); Parameter arg1 = new Parameter(); arg1.setType("template"); arg1.setKey("type"); arg1.setValue("TRACK_TRANSACTION"); // Construct the tag object. Tag tag = new Tag(); tag.setName("Sample Universal Analytics Tag"); tag.setType("ua"); tag.setLiveOnly(false); tag.setParameter(Arrays.asList(arg0, arg1)); try { Tag response = tagmanager.accounts().containers(). tags().create("123456", "54321", tag).execute(); } catch (GoogleJsonResponseException e) { System.err.println("There was a service error: " + e.getDetails().getCode() + " : " + e.getDetails().getMessage()); } /* * The results of the create method are stored in response object. * The following code shows how to access the created id and fingerprint. */ System.out.println("Tag id = " + response.getTagId()); System.out.println("Tag Fingerprint = " + response.getFingerprint());
Python
Uses the Python client library.
# Note: This code assumes you have an authorized tagmanager service object. # This request creates a new container tag. try: response = tagmanager.accounts().containers().tags().create( accountId='123456', containerId='54321', body={ 'name': 'Universal Analytics Tag', 'type': 'ua', 'liveOnly': False, 'parameter': [ { 'type': 'template', 'key': 'trackingId', 'value': 'UA-123456-1' }, { 'type': 'template', 'key': 'type', 'value': 'TRACK_TRANSACTION' } ] } ).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 create method are stored in the response object. # The following code shows how to access the created id and fingerprint. print response.get('tagId') print response.get('fingerprint')
Try it!
Use the APIs Explorer below to call this method on live data and see the response.