This document defines a “problem detail” as a way to carry machine- readable details of errors in a HTTP response, to avoid the need to invent new error response formats for HTTP APIs.
Tag: rest
Restful Objects | A hypermedia API for domain object models
The Restful Objects specification defines a set of RESTful resources, and corresponding JSON representations, for accessing and manipulating a domain object model.
Best Practices for HTTP API evolvability
REST is the architectural style of the Web, and closely related to REST is the concept of a HTTP API. A HTTP API is a programmer-oriented interface to a specific service, and is known by other names such as a RESTful service contract, resource-oriented architecture, or a URI Space.
I say closely related because most HTTP APIs do not comply with the uniform interface constraint in it’s strictest sense, which would demand that the interface be “standard” – or in practice: Consistent enough between different services that clients and services can obtain significant network effects. I won’t dwell on this!
One thing we know is that these APIs will change, so what can we do at a technical level to deal with these changes as they occur?
TechTalk – RESTful Application Protocols, From Design to Implementation | Channel 9
Challenging the notion that REST is suitable only for simple CRUD-based data services, in this TechTalk Ian Robinson will show how to implement a complex business process as part of a RESTful application.
Only by increasing the quality of agreements and understanding between humans can our machines come to communicate more effectively and with reduced effort. It is the task of humans to reduce the jargon that exists in our agreements, to increase our coupling to independently-defined communication facets, and to reduce our coupling to service-specific or inventory-specific facets.
B2B Applications for REST’s Uniform Contract constraint
Instead of defining a service contract in terms of special purpose methods and parameter lists only understood by that particular service, we want to build up a service contract that leverages methods and media types that are abstracted away from any specific business context. REST-compliant service contracts are defined as collections of lightweight unique “resource” endpoints that express the service’s unique capabilities through these uniform methods and media types.
This is a place for exploring aspects of implementing applications using the REST architectural style. This may include statements about existing frameworks and libraries, general discussions about the nature of the style and how it may be expressed and/or encouraged via a programming framework, etc.
OpenRasta is a resource-oriented framework for .NET enabling easy ReST-ful development of web sites and services. OpenRasta is designed to run on .net 2.0 and above, and can co-exist peacefully with your existing ASP.NET and WCF deployments.
Clean URIs are one component of a clean website, and it is an important one. The majority of end-user access to the Internet involves a URI, and whether or not the user actually enters the URI, they are working with one nonetheless.
RESTClient :: Add-ons for Firefox
RESTClient is a firefox extension use to visit and test RESTful/WebDav services.
RESTful Services with ASP.NET MVC and XHTML
ASP.NET MVC is one such framework that provides an inherently RESTful model for building XHTML-based services. This article walks through some XHTML design concepts and then shows you how to build a complete XHTML-based RESTful service
the code we’re about to go over is in no way intended to be used as an example of a robust solution. My main goal here is to show how to deal with the individual components of REST in PHP, and leave creating the final solution up to you.
A couple of good tricks related to PHP and REST
The REST Statelessness Constraint
The Statelessness constraint of REST is important, but often poorly understood. It is more restrictive than the SOA statelessness principle and prohibits a number of useful communication patterns from REST architecture.
REST in Windows Communication Foundation (WCF)
Preview 2 posted to CodePlex, adding new client capabilities that we think should really make client-side REST development easier. Chief among the new functionality included in Preview 2 is a new class that provides a staged pipeline model for requesting resources over the web. Using this new HTTP client class allows the developer to plug into the various stages of communication to handle custom authentication, caching, and fault handling outside of the client’s application logic.
REST worst practices
A list of REST design mistakes that are better to be avoided.
Yahoo! Query Language thoughts – snarfed.org
Currently, YQL is not part of a cloud database. It’s strictly a hosted service for query processing. On the plus side, this means that YQL isn’t limited to a single data source. It’s not even limited to Yahoo’s own properties. YQL can operate on any third party data source, as long as it’s in one of the usual suspect formats: RSS, ATOM, JSON, XML, etc.
WebDAV vs HTTP method semantics
Roy Fielding explaining REST
REST != HTTP
A lengthy but interesting rant on the abuse of REST as hype word.
Too many API’s that are called REST have nothing to do with it. They’re mostly simple replacements for SOAP in RPC-based architectures.
The Yahoo! Music API gives developers access to the Yahoo! Music catalog of artists, albums, tracks, videos, ratings and more. It provides numerous ways to browse the catalog: through charts, search, similarities, genres, artists, and user recommendations and ratings. Adding content to your site becomes simple when using our API and video player.
The biggest problem with applying the Web Architecture for enterprise systems is that we have no broad community (to my knowledge) that’s experimenting in media types to help solve problems that are common inside enterprises. That, I think, is a cultural and psychological limitation, of both the REST community and enterprise developers — and not due to the Web Architecture being inappropriate for enterprise systems-of-systems interaction.