Agent Integrations
Plug-and-play financial capabilities for the world's leading AI frameworks. Give agents scoped payment capability through short-lived tokens and mandate checks.
Frameworks
Built for Every Stack
Use execution-token providers for LangChain, CrewAI, AutoGen, and function-calling agents.
LangChain
Most PopularAdd governed sandbox payment capability to LangChain agents with short-lived execution tokens.
import os
from spendguard import SpendGuardClient
from spendguard.integrations.langchain_tool import SpendGuardTool
management = SpendGuardClient(api_key=os.environ["SPENDGUARD_MANAGEMENT_KEY"])
def mint_execution_token():
token = management.mint_execution_token(
agent_id="agent_...",
mandate_id="mandate_...",
)
return token["executionToken"]
payment_tool = SpendGuardTool(
execution_token_provider=mint_execution_token,
mandate_id="mandate_...",
)
agent = initialize_agent(
tools=[payment_tool],
llm=ChatOpenAI(model="gpt-4")
) CrewAI
Growing FastEquip CrewAI agents with a governed payment tool that requests a fresh execution token per run.
import os
from crewai import Agent, Task
from spendguard import SpendGuardClient
from spendguard.integrations.crewai_tool import SpendGuardCrewTool
management = SpendGuardClient(api_key=os.environ["SPENDGUARD_MANAGEMENT_KEY"])
def mint_execution_token():
token = management.mint_execution_token("agent_...", "mandate_...")
return token["executionToken"]
pay_tool = SpendGuardCrewTool(
execution_token_provider=mint_execution_token,
mandate_id="mandate_...",
)
procurement_agent = Agent(
role="Procurement Specialist",
goal="Purchase required cloud resources",
tools=[pay_tool],
backstory="Expert at sourcing infrastructure"
)
task = Task(
description="Purchase GPU instances for training",
agent=procurement_agent
)OpenAI Assistants
BetaExpose a payment function that mints a short-lived token before calling the SpendGuard payment API.
import os
import openai
from spendguard import SpendGuardClient
management = SpendGuardClient(api_key=os.environ["SPENDGUARD_MANAGEMENT_KEY"])
def execute_payment(args):
token = management.mint_execution_token("agent_...", "mandate_...")
agent_spend = SpendGuardClient(api_key=token["executionToken"])
return agent_spend.execute_payment(
mandate_id="mandate_...",
idempotency_key=args["idempotency_key"],
**args,
)
# Define as an OpenAI function
functions = [{
"name": "execute_payment",
"description": "Execute a payment via SpendGuard",
"parameters": {
"type": "object",
"properties": {
"amount": {"type": "number"},
"merchant": {"type": "string"},
"description": {"type": "string"}
}
}
}]Autogen
NewRegister SpendGuard with AutoGen using an execution-token provider instead of embedding raw API keys in tools.
import os
from autogen import AssistantAgent
from spendguard import SpendGuardClient
from spendguard.integrations.autogen_tool import register_spendguard
management = SpendGuardClient(api_key=os.environ["SPENDGUARD_MANAGEMENT_KEY"])
def mint_execution_token():
token = management.mint_execution_token("agent_...", "mandate_...")
return token["executionToken"]
finance_agent = AssistantAgent(
name="FinanceBot",
system_message="You handle payments...",
llm_config={"model": "gpt-4"}
)
register_spendguard(
finance_agent,
execution_token_provider=mint_execution_token,
mandate_id="mandate_...",
)Request a Custom Integration
Working on a custom framework or need enterprise-specific features? Our team is here to help.