row_id: 43004

Column Value
row_id 43004
time_created 2026-06-22 12:38:41.197424
endpoint https://usmall-catalog.shopfans.io/log/product_upload
params
body {"product": {"rating": null, "rating_count": null, "brand": "Life-Flo", "name": "Pure Magnesium Oil Spray -- 8 fl oz", "description": "Life-Flo Pure Magnesium Oil Spray Description\n\n\n\n\nMagnesium Chloride Brine\n\nFrom The Ancient Zechstein Sea\n\nSuper Concentrated Solution\n\n100% Pure\n\nOptimal Health\n\nNo Animal Testing\n\n\nPure Magnesium Oil is a highly concentrated spray of pure magnesium chloride brine from the ancient Zechstein Seabed in the Netherlands. Perfect for soothing overworked muscles and joints. This spray can be used daily, is non-greasy, and leaves no unpleasant odor.\n\n\n\n\n\nDirections\n\n\n Spray 4-5 times onto skin and massage the area. Can be reapplied as desired. A slight white residue of sea salt may form on skin surface, which can be wiped or rinsed off.\u00a0Add 2 ounces to your bath or foot soak and immerse for 20-30 minutes.\u00a0This spray\u00a0can also be used as a deodorant.\n \n\n\n\nFree Of\n \n \n \n \n Animal testing.\n \n \n \n*These statements have not been evaluated by the Food and Drug Administration. This product is not intended to diagnose, treat, cure, or prevent any disease.\n\n Ingredients: Magnesium chloride brine.\n\n\n\nWarnings\n\n For external use only. Not for internal use. Avoid contact with eyes. If irritation, redness, or discomfort occurs, discontinue use and consult a licensed health care practitioner.\n \n\nThe product you receive may contain additional details or differ from what is shown on this page, or the product may have additional information revealed by partially peeling back the label. We recommend you reference the complete information included with your product before consumption and do not rely solely on the details shown on this page. For more information, please see our full disclaimer.", "data": {"dataFacets": []}, "categories": ["Beauty & Personal Care > Bath & Body Care > Moisturizers & Lotions > Magnesium Topicals"], "gender": "Unisex", "product_images": [], "market_id": 34, "remote_code": "life-flo-pure-magnesium-oil", "is_lost": 0, "variants": [{"remote_code": "life-flo-pure-magnesium-oil", "upc": "645951405308", "remote_url": "https://www.vitacost.com/life-flo-pure-magnesium-oil", "size": "8 fl oz", "origin_color": "No color", "price": 12.49, "variant_images": ["https://www.vitacost.com/Images/Products/500/Life-Flo/Life-Flo-Pure-Magnesium-Oil-Spray-645951405308.jpg"], "stock_count": 1, "data": ["transfer"], "image_url": "https://www.vitacost.com/Images/Products/500/Life-Flo/Life-Flo-Pure-Magnesium-Oil-Spray-645951405308.jpg", "additional_image_base64": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAZABkAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAA1B4ADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD9U6KKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiuQ+MPi+8+H3wj8b+KdOigm1DQ9DvtTto7pWaJ5Ybd5EDhSCVJUZAIOM8igDr6K+RPCX/BQHTYPB3w2TxN4S8Q63428WeE/+EoNl4N0xZ4PLUsJFQST71ICM3zEjA+9kgHsbj9ur4ey6J8Or/RNN8TeLLrx1bTXumaRoGl/ab2O3hJWeWaPeNqxsrKdpYkq20NigD6Kor5dT/gof8Op/hv4J8aW+geL7zTvF+s3GhaXZ2umxS3j3MRK4MSzE4dgAoXcxJGQOcWfEn7fngbwnd3ltqPhbxvHcaRZW1/4jjj0dXPhuOfmIXwEvysV+fbH5h289jQB9M0V8q/tIftu6B4G0Dx14f8Gx69rPi2w8IT65Freh6Wt7YaQ0tsz2U1y7EgBmMbD5HXaQWwucY3we/afubjxL4APjbxvqKxz/AAatvHGtWb6NZppxbePPvmuUImWTAYeQkflbRkHdxQB9h0V84+Df27vAPjA3QOjeKtCb+wLnxPpg1nTUt/7asIELyS2h8whjtG4K5QkEHGOao+A/2/fBXxFudKtNL8IeOIbzW9Dutc0KG90mKI6ytuhaWC1PnEPKNpGCVQkcOQQSAfTlFfFHwM/4KK/29+zjpfxD+JXgvWtNvbq/TTIJ9D05V0/VrmW5niiisjLcsxZVh/eGVkUMDgkEV7m37TFlB4K8PeI7rwD45s11rX4PD8emy6VGbu3eUErcyqsxT7MMcyqzfQ80AeyUV5Z+0x8RPE/wu+Ed5rngyz02/wDE76lpem2Nvq6u1s8l3f29r84R0bpMSCGGDgnI4PB2/wC1Nf8Aiv4zfCLQPC9jZSeFPFFl9p1m6vEc3VtLPp95d2sERDBUkX7DJ5qurECRBhSc0AfR9FeVw/tC6TY6lqFp4p8Pa/4FW10m712O51+K38q6srXZ9olQwTSlTGJIyUkCPhwdpwcYq/tWaNarrI1jwd4t8PTaZ4Wu/GJh1K1tg1xp9vsyY9lww8xt/EblWXB3hMrkA9uoryOH9pfw7b2WsXWu6PrvhZdP0mLXI49VtojLfWcrmON4EhkkYuX2p5ThJA0iAoN1RXv7TOjaLpWsy654a8RaBrWmPp6Hw/qEdqLy4F9OYLR43S4aDbJKrplpV2FG37KAPYaK8l1n4xHS9T8L3Gr6Z4j8LPc2mq3Uug3MFjK0q2sSuxlkjmkCkA5TypCGLYcjFT+If2ivDfhvQ7DVbmy1WS3vPB+oeNo1iijLiys0tXljIMgHnEXkW1c7TtfLDAyAep0V4XN+1lp0M19bH4feODf2umJrosvsVqJJdLbf/pik3IUKChBhcrPkgCI16X4g+Jnh/wANfDqXxxd3jN4dSzS+SeCJpHmjkCmMRoBuZnLKFUDJLAd6AOporwX4l/HPxFoeheD9Uh8I+JvDMl34rs9Mn0m9t7Ke71C3lilISIRTyou5lQZZ0K4O4qMmprj48T+JPE3w1i0yK/8ADUdz4uv9A8R6Rq8MH2iEwaNfXflOyNIgG6O2lDxSEFcfMQWFAHulFePeGP2nfDviZraT+w/EGlafqWl3Gs6JqOo20SQa1awqHd7fbKzKSjK6rMsTMp3AEAkVfDv7QFn4y1PwJqZsvEnhTQ9esLvUrRdWtrJYb+2S3jm86QrK8sIRXBAwpJJyMAGgD2uivnCL9qNdW+I3g64ex1vwj4Fu/DeseIZ7rXbOCOLULOBbV4rqMo8kkaqkkjFH8uTDqWTpXpfgD402XjrXl0afw7r3hbUbjT/7WsYNeghjN9Z71Rpo/Klk27WkiDJJskXzEygzQB6JRXz/AOIP2h7z4f8Axe+JGn6tpGu674X8P6XpmpSy6RZwPHpEDpcGeeUs6SSA+WDsj81wI2IQDOdTxl+0Vp4tviXp+laZ4kWPwjpk1xqPifTbeykt7POmi9ilhE0w89ijqFUIw343hUIYgHtlFeMax+05ovhvUNcs5/D/AIkv7Pw3DZTa3rcNvbC1s4rmJZEmfMyu4CsS4iR2XaTtxtJ1PE/7Q+h+GPEWrWD6Prd/peiXVvZa34gsoImsNKnmWNkSYtKsjEJNC7GKOQIsilyvOAD1OiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK5n4neDP+FjfDbxZ4T+2f2f8A29pN3pf2zyvN8jz4Xi8zZld23fnGRnGMjrXTUUAfMPw3/Yo/4V94p+H2s/8ACZf2h/wiXgebwZ5P9l+X9q3uzfad3nHZjdjy8N/vV4x4u/Zhvv2YPDnwUk8Ma9451Hxb4RsdV0v+3/B/gtdXS6tZ52nMM1q0reQxM7COQsy5Ri3YV+gtFAHwv+zJ+xf4jX4I/AlvFt/L4W13wZ4mu/FU+k3FsLmWYSyuUgkcOojfaVYnDYJxtyK6341f8E9dH+KXxi1/4g6drmk6de+IIrdNStNf8LW+txiSGMRrLbGV08liiqGGGViMkdMfXdFAHyb48/YSudZ1bxbc+EPiLL4MtPF/hODwrr1kuhw3SXKQW/2eGWP50EOI8KyKMFchShIIt6N+wjpsGs6NLrPimTVdJtPhSvwuurGKw8h7mLflrxZfNby2IJAj2tg4O89K+p6KAPjH4Xf8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", "description": "Color: No color; Size: 8 fl oz", "colors": ["No color"]}]}, "remote_url": "https://www.vitacost.com/life-flo-pure-magnesium-oil", "parsing_type": "basket", "finalize": false, "parsing_code": 200, "parsing_text": "[200] Success: Item: 'life-flo-pure-magnesium-oil' - parsed successfully. additional_error_text=''"}
status_code 500
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 712, in log_product_upload add_product_log( File "/opt/working_folder/api/logging_router/api/product_logging.py", line 83, in add_product_log .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)