Skip to content

waylayio/waylay-sdk-storage-py

Repository files navigation

Waylay Storage Service

Manage storage buckets and subscriptions.

This Python package is automatically generated based on the Waylay Storage OpenAPI specification (API version: 0.5.2) For more information, please visit the openapi specification.

It consists of two sub-packages that are both plugins for the waylay-sdk-core package.

  • The waylay-sdk-storage sub-package contains the Storage api methods.
  • The waylay-sdk-storage-types sub-package is an extension that contains the typed model classes for all path params, query params, body params and responses for each of the api methods in waylay-sdk-storage.

Requirements.

This package requires Python 3.9+.

Installation

Normally this package is installed together with support for other services using the waylay-sdk umbrella package:

  • pip install waylay-sdk will install waylay-sdk-storage together with the SDK api packages for other services.
  • pip install waylay-sdk[types-storage] will additionally install the types package waylay-sdk-storage-types.
  • pip install waylay-sdk[types] will install the types packages for this and all other services.

Alternatively, you can install support for this storage service only, installing or extending an existing waylay-sdk-core:

  • pip install waylay-sdk-storage to only install api support for storage.
  • pip install waylay-sdk-storage[types] to additionally install type support for storage.

Usage

from pprint import pprint

# Import the waylay-client from the waylay-sdk-core package
from waylay.sdk.client import WaylayClient
from waylay.sdk.api.api_exceptions import ApiError

# Intialize a waylay client instance
waylay_client = WaylayClient.from_profile()

# Note that the typed model classes for responses/parameters/... are only available when `waylay-sdk-storage-types` is installed
from waylay.services.storage.models.tenant_status_report import TenantStatusReport
try:
    # Status
    # calls `GET /storage/v1/status`
    api_response = await waylay_client.storage.about.status(
        # query parameters:
        query = {
            'include_buckets': True
            'include_queues': True
            'include_disk_usage': False
        },
    )
    print("The response of storage.about.status:\n")
    pprint(api_response)
except ApiError as e:
    print("Exception when calling storage.about.status: %s\n" % e)

For more information, please visit the Waylay API documentation.

Documentation for API Endpoints

All URIs are relative to https://api.waylay.io

Class Method HTTP request Description
AboutApi get GET /storage/v1/ Version
AboutApi status GET /storage/v1/status Status
BucketApi get GET /storage/v1/bucket/{bucket_name} Get Bucket
BucketApi list GET /storage/v1/bucket List Buckets
ObjectApi copy_or_move PUT /storage/v1/bucket/{bucket_name}/{target_path} Copy Or Move Object
ObjectApi create_folder PUT /storage/v1/bucket/{bucket_name}/{object_path}/ Create Folder
ObjectApi list GET /storage/v1/bucket/{bucket_name}/{object_path} List Objects
ObjectApi remove DELETE /storage/v1/bucket/{bucket_name}/{object_path} Remove Object Or Folder
SubscriptionApi create POST /storage/v1/subscription/{bucket_name} Create Bucket Subscription
SubscriptionApi delete_by DELETE /storage/v1/subscription/{bucket_name} Delete All Bucket Subscriptions
SubscriptionApi get GET /storage/v1/subscription/{bucket_name}/{subscription_id} Get Bucket Subscription
SubscriptionApi list GET /storage/v1/subscription Query All Subscriptions
SubscriptionApi query GET /storage/v1/subscription/{bucket_name} Query Bucket Subscriptions
SubscriptionApi remove DELETE /storage/v1/subscription/{bucket_name}/{subscription_id} Delete Bucket Subscription
SubscriptionApi replace PUT /storage/v1/subscription/{bucket_name}/{subscription_id} Replace Bucket Subscription

Documentation For Models