Skip to main content

Tiny client library for various Vimond APIs

Project description

pyvimond

Tiny Python client library for various Vimond APIs. Currently it provides clients for:

  • Vimond REST API
  • Vimond Image Service

Usage

The examples here can be found in the example files in the project root directory

Vimond REST API

from pyvimond.vimond_client import VimondClient

if __name__ == "__main__":
    # Create a client
    api_url = "https://vimond"
    user = "user"
    secret = "secret"
    vimond = VimondClient(api_url, user, secret)

    # Get an asset
    asset = vimond.get_asset(1334686)
    print(asset["uri"])

    # Get the asset's category
    category = vimond.get_category(asset["categoryId"])
    print(category["category"]["@uri"])
§
    # Get the metadata for the asset
    metadata = vimond.get_asset_metadata(1334686)
    print(metadata)

Vimond Image Service

The client uses HTTP Basic authentication when interfacing with Vimond Image Service

from pyvimond.vimond_image_service_client import VimondImageServiceClient

if __name__ == "__main__":
    # Create a client
    api_url = "https://image-service"
    username = "user"
    password = "secret"
    vimond_image_service = VimondImageServiceClient(api_url, username, password)

    # Create an image pack
    imagepack_id = vimond_image_service.create_image_pack()
    print(f"Created new imagepack with ID {imagepack_id}")

    # Update the "main" location with the image from a publicly accessible URL.
    # The function will return an ID consisting of the imagepack ID plus the current UNIX timestamp. This
    # can eventually be used to reference this version of the image (assuming it gets cached somewhere) even after
    # the image has been updated later on.
    public_url = "https://cdn.pixabay.com/photo/2020/12/03/12/35/sunset-5800386_960_720.jpg"
    timestamped_imagepack_id = vimond_image_service.send_image(imagepack_id, public_url, "main")

    # Get the URL to the timestamped version with location "main"
    url = vimond_image_service.create_image_url(timestamped_imagepack_id, location="main")
    print(url)

    # Get the URL to the untimestamped version and no location
    url_without_location = vimond_image_service.create_image_url(imagepack_id)
    print(url_without_location)

Testing

python3 -m unittest discover

Releasing

Before beginning, make sure you have the necessary tools installed:

pip install --user --upgrade setuptools wheel twine

To build a new distribution and publish it on PyPi:

  1. Update the version number in setup.py
  2. Run make release. When asked for credentials, use __token__ as username and the output of vault -l pypi-pyvimond-api-token as password.

More information: https://packaging.python.org/tutorials/packaging-projects/

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

pyvimond-0.4.10.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

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

pyvimond-0.4.10-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file pyvimond-0.4.10.tar.gz.

File metadata

  • Download URL: pyvimond-0.4.10.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.8.10

File hashes

Hashes for pyvimond-0.4.10.tar.gz
Algorithm Hash digest
SHA256 08ffea86425521ddf209faea647665c5b12c3e2e2e216b8245a783d8cbac5d8b
MD5 551d78640477281782335503a447a401
BLAKE2b-256 18859b217e3ac744161d8cc0fd5ac207f4ff4b6dc5273718915bc96dfff41b14

See more details on using hashes here.

File details

Details for the file pyvimond-0.4.10-py3-none-any.whl.

File metadata

  • Download URL: pyvimond-0.4.10-py3-none-any.whl
  • Upload date:
  • Size: 9.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.8.10

File hashes

Hashes for pyvimond-0.4.10-py3-none-any.whl
Algorithm Hash digest
SHA256 bba2eee2cf08ab29c1d0920cda1608060a9952ab483b02fee27a6bdc7f329e84
MD5 0ccb8ff09cc45d254b60407fb2ecf6e4
BLAKE2b-256 0fc18033f12e197e914e83ee4065407d9ae4da72edaabe42ae6e67330c60aaba

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