import os
import httpx

from typing import List

from ..auth import auth_headers

async def capture_listing(
    url: str,
    items: List[str],
    total_pages: int
):

    sync_url = os.getenv("CAPTURE_LISTING_URL", "http://localhost:8001/market/suma-market/api/products/listing/")

    async with httpx.AsyncClient(timeout=httpx.Timeout(20.0, connect=10.0)) as client:
        _d = {
            "url": url,
            "items": items,
            "total_pages": total_pages
        }
        resp = await client.post(sync_url, json=_d, headers=auth_headers())
    # Raise for non-2xx
    resp.raise_for_status()
    data = resp.json() if resp.content else {}
    return data
    