API design is such an important part of development, but it’s often over-looked. The most difficult aspect is designing for long term viability, but too many APIs are designed to meet immediate, tactical concerns.
November 17th, 2019
Publishing a public API involves many considerations, from billing and metering through to documentation and on-boarding. These are likely to be addressed through a collection of solutions rather than a single all-singing, all-dancing API management platform.
April 25th, 2018
REST API design is dependent on the clients that will be consuming the resources – APIs that are designed for server-based integrations tend to look quite different from those that are designed to support mobile applications.
March 20th, 2018
If you find REST APIs difficult to design, develop and scale, then your experience with GraphQL is not going to be any easier.
August 14th, 2017
Swagger enables the same kind of automated discovery and integration that WSDL was invented to support. In doing so it undermines the design of REST APIs and doesn’t even provide adequate documentation.
June 4th, 2017
One of the more enduring problems with service integration is managing change in service interfaces. Consumer-driven contracts can help to detect breaking changes, but this visibility comes at a price.
May 16th, 2017
No self-respecting integration platform is complete without an API management story these days. Is this just a RESTful return of the enterprise service bus?
July 12th, 2016
REST API development using ASP.Net WebAPI is so fussy compared to other ecosystems such as Node.js and Ruby. New frameworks are emerging that promise to simplify both development and hosting of APIs in the .Net world.
March 23rd, 2016
An API gateway can solve many generic problems in an API infrastructure, but you do need to define a clear remit and protect against creeping scope.
December 12th, 2015
If you’re not using HATEAOS then you’re not using REST. That’s true enough, but in many cases adopting HATEOAS doesn’t deliver much value beyond architectural purity.
September 27th, 2015
Change in an API is inevitable. Attempting to manage this change through version numbering usually creates more problems than it solves.
July 2nd, 2015
Gartner’s definition of enterprise integration as a service is so wide that it can be difficult to draw any meaningful comparisons between the platforms in the “leaders” space.
November 22nd, 2014
Debates on the finer points of REST can bring out the worst in people as they seek to define what is and is not “RESTful”. In most cases the debate is unlikely to make the difference between success and failure for an API.
October 15th, 2014
If you adopt OData you don’t have to expose the entire range of query functionality for every resource. You can use the OData libraries to parse queries and interrogate data directly.
July 22nd, 2014
Using version tolerant readers can help you to cope with changes to service contracts though this does come at the expense of a weaker contract. The approach is more appropriate for fluid services that are prone to frequent change.
April 21st, 2014
Structured and “Hackable” URIs are a staple part of SEO-friendly websites. Although developers generically expect to see them in HTTP-based APIs, they should be irrelevant to consumers of a fully RESTful API that leverages HATEOAS.
October 19th, 2013
Given how important APIs have become in driving the reach of applications and services, it’s surprising how little investment is made in the usability of APIs as opposed to UIs. Perhaps the principals and techniques used by UX should be applied to developing more effective APIs…
July 16th, 2013
Change is an inevitable and even desirable part of distributed development. Managing the impact of that change is the difficult part, particularly when change affects the service interfaces that bind a distributed platform together.
December 17th, 2012
REST is more of an architectural style than a set of standards. That said, a service should follow certain conventions if it is to be predictable and simple to work with.