Requires authorization
Updates a GTM variable. Try it now or see an example.
Request
HTTP request
PUT https://www.googleapis.com/tagmanager/v1/accounts/accountId/containers/containerId/variables/variableId
Parameters
Parameter name | Value | Description |
---|---|---|
Path parameters | ||
accountId |
string |
The GTM Account ID. |
containerId |
string |
The GTM Container ID. |
variableId |
string |
The GTM Variable ID. |
Optional query parameters | ||
fingerprint |
string |
When provided, this fingerprint must match the fingerprint of the variable in storage. |
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 Variables resource with the following properties:
Property name | Value | Description | Notes |
---|---|---|---|
Required Properties | |||
name |
string |
Variable display name. | writable |
parameter[].type |
string |
The parameter type. Valid values are:
Acceptable values are:
|
writable |
type |
string |
GTM Variable Type. | writable |
Optional Properties | |||
disablingTriggerId[] |
list |
For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set. | writable |
enablingTriggerId[] |
list |
For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set. | writable |
notes |
string |
User notes on how to apply this variable in the container. | writable |
parameter[] |
list |
The variable'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 |
scheduleEndMs |
long |
The end timestamp in milliseconds to schedule a variable. | writable |
scheduleStartMs |
long |
The start timestamp in milliseconds to schedule a variable. | writable |
Response
If successful, this method returns a Variables 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 updates an existing variable for the authorized user. */ // Create the variable object. Variable variable = new Variable(); variable.setName("RandomNumber"); variable.setType("r"); // The random number type. try { Variable response = tagmanager.accounts().containers(). variables().update("12345", "54321", "2", variable).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
Uses the Python client library.
# Note: This code assumes you have an authorized tagmanager service object. # This request updates an existing variable. try: response = tagmanager.accounts().containers().variables().update( accountId='123456', containerId='54321', variableId='4', body={ 'name': 'updated_random_number', 'type': 'r' } ).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')
Try it!
Use the APIs Explorer below to call this method on live data and see the response.