12-27-2024 06:40 AM
I am trying to get an eBay connection set up in an iPaaS, Workato.
Using the Client ID and Client Secret from the Application Keysets page, I was able to make an "OAuth2 (client credentials grant)" connector that passes the basic connectivity test.
However, when trying to make a real request out to it, in this case a simple call to https://api.ebay.com/sell/fulfillment/v1/order, I get an insufficient permissions error:
403 Forbidden
{
errors:
[{
errorId: 1100,
domain: ACCESS,
category: REQUEST,
message: Access denied,
longMessage: Insufficient permissions to fulfill the request.
}]}
Workato handles the fetching of a bearer token and appends it to request headers, so the header in this case shows as:
Content-Type application/json
Accept json
Authorization Bearer <MASKED>
In the eBay API Explorer, the call works just fine.
Workato hints at possibly needing to specify some scopes, however when I try to add one in the form of i.e. https://api.ebay.com/oauth/api_scope/sell.fulfillment , I get
400 Bad Request { "error": "invalid_scope", "error_description": "The requested scope is invalid, unknown, malformed, or exceeds the scope granted to the client" }
I've tried escaping the slashes as %2F as well, with the same result.
So, I'm looking for help in figuring this out. The AI assist (in both tools) ends up repeatedly telling me to just add the scopes as I've tried above, so I'm at an impasse with them.
This is my first time working with the eBay API at all, and I've only done a few of these setups in Workato so it's possible that I have some fundamental misunderstanding somewhere. Our overall objective is to be able to get reporting data from our eBay seller account into Workato for use in BI tools or similar.