1. Packages
  2. Packages
  3. Tailscale Provider
  4. API Docs
  5. getService
Viewing docs for Tailscale v0.29.0
published on Saturday, Jul 11, 2026 by Pulumi
tailscale logo tailscale logo
Viewing docs for Tailscale v0.29.0
published on Saturday, Jul 11, 2026 by Pulumi

    The Service data source describes a single Service in a tailnet. See https://tailscale.com/docs/features/tailscale-services for more information.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as tailscale from "@pulumi/tailscale";
    
    const example = tailscale.getService({
        name: "svc:my-service",
    });
    
    import pulumi
    import pulumi_tailscale as tailscale
    
    example = tailscale.get_service(name="svc:my-service")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-tailscale/sdk/go/tailscale"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := tailscale.GetService(ctx, &tailscale.LookupServiceArgs{
    			Name: "svc:my-service",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Tailscale = Pulumi.Tailscale;
    
    return await Deployment.RunAsync(() => 
    {
        var example = Tailscale.GetService.Invoke(new()
        {
            Name = "svc:my-service",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.tailscale.TailscaleFunctions;
    import com.pulumi.tailscale.inputs.GetServiceArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    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 example = TailscaleFunctions.getService(GetServiceArgs.builder()
                .name("svc:my-service")
                .build());
    
        }
    }
    
    variables:
      example:
        fn::invoke:
          function: tailscale:getService
          arguments:
            name: svc:my-service
    
    pulumi {
      required_providers {
        tailscale = {
          source = "pulumi/tailscale"
        }
      }
    }
    
    data "tailscale_getservice" "example" {
      name = "svc:my-service"
    }
    

    Using getService

    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 getService(args: GetServiceArgs, opts?: InvokeOptions): Promise<GetServiceResult>
    function getServiceOutput(args: GetServiceOutputArgs, opts?: InvokeOptions): Output<GetServiceResult>
    def get_service(name: Optional[str] = None,
                    opts: Optional[InvokeOptions] = None) -> GetServiceResult
    def get_service_output(name: pulumi.Input[Optional[str]] = None,
                    opts: Optional[InvokeOptions] = None) -> Output[GetServiceResult]
    func LookupService(ctx *Context, args *LookupServiceArgs, opts ...InvokeOption) (*LookupServiceResult, error)
    func LookupServiceOutput(ctx *Context, args *LookupServiceOutputArgs, opts ...InvokeOption) LookupServiceResultOutput

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

    public static class GetService 
    {
        public static Task<GetServiceResult> InvokeAsync(GetServiceArgs args, InvokeOptions? opts = null)
        public static Output<GetServiceResult> Invoke(GetServiceInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetServiceResult> getService(GetServiceArgs args, InvokeOptions options)
    public static Output<GetServiceResult> getService(GetServiceArgs args, InvokeOptions options)
    
    fn::invoke:
      function: tailscale:index/getService:getService
      arguments:
        # arguments dictionary
    data "tailscale_get_service" "name" {
        # arguments
    }

    The following arguments are supported:

    Name string
    The name of the Service (e.g. svc:my-service).
    Name string
    The name of the Service (e.g. svc:my-service).
    name string
    The name of the Service (e.g. svc:my-service).
    name String
    The name of the Service (e.g. svc:my-service).
    name string
    The name of the Service (e.g. svc:my-service).
    name str
    The name of the Service (e.g. svc:my-service).
    name String
    The name of the Service (e.g. svc:my-service).

    getService Result

    The following output properties are available:

    Addrs List<string>
    The IP addresses assigned to the Service.
    Comment string
    A comment describing the Service.
    Id string
    The Service name, e.g. 'svc:my-service'.
    Name string
    The name of the Service (e.g. svc:my-service).
    Ports List<string>
    The ports that the Service listens on.
    Tags List<string>
    The ACL tags applied to the Service.
    Addrs []string
    The IP addresses assigned to the Service.
    Comment string
    A comment describing the Service.
    Id string
    The Service name, e.g. 'svc:my-service'.
    Name string
    The name of the Service (e.g. svc:my-service).
    Ports []string
    The ports that the Service listens on.
    Tags []string
    The ACL tags applied to the Service.
    addrs list(string)
    The IP addresses assigned to the Service.
    comment string
    A comment describing the Service.
    id string
    The Service name, e.g. 'svc:my-service'.
    name string
    The name of the Service (e.g. svc:my-service).
    ports list(string)
    The ports that the Service listens on.
    tags list(string)
    The ACL tags applied to the Service.
    addrs List<String>
    The IP addresses assigned to the Service.
    comment String
    A comment describing the Service.
    id String
    The Service name, e.g. 'svc:my-service'.
    name String
    The name of the Service (e.g. svc:my-service).
    ports List<String>
    The ports that the Service listens on.
    tags List<String>
    The ACL tags applied to the Service.
    addrs string[]
    The IP addresses assigned to the Service.
    comment string
    A comment describing the Service.
    id string
    The Service name, e.g. 'svc:my-service'.
    name string
    The name of the Service (e.g. svc:my-service).
    ports string[]
    The ports that the Service listens on.
    tags string[]
    The ACL tags applied to the Service.
    addrs Sequence[str]
    The IP addresses assigned to the Service.
    comment str
    A comment describing the Service.
    id str
    The Service name, e.g. 'svc:my-service'.
    name str
    The name of the Service (e.g. svc:my-service).
    ports Sequence[str]
    The ports that the Service listens on.
    tags Sequence[str]
    The ACL tags applied to the Service.
    addrs List<String>
    The IP addresses assigned to the Service.
    comment String
    A comment describing the Service.
    id String
    The Service name, e.g. 'svc:my-service'.
    name String
    The name of the Service (e.g. svc:my-service).
    ports List<String>
    The ports that the Service listens on.
    tags List<String>
    The ACL tags applied to the Service.

    Package Details

    Repository
    tailscale pulumi/pulumi-tailscale
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the tailscale Terraform Provider.
    tailscale logo tailscale logo
    Viewing docs for Tailscale v0.29.0
    published on Saturday, Jul 11, 2026 by Pulumi

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial