{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Message Delivery Model","description":"Developer documentation for integrating systems that send messages, plus reporting and operational APIs for platform holders."},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"message-delivery-model","__idx":0},"children":["Message Delivery Model"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"purpose","__idx":1},"children":["Purpose"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This section explains how messages are submitted, processed, and delivered by the platform."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["It describes the technical delivery mechanism used by the Delivery API."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Deliveries and Envelopes"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A delivery consists of one or more envelopes. Each envelope refers to a message body file and optionally one or more attachments."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["An envelope defines:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Sender"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Recipients"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Message Body"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Attachments"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Features"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Envelopes submitted via the REST API are processed as a single set, whereas file-based deliveries process envelopes in batches."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"atomic-delivery","__idx":2},"children":["Atomic Delivery"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The platform guarantees atomic delivery per envelope."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["All recipients receive the message, or none do."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Partial delivery is not possible."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"rest-api-submission","__idx":3},"children":["REST API Submission"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Message content can be submitted directly through the Delivery API using REST."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In this model, the sender includes:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Envelope metadata"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Message body"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Attachments, when applicable"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The content is transmitted to the platform as part of the API request."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The platform performs initial validation at submission time. Once accepted, the envelope enters the standard ingestion and processing pipeline."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This method is typically used when:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The sender prefers direct API integration"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Message sizes are within supported limits"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["External storage is not required"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["After submission, processing is identical to all other delivery types."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"s3-based-submission","__idx":4},"children":["S3 Based Submission"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Message content can be submitted using S3 compatible storage."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In this model, the sender:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Uploads message body and attachments to S3 compatible storage"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Submits envelope metadata via the Delivery API"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Provides access credentials for the platform to retrieve the content"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The platform retrieves the content during ingestion and performs validation before processing."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This method is typically used when:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Message sizes are large"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["File transfer must be handled outside the API request"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Storage separation is required by the sender"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["After retrieval, processing is identical to all other delivery types."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"content-validation","__idx":5},"children":["Content Validation"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Before processing, the platform validates:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Envelope structure"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["File presence"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Encryption parameters"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Hash values"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Invalid content results in failed deliveries."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"ingestion-and-processing","__idx":6},"children":["Ingestion and Processing"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["During ingestion, the platform:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Scans content"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Decrypts when required"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Encrypts per recipient"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Stores content securely"]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"recipient-resolution","__idx":7},"children":["Recipient Resolution"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Recipients are resolved and verified before delivery."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Subscription and access rules are enforced."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"feature-enforcement","__idx":8},"children":["Feature Enforcement"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The platform enforces features such as:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Scheduled delivery"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Interim repository"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Open receipts"]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"delivery-outcome","__idx":9},"children":["Delivery Outcome"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Each envelope results in:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Delivered"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Rejected"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Failed"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Results are available in delivery reports."]}]},"headings":[{"value":"Message Delivery Model","id":"message-delivery-model","depth":1},{"value":"Purpose","id":"purpose","depth":2},{"value":"Atomic Delivery","id":"atomic-delivery","depth":2},{"value":"REST API Submission","id":"rest-api-submission","depth":2},{"value":"S3 Based Submission","id":"s3-based-submission","depth":2},{"value":"Content Validation","id":"content-validation","depth":2},{"value":"Ingestion and Processing","id":"ingestion-and-processing","depth":2},{"value":"Recipient Resolution","id":"recipient-resolution","depth":2},{"value":"Feature Enforcement","id":"feature-enforcement","depth":2},{"value":"Delivery Outcome","id":"delivery-outcome","depth":2}],"frontmatter":{"seo":{"title":"Message Delivery Model"}},"lastModified":"2026-02-13T09:25:07.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/introduction/delivery-model","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}