Skip to content

Bulk API PUT/DELETE do not work when Magento_ReCaptchaWebapiRest is enabled #35348

Closed
@nuzil

Description

@nuzil

Preconditions (*)

  1. Magento 2.4.3 - 2.4.4

Steps to reproduce (*)

  1. Execute any Rest Api Bulk request with PUT or DELETE, when in URL expected 1 or more parameters. Example: {{URL}}rest/async/bulk/V1/products/bySku
    Sample payload:
    [
    {
    "product":{
    "sku":"24-MB01",
    "name":"Printed Dress",
    "status":1,
    "visibility":4,
    "price":17
    }
    },
    {
    "product":{
    "sku":"24-MB04",
    "name":"Black WATCH",
    "status":1,
    "visibility":4,
    "price":77
    }
    }
    ]
  2. Request will return 500 and exception.

Expected result (*)

  1. Execute any Rest Api Bulk request with PUT or DELETE, when in URL expected 1 or more parameters. Example: {{URL}}rest/async/bulk/V1/products/bySku
  2. Request will return 200 and will be processed correctly

Actual result (*)

  1. See "Steps to reproduce" for actual result.
  2. If disable module "Magento_ReCaptchaWebapiRest", then requests start to work.

Additional Information:
Exception stack trace:

[2022-04-26T08:31:18.611204+00:00] main.CRITICAL: TypeError: Argument 1 passed to Magento\WebapiAsync\Controller\Rest\Asynchronous\InputParamsResolver::resolveBulkItemParams() must be of the type array, string given, called in /var/www/html/mg24/magento2/app/code/Magento/WebapiAsync/Controller/Rest/Asynchronous/InputParamsResolver.php on line 123 and defined in /var/www/html/mg24/magento2/app/code/Magento/WebapiAsync/Controller/Rest/Asynchronous/InputParamsResolver.php:178 Stack trace: #0 /var/www/html/mg24/magento2/app/code/Magento/WebapiAsync/Controller/Rest/Asynchronous/InputParamsResolver.php(123): Magento\WebapiAsync\Controller\Rest\Asynchronous\InputParamsResolver->resolveBulkItemParams() #1 /var/www/html/mg24/magento2/app/code/Magento/WebapiAsync/Controller/Rest/AsynchronousRequestProcessor.php(100): Magento\WebapiAsync\Controller\Rest\Asynchronous\InputParamsResolver->resolve() #2 /var/www/html/mg24/magento2/app/code/Magento/Webapi/Controller/Rest.php(195): Magento\WebapiAsync\Controller\Rest\AsynchronousRequestProcessor->process() #3 /var/www/html/mg24/magento2/lib/internal/Magento/Framework/Interception/Interceptor.php(58): Magento\Webapi\Controller\Rest->dispatch() #4 /var/www/html/mg24/magento2/lib/internal/Magento/Framework/Interception/Interceptor.php(138): Magento\Webapi\Controller\Rest\Interceptor->___callParent() #5 /var/www/html/mg24/magento2/lib/internal/Magento/Framework/Interception/Interceptor.php(153): Magento\Webapi\Controller\Rest\Interceptor->Magento\Framework\Interception\{closure}() #6 /var/www/html/mg24/magento2/generated/code/Magento/Webapi/Controller/Rest/Interceptor.php(23): Magento\Webapi\Controller\Rest\Interceptor->___callPlugins() #7 /var/www/html/mg24/magento2/lib/internal/Magento/Framework/App/Http.php(116): Magento\Webapi\Controller\Rest\Interceptor->dispatch() #8 /var/www/html/mg24/magento2/generated/code/Magento/Framework/App/Http/Interceptor.php(23): Magento\Framework\App\Http->launch() #9 /var/www/html/mg24/magento2/lib/internal/Magento/Framework/App/Bootstrap.php(264): Magento\Framework\App\Http\Interceptor->launch() #10 /var/www/html/mg24/magento2/pub/index.php(30): Magento\Framework\App\Bootstrap->run() #11 {main} [] []


Please provide Severity assessment for the Issue as Reporter. This information will help during Confirmation and Issue triage processes.

  • Severity: S0 - Affects critical data or functionality and leaves users without workaround.
  • Severity: S1 - Affects critical data or functionality and forces users to employ a workaround.
  • Severity: S2 - Affects non-critical data or functionality and forces users to employ a workaround.
  • Severity: S3 - Affects non-critical data or functionality and does not force users to employ a workaround.
  • Severity: S4 - Affects aesthetics, professional look and feel, “quality” or “usability”.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Area: APIsComponent: ApiUse with concrete module component label E.g. "Component: Api" + "Catalog"Issue: ConfirmedGate 3 Passed. Manual verification of the issue completed. Issue is confirmedPriority: P1Once P0 defects have been fixed, a defect having this priority is the next candidate for fixing.Progress: doneReported on 2.4.4Indicates original Magento version for the Issue report.Reproduced on 2.4.xThe issue has been reproduced on latest 2.4-develop branch

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions