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.16
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.16.tar.gz | 8.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| magicfeedback-1.0.16-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.8 kB
Release files / magicfeedback-1.0.16.tar.gz
| Download URL | magicfeedback-1.0.16.tar.gz |
|---|---|
| Size | 8.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8eb68b011fa8015090824fd3f2dab1d3976c2a7cb62a795672f252115729b5ad
|
|
BLAKE2b-256 checksum How to use checksums |
2b1868aeb6e354d4e8f6c36025ff026f96eb415e540bdfce104f57c24d712a32
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|
Release files / magicfeedback-1.0.16-py3-none-any.whl
| Download URL | magicfeedback-1.0.16-py3-none-any.whl |
|---|---|
| Size | 11.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5b6dab9d40bddd1029801b07fac7d4b527430cbfb7fc7fface284d9fe836b561
|
|
BLAKE2b-256 checksum How to use checksums |
771c069428aadb15ad40b59828521c8df478690fe3f99e09839ef27c4f37950c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|