Wednesday, November 21, 2012

Why having an API matters: testing

Why having an API matters: testing:
You know when they tell you exposing an HTTP API for your application (usually a REST-like one) is positive for reuse and accessing it in unforeseen ways? That's whay just happened to me last week while trying to put together some functional tests.

When REST isn't good enough

When REST isn't good enough:
At Braintree, we receive nearly 1.5 million API calls per day from thousands of our customers. Instead of a public REST API, we provide client libraries in seven languages to ease integration with our gateway. This covers almost every modern web application language. Using our Java library, we can also reach other JVM languages like Clojure and Scala. As you can imagine, these libraries are built on top of a REST API. Occasionally we are asked why we don't document and expose the REST API, and this inevitably sparks a discussion on our team about the tradeoffs. During these discussions there are three topics that often come up: Security, Platform Support, and Backwards Compatibility. These three topics have kept us in favor of providing client libraries instead of direct access to the low level API.

Saturday, November 17, 2012

Spring HATEOAS - Library to support implementing representations for hyper-text driven REST web services.

Spring HATEOAS - Library to support implementing representations for hyper-text driven REST web services.:
This project provides some APIs to ease creating REST representations that follow the HATEOAS principle when working with Spring and especially Spring MVC. The core problem it tries to address is link creation and representation assembly.

Cross domain REST calls using CORS

Cross domain REST calls using CORS:
To fight XSS attacks, the web browser imposes the same origin policy for HTTP requests made by JavaScript code. However, this behaviour is often desirable. Traditionally, server-side proxy or JSONP has been used but now there is a W3C Working Draft called CORS: Cross-Origin Resource Sharing. This post describes how it works.

All webservices should be RESTful - why aren't they?

restful webservices:
All webservices should be RESTful - why aren't they?

Thursday, November 8, 2012

Saturday, October 13, 2012

Define Your Own API Management Deployment Model

Define Your Own API Management Deployment Model:
API Management Platforms come in different shapes and sizes: cloud based infrastructure, on-premise infrastructure, multi-tenant SaaS, single provider portals, API ecosystems, etc. Let's look at some of the considerations involved in choosing the right approach for your API management project.

Monday, October 8, 2012

Building a Web API Platform with Open Source oAuth 2.0, REST, and NoSQL (JavaOne 2012)

Building a Web API Platform with Open Source oAuth 2.0, REST, and NoSQL (JavaOne 2012):
More and more companies provide Web APIs for their core services as an effective way to foster an ecosystem, but you need to have an API platform to host and manage the Web APIs. Building one from scratch can be challenging. This session teaches you how to create your API platform based on oAuth 2.0, REST, and NoSQL technologies by using open source stacks, including Apache projects such as Tomcat, Tuscany, Wink, Amber, and HTTP clients together with NoSQL solutions such as MongoDB and Redis. From real-world experience, you’ll learn the key components and techniques for creating a robust and scalable Web API server.

Friday, October 5, 2012

Friday, September 28, 2012

Version your RESTful API responses

Version your RESTful API responses:
In my previous post, I discussed the idea of adding sync to your RESTful API through a predictable and an already existing interface. This time, let’s take a look at how to go about versioning you API. Usually APIs are versioned through the use of URIs, for instance

Saturday, September 22, 2012

RESTful Standard Resolved!

RESTful Standard Resolved!:
There are some general guideline and hints about how to define it, but no explicit standard or accepted schema structure to use.

Wednesday, September 19, 2012

RESTful Web Services API using Java and MySQL

RESTful Web Services API using Java and MySQL:
Are you working with multiple devices like iPhone, Android and Web, then take a look at this post that explains you how to develop a RESTful API in Java. Representational state transfer (REST) is a software system for distributing the data to different kind of applications. The web service system produce status code response in JSON or XML format.

Dropwizard is a Java framework for developing ops-friendly, high-performance, RESTful web services.


Developed by Yammer to power their JVM-based backend services, Dropwizard pulls together stablemature libraries from the Java ecosystem into a simplelight-weight package that lets you focus on getting things done.
Dropwizard has out-of-the-box support for sophisticated configurationapplication metricsloggingoperational tools, and much more, allowing you and your team to ship a production-quality HTTP+JSON web service in the shortest time possible.

Monday, September 17, 2012

RESTful API Design: Teach a Dog to REST

RESTful API Design: Teach a Dog to REST:
It's been 10 years since Roy Fielding first defined REST in his dissertation on Architectural Styles and the Design of Network-based Software Architectures. Since then, REST is often held as the standard for usable, well-designed, easy-to-integrate APIs.

Friday, September 14, 2012

REST Web Services for Beginners

REST Web Services for Beginners:
When you are just getting started learning about Web services, it can seem like a daunting task. Just looking through the list of architectures to choose from can be confusing and intimidating. In this article, I will introduce you to REST and the concept of RESTful web services so that you can begin using them like a pro. Since REST has gained acceptance as a better, easier alternative to SOAP and the Web Services Description Language, you will find that it isn’t as hard to understandas you may have thought.