feat(integration): initial Zoom Events backend integration
- Implemented Server-to-Server OAuth2 logic in e_zoom_methods.py. - Created V3 Action router for Zoom (test_connection, fetch tickets, atomic sync). - Added sync_zoom_attendees_to_event with mapping to Aether person/badge models. - Registered /v3/action/e_zoom router. - Added E2E connection test script.
This commit is contained in:
33
tests/e2e/test_e2e_v3_action_zoom.py
Normal file
33
tests/e2e/test_e2e_v3_action_zoom.py
Normal file
@@ -0,0 +1,33 @@
|
||||
import requests
|
||||
import json
|
||||
|
||||
# Configuration
|
||||
BASE_URL = "https://dev-api.oneskyit.com/v3/action/e_zoom"
|
||||
API_KEY = "PMM4n50teUCaOMMTN8qOJA"
|
||||
|
||||
def test_zoom_connection():
|
||||
print("--- Testing Zoom API Connection (V3 Action) ---")
|
||||
url = f"{BASE_URL}/test_connection"
|
||||
headers = {
|
||||
"X-Aether-API-Key": API_KEY,
|
||||
"x-no-account-id": "bypass"
|
||||
}
|
||||
|
||||
try:
|
||||
response = requests.get(url, headers=headers)
|
||||
print(f"Status: {response.status_code}")
|
||||
|
||||
if response.status_code == 200:
|
||||
print("✅ Success: API is reachable.")
|
||||
print(f" Response: {json.dumps(response.json()['data'], indent=2)}")
|
||||
elif response.status_code == 401:
|
||||
print("⚠️ Note: API reachable, but credentials missing in data_store.")
|
||||
print(f" Details: {response.json().get('status_message')}")
|
||||
else:
|
||||
print(f"❌ Failed: {response.text}")
|
||||
|
||||
except Exception as e:
|
||||
print(f"💥 Exception: {e}")
|
||||
|
||||
if __name__ == "__main__":
|
||||
test_zoom_connection()
|
||||
Reference in New Issue
Block a user