On August 25th I’ve got email from Google Cloud Platform inviting me to fill out survey regarding Google Cloud Endpoints. It took me approximately one hour, since I used that time to dig deeper and collect all my wisdom and experience, frustration and kindly fill out survey :)
Then I look at Endpoints issues and noticed there are 63 issues all in status Acknowledged or Accepted (no Closed in Progress or similar). So I acknowledged situation and continued with life.
I was even more surprised to read blog post regardingGoogle Cloud Endpointspublished on September 1st. Just few days after survey they managed to fix and improve everything :)?
If somebody asked you few days ago what Google Cloud Endpoints are you would say something like: “Google Cloud Endpoints is library to create APIs and deploy them in Google App Engine and possibility to generate client libraries for iOS, Android or use JavaScript client in web browser." These Google Cloud Endpoints are based on Discovery format, i.e. it’s the same way how Google manages its public APIs, you can see more examples here https://developers.google.com/apis-explorer/
New Google Cloud Endpoints (currently in beta) are built on previous version but my initial feeling is that it has not much to do with previous version. I feel (emphasizing word feel) they totally redone Endpoints Service with much bigger functionality and yet kept old version usable, although now old endpoints are just tiny part of this new offering.
Most notable changes:
Good thing is that there is possibility to convert old endpoints definitions both from Python and Java endpoints framework (I’ve tried both, but Python version didn’t work for me with provided examples) to Swagger definition and deploy. When you deploy new version of endpoints, you can still use Discovery service and API Explorer, so there should be no changes. You should checkout following documents:
Migrating Python
https://cloud.google.com/appengine/docs/python/endpoints/migrating
Migrating Java
https://cloud.google.com/appengine/docs/java/endpoints/migrating