1. Packages
  2. Coder Provider
  3. API Docs
  4. getTask
coder 2.13.0-pre0 published on Tuesday, Nov 4, 2025 by coder

coder.getTask

Get Started
coder logo
coder 2.13.0-pre0 published on Tuesday, Nov 4, 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.0-pre0 published on Tuesday, Nov 4, 2025 by coder
      Meet Neo: Your AI Platform Teammate