Message Envelope v1¶
Source schema: doc/schemas/message-envelope.v1.schema.json
Private personal-message artifact carried by Artifact Delivery and admitted by the messaging middleware.
Governing Basis¶
doc/project/30-stories/story-010-message-to-a-friend.mddoc/project/40-proposals/060-messaging-middleware.mddoc/project/60-solutions/023-artifact-delivery/023-artifact-delivery.md
Project Lineage¶
Stories¶
Fields¶
| Field | Required | Shape | Description |
|---|---|---|---|
schema |
yes |
const: message-envelope.v1 |
|
schema/v |
yes |
const: 1 |
|
envelope/id |
yes |
string | |
message/id |
no |
string | |
thread/id |
no |
string | |
parent/message-id |
no |
string | Optional parent message id used by replies and forwards. It is independent from recording metadata so a receiver can reject a reply that drops a required recording flag. |
recording |
no |
object | |
sender/subject |
yes |
ref: #/$defs/subject |
|
receiver/route |
yes |
ref: #/$defs/subject |
|
receiver/public-handle |
no |
ref: #/$defs/public_handle |
|
authorization |
yes |
object | |
body |
yes |
object | |
meta |
yes |
object | |
signature |
yes |
ref: #/$defs/signature |
Definitions¶
| Definition | Shape | Description |
|---|---|---|
subject |
object | |
public_handle |
object | |
signature |
object | |
| ## Field Semantics |
schema¶
- Required:
yes - Shape: const:
message-envelope.v1
schema/v¶
- Required:
yes - Shape: const:
1
envelope/id¶
- Required:
yes - Shape: string
message/id¶
- Required:
no - Shape: string
thread/id¶
- Required:
no - Shape: string
parent/message-id¶
- Required:
no - Shape: string
Optional parent message id used by replies and forwards. It is independent from recording metadata so a receiver can reject a reply that drops a required recording flag.
recording¶
- Required:
no - Shape: object
sender/subject¶
- Required:
yes - Shape: ref:
#/$defs/subject
receiver/route¶
- Required:
yes - Shape: ref:
#/$defs/subject
receiver/public-handle¶
- Required:
no - Shape: ref:
#/$defs/public_handle
authorization¶
- Required:
yes - Shape: object
body¶
- Required:
yes - Shape: object
meta¶
- Required:
yes - Shape: object
signature¶
- Required:
yes - Shape: ref:
#/$defs/signature
Definition Semantics¶
$defs.subject¶
- Shape: object
$defs.public_handle¶
- Shape: object
$defs.signature¶
- Shape: object