Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gearplug/monday-python
monday-python is an API wrapper for monday.com, written in Python.
https://github.com/gearplug/monday-python
api database graphql kanban monday project-management projects python requests webhooks wrapper
Last synced: 3 days ago
JSON representation
monday-python is an API wrapper for monday.com, written in Python.
- Host: GitHub
- URL: https://github.com/gearplug/monday-python
- Owner: GearPlug
- License: mit
- Created: 2023-05-19T15:03:44.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-03-11T21:14:59.000Z (8 months ago)
- Last Synced: 2024-03-11T22:30:06.335Z (8 months ago)
- Topics: api, database, graphql, kanban, monday, project-management, projects, python, requests, webhooks, wrapper
- Language: Python
- Homepage:
- Size: 17.6 KB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# monday-python
![](https://img.shields.io/badge/version-0.1.0-success) ![](https://img.shields.io/badge/Python-3.8%20|%203.9%20|%203.10%20|%203.11-4B8BBE?logo=python&logoColor=white)*monday-python* is an API wrapper for monday.com, written in Python.
This library includes notifications using webhooks.
## Installing
```
pip install monday-python
```
### Usage
```python
from monday.client import Client
client = Client(api_token)
```
Find your API token in your monday.com profile admin settings API section.#### - Get current user
```python
user = client.get_current_user()
```
#### - List users
```python
users = client.list_users()
```
#### - List workspaces
```python
workspaces = client.list_workspaces()
```
#### - List boards
```python
boards = client.list_boards(workspace_id)
```
#### - List columns
```python
cols = client.list_columns(board_id)
```
### Items
#### - List items
```python
items = client.list_items(board_id)
```
#### - Get item
```python
item = client.get_item(item_id)
```
#### - Get items by column values
```python
# The item's state: all, active, archived, or deleted. The default state is active.
items = client.get_items_by_column_values(board_id, column_id, column_value, limit=50, state="active")
```
#### - Create item
```python
# column_values is a dictionary with the following structure:
# {"column_id": "column_value", "column_id": "column_value"}
item = client.create_item(board_id, item_name: str, column_values: dict = None)
```
#### - Update item
```python
# column_values is a dictionary with the following structure:
# {"column_id": "column_value", "column_id": "column_value"}
item = client.update_item(board_id, item_id, column_values)
```
### Webhooks
#### - List webhooks
```python
webhooks = client.list_webhooks(board_id)
```
#### - Create webhook
```python
webhook = client.create_webhook(board_id, url, event)
```
To activate a webhook, the URL must return a response to a post request that monday.com will send to verify.
Read more about it here: https://developer.monday.com/api-reference/docs/webhooks
#### - Delete a webhook
```python
deleted = client.delete_webhook(webhook_id)
```