# create_driver

> **Function** in `langchain_neo4j`

📖 [View in docs](https://reference.langchain.com/python/langchain-neo4j/checkpoint/_internal/create_driver)

Create a Neo4j driver with authentication.

## Signature

```python
create_driver(
    uri: str,
    user: str,
    password: str,
    database: str | None = None,
    **kwargs: object = {},
) -> Driver
```

## Description

**Example:**

>>> driver = create_driver(
...     uri="bolt://localhost:7687",
...     user="neo4j",
...     password="password"
... )

## Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `uri` | `str` | Yes | Neo4j connection URI (e.g., "bolt://localhost:7687"). |
| `user` | `str` | Yes | Neo4j username. |
| `password` | `str` | Yes | Neo4j password. |
| `database` | `str \| None` | No | Optional database name (defaults to Neo4j default). (default: `None`) |
| `**kwargs` | `object` | No | Additional driver configuration options. (default: `{}`) |

## Returns

`Driver`

A configured Neo4j Driver instance.

---

[View source on GitHub](https://github.com/langchain-ai/langchain-neo4j/blob/cb87fdba5ae2f6bc5092eb76a322e27c46512846/libs/neo4j/langchain_neo4j/checkpoint/_internal.py#L46)