Skip to main content

A Python SDK for interacting with Monday's GraphQL API.

Project description

monday-api-python-sdk

A Python SDK for interacting with Monday"s GraphQL API.

Table of Contents

Installation

To install the SDK, use pip:

pip install monday-api-python-sdk

Authentication

To use the SDK, you need to authenticate with your Monday API token:

from monday_sdk import MondayClient, MondayApiResponse, Board

client = MondayClient(token="your_token")

Examples

Here are some examples of how to use the SDK:

Example 1: Create a new item

from monday_sdk import MondayClient

client = MondayClient(token="your_token")

column_values = {
    "status_column_id": "In Progress",  # Replace with your actual status column ID and value
    "date_column_id": "2025-01-06",    # Replace with your actual date column ID and date (YYYY-MM-DD format)
    "text_column_id": "Important task" # Replace with your actual text column ID and value
}

item = client.items.create_item(
    board_id="your_board_id", 
    group_id="your_group_id", 
    item_name="New Item", 
    column_values=column_values
)

print(item)

Example 2: Create an Update and Update Column Values

from monday_sdk import MondayClient, StatusColumnValue, DateColumnValue

client = MondayClient(token="your_token")

# Create an update for an item
update_response = client.updates.create_update(
    item_id="your_item_id",
    update_value="This is a new update message for the item."
)

# Change a status column value
status_response = client.items.change_status_column_value(
    board_id="your_board_id",
    item_id="your_item_id",
    column_id="status_column_id",  # Replace with the actual column ID
    value="Done"  # Replace with the desired status value
)
print(f"Status column updated: {status_response}")

# Change a date column value
date_response = client.items.change_date_column_value(
    board_id="your_board_id",
    item_id="your_item_id",
    column_id="date_column_id",
    timestamp="2025-01-06" 
)

Response Types

The SDK provides structured types to help you work with API responses more effectively. These types allow you to easily access and manipulate the data returned by the API.

Available Types

  • MondayApiResponse: Represents the full response from a Monday API query, including data and account information.
  • Data: Holds the core data returned from the API, such as boards, items, and complexity details.
  • Board: Represents a Monday board, including items, updates, and activity logs.
  • Item: Represents an item on a board, including its details and associated subitems.
  • Column, ColumnValue: Represents columns and their values for an item.
  • Group: Represents a group within a board.
  • User: Represents a user associated with an update or activity log.
  • Update: Represents an update on an item.
  • ActivityLog: Represents an activity log entry on a board.
  • ItemsPage: Represents a paginated collection of items.

Example Usage

Here is an example of how to use these types with the SDK to deserialize API responses:

from monday_sdk import MondayClient

client = MondayClient(token="your_token")
items = client.boards.fetch_all_items_by_board_id(board_id="your_board_id")
first_item_name = items[0].name
print(f"First item name: {first_item_name}")

By using these types, you can ensure type safety and better code completion support in your IDE, making your work with the Monday API more efficient and error-free.

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

monday_api_python_sdk-1.6.7.tar.gz (28.2 kB view details)

Uploaded Source

Built Distribution

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

monday_api_python_sdk-1.6.7-py3-none-any.whl (32.3 kB view details)

Uploaded Python 3

File details

Details for the file monday_api_python_sdk-1.6.7.tar.gz.

File metadata

  • Download URL: monday_api_python_sdk-1.6.7.tar.gz
  • Upload date:
  • Size: 28.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for monday_api_python_sdk-1.6.7.tar.gz
Algorithm Hash digest
SHA256 7ee4ee2857f36171bce2757b4498af088ae39e0cc1d659e864d9d5ef34c2ac10
MD5 2c241a829e9db2308c3b4559c3d2c87d
BLAKE2b-256 7f2b7a51d3667163d40aff06195b5a7e8292047bf5e52b1a38209978dc8b2f6d

See more details on using hashes here.

Provenance

The following attestation bundles were made for monday_api_python_sdk-1.6.7.tar.gz:

Publisher: pypa-publish.yml on mondaycom/monday-api-python-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file monday_api_python_sdk-1.6.7-py3-none-any.whl.

File metadata

File hashes

Hashes for monday_api_python_sdk-1.6.7-py3-none-any.whl
Algorithm Hash digest
SHA256 0674155829d494c195221f8577360b8dcd5eb177707c7fb139b08549a14d7229
MD5 720378c22e84a9b372b0a4b9b618726f
BLAKE2b-256 a8f58caeb9c7beee4fa23d8e6c0f172580be1ab81d6518920618f16f1585a60f

See more details on using hashes here.

Provenance

The following attestation bundles were made for monday_api_python_sdk-1.6.7-py3-none-any.whl:

Publisher: pypa-publish.yml on mondaycom/monday-api-python-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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