> For the complete documentation index, see [llms.txt](https://docs.autocontentapi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.autocontentapi.com/readme/deep-research.md).

# Deep Research

Advanced research operations

## Get all deep research requests

> Retrieves all deep research requests made by the authenticated user

```json
{"openapi":"3.0.0","info":{"title":"Content API","version":"1.0.0"},"tags":[{"name":"Deep Research","description":"Advanced research operations"}],"servers":[{"url":"https://api.autocontentapi.com"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}}},"paths":{"/deep-research/research":{"get":{"summary":"Get all deep research requests","description":"Retrieves all deep research requests made by the authenticated user","tags":["Deep Research"],"operationId":"getResearches","responses":{"200":{"description":"Successfully retrieved deep research requests","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The request ID"},"requestedOn":{"type":"string","format":"date-time","description":"When the request was made"},"succeededOn":{"type":"string","format":"date-time","description":"When the request was completed"},"status":{"type":"integer","description":"Request status (0=pending, 5=processing, 100=completed)"},"errorOn":{"type":"string","format":"date-time","description":"When the error occurred"},"errorMessage":{"type":"string","description":"Error message if request failed"},"errorCode":{"type":"integer","description":"Error code if request failed"},"prompt":{"type":"string","description":"The research query text"},"outputType":{"type":"string","description":"Output format used for the response (text or json)"},"jsonFormat":{"type":"string","description":"JSON formatting instructions applied when outputType is json"},"isScheduleTemplate":{"type":"boolean","description":"True if this item is a schedule template rather than an executed request"},"scheduleId":{"type":"string","description":"The ID of the schedule template"},"dailyCount":{"type":"integer","description":"Number of times per day this schedule will execute"},"scheduleEndDate":{"type":"string","format":"date-time","description":"End date for the schedule, or null if it runs indefinitely"},"lastScheduleExecutionOn":{"type":"string","format":"date-time","description":"The most recent time this schedule executed"},"nextScheduleExecutionOn":{"type":"string","format":"date-time","description":"The next scheduled execution time"}}}}}}}}}}}}
```

## Perform deep research on a given query

> Conducts advanced research on the provided text query and returns results in the specified output format

```json
{"openapi":"3.0.0","info":{"title":"Content API","version":"1.0.0"},"tags":[{"name":"Deep Research","description":"Advanced research operations"}],"servers":[{"url":"https://api.autocontentapi.com"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}}},"paths":{"/deep-research/research":{"post":{"summary":"Perform deep research on a given query","description":"Conducts advanced research on the provided text query and returns results in the specified output format","tags":["Deep Research"],"operationId":"research","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["text","outputType"],"properties":{"text":{"type":"string","description":"The research query text"},"outputType":{"type":"string","enum":["text","json"],"description":"The format of the output result. When set to json, the response is serialized JSON."},"jsonFormat":{"type":"string","description":"Optional instructions or template describing the JSON structure to generate."},"provider":{"type":"string","enum":["gemini","openai"],"description":"The AI provider to use for research (defaults to gemini)"},"projectIds":{"type":"array","items":{"type":"string"},"description":"Optional array of project IDs to add context from their descriptions"},"files":{"type":"array","description":"Optional array of file URLs or uploaded file IDs (from /files) to attach to the research request","items":{"type":"string"}},"callbackData":{"type":"string","description":"Optional callback data to be returned with the response"},"isScheduled":{"type":"boolean","description":"If true, creates a recurring schedule instead of a one-time request"},"dailyCount":{"type":"integer","minimum":1,"maximum":24,"description":"Number of times per day to execute the research (default 1, only used when isScheduled is true)"},"scheduleEndDate":{"type":"string","format":"date-time","description":"Optional end date for the schedule (only used when isScheduled is true). If not provided, schedule runs indefinitely."}}}}}},"responses":{"200":{"description":"Research request or schedule submitted successfully","content":{"application/json":{"schema":{"oneOf":[{"type":"object","description":"Response for a one-time research request","properties":{"request_id":{"type":"string","description":"The unique ID of the created research request"}}},{"type":"object","description":"Response for a scheduled research request","properties":{"schedule_id":{"type":"string","description":"The unique ID of the created schedule"},"message":{"type":"string","description":"Confirmation message for the schedule"},"dailyCount":{"type":"integer","description":"Number of times per day the research will execute"},"endDate":{"type":"string","format":"date-time","description":"End date for the schedule, or null if no end date"}}}]}}}},"400":{"description":"Bad request - validation error or unauthorized access","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"},"error":{"type":"string"}}}}}},"401":{"description":"Unauthorized - invalid or missing token","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"},"error":{"type":"string"}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"},"error":{"type":"string"}}}}}}}}}}}
```

## Get a specific deep research request by ID

> Retrieves a single deep research request by its unique ID

```json
{"openapi":"3.0.0","info":{"title":"Content API","version":"1.0.0"},"tags":[{"name":"Deep Research","description":"Advanced research operations"}],"servers":[{"url":"https://api.autocontentapi.com"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}}},"paths":{"/deep-research/research/{id}":{"get":{"summary":"Get a specific deep research request by ID","description":"Retrieves a single deep research request by its unique ID","tags":["Deep Research"],"operationId":"getResearchById","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"},"description":"The ID of the deep research request to retrieve"}],"responses":{"200":{"description":"Successfully retrieved deep research request","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"The request ID"},"requestedOn":{"type":"string","format":"date-time","description":"When the request was made"},"succeededOn":{"type":"string","format":"date-time","description":"When the request was completed"},"status":{"type":"integer","description":"Request status (0=pending, 5=processing, 100=completed)"},"errorOn":{"type":"string","format":"date-time","description":"When the error occurred"},"errorMessage":{"type":"string","description":"Error message if request failed"},"errorCode":{"type":"integer","description":"Error code if request failed"},"prompt":{"type":"string","description":"The research query text"},"outputType":{"type":"string","description":"Output format used for the response (text or json)"},"jsonFormat":{"type":"string","description":"JSON formatting instructions applied when outputType is json"},"isScheduleTemplate":{"type":"boolean","description":"True if this item is a schedule template rather than an executed request"},"scheduleId":{"type":"string","description":"The ID of the schedule template"},"dailyCount":{"type":"integer","description":"Number of times per day this schedule will execute"},"scheduleEndDate":{"type":"string","format":"date-time","description":"End date for the schedule, or null if it runs indefinitely"},"lastScheduleExecutionOn":{"type":"string","format":"date-time","description":"The most recent time this schedule executed"},"nextScheduleExecutionOn":{"type":"string","format":"date-time","description":"The next scheduled execution time"},"responseText":{"type":"string","description":"The research result content. When outputType is json, this value is a serialized JSON string."}}}}}},"404":{"description":"Deep research request not found","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"},"error":{"type":"string"}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"},"error":{"type":"string"}}}}}}}}}}}
```

## Get recurring deep research templates

> Returns all recurring deep research templates for the authenticated user with their configuration and scheduling details.

```json
{"openapi":"3.0.0","info":{"title":"Content API","version":"1.0.0"},"tags":[{"name":"Deep Research","description":"Advanced research operations"}],"servers":[{"url":"https://api.autocontentapi.com"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}}},"paths":{"/deep-research/recurring":{"get":{"summary":"Get recurring deep research templates","description":"Returns all recurring deep research templates for the authenticated user with their configuration and scheduling details.","tags":["Deep Research"],"responses":{"200":{"description":"Successfully retrieved recurring templates","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"},"templates":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Unique ID of the recurring template"},"text":{"type":"string","description":"The research query text"},"provider":{"type":"string","enum":["gemini","openai"],"description":"The AI provider for research"},"outputType":{"type":"string","description":"Output format type"},"jsonFormat":{"type":"string","nullable":true,"description":"JSON formatting template applied when outputType is json"},"deletedOn":{"type":"string","format":"date-time","nullable":true,"description":"When the template was deleted (null if not deleted)"},"callbackData":{"type":"string","nullable":true,"description":"User-specific callback data"},"dailyCount":{"type":"integer","description":"Number of executions per day"},"scheduleEndDate":{"type":"string","format":"date-time","nullable":true,"description":"End date for the recurring template (null = indefinite)"},"lastRunAt":{"type":"string","format":"date-time","nullable":true,"description":"Last execution timestamp"},"nextRunAt":{"type":"string","format":"date-time","nullable":true,"description":"Next scheduled execution (null = paused)"},"createdOn":{"type":"string","format":"date-time","description":"Template creation timestamp"}}}}}}}}},"400":{"description":"Bad request - amateur subscription","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"},"error":{"type":"string"}}}}}},"401":{"description":"Unauthorized - invalid or missing token","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"},"error":{"type":"string"}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"},"error":{"type":"string"}}}}}}}}}}}
```

## Update a recurring deep research template

> Updates specific fields of a recurring template. Can be used to pause/resume, change frequency, update end date, or modify the research text.

```json
{"openapi":"3.0.0","info":{"title":"Content API","version":"1.0.0"},"tags":[{"name":"Deep Research","description":"Advanced research operations"}],"servers":[{"url":"https://api.autocontentapi.com"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}}},"paths":{"/deep-research/recurring/{id}":{"post":{"summary":"Update a recurring deep research template","description":"Updates specific fields of a recurring template. Can be used to pause/resume, change frequency, update end date, or modify the research text.","tags":["Deep Research"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"description":"The unique ID of the recurring template to update"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"text":{"type":"string","description":"New research query text"},"dailyCount":{"type":"integer","minimum":1,"maximum":24,"description":"New number of executions per day"},"scheduleEndDate":{"type":"string","format":"date-time","nullable":true,"description":"New end date for the recurring executions (null to remove end date)"},"isActive":{"type":"boolean","description":"Set to false to pause the recurring template, true to resume"}}}}}},"responses":{"200":{"description":"Recurring template updated successfully","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"},"message":{"type":"string"},"template":{"type":"object","description":"The updated template with all fields (same structure as GET /deep-research/recurring response items)"}}}}}},"400":{"description":"Bad request - validation error or amateur subscription","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"},"error":{"type":"string"}}}}}},"401":{"description":"Unauthorized - invalid or missing token","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"},"error":{"type":"string"}}}}}},"404":{"description":"Recurring template not found or unauthorized","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"},"error":{"type":"string"}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"},"error":{"type":"string"}}}}}}}}}}}
```
