New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Hardest and Worst API ever #2039
Comments
I have also integrated 10+ platforms.
|
I agree wholeheartedly with the original post. Most platforms can do with one api call what Amazon needs multiple. A feed process from start to finish takes 6 api calls and that's best case scenario like if the feed is finished processing when you call Get Feed the first time.. wtf. Anyway, I want to just confirm that what thethree said in the post about order items. Currently there is no way to get all items in one call with order info. There was an update a few months ago now that made it possible for there only to be a get order, and then get order item call which was amazing considering we used to have to make 3 other calls to get order information (buyer info, buyer address, order item buyer info). I can't speak to their second point about security but it is a horrible process to go through. Good luck with your integration! |
@erginkeles Aside from the authorization differences, the SP-API Feeds API allows you to continue using the existing feed formats (i.e. XML product feeds) that were available in MWS. With that said, however, we have been launching new API features on SP-API for creating and managing listings with modern RESTful API patterns. To get started with these new APIs, start with the use-case guide for the Listings APIs: https://developer-docs.amazon.com/sp-api/docs/listings-items-api-v2021-08-01-use-case-guide. The Listings API works in conjunction with the Product Type Definitions APIs that provide JSON Schemas representing the attributes and requirements per product type: https://developer-docs.amazon.com/sp-api/docs/product-type-definitions-api-v2020-09-01-model. To enable both the Listings and Definitions APIs, we are in progress migrating product type content to the systems that power these new APIs. For sellers, this currently covers ~330 product types in US and EU5 marketplaces. This will expand to more marketplaces and more product types by EOY. |
@chapmanjw That's great to hear that the SP-API is moving in the right direction. Are there plans for Order Fulfillment or Inventory feeds to be moved to a RESTful api? |
@bpyzikvc My team covers most of the listings and catalog offerings within SP-API, so I cannot speak to future plans for orders. However, you can already use the Listings APIs as a replacement for inventory updates: https://developer-docs.amazon.com/sp-api/docs/listings-items-api-v2021-08-01-use-case-guide#tutorial-partially-update-a-listing. The |
Here is an example PATCH request for updating quantity:
|
You can additionally use the JSON format of the Listings APIs in bulk with the JSON_LISTINGS_FEED feed type on the Feeds API: https://developer-docs.amazon.com/sp-api/docs/listings-feed-schema-v2 |
Thanks @chapmanjw I know your team is not working on For example, shopify get orders cal returns everything needed for shipping: Or would Amazon be able to use webhooks? MWS has rate limit too, but we often receive 429 even we wait very long. Also, regarding the update product quantity, you mentioned this
Can I assume Amazon has no plan to change this? (e.g. only accept json). I am migrating my application to the new API, so if it is not broken I prefer not to change. thanks! |
This API is impossible! The documentation is VERBOSE at best and the hoops you have to jump through is crazy! Finding resources online with competent explanations are just as hard to come by. /rant |
Seems no one from Amazon is monitoring this forum, unfortunately. |
@izaakm1 I completely agree but where are you stuck? If you add your issue here or start a new post and @ me, I can try to help. After much effort and confusion, I was able to get my integration working |
@bpyzikvc I am stuck at the part where I am making an actual call to the sp-api, specifically this request:
I am utilizing postman and in the authorization tab i am using 'AWS Signature" type as described in the actual docs 'Generate Temporary credentials using AWS STS' because i am using a ROLE for my application. I then take the resulting AccessKey / Secret key returned from that STS call and input it into the Authorization / AWS Signature section of the call I am making for marketplaceParticipations and am getting the above response. |
The original post on product updates is largely a duplicate of bug amzn/selling-partner-api-models#392. I'm fairly certain there is already a bug on streamlining the setup examples (it's hard to search the database of open bugs because there are over 1000 open bugs). This should be closed in favor of those. |
You did not specifically mention using the SessionToken returned by STS in your call. You need to insert that in the Authorization tab, under ADVANCED. It is different from the LWA Access Token, but also has a TTL of one hour, so it's easy to get confused. Any error messages mentioning "security token" refer to that essential third part of the results of your STS call. To summarize, you need four temporary credentials to access virtually everything in SP-API: Security Token Service Temporary Role Credentials
From the Refresh Token Exchange or createRestrictedDataToken
These are in addition to the AWS Signature v4 which appears to follow its own, undocumented set of rules for SP-API. |
This is a very old issue that is probably not getting as much attention as it deserves. We encourage you to check if this is still an issue after the latest release and if you find that this is still a problem, please feel free to open a new issue and make a reference to this one. |
closed for inactivity |
and
These two hit the nail for me. Updating Listing Item has been cryptic for me to understand why some values doesn't work when I make a patch call. |
See bug #3068 etc for that part. That part of the API isn't really finished yet for sure. |
This API has both I mean, is it too complecated to ask for an API where you essentially send something like this and that's it?
{
"{{ sku }}": {
"quantity": 0,
...optionalAdditionalProperties
}
} |
Hello, I cannot get all the product information in the store. How can I do this? I need this information for product synchronization and batch updates. |
I’ve developed more than 10 marketplace integrations and i can easily say that Amazon SP-API is the worst documented and worst developed API by far!
Why is it so hard?
At almost every marketplace integration, to upload a product, you simply do these:
And at amazon SP-API:
Watch thousands of minutes of videos, do lots of unnecessary meaningless clicks, read the worst documentation content page by page; for what? Just to generate a client id and client secret key.
Ok , i have the keys now. What to do now, just to upload products? I DON’T HAVE A CLUE.
SP-API has a Feeds API. So we should be using it to upload products, right? I think so. But i don’t have an idea, how?
Why do we still deal with XML, for starters? You develop a brand new API called SP-API. And still make us deal with XML?
Ok, let’s deal with XML. But how?
The World of developers have changed the future of API development guys! We have restful API’s now. We work only with endpoints and json today. Why did you publish a new API, you might just publish an update on MWS. What is wrong with you?
And after all this work, i still don’t know how to upload products or update quantity-price. Not to mention about orders or other things.
The text was updated successfully, but these errors were encountered: