# OpenAIFunctionsRouter

> **Class** in `langchain_classic`

📖 [View in docs](https://reference.langchain.com/python/langchain-classic/runnables/openai_functions/OpenAIFunctionsRouter)

A runnable that routes to the selected function.

## Signature

```python
OpenAIFunctionsRouter(
    self,
    runnables: Mapping[str, Runnable[dict, Any] | Callable[[dict], Any]],
    functions: list[OpenAIFunction] | None = None,
)
```

## Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `runnables` | `Mapping[str, Runnable[dict, Any] \| Callable[[dict], Any]]` | Yes | A mapping of function names to runnables. |
| `functions` | `list[OpenAIFunction] \| None` | No | Optional list of functions to check against the runnables. (default: `None`) |

## Extends

- `RunnableBindingBase[BaseMessage, Any]`

## Constructors

```python
__init__(
    self,
    runnables: Mapping[str, Runnable[dict, Any] | Callable[[dict], Any]],
    functions: list[OpenAIFunction] | None = None,
)
```

| Name | Type |
|------|------|
| `runnables` | `Mapping[str, Runnable[dict, Any] \| Callable[[dict], Any]]` |
| `functions` | `list[OpenAIFunction] \| None` |


## Properties

- `functions`

---

[View source on GitHub](https://github.com/langchain-ai/langchain/blob/f0c5a28fa05adcda89aebcb449d897245ab21fa4/libs/langchain/langchain_classic/runnables/openai_functions.py#L23)