convoy-python
Convoy SDK for Python
This is the Convoy Python SDK. This SDK contains methods for easily interacting with Convoy's API. Below are examples to get you started. For additional examples, please see our official documentation at (https://convoy.readme.io/reference)
Installation
Install convoy-python with
pip install convoy-python
Setup Client
Next, import the convoy
module and setup with your auth credentials.
from convoy import Convoy
convoy = Convoy({"api_key":"your_api_key", "project_id": "your_project_id"})
The SDK also supports authenticating via Basic Auth by defining your username and password.
In the event you're using a self-hosted convoy instance, you can define the uri
as part of what is passed into the convoy's constructor.
convoy = Convoy({ "api_key": 'your_api_key', "uri": 'self-hosted-instance', "project_id": "your_project_id"})
Usage
Get all groups
(response, status) = convoy.group.all({ "perPage": 10, "page": 1 })
Create an Endpoint
An endpoint represents a target URL to receive events.
endpointData = {
"url": "https://0d87-102-89-2-172.ngrok.io",
"description": "Default Endpoint",
"secret": "endpoint-secret",
"events": ["*"],
}
(response, status) = convoy.endpoint.create({}, endpointData)
endpoint_id = response["data"]["uid"]
Sending an Event
To send an event, you'll need the uid
we created in the earlier section.
eventData = {
"endpoint_id": endpoint_id,
"event_type": "payment.success",
"data": {
"event": "payment.success",
"data": {
"status": "Completed",
"description": "Transaction Successful",
"userID": "test_user_id808",
},
},
}
(response, status) = convoy.event.create({}, eventData)
Testing
pytest ./test/test.py
Contributing
Please see CONTRIBUTING for details.
Credits
License
The MIT License (MIT). Please see License File for more information.