Skip to main content
POST
/
v1
/
projects
/
{project_id}
/
research
Create Research Job
curl --request POST \
  --url https://api.example.com/v1/projects/{project_id}/research \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --header 'x-selected-account-id: <api-key>' \
  --data '
{
  "advanced": {
    "decomposition": {
      "model": "openai/gpt-5.4",
      "prompt": "PROMPT_DECOMPOSITION",
      "reasoning": {
        "effort": "high"
      },
      "temperature": 0
    },
    "subtasks": {
      "model": "openai/gpt-5.3-codex",
      "prompt": "PROMPT_SUBTASKS",
      "temperature": 0
    }
  },
  "inputs": {
    "parse_results": [
      "pres_9f86d081884c7d659a2feaa0c55ad015"
    ],
    "vector_stores": [
      "vector_store_9f86d081884c7d659a2feaa0c55ad015"
    ]
  },
  "model": "openai/gpt-5.4",
  "task": {
    "description": "What is the Commencement Date of the document?",
    "output_schema": {
      "properties": {
        "commencement_date": {
          "description": "The Commencement Date",
          "type": "string"
        }
      },
      "type": "object"
    },
    "plan": "1. Find the Start Date\n2. Search for Commencement Date"
  },
  "tools": {
    "lexical_search": {
      "config": {},
      "enabled": false
    },
    "similarity_search": {
      "config": {
        "filters": {
          "file_id": {
            "$eq": "file_9f86d081884c7d659a2feaa0c55ad015"
          }
        },
        "top_k": 5
      },
      "enabled": true
    }
  }
}
'
{
  "id": "<string>",
  "project_id": "<string>",
  "created_at": "2023-11-07T05:31:56Z",
  "object": "job",
  "source_id": "<string>",
  "correlation_id": "<string>",
  "started_at": "2023-11-07T05:31:56Z",
  "completed_at": "2023-11-07T05:31:56Z",
  "result": {},
  "progress": {
    "total": 123,
    "succeeded": 123,
    "failed": 123,
    "cancelled": 123,
    "pending": 123,
    "child_jobs": [
      {
        "source_document_id": "<string>",
        "job_id": "<string>",
        "parse_result_id": "<string>",
        "error": "<string>"
      }
    ]
  },
  "error": "<string>",
  "history": [
    {
      "step": "<string>",
      "timestamp": "2023-11-07T05:31:56Z",
      "duration_ms": 123,
      "status": "<string>",
      "details": {}
    }
  ]
}

Documentation Index

Fetch the complete documentation index at: https://docs.gp.scale.com/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

x-api-key
string
header
required

API key for authentication

x-selected-account-id
string
header
required

Selected Account ID

Path Parameters

project_id
string
required

Body

application/json

Kickoff body for POST /v1/projects/{project_id}/research.

Use tools for per-tool enablement and configuration (same map shape as :class:~dex_core.models.extraction.ExtractionParameters.agentic_tools on extract jobs).

task
ResearchTask · object
required

User task: goal, optional plan, and structured or report-shaped output.

model
string
required

Default model for all agent steps unless overridden in advanced

inputs
ResearchInputs · object

Explicit scope. Empty lists: the API resolves to the project's sole vector store when exactly one exists; otherwise set vector_stores or parse_results explicitly.

tools
Tools · object

Map tool name → enablement + config

advanced
ResearchAdvanced · object

Per-stage model/prompt/temperature/reasoning overrides

execute_dependent_subtask_tool_hints
boolean
default:false

When True, DECOMPOSE tool hints for dependent subtasks are executed as warm-start searches (same semantics as extract execute_dependent_subtask_tool_hints). Default False (intent-only hints for dependents).

Response

Successful Response

Job response model representing an asynchronous operation.

id
string
required

ID of the entity

project_id
string
required

ID of the project

operation
enum<string>
required

Operation type (e.g., 'parse')

Available options:
parse,
batch_parse,
extract,
research,
vector_store,
chunk,
summarization,
create_index,
update_index
status
enum<string>
required

Current job status

Available options:
pending,
running,
succeeded,
partially_succeeded,
failed,
cancelled
created_at
string<date-time>
required

When the job was created

object
string
default:job
Allowed value: "job"
source_id
string | null

Source document/file ID

correlation_id
string | null

Request correlation ID for tracing

started_at
string<date-time> | null

When the job started processing

completed_at
string<date-time> | null

When the job completed

result
Result · object

Job result payload when completed

progress
BatchParseProgress · object

Live progress payload (used by batch jobs)

error
string | null

Error message if job failed

history
JobHistoryEvent · object[] | null

Timeline of job execution events