Skip to main content

Reference Python SDK for the Monitor as a Service Open Schema v1 (Stellar + IPFS). Powered by Mivisor.com.

Project description

monitor-as-a-service (Python SDK)

Reference Python implementation of the MaaS Open Schema v1. Reads, parses and verifies dIAra/MaaS anchors directly from Stellar + IPFS — no API key, no centralized backend.

Powered by Mivisor.com.

License: MIT

Install

From source (until published to PyPI):

pip install -e ./sdk/py
# or, if using requirements.txt: -e git+https://github.com/alejoherrera/stellar_repo.git#subdirectory=sdk/py&egg=monitor_as_a_service

Quickstart

from monitor_as_a_service import Client

client = Client.testnet("GDRWQERI6PI3WICTGPJBFBEFRV7ZRLCWG3IRA2YZQA5ZINHPY23JCPFR")

project = client.project()
print(project.name, project.partner)

for o in client.outputs():
    print(o.output_id, o.workers, o.phase, o.image_url)

# Verify cryptographic integrity of one output
result = client.verify("20251029-060211")
print("JSON match:", result.json_ok, "Image match:", result.image_ok)

API

Client.testnet(account) / Client.mainnet(account)

Builds a read-only client. Optional kwargs: gateways=[...], timeout=30.

client.project() -> Project | None

Returns the project metadata (name, partner, url, system) read from proj:{code}:* keys.

client.outputs() -> Iterator[Output]

Iterates over all anchored outputs, newest first.

client.get(output_id) -> Output | None

Fetches a specific output.

client.verify(output_id, verify_image=True) -> VerificationResult

Fetches content from IPFS gateways (with fallback) and compares SHA-256 against on-chain anchors.

client.fetch_from_ipfs(cid, as_bytes=False)

Low-level: try each gateway, return parsed JSON or raw bytes.

Examples

License

MIT — see source. The schema itself is CC0.

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

monitor_as_a_service-1.0.1.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

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

monitor_as_a_service-1.0.1-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file monitor_as_a_service-1.0.1.tar.gz.

File metadata

  • Download URL: monitor_as_a_service-1.0.1.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for monitor_as_a_service-1.0.1.tar.gz
Algorithm Hash digest
SHA256 990c55d3a8ad6b03937a48dd84706792238914d13fb74b9ea84b83404c6d2855
MD5 72cd1ad2b21748fe10a71996e7254cc9
BLAKE2b-256 ed365acc37359766b58d5cc9fda376f9fbbba02ac09533aa8eadbfbcee9507b0

See more details on using hashes here.

File details

Details for the file monitor_as_a_service-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for monitor_as_a_service-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3ca1590e3936b32ffa7b96a196e63917662f17b95781e9b1f95752f01f15062a
MD5 19afd9f472fd11d3cb4777ba395a8521
BLAKE2b-256 22e6442e3e388c039a809045f9670a50bfe4d2b01c7b9b22b7b6ef7e20436c48

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