Skip to main content

Python SDK for the ClickUp API

Project description

# ClickUp Python SDK

## Introduction
The ClickUp Python SDK is a comprehensive wrapper for the ClickUp API (v2), designed to simplify interactions with ClickUp for Python developers. This SDK helps businesses automate their ClickUp workflows and integrate ClickUp data with other systems.

## Installation
```bash
# Clone the repository
git clone https://github.com/yourusername/clickup_python_sdk.git

# Install dependencies
pip install -r requirements.txt
```

## Authentication
Initialize the client with your ClickUp API token:

```python
from clickup_python_sdk.api import ClickupClient

# Initialize the client
client = ClickupClient.init(user_token="your_clickup_api_token")
```

## Features
- **Teams**: Access team data and spaces
- **Spaces**: Manage spaces, lists, and tags
- **Folders**: Access and manage folders within spaces
- **Lists**: Create and manage tasks within lists
- **Tasks**: Create, update, delete, and manage tasks
- **Custom Fields**: Work with custom fields on tasks

## Usage Examples

### Getting Teams
```python
# Get all teams the authenticated user belongs to
teams = client.get_teams()
```

### Accessing Spaces in a Team
```python
# Get a list of spaces for a team
team = teams[0] # First team
spaces = team.get_spaces()
```

### Working with Lists
```python
# Get lists in a space
space = spaces[0] # First space
lists = space.get_lists()

# Access a specific list
task_list = lists[0] # First list
```

### Creating a Task
```python
# Create a new task in a list
new_task = task_list.create_task({
"name": "New Task",
"description": "Task description",
"status": "Open",
"priority": 3, # 1 is highest, 4 is lowest
"due_date": 1649887200000 # Timestamp in milliseconds
})
```

### Updating a Task
```python
# Update an existing task
task = client.get_task(task_id="task_id_here")
task.update({
"name": "Updated Task Name",
"status": "In Progress"
})
```

### Working with Custom Fields
```python
# Get custom fields for a list
custom_fields = task_list.get_custom_fields()

# Update a task's custom field
task = client.get_task(task_id="task_id_here")
task.update_custom_field(
custom_field_id="custom_field_id",
value="new_value"
)
```

## Object Types
The SDK provides object-oriented interfaces for ClickUp's core components:
- `Team`: Team management
- `Space`: Space operations within teams
- `Folder`: Folder management within spaces
- `List`: Task list operations
- `Task`: Task operations and management
- `CustomField`: Custom field functionality
- `User`: User information
- `Tag`: Tag management

## Error Handling
The SDK includes built-in error handling for API responses. Failed requests will raise exceptions with appropriate error messages from the ClickUp API.

## License
This project is licensed under the GNU General Public License v3.0 - see the LICENSE.txt file for details.

## Contributing
Contributions are welcome! Please feel free to submit a Pull Request.

## Support
For questions or issues, please open an issue on the repository.

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

clickup_python_sdk-2.0.1.tar.gz (38.3 kB view details)

Uploaded Source

Built Distribution

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

clickup_python_sdk-2.0.1-py3-none-any.whl (49.0 kB view details)

Uploaded Python 3

File details

Details for the file clickup_python_sdk-2.0.1.tar.gz.

File metadata

  • Download URL: clickup_python_sdk-2.0.1.tar.gz
  • Upload date:
  • Size: 38.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for clickup_python_sdk-2.0.1.tar.gz
Algorithm Hash digest
SHA256 5ec4ad68dc7e24ebce1e636d45df840c2573b019c07ce6c685596000d0b9e6d6
MD5 b001d196d6faf656f10a6203f09cd8cd
BLAKE2b-256 a60459fefefb4eee84dd65afeb981f3b925997a32052d69ac929e43e5c9fbf15

See more details on using hashes here.

File details

Details for the file clickup_python_sdk-2.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for clickup_python_sdk-2.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a5a253da8439b130167b966548e9666fb2351f8db4386fbf9e9aa5787177ebff
MD5 47efaa76a1a46812c66e924dfca7c8cb
BLAKE2b-256 b49c2eba76d6e1f07b35fa670652360011636057feff1df6f1ede02b63efa30c

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