简体   繁体   中英

Updating stock on magento 2.1 using REST API - Error {“message”: “Request does not match any route.”}

I am trying to get a stock item quantity updated on a magento 2.1 site using REST API.

I am coding in VB.net but I get the error JSON response {"message": "Request does not match any route."}

            Dim Access_Token = "XXXXXXXXXXXXX"

            Try

                Dim VATWebClient = New WebClient()
                VATWebClient.Headers(HttpRequestHeader.Accept) = "application/json"
                VATWebClient.Headers(HttpRequestHeader.ContentType) = "application/json"
                VATWebClient.Headers(HttpRequestHeader.Authorization) = "Authorization Bearer " & Access_Token
                Dim Response As String

                Response = VATWebClient.UploadString("http://www.xxxxxx.com/rest/V1/products/xxxx/stockItems/1", "{""stockItem"":{""qty"":100}}")


            Catch webEx As WebException
                Dim errorMessage As String = webEx.Message
                Dim errorStack As String = webEx.StackTrace

            End Try

I have also tried to setup SoapUI just to test to make sure that I am calling it right and I get the same error.

I read somewhere that the webapi.xml must be updated with the API which is required I am really hoping that's not the case as the host/web developer is not very accessible!

UploadString will create a POST Request, as you can see form the API Docs, this API endpooint is PUT method only.

https://devdocs.magento.com/swagger/index_21.html#!/catalogInventoryStockRegistryV1/catalogInventoryStockRegistryV1UpdateStockItemBySkuPut

I'm not too sure how to change the method in visual basic, but I'm sure it's not too difficult.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM