I'm getting no results, although the call is correct no errors. The only argument is key=<my key> which is correct because already using for other calls. Am I missing something?
Yes, we can help if there is a system error you are receiving from the API. If it is general programming advice, somebody else may be able to help you with that. If you provide more information about what you are using to access the API.
It's JSON output, my PDI tool does recognize all the fields even shows the data of the first row, but when executing the call no rows are found. The exact error in the logs is: org.apache.commons.vfs2.FileSystemException: Could not determine the type of file "https://api.brickowl.com/v1/inventory/list?key=
I've just ran the inventory list and it's definitely working. If it's happening on several different endpoints, there must be something wrong with your call.
The outputs are in JSON format.
Does it work if you type the full link in to a web browser?
This is not an issue with BO's API... it has to be an issue with how you're calling the endpoints, as different endpoints are all giving you empty replies. Without seeing your exact call it's difficult to know. Do you have a HTTP response code?
Double check the API key that you're sending. Double check the API key is enabled and has correct permissions under Profile - API Keys - click on your BrickOwl Key.
The call is correct, it works in a browser. Therefore the API key is correct, the API call are allowed. Nevertheless when called from the PDI tool the server returns HTTP 403 and the file is empty: no rows found. I have no clue....
I don't know. Not doing anything different than yesterday and day before and then it worked fine but not today, so no clue... In the meantime trying to understand the API of BL.. ouch, that is even more complicated
Well, still getting HTTP 403 errors indicating it is a server problem regarding authentication. The browser shows result, indicating it might be a tooling problem on client side. Here you go with automated connections between 2 parties. No API for me then. I'll stick with the import/export files, at least that works.
Which tool are u using for this? Maybe something changed in the tool? And why build something yourself it is only for syncing between BrickOwl and Bricklink (just a guess) there are plenty tools that can do that for you
PDI. Unknown. The tool hasn't changed but who knows, maybe a Windows update? It would have been nice if the API would have worked but tbh I do not want my business processes to depend on an API, too much risk of failure. Nonetheless it is odd that it doesn't work, so maybe in time I'll figure it out somehow
Is API use linked to IP address? Many of us enjoy static IP addresses (a blessing and a curse in equal measure!) but a lot of providers don't use them - so if your IP address changes every time you connect, or even just occasionally, this may be the issue.
AFAIK the API of BrickOwl is not linked to static IP. I have not seen any requirement as such. The HTTP error is 403 wich means the BrickOwl server understands the requist but refuses to honor it. Which is odd because if the same request comes from a browser it works fine. So it looks like the combination of PDI and BrickOwl that does not work. I am looking into PDI to see if I can find something more on this subject.
Comments
org.apache.commons.vfs2.FileSystemException: Could not determine the type of file "https://api.brickowl.com/v1/inventory/list?key=
I will try another API call... see what happens.
https://api.brickowl.com/v1/order/list?key=
The same problem for:
https://api.brickowl.com/v1/catalog/color_list?key=
which was working earlier this week.
No idea what to look for...
If it's happening on several different endpoints, there must be something wrong with your call.
The outputs are in JSON format.
Does it work if you type the full link in to a web browser?
@lawrence can you check this why the calls all return empty?
From within a web browser it works fine, data is returned.
No idea why the PDI tool is receiving empty files...
Without seeing your exact call it's difficult to know. Do you have a HTTP response code?
The HTTP 403 is a HTTP status code meaning access to the requested resource is forbidden. The server understood the request, but will not fulfill it.
Double check the API key is enabled and has correct permissions under Profile - API Keys - click on your BrickOwl Key.
Think you should be sending a GET method, not HEAD.
In the meantime trying to understand the API of BL.. ouch, that is even more complicated
And why build something yourself it is only for syncing between BrickOwl and Bricklink (just a guess) there are plenty tools that can do that for you
The HTTP error is 403 wich means the BrickOwl server understands the requist but refuses to honor it. Which is odd because if the same request comes from a browser it works fine. So it looks like the combination of PDI and BrickOwl that does not work. I am looking into PDI to see if I can find something more on this subject.