Returns version and feature-flag information about the AIAv2 API server.
{- "version": "string",
- "langgraph_js_version": "string",
- "context": "string",
- "flags": {
- "assistants": true,
- "crons": true,
- "langsmith": true,
- "langsmith_tracing_replicas": true
}
}Analyzes the given documents and suggests redaction annotations based on the
redaction criteria. Works with or without a database. Accepts JSON or, for the
database-less configuration, multipart/form-data (a file blob plus a data field).
| model | string Optional model id (e.g. "gpt4"). |
required | Array of objects (DocumentInput) non-empty |
| criteria required | string The redaction criteria, e.g. "PII" or "the word SECRET". |
object |
{- "model": "string",
- "documents": [
- {
- "documentId": "string",
- "file": "string",
- "layerName": "string",
- "pages": [
- 0
]
}
], - "criteria": "string",
- "options": {
- "confidence": {
- "threshold": 0
}
}
}{- "stagedActions": [
- {
- "type": "staged-redaction",
- "document": {
- "documentId": "string",
- "layerName": "string"
}, - "pageIndex": 0,
- "terms": [
- "string"
]
}
]
}Performs single-shot question-answering across one or more documents, retrieving
relevant context to generate an answer. Works with or without a database. Accepts
JSON or, for the database-less configuration, multipart/form-data.
required | Array of objects (DocumentInput) non-empty |
| input required | string The question to ask about the document(s). |
| model | string Optional model id (e.g. "gpt4"). |
{- "documents": [
- {
- "documentId": "string",
- "file": "string",
- "layerName": "string",
- "pages": [
- 0
]
}
], - "input": "string",
- "model": "string"
}{- "content": "string",
- "references": [
- {
- "pageContent": "string",
- "metadata": {
- "loc": {
- "pageNumber": 0
}
}
}
]
}Provides an LLM-based summary of what changed plus up to five suggested categories, intended for use as user preferences in a follow-up tagging request. Stateless; no changes are stored.
required | Array of objects (DocumentChange) |
| model | string Optional LLM model id (e.g. "gpt4o"). |
{- "changes": [
- {
- "id": "string",
- "text": "string",
- "type": "insert",
- "page": 0,
- "contextBefore": "string",
- "contextAfter": "string"
}
], - "model": "string"
}{- "summary": "string",
- "categories": [
- "string"
]
}Categorizes document changes against a list of user-defined labels and returns each change with its matching categories. Stateless; no changes are stored.
required | Array of objects (DocumentChange) |
| tags required | Array of strings Categories to tag the changes with. |
| model | string |
{- "changes": [
- {
- "id": "string",
- "text": "string",
- "type": "insert",
- "page": 0,
- "contextBefore": "string",
- "contextAfter": "string"
}
], - "tags": [
- "string"
], - "model": "string"
}{- "references": [
- {
- "id": "string",
- "text": "string",
- "type": "insert",
- "page": 0,
- "contextBefore": "string",
- "contextAfter": "string",
- "tag": [
- "string"
]
}
]
}OpenAI-compatible chat completions. Supports both simple chat and document-grounded
responses. Provide documents to ground the answer on ingested document content.
| model | string Optional model id (e.g. "gpt4"). |
required | Array of objects |
Array of objects | |
| temperature | number Controls randomness (0-1, default 0.7). |
| nutrient_dont_send_defaults | boolean Skip sending default parameters to the model (some deployments hang otherwise). |
{- "model": "string",
- "messages": [
- {
- "role": "string",
- "content": "string"
}
], - "documents": [
- {
- "documentId": "string",
- "layerName": "string"
}
], - "temperature": 0,
- "nutrient_dont_send_defaults": true
}{- "id": "string",
- "object": "chat.completion",
- "created": 0,
- "model": "string",
- "choices": [
- {
- "index": 0,
- "message": {
- "role": "assistant",
- "content": "string"
}, - "logprobs": { },
- "finish_reason": "stop"
}
], - "usage": {
- "prompt_tokens": 0,
- "completion_tokens": 0,
- "total_tokens": 0
}
}Stream a run within an existing thread context via Server-Sent Events. State is
persisted to the thread, and the run supports interrupts. See the stateless
/runs/stream endpoint for the event format.
| thread_id required | string |
| assistant_id required | string LangGraph-compatible assistant ID of the agent to execute. Provide at least one of |
| agent_id | string Product-facing agent ID of the agent to execute. Provide at least one of |
| input | any Input for the agent. For the default agent this is |
object (RecordStringUnknown) | |
object (RecordStringUnknown) | |
object Per-run context fields, e.g. | |
object (RecordStringUnknown) | |
StreamMode (string) or Array of StreamMode (strings) Which events to emit. A single mode or an array of modes. | |
string or Array of strings | |
string or Array of strings | |
| feedback_keys | Array of strings |
| stream_subgraphs | boolean |
| checkpoint_id | string |
object (RecordStringUnknown) |
{- "assistant_id": "chat",
- "agent_id": "contract-review",
- "input": {
- "messages": [
- {
- "role": "user",
- "content": "Summarize this document"
}
]
}, - "command": { },
- "config": { },
- "context": { },
- "metadata": { },
- "stream_mode": [
- "values",
- "messages"
], - "interrupt_before": "*",
- "interrupt_after": "*",
- "feedback_keys": [
- "string"
], - "stream_subgraphs": true,
- "checkpoint_id": "string",
- "checkpoint": { }
}{- "error": "string",
- "message": "string",
- "details": [
- {
- "field": "string",
- "message": "string"
}
]
}Execute an agent and stream results via Server-Sent Events. Stateless: no
conversation state is persisted. The first event is metadata ({ run_id, attempt });
subsequent events depend on stream_mode (values, messages/partial,
messages/complete, updates, debug), ending on completion or an error event.
Maximum stream duration is 5 minutes.
Note: JWTs with session_ids claims are not compatible with this endpoint.
| assistant_id required | string LangGraph-compatible assistant ID of the agent to execute. Provide at least one of |
| agent_id | string Product-facing agent ID of the agent to execute. Provide at least one of |
| input | any Input for the agent. For the default agent this is |
object (RecordStringUnknown) | |
object (RecordStringUnknown) | |
object Per-run context fields, e.g. | |
object (RecordStringUnknown) | |
StreamMode (string) or Array of StreamMode (strings) Which events to emit. A single mode or an array of modes. | |
string or Array of strings | |
string or Array of strings | |
| feedback_keys | Array of strings |
| stream_subgraphs | boolean |
| checkpoint_id | string |
object (RecordStringUnknown) |
{- "assistant_id": "chat",
- "agent_id": "contract-review",
- "input": {
- "messages": [
- {
- "role": "user",
- "content": "Summarize this document"
}
]
}, - "command": { },
- "config": { },
- "context": { },
- "metadata": { },
- "stream_mode": [
- "values",
- "messages"
], - "interrupt_before": "*",
- "interrupt_after": "*",
- "feedback_keys": [
- "string"
], - "stream_subgraphs": true,
- "checkpoint_id": "string",
- "checkpoint": { }
}{- "error": "string",
- "message": "string",
- "details": [
- {
- "field": "string",
- "message": "string"
}
]
}Execute an agent to completion and return the final graph state as JSON.
This endpoint runs in stateless mode: an ephemeral thread is created for the execution and deleted after completion. No conversation state is persisted.
Response modes:
Keep-alive (default): Uses chunked transfer encoding. Newline characters (\n) are sent every second to prevent proxy/load balancer timeouts. The final JSON result is appended after execution completes. The response is transparent to JSON.parse() since leading whitespace is ignored.
Pure JSON: Send Accept: application/json header. Returns a standard JSON response with no newline padding. Simpler but may timeout on long-running agents behind proxies.
Error handling:
{ "__error__": { "error": "...", "message": "..." } } in the response body.Headers:
Content-Location: /runs/{run_id} is set before execution begins.Maximum execution time is 5 minutes.
Note: JWTs with session_ids claims are not compatible with this endpoint.
Request body for creating a stateless run.
| assistant_id required | string LangGraph-compatible assistant ID of the agent to execute. Provide at least one of |
| agent_id | string Product-facing agent ID of the agent to execute. Provide at least one of |
| input | any Input data for the agent. Structure depends on the agent's input schema. For the default Nutrient assistant agent, the input object supports:
|
object Runtime configuration overrides merged into the agent's default configuration. | |
object Arbitrary metadata attached to the run. Not processed by the server. |
{- "assistant_id": "nutrient-assistant",
- "agent_id": "contract-review",
- "input": {
- "messages": [
- {
- "role": "user",
- "content": "Summarize this document"
}
], - "documents": [
- {
- "fingerprint": "doc-abc123",
- "role": "active"
}
]
}, - "config": { },
- "metadata": { }
}{- "__error__": {
- "error": "string",
- "message": "string"
}
}Create a new conversation thread.
| thread_id | string Optional client-supplied thread id. Generated if omitted. |
object (RecordStringUnknown) | |
| if_exists | string Enum: "raise" "do_nothing" Behaviour when a thread with the given id already exists. |
{- "thread_id": "string",
- "metadata": { },
- "if_exists": "raise"
}{- "thread_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "metadata": { },
- "status": "idle"
}Search threads with filtering and pagination.
object (RecordStringUnknown) | |
| ids | Array of strings |
| status | string Enum: "idle" "busy" "interrupted" "error" |
object (RecordStringUnknown) | |
| limit | integer [ 1 .. 1000 ] |
| offset | integer >= 0 |
| sort_by | string Enum: "thread_id" "status" "created_at" "updated_at" |
| sort_order | string Enum: "asc" "desc" |
{- "metadata": { },
- "ids": [
- "string"
], - "status": "idle",
- "values": { },
- "limit": 1,
- "offset": 0,
- "sort_by": "thread_id",
- "sort_order": "asc"
}[- {
- "thread_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "metadata": { },
- "status": "idle"
}
]Get the current state of a thread.
| thread_id required | string |
| subgraphs | boolean Include subgraph states. |
{- "values": { },
- "next": [
- "string"
], - "checkpoint": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "parent_checkpoint": { },
- "tasks": [
- { }
]
}Get thread state history with filtering.
| thread_id required | string |
| limit | integer [ 1 .. 100 ] |
string or RecordStringUnknown (object) Return states before this checkpoint id (string) or checkpoint object. | |
object (RecordStringUnknown) | |
object (RecordStringUnknown) |
{- "limit": 1,
- "before": "string",
- "metadata": { },
- "checkpoint": { }
}[- {
- "values": { },
- "next": [
- "string"
], - "checkpoint": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "parent_checkpoint": { },
- "tasks": [
- { }
]
}
]Available agents (assistants) on the AIAv2 API.
Every agent has two identifiers:
agent_id — a stable, product-facing slug (e.g. contract-review). Use
this to manage an agent (create/patch/delete/list versions) via the
/agents/{agent_id} routes.assistant_id — a LangGraph-compatible identifier. For built-in agents
this equals agent_id; for saved/custom agents it's a server-generated
UUID. Use this only with LangGraph SDK clients or the mirrored
/assistants/{assistant_id} routes, which (matching LangGraph's own API)
require the UUID and do not accept agent_id as a fallback.You don't need to look the UUID up separately: every response that
represents an agent (POST /agents, GET /agents/{agent_id},
GET /agents, POST /agents/search, and each version snapshot) includes
both agent_id and assistant_id.
Run creation is the one place the two are interchangeable: POST /runs/* and POST /threads/{id}/runs/* accept either agent_id or
assistant_id in the request body.
List all available assistants with pagination.
| limit | integer [ 1 .. 100 ] Default: 10 Maximum number of results (1-100). |
| offset | integer >= 0 Default: 0 Pagination offset. |
[- {
- "assistant_id": "chat",
- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": {
- "configurable": { }
}, - "context": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "version": 1
}
]Create a persisted custom agent configuration and expose it through the LangGraph-compatible assistant API.
| agent_id required | string <= 255 characters ^[a-z0-9]+(?:-[a-z0-9]+)*$ Immutable product-facing identifier: lower-case letters, numbers, and single dashes. Must not collide with an existing agent or a reserved built-in agent id. |
| graph_id | string Default: "react" |
| name | string Human-readable display name. |
| description | string |
object Legacy alias for | |
object The agent definition applied to every run of this agent. Responses echo it back as both | |
object |
{- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": { },
- "context": { },
- "metadata": { }
}{- "assistant_id": "chat",
- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": {
- "configurable": { }
}, - "context": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "version": 1
}Search assistants with advanced filtering.
object (RecordStringUnknown) | |
| graph_id | string |
| limit | integer [ 1 .. 100 ] Default: 10 |
| offset | integer >= 0 Default: 0 |
| sort_by | string Enum: "assistant_id" "agent_id" "graph_id" "name" "created_at" "updated_at" |
| sort_order | string Enum: "asc" "desc" |
{- "metadata": { },
- "graph_id": "string",
- "limit": 10,
- "offset": 0,
- "sort_by": "assistant_id",
- "sort_order": "asc"
}[- {
- "assistant_id": "chat",
- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": {
- "configurable": { }
}, - "context": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "version": 1
}
]Fetch a single assistant (built-in or saved) by its LangGraph-compatible id.
| assistant_id required | string Example: chat LangGraph-compatible assistant id. |
{- "assistant_id": "chat",
- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": {
- "configurable": { }
}, - "context": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "version": 1
}Create a new immutable version of a saved assistant and make it the latest. This is a partial update: supplied top-level fields replace the current value and omitted fields are carried over, but the agent definition (config/context) and metadata are each replaced as a whole object (not deep-merged). Every successful call increments version. Built-in agents are read-only.
| assistant_id required | string Example: chat LangGraph-compatible assistant id. |
| agent_id | string <= 255 characters ^[a-z0-9]+(?:-[a-z0-9]+)*$ Immutable identifier. Optional; if supplied it must match the existing |
| graph_id | string |
| name | string Human-readable display name. |
| description | string |
object Legacy alias for | |
object The agent definition applied to every run. Replaces the previous definition as a whole object; responses echo it as both | |
object |
{- "agent_id": "string",
- "graph_id": "string",
- "name": "Contract Review",
- "description": "string",
- "config": { },
- "context": { },
- "metadata": { }
}{- "assistant_id": "chat",
- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": {
- "configurable": { }
}, - "context": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "version": 1
}Delete a saved assistant and its version history. Built-in assistants are read-only and cannot be deleted.
| assistant_id required | string Example: chat LangGraph-compatible assistant id. |
{- "error": "string",
- "message": "string",
- "details": [
- {
- "field": "string",
- "message": "string"
}
]
}Get the input, output, state, and context schemas for a specific assistant.
| assistant_id required | string Example: chat ID of the assistant. |
{- "graph_id": "string",
- "input_schema": { },
- "output_schema": { },
- "state_schema": { },
- "context_schema": { },
- "config_schema": { }
}Lists immutable version snapshots for a saved assistant. Built-in assistants return their single built-in version.
| assistant_id required | string Example: chat LangGraph-compatible assistant id. |
object Metadata filter (subset match) applied to version snapshots. Ignored for built-in agents, which expose a single built-in version. | |
| limit | integer [ 1 .. 100 ] Default: 10 Maximum number of versions to return (1-100). |
| offset | integer >= 0 Default: 0 Pagination offset. |
{- "metadata": { },
- "limit": 10,
- "offset": 0
}[- {
- "assistant_id": "chat",
- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": {
- "configurable": { }
}, - "context": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "version": 1
}
]Makes an existing saved assistant version the active version.
| assistant_id required | string Example: chat LangGraph-compatible assistant id. |
| version required | integer >= 1 The existing version number to promote to the active (latest) version. |
{- "version": 3
}{- "assistant_id": "chat",
- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": {
- "configurable": { }
}, - "context": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "version": 1
}List all available agents (built-in and saved) with pagination.
| limit | integer [ 1 .. 100 ] Default: 10 Maximum number of results (1-100). |
| offset | integer >= 0 Default: 0 Pagination offset. |
[- {
- "assistant_id": "chat",
- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": {
- "configurable": { }
}, - "context": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "version": 1
}
]Create a persisted custom agent configuration as version 1. Returns the canonical agent object (see the Assistants tag for the identifier model).
| agent_id required | string <= 255 characters ^[a-z0-9]+(?:-[a-z0-9]+)*$ Immutable product-facing identifier: lower-case letters, numbers, and single dashes. Must not collide with an existing agent or a reserved built-in agent id. |
| graph_id | string Default: "react" |
| name | string Human-readable display name. |
| description | string |
object Legacy alias for | |
object The agent definition applied to every run of this agent. Responses echo it back as both | |
object |
{- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": { },
- "context": { },
- "metadata": { }
}{- "assistant_id": "chat",
- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": {
- "configurable": { }
}, - "context": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "version": 1
}Search agents with metadata and graph filters.
object (RecordStringUnknown) | |
| graph_id | string |
| limit | integer [ 1 .. 100 ] Default: 10 |
| offset | integer >= 0 Default: 0 |
| sort_by | string Enum: "assistant_id" "agent_id" "graph_id" "name" "created_at" "updated_at" |
| sort_order | string Enum: "asc" "desc" |
{- "metadata": { },
- "graph_id": "string",
- "limit": 10,
- "offset": 0,
- "sort_by": "assistant_id",
- "sort_order": "asc"
}[- {
- "assistant_id": "chat",
- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": {
- "configurable": { }
}, - "context": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "version": 1
}
]Fetch a single agent (built-in or saved) by its product-facing agent_id.
| agent_id required | string Example: contract-review Product-facing agent id. |
{- "assistant_id": "chat",
- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": {
- "configurable": { }
}, - "context": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "version": 1
}Create a new immutable version of a saved agent and make it the latest. This is a partial update: supplied top-level fields replace the current value and omitted fields are carried over, but the agent definition (config/context) and metadata are each replaced as a whole object (not deep-merged). Every successful call increments version. Built-in agents are read-only.
| agent_id required | string Example: contract-review Product-facing agent id. |
| agent_id | string <= 255 characters ^[a-z0-9]+(?:-[a-z0-9]+)*$ Immutable identifier. Optional; if supplied it must match the existing |
| graph_id | string |
| name | string Human-readable display name. |
| description | string |
object Legacy alias for | |
object The agent definition applied to every run. Replaces the previous definition as a whole object; responses echo it as both | |
object |
{- "agent_id": "string",
- "graph_id": "string",
- "name": "Contract Review",
- "description": "string",
- "config": { },
- "context": { },
- "metadata": { }
}{- "assistant_id": "chat",
- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": {
- "configurable": { }
}, - "context": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "version": 1
}Delete a saved agent and its version history. Built-in agents are read-only and cannot be deleted.
| agent_id required | string Example: contract-review Product-facing agent id. |
{- "error": "string",
- "message": "string",
- "details": [
- {
- "field": "string",
- "message": "string"
}
]
}Get the input, output, state, and context schemas for an agent.
| agent_id required | string Example: contract-review Product-facing agent id. |
{- "graph_id": "string",
- "input_schema": { },
- "output_schema": { },
- "state_schema": { },
- "context_schema": { },
- "config_schema": { }
}List a saved agent's immutable version snapshots (newest first). Built-in agents return their single built-in version.
| agent_id required | string Example: contract-review Product-facing agent id. |
object Metadata filter (subset match) applied to version snapshots. Ignored for built-in agents, which expose a single built-in version. | |
| limit | integer [ 1 .. 100 ] Default: 10 Maximum number of versions to return (1-100). |
| offset | integer >= 0 Default: 0 Pagination offset. |
{- "metadata": { },
- "limit": 10,
- "offset": 0
}[- {
- "assistant_id": "chat",
- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": {
- "configurable": { }
}, - "context": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "version": 1
}
]Promote an existing saved-agent version to be the active (latest) version. Built-in agents are read-only.
| agent_id required | string Example: contract-review Product-facing agent id. |
| version required | integer >= 1 The existing version number to promote to the active (latest) version. |
{- "version": 3
}{- "assistant_id": "chat",
- "agent_id": "contract-review",
- "graph_id": "react",
- "name": "Contract Review",
- "description": "string",
- "config": {
- "configurable": { }
}, - "context": { },
- "metadata": { },
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "version": 1
}Returns the identifiers of all the documents ingested into the Nutrient AI Assistant database.
If the identifier is listed in the response, the database contains contextual information such document metadata, and document contents, as well as AI synthesized information such as classifications, and summaries.
{- "documents": [
- {
- "documentId": "123456789abc",
- "layerName": "myLayer"
}
]
}Deletes the data associated with each layer of the given document, as well as the document default layer (no layer name) itself.
All data including contextual data such as document metadata, and document contents, as well as AI synthesized information such as classifications, and summaries will be deleted.
| documentId required | string Example: 123456789abc The ID of the document to delete. This ID is given when creating the document on the Document Engine. |
{ }Deletes the data associated with the given document layer.
All data including contextual data such as document metadata, and document contents, as well as AI synthesized information such as classifications, and summaries will be deleted.
| documentId required | string Example: 123456789abc The ID of the document to delete the layer from. This ID is given when creating the document on the Document Engine. |
| layerName required | string Example: 123456789abc The name of the layer to delete. This layer name is given when creating a layer on the Document Engine. |
{ }Checks if a document with the given ID and file hash has already been ingested into the Nutrient AI Assistant database.
| documentId required | string The permanent ID of the document to check if it is ingested. This ID uniquely identifies a document and won't change if the document is modified. |
| fileHash required | string The hash of the file in its current state. |
{ }Ingests a PDF document directly into the Nutrient AI Assistant database. The document will be processed, analyzed, and stored for future retrieval and analysis.
The endpoint expects a raw PDF file in the request body with content-type application/pdf.
Returns permanent and changing IDs for the document.
{- "permanentId": "string",
- "changingId": "string",
- "token": "string"
}Ingests a PDF document stored in Nutrient Document Engine into the Nutrient AI Assistant database. The document will be processed, analyzed, and stored for future retrieval and analysis.
| documentId required | string Example: 123456789abc The ID of the document to ingest. This ID is given when creating the document on the Document Engine. |
| fileHash required | string Example: 123456789abc The hash of the file in its current state. This will be used to check if the file has changed since the last ingest and whether to trigger a new ingest. |
{ }Ingests a PDF document stored in Nutrient Document Engine into the Nutrient AI Assistant database. The document will be processed, analyzed, and stored for future retrieval and analysis.
| documentId required | string Example: 123456789abc The ID of the document to ingest. This ID is given when creating the document on the Document Engine. |
| layerName required | string Example: myLayer The name of the layer to ingest. This layer name is given when creating a layer on the Document Engine. |
| fileHash required | string Example: 123456789abc The hash of the file in its current state. This will be used to check if the file has changed since the last ingest and whether to trigger a new ingest. |
{ }Returns all the session information held in the AI Assistant database.
This includes the session ID, the user ID (if present), and the timestamp of the last message sent.
{- "sessions": [
- {
- "sessionId": "123456789abc",
- "timestamp": 1620000000000,
- "userId": "123456789abc"
}
]
}Deletes all session data for the given Session ID.
This includes all messages and metadata associated with the session. Meaning the chat history will no longer be available.
| sessionId required | string Example: 123456789abc The unique identifier for the session. This value is given as part of the AI Assistant configuration when initializing the Nutrient Web SDK. |
{ }Returns all the session information for all sessions tagged with a given user ID.
Sessions are tagged with a user ID when the AI Assistant configuration in the Nutrient Web SDK is initialized with a user ID.
| userId required | string Example: 123456789abc The unique identifier for the user. This value is optionally given in the AI Assistant configuration when initializing the Nutrient Web SDK. |
{- "sessions": [
- {
- "sessionId": "123456789abc",
- "timestamp": 1620000000000,
- "userId": "123456789abc"
}
]
}Ingests a PDF document without relying on Document Engine. The request body is the
raw PDF (application/pdf). Returns the permanent and changing ids and, for client
requests, a new JWT scoped to the ingested document.
{- "permanentId": "string",
- "changingId": "string",
- "token": "string"
}Ingests a document stored in Nutrient Document Engine. Requires Document Engine.
| documentId required | string Example: 123456789abc |
| fileHash required | string A hash of the file content to detect changes. |
{- "error": {
- "type": "string",
- "message": "string"
}
}Ingests a specific layer of a document stored in Nutrient Document Engine. Requires Document Engine.
| documentId required | string Example: 123456789abc |
| layerName required | string Example: myLayer |
| fileHash required | string |
{- "error": {
- "type": "string",
- "message": "string"
}
}Checks if a document with the given file hash has already been ingested.
| documentId required | string |
| fileHash required | string |
{- "error": {
- "type": "string",
- "message": "string"
}
}Retrieves the chat history for a specific session.
| sessionId required | string Example: 123456789abc |
[- {
- "requestId": "string",
- "sender": "human",
- "timestamp": 0,
- "documents": [
- {
- "documentId": "string",
- "layerName": "string"
}
], - "content": "string",
- "links": [
- { }
], - "suggestions": [
- { }
], - "stagedActions": [
- { }
], - "actions": [
- { }
], - "additionalContext": { },
- "partial": true
}
]Forces an immediate licensor re-activation on the running instance without a restart: it pings the licensor, validates the returned key, persists it when a database is configured, and hot-swaps the live license.
Requires an activation-key deployment (ACTIVATION_KEY). Only the replica that handled the request
updates immediately; other replicas converge within the periodic license check interval (~2 hours)
or on restart. Repeated calls are rate-limited for a short cooldown after a successful refresh.
{- "message": "string"
}