import os import sys from dotenv import load_dotenv # Add parent dir to path so we can import backend packages sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) from backend.mm_api import MagnitMarketAPI from backend.mm_api.exceptions import MMAPIError def test_mm_api(): # Load environment variables env_path = os.path.join(os.path.dirname(__file__), '.env') load_dotenv(env_path) # Check if key is loaded api_key = os.getenv('MM_API_KEY') if not api_key: print("Error: MM_API_KEY must be in backend/.env") return print("Initializing MagnitMarketAPI...") api = MagnitMarketAPI() try: # Test 1: Get Unprocessed Orders print("\n--- Testing Orders API (Unprocessed Orders) ---") orders_response = api.orders.get_unprocessed_list(limit=5) print("Success! Response keys:", orders_response.keys()) orders = orders_response.get("orders", []) print(f"Found {len(orders)} unprocessed FBS orders.") if orders: order_id = orders[0].get("order_id") print(f"First order - ID: {order_id}") # Test 2: Get Shipments print("\n--- Testing Shipments API ---") shipments_response = api.shipments.get_list() shipments = shipments_response.get("shipments", []) print(f"Found {len(shipments)} shipments.") except MMAPIError as e: print(f"API Error: {e}") except Exception as e: print(f"Unexpected Error: {e}") if __name__ == '__main__': test_mm_api()