Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Top APIs I've enjoyed working with:

1. Stripe (Best)

2. Twilio

3. Twitter (Does what it needs to do quickly)

4. Puppeteer (Amazing. Was super helpful.)

5. Google (mostly ok but could be better)

APIs I've hated working with:

1. Paypal (the worst - docs are horrible and UI is not consistent with most of the help material out there because it changes all the time. Have you tried their support? That's a beauty)

2. Facebook (same story but manageable compared to paypal)



God, I haaaaaaaaate PayPal. Not as a dev, but as a casual private user, a real-world entertainment venue business owner, an online retail business owner, an eBay user, a seeker of capital loan sources, and just a UI and customer service utilizer.

If ever there was an example of a company with "first out of the gate" advantage leading to such a large head-start that theyy could afford to constantly give the middle finger to everyone, PayPal is it. I cannot wait for legit altternatives to catch up.

Stripe is doing pretty well, but unless they somehow tap into the casual online user they won't disrupt PayPal's stranglehold to any significant extent.


I swear it honestly seems like PayPal tries to make their site as hard to use and bloated as possible. I've never personally used their API, but if it's anything like their site, I'm thankful.


Same here, I just hate PayPal documentation, and the way they managed to keep it shitty over the years. Braintree (A division of PayPal) has nice documentation though.


The Twilio Dashboard _really_ needs a refresh. It's still in a world where every button is a complete page refresh. It's painfully slow to interact with.


I can live with the full page refresh, but my biggest pain point is working with sub accounts on trello. They store the sub account in a cookie instead of in the URL, so if I want to share what I'm looking at with a colleague it's a faff.


Have you tried using containers? There are extensions for Firefox[1] and Chrome[2].

[1] https://addons.mozilla.org/en-US/firefox/addon/multi-account...

[2] https://chrome.google.com/webstore/detail/sessionbox-free-mu...


For some reason every page load also needs to download a 8MB blob. I discovered this when I was trying to access it over a tethered connection.


Add eBay to the second list. We are still uploading XML documents.


Ebay does have a "RESTful" API: https://developer.ebay.com/api-docs/static/ebay-rest-landing...

Definitely agree that the old SOAP API was/is horrific. But the XML is about as easy to work with as JSON/REST.


I second that, eBay API is hot garbage and their staging is years out of date.


And Amazon sellers API (Amazon MWS). Rarely seen such an inconsistent mess of often poorly documented SOAP-ish calls, that so many external partners base their livelyhood on.


Some APIs you can choose to use. Other APIs you have to use. The ones you have to use tend to not care much about the developer experience... Because why should they? No one's going to avoid Amazon because their API was annoying. People need to make money.

This actually explains a lot of other things. Like the DMV.


The API is not not SOAPish, it just uses XML. They probably choose it so that they can use XML Schema to check incoming data (which is exactly the right decision here).


eBay is an absolute nightmare. They have a demo instance to test on and it's about 4 years out of date and half of it doesn't work anymore.


For those interested, the demo instance is at https://sandbox.ebay.com/ The message at the top says "eBay and PayPal will be separate companies soon", even though they became seperate companies 4 years ago.


Wow, this is awesome.

Mousing over the links there to see where they go, the first interesting-looking one was the supported/unsupported features list, over at https://ebaydts.com/eBayKBDetails?KBid=684. Ah, I see - a wall of text reminscent of "system requirements", except it's a list of things you don't get instead.

But then going up to https://ebaydts.com, I met with... a blank page. But it has a title, so something's blown up. I hit F12 half expecting to be met with some kind of implosion, and even then I was cynically amused: the page has `<body style="display:none;>`, with no closing quote, and while Chrome parses it properly the devtools don't, so the CSS editor leaks bits of HTML.

On the one hand my infosec-sense says there's probably some awesome stuff hiding in here... but on the other hand, between the 1000 feet of bureaucracy I'd have to all but drown to report _anything_ I found, and the tenterhooks I'd be on while poking around establishing there's anything there beyond plausible deniability... not worth it?


Okay, it's not just me (demo instance). Ebay's APIs and their SDK documentation (or lack thereof) are making me re-think my app's monetization model. Docs are shockingly bad, full of screenshots that look like ebay from the early 2000s.


I was working with it 3 years ago and it sounds like it hasn't gotten any better in that time.


I submitted a SAR to eBay and they responded by posting me a copy of my data on a USB stick!


Did you image it to check for deleted data in unallocated space?


Just be thankful you haven't worked in healthcare.


Seconded.


I was shocked at how bad the documentation for Facebook was. I assumed wiring up login would be super simple, it’s amazing how hard it was to find in their documentation. I guess when you’re paying devs to implant a shitty custom currency you can’t invest in docs for one of your biggest integrations.


Alternate reason: you'll figure it out anyway, because it's one of their biggest integrations. It doesn't matter how hard it is if your users and your business wants it.

They have no incentive to improve their docs. They're Facebook, there's no competition at all.


Add Mailchimp to that first list. When I do APIs I set Mailchimp quality as my documentation goal.


I’ve had a good experience with Facebook up until a few months ago when they started shutting off APIs that SHOULD be public without giving any notice and implementing silly requirements like “can’t post to your own business page without giving Facebook a login to your app and letting Facebook post on your company’s behalf”.


Foursquare API [1] is pretty good too (if you're still doing the location thing)

[1] https://developer.foursquare.com/


Twilio indeed! I also have Digital Ocean and SendGrid on my own list, which are written by developers for developers.


Github api. honorable mention.


For which side?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: