Skip to main content

Official Dial LangChain tools — phone numbers, SMS, WhatsApp, and voice calls for AI agents

Project description

dial-langchain

Official LangChain tools for Dial — phone numbers, SMS, WhatsApp, and AI voice calls for AI agents.

Install

pip install dial-langchain
# or
uv add dial-langchain

This pulls in dial-sdk and langchain-core automatically. Requires Python 3.11+.

Quickstart

Build one DialClient, hand it to DialToolkit, and call get_tools() to give an agent the full set — no per-tool imports. Every tool shares that one client (a single connection pool):

from dial_sdk import DialClient, DialConfig
from dial_langchain import DialToolkit
from langchain.chat_models import init_chat_model
from langgraph.prebuilt import create_react_agent

model = init_chat_model("claude-sonnet-4-6", model_provider="anthropic")

dial = DialClient(DialConfig(api_key="sk_live_..."))
toolkit = DialToolkit(client=dial)
agent = create_react_agent(model, toolkit.get_tools())

DialToolkit is a standard LangChain BaseToolkit, so get_tools() works anywhere a list of tools is expected. DialConfig also takes an optional base_url (defaults to https://api.getdial.ai; override it for local or self-hosted setups).

Pick individual tools

When you only want a subset, import the tools directly and pass them the same client. Each Dial capability is a LangChain BaseTool:

from dial_sdk import DialClient, DialConfig
from dial_langchain import (
    ListNumbersTool,
    SendMessageTool,
    MakeCallTool,
    ListCallsTool,
    GetCallTool,
    WaitForMessageTool,
)

dial = DialClient(DialConfig(api_key="sk_live_..."))
tools = [
    ListNumbersTool(client=dial),
    SendMessageTool(client=dial),
    MakeCallTool(client=dial),
]

# Drop into any LangChain agent:
from langchain.agents import create_react_agent
agent = create_react_agent(model, tools, prompt)

The tools are async — LangChain calls them via ainvoke.

Available tools

Tool Tool name (for the LLM)
ListNumbersTool list_numbers
PurchaseNumberTool purchase_number
SetNumberPropertiesTool set_number_properties
ListMessagesTool list_messages
SendMessageTool send_message
ReplyToMessageTool reply_to_message
ListCallsTool list_calls
MakeCallTool make_call
GetCallTool get_call
WaitForMessageTool wait_for_message

Each tool wraps the corresponding dial-sdk call under the hood. DialToolkit.get_tools() returns all of them.

Related

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dial_langchain-0.17.0.tar.gz (135.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dial_langchain-0.17.0-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

Details for the file dial_langchain-0.17.0.tar.gz.

File metadata

  • Download URL: dial_langchain-0.17.0.tar.gz
  • Upload date:
  • Size: 135.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for dial_langchain-0.17.0.tar.gz
Algorithm Hash digest
SHA256 c868d7a1f7e6e17e0ce346c0cdb3ef8536ebf86c11981031ab80a730fec52e5f
MD5 2c4855eaad0f5494bb03741a9c335164
BLAKE2b-256 a01e32b9d596859c621af436579f23a754782e01830c25a21b7cf5001f418ede

See more details on using hashes here.

Provenance

The following attestation bundles were made for dial_langchain-0.17.0.tar.gz:

Publisher: publish-sdk-langchain.yml on GENWAY-AI/dial

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dial_langchain-0.17.0-py3-none-any.whl.

File metadata

File hashes

Hashes for dial_langchain-0.17.0-py3-none-any.whl
Algorithm Hash digest
SHA256 78f4d7e2647733c43f499fd82da68a0d054ac46056862275226ad495071bf529
MD5 c11cb37eedddf36cc630ffd3dd67b7fe
BLAKE2b-256 cee9af2a693cac6e95c67e726d75d80645a172aed77e106159f826c71bdabe5b

See more details on using hashes here.

Provenance

The following attestation bundles were made for dial_langchain-0.17.0-py3-none-any.whl:

Publisher: publish-sdk-langchain.yml on GENWAY-AI/dial

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page