import os import requests from typing import List, Dict BOXAPI_USERNAME = os.getenv("BOXAPI_USERNAME") BOXAPI_PASSWORD = os.getenv("BOXAPI_PASSWORD") BOXAPI_ENDPOINT = os.getenv("BOXAPI_ENDPOINT", "https://boxapi.ir/api/instagram/user/get_media_by_username") def fetch_boxapi_posts(username: str, count: int = 5) -> List[Dict]: payload = { "username": username, # 👈 Do NOT replace with user ID "count": count } try: response = requests.post( BOXAPI_ENDPOINT, json=payload, auth=(BOXAPI_USERNAME, BOXAPI_PASSWORD), timeout=15 ) response.raise_for_status() data = response.json() if not isinstance(data, list): raise ValueError("Unexpected response format from BoxAPI") return data except Exception as e: print(f"❌ Failed to fetch posts from BoxAPI: {e}") return []