1. Packages
  2. Ibm Provider
  3. API Docs
  4. getResourceTag
ibm 1.77.1 published on Monday, Apr 14, 2025 by ibm-cloud

ibm.getResourceTag

Explore with Pulumi AI

Retreive information about an existing resource or access tags as a read-only data source. For more information, about resource tags, see controlling access to resources by using tags.

Example Usage

Sample to attach resource tags

import * as pulumi from "@pulumi/pulumi";
import * as ibm from "@pulumi/ibm";

const location = ibm.getSatelliteLocation({
    location: _var.location,
});
const readTag = location.then(location => ibm.getResourceTag({
    resourceId: location.crn,
}));
Copy
import pulumi
import pulumi_ibm as ibm

location = ibm.get_satellite_location(location=var["location"])
read_tag = ibm.get_resource_tag(resource_id=location.crn)
Copy
package main

import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/ibm/ibm"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		location, err := ibm.LookupSatelliteLocation(ctx, &ibm.LookupSatelliteLocationArgs{
			Location: _var.Location,
		}, nil)
		if err != nil {
			return err
		}
		_, err = ibm.LookupResourceTag(ctx, &ibm.LookupResourceTagArgs{
			ResourceId: pulumi.StringRef(location.Crn),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Ibm = Pulumi.Ibm;

return await Deployment.RunAsync(() => 
{
    var location = Ibm.GetSatelliteLocation.Invoke(new()
    {
        Location = @var.Location,
    });

    var readTag = Ibm.GetResourceTag.Invoke(new()
    {
        ResourceId = location.Apply(getSatelliteLocationResult => getSatelliteLocationResult.Crn),
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.ibm.IbmFunctions;
import com.pulumi.ibm.inputs.GetSatelliteLocationArgs;
import com.pulumi.ibm.inputs.GetResourceTagArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        final var location = IbmFunctions.getSatelliteLocation(GetSatelliteLocationArgs.builder()
            .location(var_.location())
            .build());

        final var readTag = IbmFunctions.getResourceTag(GetResourceTagArgs.builder()
            .resourceId(location.applyValue(getSatelliteLocationResult -> getSatelliteLocationResult.crn()))
            .build());

    }
}
Copy
variables:
  location:
    fn::invoke:
      function: ibm:getSatelliteLocation
      arguments:
        location: ${var.location}
  readTag:
    fn::invoke:
      function: ibm:getResourceTag
      arguments:
        resourceId: ${location.crn}
Copy

Retrieve access tags

import * as pulumi from "@pulumi/pulumi";
import * as ibm from "@pulumi/ibm";

const accessTags = ibm.getResourceTag({
    tagType: "access",
});
Copy
import pulumi
import pulumi_ibm as ibm

access_tags = ibm.get_resource_tag(tag_type="access")
Copy
package main

import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/ibm/ibm"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ibm.LookupResourceTag(ctx, &ibm.LookupResourceTagArgs{
			TagType: pulumi.StringRef("access"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Ibm = Pulumi.Ibm;

return await Deployment.RunAsync(() => 
{
    var accessTags = Ibm.GetResourceTag.Invoke(new()
    {
        TagType = "access",
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.ibm.IbmFunctions;
import com.pulumi.ibm.inputs.GetResourceTagArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        final var accessTags = IbmFunctions.getResourceTag(GetResourceTagArgs.builder()
            .tagType("access")
            .build());

    }
}
Copy
variables:
  accessTags:
    fn::invoke:
      function: ibm:getResourceTag
      arguments:
        tagType: access
Copy

Retrieve user tags

import * as pulumi from "@pulumi/pulumi";
import * as ibm from "@pulumi/ibm";

const userTags = ibm.getResourceTag({});
Copy
import pulumi
import pulumi_ibm as ibm

user_tags = ibm.get_resource_tag()
Copy
package main

import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/ibm/ibm"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ibm.LookupResourceTag(ctx, &ibm.LookupResourceTagArgs{}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Ibm = Pulumi.Ibm;

return await Deployment.RunAsync(() => 
{
    var userTags = Ibm.GetResourceTag.Invoke();

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.ibm.IbmFunctions;
import com.pulumi.ibm.inputs.GetResourceTagArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        final var userTags = IbmFunctions.getResourceTag();

    }
}
Copy
variables:
  userTags:
    fn::invoke:
      function: ibm:getResourceTag
      arguments: {}
Copy

Attributes reference

In addition to all argument reference list, you can access the following attribute references after your data source is created.

  • id - (String) The unique identifier of the resource tag.
  • tags - (String) List of tags associated with resource instance.

Using getResourceTag

Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

function getResourceTag(args: GetResourceTagArgs, opts?: InvokeOptions): Promise<GetResourceTagResult>
function getResourceTagOutput(args: GetResourceTagOutputArgs, opts?: InvokeOptions): Output<GetResourceTagResult>
Copy
def get_resource_tag(id: Optional[str] = None,
                     resource_id: Optional[str] = None,
                     resource_type: Optional[str] = None,
                     tag_type: Optional[str] = None,
                     opts: Optional[InvokeOptions] = None) -> GetResourceTagResult
def get_resource_tag_output(id: Optional[pulumi.Input[str]] = None,
                     resource_id: Optional[pulumi.Input[str]] = None,
                     resource_type: Optional[pulumi.Input[str]] = None,
                     tag_type: Optional[pulumi.Input[str]] = None,
                     opts: Optional[InvokeOptions] = None) -> Output[GetResourceTagResult]
Copy
func LookupResourceTag(ctx *Context, args *LookupResourceTagArgs, opts ...InvokeOption) (*LookupResourceTagResult, error)
func LookupResourceTagOutput(ctx *Context, args *LookupResourceTagOutputArgs, opts ...InvokeOption) LookupResourceTagResultOutput
Copy

> Note: This function is named LookupResourceTag in the Go SDK.

public static class GetResourceTag 
{
    public static Task<GetResourceTagResult> InvokeAsync(GetResourceTagArgs args, InvokeOptions? opts = null)
    public static Output<GetResourceTagResult> Invoke(GetResourceTagInvokeArgs args, InvokeOptions? opts = null)
}
Copy
public static CompletableFuture<GetResourceTagResult> getResourceTag(GetResourceTagArgs args, InvokeOptions options)
public static Output<GetResourceTagResult> getResourceTag(GetResourceTagArgs args, InvokeOptions options)
Copy
fn::invoke:
  function: ibm:index/getResourceTag:getResourceTag
  arguments:
    # arguments dictionary
Copy

The following arguments are supported:

Id string
ResourceId string
The CRN of the resource on which the tags should be attached.
ResourceType string
The resource type on which the tags to be attached.
TagType string
Type of the tag. Supported values are: user, service, or access. Default: user
Id string
ResourceId string
The CRN of the resource on which the tags should be attached.
ResourceType string
The resource type on which the tags to be attached.
TagType string
Type of the tag. Supported values are: user, service, or access. Default: user
id String
resourceId String
The CRN of the resource on which the tags should be attached.
resourceType String
The resource type on which the tags to be attached.
tagType String
Type of the tag. Supported values are: user, service, or access. Default: user
id string
resourceId string
The CRN of the resource on which the tags should be attached.
resourceType string
The resource type on which the tags to be attached.
tagType string
Type of the tag. Supported values are: user, service, or access. Default: user
id str
resource_id str
The CRN of the resource on which the tags should be attached.
resource_type str
The resource type on which the tags to be attached.
tag_type str
Type of the tag. Supported values are: user, service, or access. Default: user
id String
resourceId String
The CRN of the resource on which the tags should be attached.
resourceType String
The resource type on which the tags to be attached.
tagType String
Type of the tag. Supported values are: user, service, or access. Default: user

getResourceTag Result

The following output properties are available:

Id string
Tags List<string>
ResourceId string
ResourceType string
TagType string
Id string
Tags []string
ResourceId string
ResourceType string
TagType string
id String
tags List<String>
resourceId String
resourceType String
tagType String
id string
tags string[]
resourceId string
resourceType string
tagType string
id str
tags Sequence[str]
resource_id str
resource_type str
tag_type str
id String
tags List<String>
resourceId String
resourceType String
tagType String

Package Details

Repository
ibm ibm-cloud/terraform-provider-ibm
License
Notes
This Pulumi package is based on the ibm Terraform Provider.