Skip to content

Commit 48060fa

Browse files
chore(release): v1.0.0-beta
1 parent ac41eb2 commit 48060fa

4 files changed

Lines changed: 43 additions & 4 deletions

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,3 +47,4 @@ Thumbs.db
4747
# Temporary files
4848
*.tmp
4949
*.temp
50+

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
## [1.0.0-beta] - 2025-11-18
2+
3+
- Initial beta release of HighLevel SDK for Python

README.md

Lines changed: 37 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
# GoHighLevel Python SDK
22

3-
43
Official Python SDK for the GoHighLevel API. This library provides a convenient way to interact with GoHighLevel's APIs from applications written in Python.
54

65
## Installation
@@ -17,7 +16,7 @@ pip install gohighlevel-api-client
1716
```python
1817
from highlevel import HighLevel
1918

20-
# Or initialize with OAuth credentials
19+
# Initialize with OAuth credentials
2120
client = HighLevel(
2221
client_id="your_client_id",
2322
client_secret="your_client_secret"
@@ -80,6 +79,42 @@ client = HighLevel(
8079
)
8180
```
8281

82+
## Webhook Integration
83+
84+
The SDK provides comprehensive webhook support for handling GoHighLevel webhook events, including automatic token management and session storage integration.
85+
86+
### Features
87+
88+
- **Automatic Token Management**: Handles `INSTALL` and `UNINSTALL` webhooks automatically
89+
- **Token Storage**: Generates and stores access tokens on `INSTALL`, removes them on `UNINSTALL`
90+
- **Session Management**: Integrates with your chosen session storage (Memory/MongoDB)
91+
- **Auto Token Refresh**: Automatically refreshes expired tokens during API calls if tokens are stored
92+
93+
### Webhook Handler Setup
94+
95+
```python
96+
from highlevel import HighLevel
97+
from highlevel.storage import MemorySessionStorage
98+
99+
# Initialize the SDK client with session storage
100+
client = HighLevel(
101+
client_id="your_client_id",
102+
client_secret="your_client_secret",
103+
session_storage=MemorySessionStorage()
104+
)
105+
106+
# Get the webhook middleware
107+
webhook_middleware = client.webhooks.subscribe()
108+
109+
@app.route('/api/webhooks/ghl', methods=['POST'])
110+
async def handle_ghl_webhook():
111+
"""Handle incoming GoHighLevel webhooks"""
112+
# Process the webhook using the middleware
113+
await webhook_middleware(request)
114+
# Add your custom webhook logic here
115+
return jsonify({"status": "success"}), 200
116+
```
117+
83118
## Documentation
84119

85120
- [Official API Documentation](http://marketplace.gohighlevel.com/docs/)

pyproject.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "gohighlevel-api-client"
7-
version = "1.0.0"
7+
version = "1.0.0-beta"
88
description = "GoHighLevel Python SDK - Official API client for GoHighLevel platform"
99
readme = "README.md"
1010
license = {text = "MIT"}
@@ -61,8 +61,8 @@ Repository = "https://github.com/GoHighLevel/gohighlevel-python-sdk"
6161
Changelog = "https://github.com/GoHighLevel/gohighlevel-python-sdk/blob/main/CHANGELOG.md"
6262

6363
[tool.setuptools]
64-
packages = ["highlevel"]
6564
package-dir = {"" = "src"}
65+
include-package-data = true
6666

6767
[tool.setuptools.package-data]
6868
highlevel = ["py.typed"]

0 commit comments

Comments
 (0)