Przejdź do treści

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

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