From 3039f754c4b6f00b737d842dc635d7fda127c6fa Mon Sep 17 00:00:00 2001 From: Jimmy Lin Date: Mon, 11 Jan 2021 20:48:48 -0500 Subject: [PATCH] Use K-Eventing-Http-Attr instead --- docs/spec/data-plane.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/docs/spec/data-plane.md b/docs/spec/data-plane.md index 80415e6db39..1e2642e6999 100644 --- a/docs/spec/data-plane.md +++ b/docs/spec/data-plane.md @@ -91,6 +91,25 @@ delivered. CloudEvents received by Sink MAY have [Distributed Tracing Extension Attribute](https://github.com/cloudevents/spec/blob/v1.0/extensions/distributed-tracing.md). +### HTTP Attributes + +An event sender, including Source and Broker and Channel, MUST include +all the non-default HTTP attributes with header key `K-Eventing-Http-Attr` in +every event delivery to specify +what HTTP features it can support. Without a certain attribute, the receiver +MUST assume the corresponding HTTP feature is not supported. A list of HTTP +attributes can be found below: + +| Attributes | HTTP Feature Description | +| ------------------ | ------------------------------------------------------------------------- | +| `callable` | If the event sender supports event reply in HTTP repsonse. | + +An example is that a broker supporting event reply MUST send events with +an additional header `K-Eventing-Http-Attr: ["callable"]` so that the sink connected +to the broker knows event reply will be accepted. While a source +may send events without the header, in which case the sink connected directly +to the source will know that any event reply will be dropped. + ### Event reply header An event sender, including Source and Broker and Channel, SHOULD include