| body |
{"product": {"rating": null, "rating_count": null, "brand": "Salt & Stone", "name": "Mini Deodorant Discovery Gift Set", "description": "<p><strong>What it is:\u00a0</strong>A Sephora-exclusive set that includes three bestselling scents\u2014it\u2019s the ideal gift, or a travel-size version of the ritual you already know and love.</p><p><br></p><p><strong>Ingredient Callouts:</strong> These products are cruelty-free.</p><p><br></p><p><strong>Highlighted Ingredients:<br></strong>- Spirulina: Soothes and restores skin after exposure to the elements.</p><p>- Antioxidants: Defends skin against environmental stressors.</p><p>- Niacinamide: Vitamin B3, supports skin's barrier while visibly improving skin texture.<strong><br></strong></p><p><strong>What Else You Need to Know:</strong> An award-winning, aluminum-free deodorant formulated for 48-hour protection. Prebiotics help neutralize odor while seaweed extracts moisturize the skin.</p><p><br></p><p><strong>This Set Contains:<br></strong>- 3 x 1 oz/ 28 g Mini Deodorants in Bergamot & Hinoki, Santal & Vetiver, Saffron and Cedar</p><p><br></p><p><strong>Clean at Sephora<br></strong>Clean at Sephora is our commitment to offering effective products without certain ingredients, such as parabens, sulfates, phthalates, and mineral oils. Learn more <a title=\"\"https://www.sephora.com/beauty/clean-planet-aware\"\" href=\"%22https://www.sephora.com/beauty/clean-planet-aware%22\">here</a>.</p>", "data": {"dataFacets": []}, "categories": ["Skincare > Value & Gift Sets"], "gender": "Female", "product_images": [], "market_id": 51, "remote_code": "P522015", "is_lost": 0, "variants": [{"remote_code": "2954006", "upc": "", "remote_url": "https://www.sephora.com/product/P522015?skuId=2954006", "size": "Standard standard", "origin_color": "N/A", "price": 32.0, "variant_images": ["https://www.sephora.com/productimages/sku/s2954006-main-zoom-1.jpg?pb=clean-at-sephora", "https://www.sephora.com/productimages/sku/s2954006-av-1-zoom-1.jpg", "https://www.sephora.com/productimages/sku/s2954006-av-2-zoom-1.jpg", "https://www.sephora.com/productimages/sku/s2954006-av-3-zoom-1.jpg", "https://www.sephora.com/productimages/sku/s2954006-av-4-zoom-1.jpg", "https://www.sephora.com/productimages/sku/s2954006-av-5-zoom-1.jpg", "https://www.sephora.com/productimages/sku/s2954006-av-6-zoom-1.jpg", "https://www.sephora.com/productimages/sku/s2954006-av-7-zoom.jpg", "https://www.sephora.com/productimages/sku/s2954006-av-8-zoom.jpg"], "stock_count": 1, "data": ["transfer"], "image_url": "https://www.sephora.com/productimages/sku/s2954006-main-zoom-1.jpg?pb=clean-at-sephora", "description": "Color: N/A; Size: Standard standard", "colors": ["N/A"]}]}, "remote_url": "https://www.sephora.com/product/P522015", "parsing_type": "basket", "finalize": false, "parsing_code": 200, "parsing_text": "[200] Success: Item: 'P522015' - parsed successfully. additional_error_text=''"} |
| error_text |
File "/opt/working_folder/middlewares/catch_errors_middleware/catch_500_errors.py", line 15, in dispatch
response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 84, in call_next
raise app_exc
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 70, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/cors.py", line 83, in __call__
await self.app(scope, receive, send)
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 79, in __call__
raise exc
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 68, in __call__
await self.app(scope, receive, sender)
File "/usr/local/lib/python3.11/site-packages/fastapi/middleware/asyncexitstack.py", line 20, in __call__
raise e
File "/usr/local/lib/python3.11/site-packages/fastapi/middleware/asyncexitstack.py", line 17, in __call__
await self.app(scope, receive, send)
File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 718, in __call__
await route.handle(scope, receive, send)
File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 276, in handle
await self.app(scope, receive, send)
File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 66, in app
response = await func(request)
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 274, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 193, in run_endpoint_function
return await run_in_threadpool(dependant.call, **values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/starlette/concurrency.py", line 41, in run_in_threadpool
return await anyio.to_thread.run_sync(func, *args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/anyio/to_thread.py", line 33, in run_sync
return await get_asynclib().run_sync_in_worker_thread(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 877, in run_sync_in_worker_thread
return await future
^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 807, in run
result = context.run(func, *args)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/working_folder/api/logging_router/api/product_logging.py", line 495, in log_product_upload
add_product_history(db, market_id, remote_code, json_data)
File "/opt/working_folder/api/logging_router/api/product_logging.py", line 319, in add_product_history
.first()
^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/query.py", line 2728, in first
return self.limit(1)._iter().first() # type: ignore
^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/query.py", line 2827, in _iter
result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 2362, in execute
return self._execute_internal(
^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 2247, in _execute_internal
result: Result[Any] = compile_state_cls.orm_execute_statement(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/context.py", line 305, in orm_execute_statement
result = conn.execute(
^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1418, in execute
return meth(
^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/sql/elements.py", line 515, in _execute_on_connection
return connection._execute_clauseelement(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1640, in _execute_clauseelement
ret = self._execute_context(
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1846, in _execute_context
return self._exec_single_context(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1986, in _exec_single_context
self._handle_dbapi_exception(
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 2355, in _handle_dbapi_exception
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
self.dialect.do_execute(
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/default.py", line 941, in do_execute
cursor.execute(statement, parameters)
|