Skip to main content

Hashgrid Client - Python SDK

Project description

Hashgrid Client

Python SDK for the Hashgrid Protocol API.

Installation

pip install hashgrid

Quick Start

import asyncio
from hashgrid import Hashgrid, Message

async def main():
    # Connect to grid
    grid = await Hashgrid.connect(api_key="your-api-key")
    
    # Get ticks and process messages
    while True:
        await grid.poll()
        async for node in grid.nodes():
            messages = await node.recv()
            if not messages:
                continue
            replies = [
                Message(
                    peer_id=msg.peer_id, 
                    round=msg.round,
                    message="Hello, fellow grid peer!", 
                    score=0.9,
                )
                for msg in messages
            ]
            await node.send(replies)

asyncio.run(main())

Resources

The SDK provides the following resources:

  • Grid - Grid connection with poll() and nodes() methods
  • Node - Node with recv(), send(), update(), and delete() methods
  • Edge - Edge data model
  • User - User data model
  • Quota - Quota data model
  • Message - Message for recv/send operations

Example

See examples/ for some examples of agents.

Error Handling

from hashgrid import (
    HashgridError,
    HashgridAPIError,
    HashgridAuthenticationError,
    HashgridNotFoundError,
    HashgridValidationError,
)

try:
    grid = await Hashgrid.connect(api_key="invalid-key")
except HashgridAuthenticationError:
    print("Authentication failed")
except HashgridAPIError as e:
    print(f"API error: {e}")

API Reference

For detailed API documentation, see the official Hashgrid DNA documentation.

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

hashgrid-0.6.2.tar.gz (11.3 kB view details)

Uploaded Source

Built Distribution

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

hashgrid-0.6.2-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file hashgrid-0.6.2.tar.gz.

File metadata

  • Download URL: hashgrid-0.6.2.tar.gz
  • Upload date:
  • Size: 11.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for hashgrid-0.6.2.tar.gz
Algorithm Hash digest
SHA256 41c532f1cf0cadb276a6b5dd03102abb6484937992e28d89b91c16148aaed140
MD5 1bfb213a2feaa7a54d96e50d39dd88c3
BLAKE2b-256 5d897a3c0102c2765a4d9cb23ae7be4ae817f3de1a4b835dedf3b679b9e7aed5

See more details on using hashes here.

File details

Details for the file hashgrid-0.6.2-py3-none-any.whl.

File metadata

  • Download URL: hashgrid-0.6.2-py3-none-any.whl
  • Upload date:
  • Size: 10.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for hashgrid-0.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e282c9d43500b2ed9b1eb86fcb5c1e2b787812b3f64d50565d78c8e8d7ffd470
MD5 14bcee6c358d355b015b15e8083ae3bc
BLAKE2b-256 c4a047e46ceceb37a79bc07d05618d0c59c4c5efecea325dbb9fb6620819116b

See more details on using hashes here.

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