Skip to content
This repository has been archived by the owner on Apr 25, 2024. It is now read-only.

PrefectHQ/prefect-monday

Repository files navigation

prefect-monday

Important Notice: prefect-monday is no longer actively maintained. For more details, please see the Maintenance Status section below.

PyPI

Maintenance Status

prefect-monday has been a valuable part of the Prefect ecosystem. Due to shifts in our strategic priorities, we have decided to discontinue the active maintenance of this library. While we will not be updating the code or addressing issues, the existing codebase will remain accessible for archival purposes. We appreciate the support and contributions from our community.

Welcome!

Prefect integrations interacting with monday.com.

The tasks within this collection were created by a code generator using the service's GraphQL schema.

Getting Started

Python setup

Requires an installation of Python 3.7+.

We recommend using a Python virtual environment manager such as pipenv, conda or virtualenv.

These tasks are designed to work with Prefect 2.0. For more information about how to use Prefect, please refer to the Prefect documentation.

Installation

Install prefect-monday with pip:

pip install prefect-monday

Then, register to view the block on Prefect Cloud:

prefect block register -m prefect_monday.credentials

Query personal account info

Note, to use the load method, you must already have a block document saved through code or saved through the UI.

from prefect import flow

from prefect_monday.credentials import MondayCredentials
from prefect_monday.me import query_me

@flow
def query_me_flow():
    monday_credentials = MondayCredentials.load("BLOCK_NAME")
    result = query_me(monday_credentials)
    return result

query_me_flow()

Query available boards

from prefect import flow

from prefect_monday.credentials import MondayCredentials
from prefect_monday.boards import query_boards

@flow
def query_boards_flow():
    monday_credentials = MondayCredentials.load("BLOCK_NAME")
    boards = query_boards(monday_credentials=monday_credentials)
    return boards

query_boards_flow()

Create new workspace

from prefect import flow

from prefect_monday.credentials import MondayCredentials
from prefect_monday.mutations import create_workspace
from prefect_monday.schemas import graphql_schema

@flow
def create_workspace_flow():
    monday_credentials = MondayCredentials.load("BLOCK_NAME")
    workspace = create_workspace(
        "integrations-test-workspace",
        graphql_schema.WorkspaceKind.open,
        monday_credentials=monday_credentials
    )
    return workspace

create_workspace_flow()

Resources

If you encounter any bugs while using prefect-monday, feel free to open an issue in the prefect-monday repository.

If you have any questions or issues while using prefect-monday, you can find help in either the Prefect Discourse forum or the Prefect Slack community.

Feel free to ⭐️ or watch prefect-monday for updates too!

Development

If you'd like to install a version of prefect-monday for development, clone the repository and perform an editable install with pip:

git clone https://github.com/PrefectHQ/prefect-monday.git

cd prefect-monday/

pip install -e ".[dev]"

# Install linting pre-commit hooks
pre-commit install