REST Resource: projects.locations.tagTemplates

Resource: TagTemplate

A tag template defines a tag that can have one or more typed fields.

The template is used to create tags that are attached to GCP resources. Tag template roles provide permissions to create, edit, and use the template. For example, see the TagTemplate User role that includes a permission to use the tag template to tag resources.

JSON representation
  "name": string,
  "displayName": string,
  "isPubliclyReadable": boolean,
  "fields": {
    string: {
      object (TagTemplateField)


The resource name of the tag template in URL format.

Note: The tag template itself and its child resources might not be stored in the location specified in its name.



Display name for this template. Defaults to an empty string.

The name must contain only Unicode letters, numbers (0-9), underscores (_), dashes (-), spaces ( ), and can't start or end with spaces. The maximum length is 200 characters.



Indicates whether this is a public tag template.

Every user has view access to a public tag template by default. This means that:

  • Every user can use this tag template to tag an entry.
  • If an entry is tagged using the tag template, the tag is always shown in the response to tags.list called on the entry.
  • To get the template using the tagTemplates.get method, you need view access either on the project or the organization the tag template resides in but no other permission is needed.
  • Operations on the tag template other than viewing (for example, editing IAM policies) follow standard IAM structures.

Tags created with a public tag template are referred to as public tags.

You can search for a public tag by value with a simple search query instead of using a tag: predicate.

Public tag templates may not appear in search results depending on scope, see: includePublicTagTemplates

Note: If an IAM domain restriction is configured in the tag template's location, the public access will not be enabled but the simple search for tag values will still work.


map (key: string, value: object (TagTemplateField))

Required. Map of tag template field IDs to the settings for the field. This map is an exhaustive list of the allowed fields. The map must contain at least one field and at most 500 fields.

The keys to this map are tag template field IDs. The IDs have the following limitations:

  • Can contain uppercase and lowercase letters, numbers (0-9) and underscores (_).
  • Must be at least 1 character and at most 64 characters long.
  • Must start with a letter or underscore.



Creates a tag template.


Deletes a tag template and all tags that use it.


Gets a tag template.


Gets the access control policy for a resource.


Updates a tag template.


Sets an access control policy for a resource.


Gets your permissions on a resource.