The credit check for AI agents -- trust scoring, signed payments, AML sanctions screening
Project description
AgentPass Python SDK
The credit check for AI agents -- trust scoring, signed payments, AML sanctions screening.
Installation
pip install agentpass
Quick Start
from agentpass import AgentPassClient, register
# Register a new account
result = register("dev@example.com", "Your Name", "password", company="Acme Inc")
api_key = result["apiKey"]
# Create a client
client = AgentPassClient(api_key=api_key)
# Create an agent
agent = client.create_agent("payment-bot", scope=["payments"])
agent_id = agent["id"]
# Check trust score
trust = client.get_trust(agent_id)
print(f"Trust score: {trust['score']}")
# Make a payment
tx = client.pay(agent_id, to="store.example.com", amount=1000, currency="usd")
print(f"Transaction: {tx['transactionId']}")
# Screen against sanctions lists
check = client.screen_sanctions("ACME Corp", country="GB")
print(f"Sanctioned: {check['matched']}")
# Check balance
bal = client.balance()
print(f"Balance: {bal['balance']} cents")
Async Usage
import asyncio
from agentpass import AsyncAgentPassClient
async def main():
async with AsyncAgentPassClient(api_key="apt_live_xxx") as client:
agents = await client.list_agents()
trust = await client.get_trust("agt_123")
tx = await client.pay("agt_123", "store.example.com", 500)
asyncio.run(main())
Identity Verification (Challenge-Response)
Prove an agent's identity using ECDSA P-256 challenge-response:
# Requires: pip install cryptography
result = client.prove_identity(agent_id, private_key_pem)
print(f"Verified: {result['verified']}")
Or step-by-step:
challenge = client.get_challenge(agent_id)
signature = client.sign_challenge(challenge["challenge"], private_key_pem)
result = client.verify_identity(agent_id, challenge["challenge"], signature)
Agent-to-Agent Payments
tx = client.agent_pay(
from_agent_id="agt_sender",
to_agent_id="agt_receiver",
amount=500,
currency="usd",
description="Service fee"
)
All Methods
| Method | Description |
|---|---|
register() |
Register a new developer account (standalone function) |
create_agent(name, scope) |
Create a new agent |
list_agents() |
List all agents |
get_agent(agent_id) |
Get agent details |
revoke_agent(agent_id) |
Revoke an agent |
get_passport(agent_id) |
Get agent passport |
balance() |
Get wallet balance |
topup(amount) |
Top up wallet (cents) |
pay(agent_id, to, amount, ...) |
Make a payment |
agent_pay(from_id, to_id, amount, ...) |
Agent-to-agent payment |
list_transactions() |
List transactions |
get_transaction(tx_id) |
Get transaction by ID |
get_trust(agent_id) |
Get trust score |
trust_report(agent_id) |
Get full trust report |
trust_events(agent_id) |
Trust event history |
get_challenge(agent_id) |
Get identity challenge |
verify_identity(agent_id, challenge, sig) |
Verify signed challenge |
sign_challenge(challenge, pem) |
Sign challenge locally |
prove_identity(agent_id, pem) |
Full identity flow |
screen_sanctions(name, country) |
AML sanctions screening |
sanctions_stats() |
Sanctions DB stats |
account() |
Get account info |
change_password(current, new) |
Change password |
regenerate_key() |
Regenerate API key |
simulate_webhook(event_type, tx_id) |
Simulate Stripe webhook |
demo_purchase(agent_id, product) |
Demo store purchase |
Error Handling
from agentpass import (
AgentPassError,
AuthenticationError,
InsufficientFundsError,
TrustLimitError,
NotFoundError,
ReplayError,
)
try:
client.pay(agent_id, "store", 5000)
except InsufficientFundsError:
print("Top up your wallet first")
except TrustLimitError:
print("Agent trust score too low")
except AuthenticationError:
print("Invalid API key")
except AgentPassError as e:
print(f"Error {e.status}: {e}")
Links
- Website: https://agentpass.co.uk
- Documentation: https://agentpass.co.uk/docs
License
MIT -- (c) 2026 CyberSecAI Ltd.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agentpass_sdk-0.1.0.tar.gz.
File metadata
- Download URL: agentpass_sdk-0.1.0.tar.gz
- Upload date:
- Size: 11.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e29b8817eaac78d0d42b2a61f2a76a212a647efc77245b28a7fc15157ed641e1
|
|
| MD5 |
a0a8e42bfeb1f7d6c4e96bae3dd8ee1e
|
|
| BLAKE2b-256 |
913471dd10388a985bab7f036ab7197e4b601ba04eca51a7abe14589152d07cd
|
File details
Details for the file agentpass_sdk-0.1.0-py3-none-any.whl.
File metadata
- Download URL: agentpass_sdk-0.1.0-py3-none-any.whl
- Upload date:
- Size: 9.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
97dd6722fe88e109e0b3d42cb8b30104462186752ef65148a46c9b1c3d181e9a
|
|
| MD5 |
b1178cdea8caa606f8c62e3bc52dbeea
|
|
| BLAKE2b-256 |
27075d50179a31ac011a048fa536ec2f698d145d059e40cdf30db568616ad67f
|