> For the complete documentation index, see [llms.txt](https://dnotifier.gitbook.io/product-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dnotifier.gitbook.io/product-docs/reference/dnotifier-class.md).

# DNotifier class

The `DNotifier` class is the main SDK entry point. Instantiate it with credentials and callbacks, call `connect()`, then invoke messaging, AI, or workflow methods.

## Method index

| Category     | Methods                                                                                                                                                             |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Connection   | `connect()`, `getPlanLimits()`, `disconnect()` (Dart only)                                                                                                          |
| Realtime     | `send()`, `sendBinary()`                                                                                                                                            |
| Chat history | `fetchChatHistory()`, `deleteChatHistoryMessage()`                                                                                                                  |
| AI & RAG     | `sendAI()`, `fetchAIHistory()`, `deleteAIHistoryMessage()`, `search()`, `addDocument()`, `updateDocument()`, `deleteDocument()`, `listDocuments()`, `getDocument()` |
| Workflows    | `runWorkflow()`                                                                                                                                                     |
| Deprecated   | `sendWithOpenAI()`                                                                                                                                                  |

## Static workflow helpers (JavaScript)

| Static member               | Description                                 |
| --------------------------- | ------------------------------------------- |
| `DNotifier.defineAgent()`   | Create a named agent                        |
| `DNotifier.Workflow`        | Workflow definition class                   |
| `DNotifier.WorkflowContext` | Context passed to `entry` and agent `run`   |
| `DNotifier.WorkflowRunner`  | Advanced runner (use `runWorkflow` instead) |
| `DNotifier.WorkflowError`   | Workflow validation errors                  |
| `DNotifier.Agent`           | Agent class                                 |

Dart exposes the same workflow types as top-level exports — see [Workflow exports](/product-docs/reference/workflow-exports.md).

## Language pages

* [**JavaScript / TypeScript**](/product-docs/reference/dnotifier-class/javascript-typescript.md) — Full method table with signatures and return types
* [**Dart / Flutter**](/product-docs/reference/dnotifier-class/dart-flutter.md) — Full method table with Dart types

## Prerequisites

All instance methods except the constructor require `await notifier.connect()` first and throw if `isConnected` is false.

## See also

* [Configuration](/product-docs/reference/configuration.md)
* [Transport matrix](/product-docs/reference/transport-matrix.md)
