{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Choose a Submission Method","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":"choose-a-submission-method","__idx":0},"children":["Choose a Submission Method"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Before submitting messages to the Digital Post Platform, choose how the message files should be provided to the platform."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The platform supports two submission methods:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["S3 Upload Method"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Direct Multipart Submission"]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Both methods use envelope files to describe the messages to be delivered. Each envelope defines the recipient, sender, message title, and references to the message body and any attachments."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The main difference is how the envelope files and referenced content files are transferred to the platform."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"option-1-s3-upload-method","__idx":1},"children":["Option 1: S3 Upload Method"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use the S3 Upload Method when you want to stage envelope files and message content in an S3-compatible storage service before starting delivery processing."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["With this method, you:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Create envelope files"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Prepare message body files and attachments"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Upload the envelope files and referenced content files to an S3-compatible bucket"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Call the delivery API with the S3 bucket connection details"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Use the returned delivery ID to monitor delivery status"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The platform retrieves the envelope files and message content from the configured S3 bucket during delivery processing."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This method is typically suitable when:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Files are already stored or generated in object storage"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["You are submitting larger batches of messages"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["You want to prepare and verify the file structure before creating the delivery"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["You need additional control over storage, access, or optional file encryption"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use this method if your integration is based on uploading files to S3 first."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"option-2-direct-multipart-submission","__idx":2},"children":["Option 2: Direct Multipart Submission"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use Direct Multipart Submission when you want to send all required files directly to the platform in a single HTTP request."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["With this method, you:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Create envelope files"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Prepare message body files and attachments"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Submit the envelope files and referenced content files directly using a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["multipart/form-data"]}," POST request"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Use the external transaction ID to monitor delivery status"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The platform receives the files in the request, stores them internally, validates the envelopes and content, and starts delivery processing."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This method is typically suitable when:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["You do not want to use S3-compatible storage"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["You want to submit a message bundle directly from your application"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["You are building a simpler integration where all files are available at request time"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["You want to avoid managing bucket structure, S3 credentials, and S3 object access"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use this method if your integration should send all files directly to the platform."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"comparison","__idx":3},"children":["Comparison"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Requirement"},"children":["Requirement"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"S3 Upload Method"},"children":["S3 Upload Method"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Direct Multipart Submission"},"children":["Direct Multipart Submission"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["File transfer method"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Files are uploaded to an S3-compatible bucket before delivery is created"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Files are included directly in a multipart POST request"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Storage responsibility"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Sender provides and manages the storage location"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Platform handles storage internally after upload"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Delivery request"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["JSON request with S3 connection details"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["multipart/form-data"]}," request containing envelopes and content files"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["File references"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Envelope file references must match files uploaded under the expected S3 prefixes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Envelope file references must match multipart section names and filenames"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Tracking identifier"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Delivery ID returned by the delivery API"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["External transaction ID provided by the sender"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Optional file encryption"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Relevant for files uploaded to S3"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Not applicable to the S3 file encryption flow"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"which-method-should-i-choose","__idx":4},"children":["Which method should I choose?"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Choose ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["S3 Upload Method"]}," if your integration prepares files in object storage before submitting them for delivery."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Choose ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Direct Multipart Submission"]}," if your integration should submit all envelope files, message body files, and attachments directly to the platform without using S3."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"next-steps","__idx":5},"children":["Next steps"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["After choosing a submission method, continue with the relevant guide:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["S3 Upload Method"]}," — ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/getting-started/upload-s3"},"children":["Upload Content to S3"]}," for uploading files to S3-compatible storage and creating a delivery from the uploaded files"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Direct Multipart Submission"]}," — ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/getting-started/submit-multipart"},"children":["Send Messages via Multipart"]}," for submitting envelope files and content directly using a multipart POST request"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/getting-started/verify-delivery"},"children":["Verify and Troubleshoot"]}]}]}]},"headings":[{"value":"Choose a Submission Method","id":"choose-a-submission-method","depth":1},{"value":"Option 1: S3 Upload Method","id":"option-1-s3-upload-method","depth":2},{"value":"Option 2: Direct Multipart Submission","id":"option-2-direct-multipart-submission","depth":2},{"value":"Comparison","id":"comparison","depth":2},{"value":"Which method should I choose?","id":"which-method-should-i-choose","depth":2},{"value":"Next steps","id":"next-steps","depth":2}],"frontmatter":{"seo":{"title":"Choose a Submission Method"}},"lastModified":"2026-06-03T14:29:04.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/getting-started/choosesubmissionmethod","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}