Skip to main content

Spond-classes

About

Spond is a team/group-oriented events system.

The unofficial Python spond library package (GitHub, PyPI) returns data from the Spond API.

This unofficial Python spond-classes library package (GitHub, PyPI) parses that data using Pydantic to create class instances.

Partial, read-only implementation.

Install

Install from PyPI, e.g:

pip install spond-classes

Note that spond is required for practical use, but is not a technical dependency, so needs to be installed separately.

Example code

Adapting the example code in Spond README:

import asyncio
from spond.spond import Spond
from spond_classes import Group

# fake credentials and ids
USERNAME = "my@mail.invalid"
PASSWORD = "Pa55worD"
SUBGROUP_ID = "SG1"


async def main():
    s = Spond(username=USERNAME, password=PASSWORD)
    groups_data = await s.get_groups()
    await s.clientsession.close()

    # Now we can create class instances from the data...
    groups = Group.list_from_data(groups_data)

    # ... use class attributes instead of dict keys ...
    my_group = groups[0]
    print(my_group.uid)

    # ... access subordinate instances and their attributes ...
    for member in my_group.members:
        print(f"{member.full_name} is in the {my_group.name} group")

    # ... and use some helper methods
    subgroup = my_group.subgroup_by_uid(SUBGROUP_ID)
    for member in my_group.members_by_subgroup(subgroup):
        print(f"{member.full_name} is in the {subgroup.name} subgroup")


asyncio.run(main())

Documentation

Full API documentation is published at https://elliot-100.github.io/Spond-classes/ and is also included as HTML in the package source docs folder.

Development

Build documentation:

uv run pdoc src/spond_classes -d numpy -t docs_templates -o docs

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

spond_classes-0.20.0.tar.gz (19.1 kB view details)

Uploaded Source

Built Distribution

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

spond_classes-0.20.0-py3-none-any.whl (22.6 kB view details)

Uploaded Python 3

File details

Details for the file spond_classes-0.20.0.tar.gz.

File metadata

  • Download URL: spond_classes-0.20.0.tar.gz
  • Upload date:
  • Size: 19.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.31 {"installer":{"name":"uv","version":"0.11.31","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for spond_classes-0.20.0.tar.gz
Algorithm Hash digest
SHA256 45d54de562d40f67c2287c5c7d8875e8fb589b3155fded695a49bffdaaf82170
MD5 43b04935f0bba6cd9d918681c0eae3ee
BLAKE2b-256 b412e21d2d1a55ae9158d37b69906dd96f8bffaf57ad1521030872e097b3c650

See more details on using hashes here.

File details

Details for the file spond_classes-0.20.0-py3-none-any.whl.

File metadata

  • Download URL: spond_classes-0.20.0-py3-none-any.whl
  • Upload date:
  • Size: 22.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.31 {"installer":{"name":"uv","version":"0.11.31","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for spond_classes-0.20.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1ac228af3b96bae2a5e410a080c5f28946a96e0503b8006b35c3e2c7cb845da9
MD5 a5fc276d3464b9f09feaf9a66cc2c929
BLAKE2b-256 84a97175c3c875928a0e06121832b62ec7b2348707f4f863c4efd688624cf68a

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.20.0 This release

2 files

0.19.0

2 files

0.18.0

2 files

0.17.0

2 files

0.16.1

2 files

0.16.0

2 files

0.15.0

2 files

0.14.0

2 files

0.13.1

2 files

0.13.0

2 files

0.12.0

2 files

0.11.2

2 files

0.11.1

2 files

0.11.0

2 files

0.10.1

2 files

0.10.0.post2

2 files

0.10.0.post1

2 files

0.10.0.post0

2 files

0.10.0

2 files

0.9.3a0

2 files

0.9.2

2 files

0.9.1

2 files

0.9.0

2 files

0.8.1

2 files

0.8.0

2 files

0.7.3

2 files

0.7.2

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page