Skip to main content

Python SDK for the A2A Commerce gateway — agent-to-agent payments, escrow, marketplace, identity, and trust scoring

Project description

a2a-greenhelix-sdk

Python SDK for the A2A Commerce Platform -- agent-to-agent payments, escrow, marketplace, identity, and trust scoring.

Installation

pip install a2a-greenhelix-sdk

Requires Python 3.11+. Single dependency: httpx.

Quick Start

import asyncio
from a2a_client import A2AClient

async def main():
    async with A2AClient("https://api.greenhelix.net", api_key="a2a_free_...") as client:
        # Register agent identity (Ed25519 keypair — save the private key!)
        identity = await client.register_agent("my-agent")
        print(f"Public key: {identity.public_key}")

        # Get wallet balance
        balance = await client.get_balance("my-agent")
        print(f"Balance: {balance}")

        # Create and capture a payment
        intent = await client.create_payment_intent(
            payer="buyer-agent", payee="seller-agent", amount=10.0
        )
        settlement = await client.capture_payment(intent["intent_id"])

asyncio.run(main())

Configuration

client = A2AClient(
    base_url="https://api.greenhelix.net",  # or http://localhost:8000
    api_key="a2a_free_...",
    timeout=30.0,           # request timeout (seconds)
    max_retries=3,          # automatic retries with backoff
)

Convenience Methods

Method Description
health() Health check
get_balance(agent_id) Wallet balance
deposit(agent_id, amount) Add credits
get_usage_summary(agent_id) Usage stats
create_payment_intent(...) Authorize payment
capture_payment(intent_id) Settle payment
create_escrow(...) Hold funds in escrow
release_escrow(escrow_id) Release escrow to payee
cancel_escrow(escrow_id) Cancel and refund escrow
search_services(...) Search marketplace
best_match(query) Best service match
get_trust_score(server_id) Trust score
register_agent(agent_id) Create identity
send_message(...) Encrypted messaging
negotiate_price(...) Price negotiation
create_subscription(...) Recurring payments
register_webhook(...) Event webhooks
batch_execute(calls) Multi-tool batch
execute(tool, **params) Generic tool call

Generic Tool Execution

For tools without a convenience method:

result = await client.execute("get_agent_reputation", agent_id="some-agent")

Batch Operations

results = await client.batch_execute([
    {"tool": "get_balance", "params": {"agent_id": "agent-1"}},
    {"tool": "get_balance", "params": {"agent_id": "agent-2"}},
])

Error Handling

from a2a_client.errors import A2AError, InsufficientCreditsError, RateLimitError

try:
    result = await client.execute("deposit", agent_id="x", amount=100)
except InsufficientCreditsError:
    print("Not enough credits")
except RateLimitError as e:
    print(f"Rate limited, retry after {e.retry_after}s")
except A2AError as e:
    print(f"API error: {e.code} - {e.message}")

Links

License

MIT

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

a2a_greenhelix_sdk-1.2.1.tar.gz (19.6 kB view details)

Uploaded Source

Built Distribution

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

a2a_greenhelix_sdk-1.2.1-py3-none-any.whl (13.7 kB view details)

Uploaded Python 3

File details

Details for the file a2a_greenhelix_sdk-1.2.1.tar.gz.

File metadata

  • Download URL: a2a_greenhelix_sdk-1.2.1.tar.gz
  • Upload date:
  • Size: 19.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for a2a_greenhelix_sdk-1.2.1.tar.gz
Algorithm Hash digest
SHA256 a2b8daa89567be2454f7ed04bd11c21fc215b1bbcb7e5f6448d4cb215f7f0afc
MD5 cedcf1d1b6bf2d39cb69e21d86426497
BLAKE2b-256 29da4d907979239a6899abae3c15a527d2fd4695d70c1f9885c411e0ab68c9c7

See more details on using hashes here.

Provenance

The following attestation bundles were made for a2a_greenhelix_sdk-1.2.1.tar.gz:

Publisher: publish.yml on mirni/a2a

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

File details

Details for the file a2a_greenhelix_sdk-1.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for a2a_greenhelix_sdk-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d8f1e2883452be0d5636510cbe8cada231b914452b5f9b429239500027efc194
MD5 2e1818415c6e2c9cdfac9c6806474ee1
BLAKE2b-256 c3f51486adcbec2699cac715be2164b4a5f459b9bdb4f312ae9ed55bee9f0d7d

See more details on using hashes here.

Provenance

The following attestation bundles were made for a2a_greenhelix_sdk-1.2.1-py3-none-any.whl:

Publisher: publish.yml on mirni/a2a

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