MagicFeedback 1.0.2__tar.gz → 1.0.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. {magicfeedback-1.0.2/src/MagicFeedback.egg-info → magicfeedback-1.0.3}/PKG-INFO +1 -1
  2. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/pyproject.toml +1 -1
  3. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/setup.py +1 -1
  4. {magicfeedback-1.0.2 → magicfeedback-1.0.3/src/MagicFeedback.egg-info}/PKG-INFO +1 -1
  5. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/src/MagicFeedback.egg-info/SOURCES.txt +3 -1
  6. magicfeedback-1.0.3/src/magicfeedback_sdk/api/report.py +19 -0
  7. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/src/magicfeedback_sdk/client.py +2 -0
  8. magicfeedback-1.0.3/tests/test_report.py +23 -0
  9. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/LICENCE +0 -0
  10. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/README.md +0 -0
  11. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/setup.cfg +0 -0
  12. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/src/MagicFeedback.egg-info/dependency_links.txt +0 -0
  13. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/src/MagicFeedback.egg-info/top_level.txt +0 -0
  14. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/src/magicfeedback_sdk/__init__.py +0 -0
  15. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/src/magicfeedback_sdk/api/__init__.py +0 -0
  16. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/src/magicfeedback_sdk/api/campaigns.py +0 -0
  17. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/src/magicfeedback_sdk/api/contacts.py +0 -0
  18. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/src/magicfeedback_sdk/api/feedback.py +0 -0
  19. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/src/magicfeedback_sdk/api/metrics.py +0 -0
  20. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/src/magicfeedback_sdk/auth.py +0 -0
  21. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/src/magicfeedback_sdk/logging_config.py +0 -0
  22. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/src/magicfeedback_sdk/utils/__init__.py +0 -0
  23. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/src/magicfeedback_sdk/utils/request.py +0 -0
  24. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/tests/test_apikey.py +0 -0
  25. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/tests/test_campaign.py +0 -0
  26. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/tests/test_contact.py +0 -0
  27. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/tests/test_feedback_answers_array.py +0 -0
  28. {magicfeedback-1.0.2 → magicfeedback-1.0.3}/tests/test_feedback_create.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: MagicFeedback
3
- Version: 1.0.2
3
+ Version: 1.0.3
4
4
  Summary: SDK for MagicFeedback API
5
5
  Home-page: https://github.com/MagicFeedback/magicfeedback_python_sdk
6
6
  Author: Francisc Arias
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "MagicFeedback"
3
- version = "1.0.2"
3
+ version = "1.0.3"
4
4
  authors = [
5
5
  { name="Francisco Arias", email="farias@magicfedback.io" },
6
6
  ]
@@ -2,7 +2,7 @@ from setuptools import find_packages, setup
2
2
 
3
3
  setup(
4
4
  name="magicfeedback_sdk",
5
- version="1.0.2",
5
+ version="1.0.3",
6
6
  description="A Python SDK for interacting with the MagicFeedback API",
7
7
  author="Francisc Arias",
8
8
  author_email="farias@magicfeedback.io.io",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: MagicFeedback
3
- Version: 1.0.2
3
+ Version: 1.0.3
4
4
  Summary: SDK for MagicFeedback API
5
5
  Home-page: https://github.com/MagicFeedback/magicfeedback_python_sdk
6
6
  Author: Francisc Arias
@@ -15,10 +15,12 @@ src/magicfeedback_sdk/api/campaigns.py
15
15
  src/magicfeedback_sdk/api/contacts.py
16
16
  src/magicfeedback_sdk/api/feedback.py
17
17
  src/magicfeedback_sdk/api/metrics.py
18
+ src/magicfeedback_sdk/api/report.py
18
19
  src/magicfeedback_sdk/utils/__init__.py
19
20
  src/magicfeedback_sdk/utils/request.py
20
21
  tests/test_apikey.py
21
22
  tests/test_campaign.py
22
23
  tests/test_contact.py
23
24
  tests/test_feedback_answers_array.py
24
- tests/test_feedback_create.py
25
+ tests/test_feedback_create.py
26
+ tests/test_report.py
@@ -0,0 +1,19 @@
1
+ from magicfeedback_sdk.utils.request import make_request
2
+
3
+
4
+ class ReportAPI:
5
+ def __init__(self, base_url, headers, logger):
6
+ self.base_url = base_url
7
+ self.headers = headers
8
+ self.logger = logger
9
+
10
+ def get(self, filter=None):
11
+ url = f"{self.base_url}/reporting/report"
12
+ if filter:
13
+ import json
14
+ url += f"?filter={json.dumps(filter)}"
15
+ return make_request("GET", url, self.headers, logger=self.logger)
16
+
17
+ def update(self, contact_id, contact):
18
+ url = f"{self.base_url}/reporting/report/{contact_id}"
19
+ return make_request("PATCH", url, self.headers, json=contact, logger=self.logger)
@@ -2,6 +2,7 @@ from magicfeedback_sdk.api.campaigns import CampaignsAPI
2
2
  from magicfeedback_sdk.api.contacts import ContactsAPI
3
3
  from magicfeedback_sdk.api.feedback import FeedbackAPI
4
4
  from magicfeedback_sdk.api.metrics import MetricsAPI
5
+ from magicfeedback_sdk.api.report import ReportAPI
5
6
  from magicfeedback_sdk.auth import AuthManager
6
7
  from magicfeedback_sdk.logging_config import configure_logger
7
8
 
@@ -19,6 +20,7 @@ class MagicFeedback:
19
20
  self.contacts = ContactsAPI(self.base_url, self.get_headers, self.logger)
20
21
  self.campaigns = CampaignsAPI(self.base_url, self.get_headers, self.logger)
21
22
  self.metrics = MetricsAPI(self.base_url, self.get_headers, self.logger)
23
+ self.reports = ReportAPI(self.base_url, self.get_headers, self.logger)
22
24
 
23
25
  def set_logging(self, level):
24
26
  self.logger.setLevel(level)
@@ -0,0 +1,23 @@
1
+ import pytest
2
+
3
+ from magicfeedback_sdk import MagicFeedback
4
+
5
+
6
+ def test_list_report(client):
7
+ """Tests listing report items."""
8
+
9
+ filter = {
10
+ "where": {
11
+ "companyId": "MAGICFEEDBACK_DEV_SDK"
12
+ }
13
+ }
14
+
15
+ response = client.reports.get(filter)
16
+ assert len(response) > 0
17
+
18
+ @pytest.fixture
19
+ def client():
20
+ """Provides a MagicFeedbackClient instance for testing."""
21
+
22
+ client = MagicFeedback('sdk_tester@magicfeedback.io', 'caracter')
23
+ return client
File without changes
File without changes
File without changes