1. Packages
  2. Coder Provider
  3. API Docs
  4. getTask
coder 2.13.1 published on Wednesday, Nov 5, 2025 by coder

coder.getTask

Get Started
coder logo
coder 2.13.1 published on Wednesday, Nov 5, 2025 by coder

    Use this data source to read information about Coder Tasks.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as coder from "@pulumi/coder";
    
    export = async () => {
        const meWorkspace = await coder.getWorkspace({});
        const meTask = await coder.getTask({});
        const task: coder.AiTask[] = [];
        for (const range = {value: 0}; range.value < (meTask.enabled ? meWorkspace.startCount : 0); range.value++) {
            task.push(new coder.AiTask(`task-${range.value}`, {appId: module["example-agent"].task_app_id}));
        }
    }
    
    import pulumi
    import pulumi_coder as coder
    
    me_workspace = coder.get_workspace()
    me_task = coder.get_task()
    task = []
    for range in [{"value": i} for i in range(0, me_workspace.start_count if me_task.enabled else 0)]:
        task.append(coder.AiTask(f"task-{range['value']}", app_id=module["example-agent"]["task_app_id"]))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/coder/v2/coder"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		meWorkspace, err := coder.GetWorkspace(ctx, map[string]interface{}{}, nil)
    		if err != nil {
    			return err
    		}
    		meTask, err := coder.GetTask(ctx, map[string]interface{}{}, nil)
    		if err != nil {
    			return err
    		}
    		var tmp0 pulumi.Float64
    		if meTask.Enabled {
    			tmp0 = meWorkspace.StartCount
    		} else {
    			tmp0 = 0
    		}
    		var task []*coder.AiTask
    		for index := 0; index < tmp0; index++ {
    			key0 := index
    			_ := index
    			__res, err := coder.NewAiTask(ctx, fmt.Sprintf("task-%v", key0), &coder.AiTaskArgs{
    				AppId: pulumi.Any(module.ExampleAgent.Task_app_id),
    			})
    			if err != nil {
    				return err
    			}
    			task = append(task, __res)
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using System.Threading.Tasks;
    using Pulumi;
    using Coder = Pulumi.Coder;
    
    return await Deployment.RunAsync(async() => 
    {
        var meWorkspace = await Coder.GetWorkspace.InvokeAsync();
    
        var meTask = await Coder.GetTask.InvokeAsync();
    
        var task = new List<Coder.AiTask>();
        for (var rangeIndex = 0; rangeIndex < meTask.Enabled ? meWorkspace.StartCount : 0; rangeIndex++)
        {
            var range = new { Value = rangeIndex };
            task.Add(new Coder.AiTask($"task-{range.Value}", new()
            {
                AppId = module.Example_agent.Task_app_id,
            }));
        }
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.coder.CoderFunctions;
    import com.pulumi.coder.AiTask;
    import com.pulumi.coder.AiTaskArgs;
    import com.pulumi.codegen.internal.KeyedValue;
    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 meWorkspace = CoderFunctions.getWorkspace();
    
            final var meTask = CoderFunctions.getTask();
    
            for (var i = 0; i < meTask.applyValue(getTaskResult -> getTaskResult.enabled()) ? meWorkspace.applyValue(getWorkspaceResult -> getWorkspaceResult.startCount()) : 0; i++) {
                new AiTask("task-" + i, AiTaskArgs.builder()
                    .appId(module.example-agent().task_app_id())
                    .build());
    
            
    }
        }
    }
    
    resources:
      task:
        type: coder:AiTask
        properties:
          appId: ${module"example-agent"[%!s(MISSING)].task_app_id}
        options: {}
    variables:
      meWorkspace:
        fn::invoke:
          function: coder:getWorkspace
          arguments: {}
      meTask:
        fn::invoke:
          function: coder:getTask
          arguments: {}
    

    Using getTask

    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 getTask(opts?: InvokeOptions): Promise<GetTaskResult>
    function getTaskOutput(opts?: InvokeOptions): Output<GetTaskResult>
    def get_task(opts: Optional[InvokeOptions] = None) -> GetTaskResult
    def get_task_output(opts: Optional[InvokeOptions] = None) -> Output[GetTaskResult]
    func GetTask(ctx *Context, opts ...InvokeOption) (*GetTaskResult, error)
    func GetTaskOutput(ctx *Context, opts ...InvokeOption) GetTaskResultOutput

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

    public static class GetTask 
    {
        public static Task<GetTaskResult> InvokeAsync(InvokeOptions? opts = null)
        public static Output<GetTaskResult> Invoke(InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetTaskResult> getTask(InvokeOptions options)
    public static Output<GetTaskResult> getTask(InvokeOptions options)
    
    fn::invoke:
      function: coder:index/getTask:getTask
      arguments:
        # arguments dictionary

    getTask Result

    The following output properties are available:

    Enabled bool
    True when executing in a Coder Task context, false when in a Coder Workspace context.
    Id string
    Prompt string
    Enabled bool
    True when executing in a Coder Task context, false when in a Coder Workspace context.
    Id string
    Prompt string
    enabled Boolean
    True when executing in a Coder Task context, false when in a Coder Workspace context.
    id String
    prompt String
    enabled boolean
    True when executing in a Coder Task context, false when in a Coder Workspace context.
    id string
    prompt string
    enabled bool
    True when executing in a Coder Task context, false when in a Coder Workspace context.
    id str
    prompt str
    enabled Boolean
    True when executing in a Coder Task context, false when in a Coder Workspace context.
    id String
    prompt String

    Package Details

    Repository
    coder coder/terraform-provider-coder
    License
    Notes
    This Pulumi package is based on the coder Terraform Provider.
    coder logo
    coder 2.13.1 published on Wednesday, Nov 5, 2025 by coder
      Meet Neo: Your AI Platform Teammate