An application can return status codes in response headers titled "Resource-Status-Code." There can be 0 or more such response headers. The value of a Resource-Status-Code field MUST contain a numeric status code, a space, and a textual explanation. Whether the subscription request was a success or failure depends on the specific Resource-Status-Code; if a failure the sink MUST NOT create the notification resource. Example response message: HTTP/1.1 400 Bad Request
Resource-Status-Code: 1.0 CALLBACK URI SYNTAX
| Numeric code | Reason phrase | Explanation |
|---|---|---|
| 1.0 | CALLBACK URI SYNTAX | The server knows in advance that it cannot parse the callback URI, for example it might be a malformed HTTP URL. This would be thrown by the subscription resource to flag an error in the ongoing request. The sink MUST NOT create the notification resource. |
| 1.1 | CALLBACK URI UNREACHABLE | The server knows in advance that it cannot establish a network connection to the callback URI, for example because of a firewall. This would be thrown by the subscription resource to flag an error in the ongoing request. The sink MUST NOT create the notification resource. |
| 1.2 | CALLBACK URI UNSUPPORTED | The server can parse the callback URI but not support it fully, for example it recognizes a mailto URI but does not know how to support it. This would be thrown by the subscription resource to flag an error in the ongoing request. The sink MUST NOT create the notification resource. |
A mailto URI MAY be passed to the Step 1 (Subscription) resource as the sink callback URI. Such a URI MUST be compliant with RFC 2368 (The mailto URL scheme). A source MUST assume that a sent Step 4 (Notification) message emitted via email has not been received unless it receives a return receipt compliant with RFC 2298 (Message Disposition Notifications). The sink is responsible for generating a mailto URI that is compliant with the other requirements of this document, for example by creating a unique and difficult to guess identifier for each request to the Step 1 (Subscription) resource. It is expected that a mailto sink URI will be received by a bot listener, not a human user agent.DSNs and MDNs are defined in the following IETF RFCs:
The rssCloud interface is very similar to the protocol described here. On a superficial level it is different in that it uses XML-RPC and only allows notifications for RSS files. On a design level the difference is that the notification carries metadata about which of a group of watched resources has changed state. In the language used in this document, rssCloud is an update protocol. The notification protocol described here is intended as a basis for a yet to be defined update protocol.