| body |
{"product": {"rating": null, "rating_count": null, "brand": "Barbie", "name": "Barbie Bubble Sparkle Mermaid Doll with Blonde Hair", "description": "Open up a world of bubble-filled fun with Barbie Bubble Sparkle Mermaid doll! Barbie mermaid doll's tail fin is extra-magical -- the cutouts make fantastical bubbles! Just pour the bubble solution (included) into the shell-shaped tray and dip Barbie doll's tail fin into the solution. Pull the seashell tab on her tail send it spinning and watch tons of bubbles take flight! There's even more fun to be had between rounds of bubbles -- play out underwater tales and use the included hairbrush to style the doll's long, shimmery-streaked hair. Barbie Bubble Sparkle Mermaid doll makes a enchanting gift for kids ages 3 years old and up, especially those that love bubbles and fantasy fun! Doll cannot swim or stand alone. Colors and decorations may vary.\n\n\u200bInspire seaside stories and bubble-filled fun with Barbie Bubble Sparkle Mermaid doll!\n\u200bBarbie doll's bubble-making tail fin is easy to activate -- pour the bubble solution into the tray (both included), dip her tail fin in and pull the seashell-shaped tab\u2026\n\u200b\u2026Barbie doll's tail fin will spin around and around, and tons of bubbles will take flight inspiring imaginations!\n\u200bBetween rounds of bubble fun, kids can play out underwater tales and use the included hairbrush to style the doll's long, blonde hair.\n\u200bBarbie mermaid doll features a fantastical look including a pink tail and bodice with pearl-inspired details and a shimmery hairstreak!\n\u200bWith so many opportunities for fantasy fun, Barbie Bubble Sparkle Mermaid doll makes a magical gift for kids ages 3 years old and up!", "data": {"dataFacets": []}, "categories": ["Model Dolls"], "gender": "kids", "product_images": [], "market_id": 100, "remote_code": "MTJLW56", "is_lost": 0, "variants": [{"remote_code": "MTJLW56", "upc": "194735370436", "remote_url": "https://warehouse-crm-backend.usmall.ru/product/remote_code?code=MTJLW56&market=100", "size": "N/A", "origin_color": "no color", "price": 24.1, "price_full": 35.0, "variant_images": ["https://images.mattel.net/image/upload/w_646,f_auto,c_scale/shop-us-prod/files/b1229759a0e565c23b01588f2ec93abf8ff266bb.jpg", "https://images.mattel.net/images/w_720,f_auto,c_scale/shop-us-prod/files/948ef381983fa05817245204e4ab1c3b2c330b8b/.jpg", "https://images.mattel.net/images/w_720,f_auto,c_scale/shop-us-prod/files/a84f9b7815b09bc8fab104264c85c1203ce564bf/.jpg", "https://images.mattel.net/images/w_720,f_auto,c_scale/shop-us-prod/files/ddda947ef5384ba609ef8686cc46dae6e57a3629_0be381ff-f021-44f1-bf36-28112e96de16/.jpg", "https://images.mattel.net/images/w_720,f_auto,c_scale/shop-us-prod/files/a310b6a9dad19e94672f5d1f938f98106e9c70e9/.jpg"], "stock_count": 22, "data": ["transfer"], "image_url": "https://images.mattel.net/image/upload/w_646,f_auto,c_scale/shop-us-prod/files/b1229759a0e565c23b01588f2ec93abf8ff266bb.jpg", "description": "Color: no color; Size: N/A", "colors": ["no color"]}]}, "remote_url": "https://warehouse-crm-backend.usmall.ru/product/remote_code?code=MTJLW56&market=100", "parsing_type": "basket", "finalize": false, "parsing_code": 200, "parsing_text": "[200] Success: Item: 'MTJLW56' - 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)
|