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")
    
    # Listen for ticks and process messages
    async for tick in grid.listen():
        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 listen() 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.3.5.tar.gz (11.5 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.3.5-py3-none-any.whl (10.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for hashgrid-0.3.5.tar.gz
Algorithm Hash digest
SHA256 99f14561b95e4a44f0efffe9f73a1e8cee3c9f89c0dc8aa94d69b58261913d7a
MD5 175febd71519836f9d04373b1ab65b76
BLAKE2b-256 3286f7013398bfa57310cba8a73e7e0961abccee6826f5ffa004541d9c769521

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hashgrid-0.3.5-py3-none-any.whl
  • Upload date:
  • Size: 10.6 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.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 1a8933c39bb777d536e46303500504e95003c0e6f0a1a1f76933e7ebec455573
MD5 0f6510f865fa2a43c3b9f986b12f54f8
BLAKE2b-256 689e45530f09a4a8d74d1468083f51ef2dd5300ee0fc9d1858777688fc2ce6c9

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