---
title: "Submit Llm Task Async"
method: POST
path: "/research/llm/async"
tags: ["research", "research"]
---

# Submit Llm Task Async

`POST /research/llm/async`

## Request

- Base URL: `https://api.fincept.in` (the document declares no server; this is the origin it was published from)
- URL: `https://api.fincept.in/research/llm/async`
- Auth: API key in header `X-API-Key`

Submit an LLM request for async processing.
Returns a task_id immediately. Poll /research/llm/status/{task_id} for results.

This is a drop-in addition to the existing synchronous POST /research/llm endpoint.
The synchronous endpoint stays COMPLETELY UNCHANGED.

Cost: 5 credits per successful response (same as sync endpoint)
Note: Credits are ONLY deducted on successful LLM response. If the LLM fails, no credits are charged.

Usage from client:
  1. POST /research/llm/async  { prompt, temperature, max_tokens }
     -> { success: true, task_id: "abc123" }
  2. Poll GET /research/llm/status/abc123 every 3-5 seconds
     -> { status: "processing" }  (keep polling)
     -> { status: "completed", data: { response: "...", ... } }  (done)
     -> { status: "failed", error: "..." }  (error)

Tasks auto-expire after 30 minutes.

## Request body

- AsyncLLMRequest: Request model for async LLM processing - same fields as LLMRequest
  - `prompt` string, required
  - `max_tokens` integer, nullable
  - `temperature` number, nullable
  - `tools` unknown[], nullable
    - unknown
  - `tool_choice` object, nullable

## Response `200`

Successful Response

- AsyncLLMResponse
  - `success` boolean, required
  - `task_id` string, required
  - `message` string

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/fincept/apis/fincept-api.md) · [All operations](https://skmtc.dev/fincept/apis/fincept-api/llms.txt) · [OpenAPI document](https://skmtc.dev/fincept/apis/fincept-api/revisions/e9c0076ea55a?raw)
