MagicFeedback Python SDK
Python SDK for the MagicFeedback API.
Installation
pip install MagicFeedback
Note: the distribution name on PyPI is
MagicFeedback, but the import name ismagicfeedback_sdk.
Usage
from magicfeedback_sdk import MagicFeedback
client = MagicFeedback("email", "password")
API Reference
client.feedbacks
create(feedback)— creates a new feedback item. Required fields:name,type,identity,integrationId,companyId,productId.get(filter=None)— lists feedback items.get_id(feedback_id, filter=None)— retrieves a specific feedback item.update(feedback_id, feedback)— updates a feedback item.delete(feedback_id)— deletes a feedback item.upload_attachment(feedback_id, file_path, filename=None, extra_data=None)— uploads a file and attaches it to a feedback.
client.contacts
create(contact),get(filter=None),update(contact_id, contact),delete(contact_id)
client.campaigns
create(campaign),get(filter=None)create_session(campaign_id, session),get_sessions(campaign_id, filter=None),get_sessions_feedbacks(campaign_id, filter=None)
client.metrics
get(filter=None)
client.products
get(filter=None)
client.companies
get(filter=None),get_id(id, filter=None)
client.integrations_questions
get(integration_id, filter=None)
client.reports
get(filter=None),get_newsletter(filter=None),update(report_id, report)
client.requests
get(filter=None),get_id(request_id, filter=None),update(request_id, request)
Examples
# Create a feedback
client.feedbacks.create({
"name": "Test Feedback",
"type": "APP",
"identity": "MAGICFORM",
"integrationId": "your-integration-id",
"companyId": "YOUR_COMPANY",
"productId": "YOUR_PRODUCT",
"answers": [
{"key": "score", "value": "4"},
{"key": "comment", "value": "Great service!"},
],
})
# Get a feedback with its attachments
client.feedbacks.get_id(
"<feedback_id>",
filter={"include": [{"relation": "feedbackAttachments"}]}
)
# Upload a file attachment
client.feedbacks.upload_attachment(
"<feedback_id>",
file_path="/path/to/file.pdf",
filename="report.pdf", # optional, defaults to file name
extra_data={"source": "crm"} # optional, any JSON-serialisable dict
)
Logging
import logging
client.set_logging(logging.DEBUG)
License
MIT
Contact
Release files for magicfeedback 1.0.14
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| magicfeedback-1.0.14.tar.gz | 7.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| magicfeedback-1.0.14-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.4 kB
Release files / magicfeedback-1.0.14.tar.gz
| Download URL | magicfeedback-1.0.14.tar.gz |
|---|---|
| Size | 7.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7f617e56bb65072d997f8f4d3c768efcbd1a6c31cb8d3856d448e77ab1ede965
|
|
BLAKE2b-256 checksum How to use checksums |
0ccec753684a1e533960ea624c982c4760ba3c7852a23d3438be983d092933a1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.8
|
Release files / magicfeedback-1.0.14-py3-none-any.whl
| Download URL | magicfeedback-1.0.14-py3-none-any.whl |
|---|---|
| Size | 11.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
64ef0f4d364654815a975416bf1b580cccdcd50450d2c04956553fa9986e3c0d
|
|
BLAKE2b-256 checksum How to use checksums |
1c23b28204f40e4c45197dc4167d9466b9e790a6a481c7e5679fade44cc1e98b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.8
|