> ## Documentation Index
> Fetch the complete documentation index at: https://www.algolia.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Run Task

> Run a configured task and return the generated object as { output }.

**Required ACL:** `search`

With `?stream=true`, returns the raw partial JSON text stream expected by
AI SDK v5 `useObject`. The streamed JSON is the task output itself.

## Usage

<CodeGroup>
  ```cs C# theme={"system"}
  // Initialize the client
  var client = new AgentStudioClient(
    new AgentStudioConfig("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY")
  );

  // Call the API
  var response = await client.CreateAgentTaskAsync(
    "76710f1b-8231-42e5-b0d1-f43aac618e15",
    new TaskRequest
    {
      Input = new Dictionary<string, object>
      {
        { "pageType", "pdp" },
        { "title", "acmePhone128Gb" },
      },
    }
  );

  // print the response
  Console.WriteLine(response);
  ```

  ```dart Dart theme={"system"}
  // Initialize the client
  final client = AgentStudioClient(
      appId: 'ALGOLIA_APPLICATION_ID', apiKey: 'ALGOLIA_API_KEY');

  // Call the API
  final response = await client.createAgentTask(
    agentId: "76710f1b-8231-42e5-b0d1-f43aac618e15",
    taskRequest: TaskRequest(
      input: {
        'pageType': "pdp",
        'title': "acmePhone128Gb",
      },
    ),
  );

  // print the response
  print(response);
  ```

  ```go Go theme={"system"}
  // Initialize the client
  client, err := agentStudio.NewClient("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY")
  if err != nil {
    // The client can fail to initialize if you pass an invalid parameter.
    panic(err)
  }

  // Use the streaming variant to iterate over events
  stream, err := client.CreateAgentTaskStream(client.NewApiCreateAgentTaskRequest(
    "76710f1b-8231-42e5-b0d1-f43aac618e15",
    agentStudio.NewEmptyTaskRequest().SetInput(map[string]any{"pageType": "pdp", "title": "acmePhone128Gb"})))
  if err != nil {
    // handle the eventual error
    panic(err)
  }

  defer func() { _ = stream.Close() }()

  for stream.Next() {
    event := stream.Current()
    if event.Err != nil {
      // handle the eventual per-event deserialization error
      continue
    }

    
    fmt.Println(*event.Data)
  }

  err = stream.Err()
  if err != nil {
    // handle the eventual error
    panic(err)
  }
  ```

  ```java Java theme={"system"}
  // Initialize the client
  AgentStudioClient client = new AgentStudioClient("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY");

  // Call the API
  TaskResponse response = client.createAgentTask(
    "76710f1b-8231-42e5-b0d1-f43aac618e15",
    new TaskRequest().setInput(
      new HashMap() {
        {
          put("pageType", "pdp");
          put("title", "acmePhone128Gb");
        }
      }
    )
  );

  // print the response
  System.out.println(response);
  ```

  ```js JavaScript theme={"system"}
  // Initialize the client
  const client = agentStudioClient('ALGOLIA_APPLICATION_ID', 'ALGOLIA_API_KEY');

  // Use the streaming variant to iterate over events
  for await (const event of client.createAgentTaskStream({
    agentId: '76710f1b-8231-42e5-b0d1-f43aac618e15',
    taskRequest: { input: { pageType: 'pdp', title: 'acmePhone128Gb' } },
  })) {
    console.log(event.data);
  }
  ```

  ```kotlin Kotlin theme={"system"}
  // Initialize the client
  val client = AgentStudioClient(appId = "ALGOLIA_APPLICATION_ID", apiKey = "ALGOLIA_API_KEY")

  // Call the API
  var response =
    client.createAgentTask(
      agentId = "76710f1b-8231-42e5-b0d1-f43aac618e15",
      taskRequest =
        TaskRequest(
          input =
            buildJsonObject {
              put("pageType", JsonPrimitive("pdp"))
              put("title", JsonPrimitive("acmePhone128Gb"))
            }
        ),
    )


  // print the response
  println(response)
  ```

  ```php PHP theme={"system"}
  // Initialize the client
  $client = AgentStudioClient::create('ALGOLIA_APPLICATION_ID', 'ALGOLIA_API_KEY');

  // Call the API
  $response = $client->createAgentTask(
      '76710f1b-8231-42e5-b0d1-f43aac618e15',
      ['input' => ['pageType' => 'pdp',
          'title' => 'acmePhone128Gb',
      ],
      ],
  );


  // print the response
  var_dump($response);
  ```

  ```python Python theme={"system"}
  # Initialize the client
  # In an asynchronous context, you can use AgentStudioClient instead, which exposes the exact same methods.
  client = AgentStudioClientSync("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY")

  # Use the streaming variant to iterate over events
  for event in client.create_agent_task_stream(
      agent_id="76710f1b-8231-42e5-b0d1-f43aac618e15",
      task_request={
          "input": {
              "pageType": "pdp",
              "title": "acmePhone128Gb",
          },
      },
  ):
      
      print(event.data)
  ```

  ```ruby Ruby theme={"system"}
  # Initialize the client
  client = Algolia::AgentStudioClient.create("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY")

  # Call the API
  response = client.create_agent_task(
    "76710f1b-8231-42e5-b0d1-f43aac618e15",
    Algolia::AgentStudio::TaskRequest.new(input: {pageType: "pdp", title: "acmePhone128Gb"})
  )


  # print the response
  puts(response)
  ```

  ```scala Scala theme={"system"}
  // Initialize the client
  val client = AgentStudioClient(appId = "ALGOLIA_APPLICATION_ID", apiKey = "ALGOLIA_API_KEY")

  // Call the API
  val response = Await.result(
    client.createAgentTask(
      agentId = "76710f1b-8231-42e5-b0d1-f43aac618e15",
      taskRequest = TaskRequest(
        input = Map("pageType" -> "pdp", "title" -> "acmePhone128Gb")
      )
    ),
    Duration(100, "sec")
  )

  // print the response
  println(response)
  ```

  ```swift Swift theme={"system"}
  // Initialize the client
  let client = try AgentStudioClient(appID: "ALGOLIA_APPLICATION_ID", apiKey: "ALGOLIA_API_KEY")

  // Call the API
  let response = try await client.createAgentTask(
      agentId: "76710f1b-8231-42e5-b0d1-f43aac618e15",
      taskRequest: TaskRequest(input: ["pageType": AnyCodable("pdp"), "title": AnyCodable("acmePhone128Gb")])
  )

  // print the response
  print(response)
  ```
</CodeGroup>

<Card icon="folder-code" horizontal="true" title="See the full API reference" arrow="true" href="/doc/rest-api/agent-studio/create-agent-task">
  For more details about input parameters
  and response fields.
</Card>
