| body |
{"product": {"rating": null, "rating_count": null, "brand": "ATTITUDE", "name": "Sensitive\u2122 Natural Baking Soda-Free Deodorant - Argan Oil", "description": "PureFormulas is an authorized retailer of ATTITUDE products. You can shop with confidence, knowing that all products purchased from PureFormulas are authentic. Presented in a biodegradable packaging\u201a ATTITUDE Plastic-Free Deodorant for Sensitive Skin is designed to provide long-lasting protection and a soothing sensation because it does not contain aluminum or baking soda. Easy to apply\u201a this creamy EWG VERIFIED\u2122 deodorant glides easily on the skin while providing maximum hydration\u201a thanks to the shea butter and coconut oil contained in its formulation. Soothing ingredients like calming oatmeal will leave your armpits soft\u201a and you'll be naturally liberated from unwanted odors throughout the day\u201a as magnesium hydroxide will keep you dry without the use of aluminum compounds. Available in 4 different versions: argan oil\u201a avocado oil\u201a chamomile and unscented. \u2022 Biodegradable plastic-free packaging to reduce waste \u2022 Hypoallergenic and dermatologically tested deodorant for sensitive skin: does not contain known allergens\u201a perfume or baking soda \u2022 Helps prevent unpleasant odors: contains magnesium hydroxide known for its deodorant properties \u2022 Naturally protects skin: contains oat extracts \u2022 Easy to apply thanks to the smooth texture of shea butter and coconut oil \u2022 Free of parabens\u201a triclosan\u201a steareths\u201a phthalates\u201a talc or artificial colors found in traditional deodorants and antiperspirants \u2022 EWG VERIFIED\u2122 and green side in the EWG Skin Deep\u00ae database \u2022 PETA certified: cruelty-free\u201a vegan and never tested on animals These statements have not been evaluated by the Food and Drug Administration (FDA). These products are not meant to diagnose\u201a treat or cure any disease or medical condition. Please consult your doctor before starting any exercise or nutritional supplement program or before using these or any product during pregnancy or if you have a serious medical condition. Report incorrect product information", "data": {"dataFacets": [], "product_id": "1000054398", "repository_id": "1000054398", "route": "/product/sensitive-natural-baking-soda-free-deodorant-argan-oil-by-attitude/1000054398", "part_number": null, "parent_category_id_path": "rootCategory>beauty", "product_type": "Product", "tags": [], "highlights": [], "main_ingredient": null}, "categories": ["Beauty"], "gender": null, "product_images": ["https://www.pureformulas.com/file/v3545053474695606859/products/sensitive-natural-baking-soda-free-deodorant-argan-oil-3-oz-85-grams-by-attitude.jpg", "https://www.pureformulas.com/file/v1392919263741069174/products/sensitive-natural-baking-soda-free-deodorant-argan-oil-3-oz-85-grams-by-attitude-extra1.jpg", "https://www.pureformulas.com/file/v6878629902462927178/products/sensitive-natural-baking-soda-free-deodorant-argan-oil-3-oz-85-grams-by-attitude-extra2.jpg", "https://www.pureformulas.com/file/v3481837370914388420/products/sensitive-natural-baking-soda-free-deodorant-argan-oil-3-oz-85-grams-by-attitude-extra3.jpg", "https://www.pureformulas.com/file/v6901967561805174603/products/sensitive-natural-baking-soda-free-deodorant-argan-oil-3-oz-85-grams-by-attitude-extra4.jpg"], "market_id": 144, "remote_code": "1000054398", "is_lost": 0, "variants": [{"remote_code": "AUD1086", "upc": "626232608625", "remote_url": "https://www.pureformulas.com/product/sensitive-natural-baking-soda-free-deodorant-argan-oil-by-attitude/1000054398?skuId=AUD1086", "size": "3 oz (85 Grams)", "origin_color": "Default", "price": 12.26, "email_meta": "AUD1086", "variant_images": ["https://www.pureformulas.com/file/v3545053474695606859/products/sensitive-natural-baking-soda-free-deodorant-argan-oil-3-oz-85-grams-by-attitude.jpg", "https://www.pureformulas.com/file/v1392919263741069174/products/sensitive-natural-baking-soda-free-deodorant-argan-oil-3-oz-85-grams-by-attitude-extra1.jpg", "https://www.pureformulas.com/file/v6878629902462927178/products/sensitive-natural-baking-soda-free-deodorant-argan-oil-3-oz-85-grams-by-attitude-extra2.jpg", "https://www.pureformulas.com/file/v3481837370914388420/products/sensitive-natural-baking-soda-free-deodorant-argan-oil-3-oz-85-grams-by-attitude-extra3.jpg", "https://www.pureformulas.com/file/v6901967561805174603/products/sensitive-natural-baking-soda-free-deodorant-argan-oil-3-oz-85-grams-by-attitude-extra4.jpg", "https://www.pureformulas.com/file/v8028362525553427521/products/sensitive-natural-baking-soda-free-deodorant-argan-oil-3-oz-85-grams-by-attitude-extra5.jpg"], "stock_count": 1, "data": ["transfer"], "image_url": "https://www.pureformulas.com/file/v3545053474695606859/products/sensitive-natural-baking-soda-free-deodorant-argan-oil-3-oz-85-grams-by-attitude.jpg", "description": "Size: 3 oz (85 Grams)", "colors": ["Default"], "additional_upc": "1000054398", "weight": 113}]}, "remote_url": "https://www.pureformulas.com/product/sensitive-natural-baking-soda-free-deodorant-argan-oil-by-attitude/1000054398", "type_parsing": "full", "parsing_type": "full", "finalize": false, "parsing_code": 200, "parsing_text": "[200] Success: Item: '1000054398' - 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)
|