Skip to main content

This is an experimental toolkit to help developers build Action Providers for use in Globus Automate including for invocation via Globus Flows.

As this is experimental, no support is implied or provided for any sort of use of this package. It is published for ease of distribution among those planning to use it for its intended, experimental, purpose.

Basic Usage

Install the base toolkit with pip install globus_action_provider_tools

You can then import the toolkit’s standalone components from globus_action_provider_tools. This is useful in instances where you want to use pieces of the library to perform a function (such as token validation via the TokenChecker or API schema validation via the ActionStatus or ActionRequest) and plug into other web frameworks.

from flask import Flask
from globus_action_provider_tools import ActionProviderDescription

description = ActionProviderDescription(
    globus_auth_scope="https://auth.globus.org/scopes/00000000-0000-0000-0000-000000000000/action_all",
    title="My Action Provider",
    admin_contact="support@example.org",
    synchronous=True,
    input_schema={
        "$id": "whattimeisitnow.provider.input.schema.json",
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Example Action Provider",
        "type": "object",
        "properties": {"message": {"type": "string"}},
        "required": ["message"],
        "additionalProperties": False,
    },
    api_version="1.0",
    subtitle="Just an example",
    description="",
    keywords=["example", "testing"],
    visible_to=["public"],
    runnable_by=["all_authenticated_users"],
    administered_by=["support@example.org"],
)

To install the Flask helpers as well for use specifically in developing Flask based Action Providers, install this library using pip install globus_action_provider_tools[flask]

Reporting Issues

If you’re experiencing a problem using globus_action_provider_tools, or have an idea for how to improve the toolkit, please open an issue in the repository and share your feedback.

Testing, Development, and Contributing

Welcome, and thank you for taking the time to contribute!

To get started, you’ll need to clone the repository and run make install to install the package and its dependencies locally in a virtual environment (.venv/).

Next, activate the virtual environment:

$ source .venv/bin/activate

And that’s it, you’re ready to dive in and make code changes. Run make test to validate there are no breaking changes introduced. Once you feel your work is ready to be submitted, feel free to create a PR.

Download files

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

Source Distribution

globus_action_provider_tools-0.20.1.tar.gz (29.8 kB view details)

Uploaded Source

Built Distribution

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

globus_action_provider_tools-0.20.1-py3-none-any.whl (36.2 kB view details)

Uploaded Python 3

File details

Details for the file globus_action_provider_tools-0.20.1.tar.gz.

File metadata

  • Download URL: globus_action_provider_tools-0.20.1.tar.gz
  • Upload date:
  • Size: 29.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.11.10 Linux/6.5.0-1025-azure

File hashes

Hashes for globus_action_provider_tools-0.20.1.tar.gz
Algorithm Hash digest
SHA256 80b5b47f09eb998dd01d770776daeadc16ef267349bdd5d8ee9b1872d338ee95
MD5 e7eeb505860c52cc2bc55cb0953cd0af
BLAKE2b-256 c66651f29fec5c353086b206c7d5d9f695dbf577783ecd761ef065c018ef5b6f

See more details on using hashes here.

File details

Details for the file globus_action_provider_tools-0.20.1-py3-none-any.whl.

File metadata

File hashes

Hashes for globus_action_provider_tools-0.20.1-py3-none-any.whl
Algorithm Hash digest
SHA256 12bb5a81727d7c6599c6cb91f5d33e8932b8d487b0c0260afb6c2fbdf1a05e21
MD5 7e9eb2fa4c9209b7a008631d2c6d33db
BLAKE2b-256 90d33caf2ca143dbc93be4eda7296af610e3f3bf6b312fcaaa8e235f77c323a3

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