EMAIL / EXACT CAD HANDOFF

Your agent made it.
Keep the handoff exact.

Email intake uses a CAD attachment and a structured request so the part, quantity and manufacturing choices can be read back before they enter review. A receipt is a nonbinding request, not a purchase, production slot or print command.

Email ordering activation pending.

The email route is not advertised as ready to receive orders. Prepare the template below, but use MCP or REST or the signed-in workspace to submit a request today. Check this page again before sending CAD by email.

Email readiness does not establish production or payment readiness. Read the email status and current manufacturing capabilities.

1. Decide what you want reviewed

Choose dfm_review for free specialist advice, quotation to request pricing or manufacturing to request an FDM production offer. All three enter review without charging you. A specialist report has no guaranteed turnaround; a quotation needs an exact reviewed scope and price before any paid commitment.

Request the exact material grade, color, finish and settings. Catalog availability is not verified stock. Current firm production offers require eligible, verified PLA/PETG jobs. Tell us the intended use, fastening method, critical dimensions and allowed deviations; we cannot infer a fit or promise a universal tolerance.

2. Prepare one CAD file and order.json

Use the original export you authorize us to review. Keep its local SHA-256 and source revision. Quantity counts copies of the complete printable build: a file containing one body and one lid at quantity three requests three bodies and three lids. Different files or unequal component counts need separate requests; combined shipping is not automatic.

Use a sending mailbox and domain whose email passes DMARC authentication. Your email provider or agent mail tool must produce a plain-text body containing this command on its own first nonempty line:

NEW

Attach the CAD export and a file named order.json. The subject can identify your project. Remove signatures and extra unquoted body text; put design requirements in the JSON. Do not include API keys, card details or unrelated files.

AttachmentCurrent limit
One CAD exportSTL, STEP/STP, 3MF or OBJ; at most 10 MiB decoded
order.json or acceptance.jsonAt most 32 KiB each; only the JSON required by that command
Plain-text bodyAt most 16 KiB; one command, with any retained quoted lines starting with >

Use plain filenames without paths. Email encoding adds overhead; your email provider may impose a smaller total-message limit. A size-valid attachment is not a manufacturability check.

An enclosure request template

This is an example to edit, not permission to submit. Replace the grade and delivery placeholders, select the correct units and speed, and describe your real fit requirements. provider_standard delegates settings only with the customer’s agreement; required_arrival_at: null means they have no arrival deadline. Set consent only after they authorize sharing under the data policy.

{
  "version": 1,
  "submission_id": "enclosure-v1-001",
  "metadata": {
    "material": "PETG",
    "quantity": 3,
    "units": "mm",
    "country": "US",
    "postal_code": "60611",
    "desired_speed": "standard",
    "notes": "Three complete body-and-lid sets. Review the selected fastening fit before quoting.",
    "consent": true
  },
  "specification": {
    "process": "FDM",
    "material": {
      "family": "PETG",
      "grade": "REPLACE_WITH_CUSTOMER_APPROVED_PETG_GRADE"
    },
    "units": "mm",
    "quantity": 3,
    "finish": "As printed",
    "color": "red",
    "requirements": "Three complete body-and-lid sets. Review the selected fastening fit before quoting.",
    "manufacturing_options": {
      "policy": "provider_standard"
    },
    "destination": {
      "country": "US",
      "postal_code": "60611",
      "recipient": "REPLACE_WITH_RECIPIENT",
      "address_line1": "REPLACE_WITH_STREET_ADDRESS",
      "city": "Chicago",
      "region": "IL"
    },
    "required_arrival_at": null
  },
  "order": {
    "order_type": "quotation",
    "acknowledge_nonbinding": true
  }
}

Keep metadata.notes identical to specification.requirements. Material family, units, quantity and destination country/postal code must agree in both sections. Use a new saved submission_id for a distinct intended request. If delivery or the response is uncertain, preserve the original Message-ID, submission ID, body and attachment bytes when retrying; do not change the content under the same identity.

For a DFM-only request, omit the recipient and street address from destination; retain the required country/postal code and your approved manufacturing baseline. For a firm manufacturing offer, supply the actual complete destination. Keep personal information out of design notes.

3. Read the returned specification, then confirm

The reply contains a receipt, CAD filename and hash, the complete specification and order details, a readback fingerprint, an expiration and a ready-made confirmation command. Check the returned hash against your local export. Verify the quantity, units, material, color, requirements and address before confirming.

CONFIRM RECEIPT_ID MAILBOX_CAPABILITY READBACK_FINGERPRINT

Copy the exact returned command as the first nonempty line of a reply from the same mailbox, with no attachments, signature or extra unquoted text. Do not invent these values or put them into a public issue, prompt example or repository. The mailbox capability is a secret that permits access to this email request.

Sending CONFIRM authorizes the exact intake readback to become a nonbinding request. It does not accept a future price, authorize a card charge or send the model to a printer. If anything differs, do not confirm. Resolve the mismatch before creating a replacement. An unconfirmed readback expires after 24 hours. Its private receipt capability expires after 180 days; neither deadline deletes the saved data.

4. Check progress without resubmitting

STATUS RECEIPT_ID MAILBOX_CAPABILITY

Send the returned receipt and secret capability on the first nonempty body line, from the same mailbox, with no attachments. Status replies reflect the saved request and any reviewed offer. Payment links appear only when the existing offer and payment gates allow them. This flow replies to incoming commands; it does not promise unsolicited status emails or continuous monitoring of your mailbox.

Use a fresh Message-ID for each new status check. Replaying a previously processed Message-ID returns that message’s saved reply, not a fresh status read. If a response is uncertain, retry the original message with the same Message-ID and exact body. A pending review is still pending until a report or offer exists. No response is not proof that the first message failed; do not keep creating new submissions while waiting. An expired confirmation does not become an order.

5. Approve the exact offer before payment

A later offer must state the approved CAD/specification, quantities, full destination, price, shipping and applicable tax. Your customer decides whether to accept. The protocol supports an ACCEPT command with the exact acceptance.json; use the returned offer values and current revision, and only after the customer approves the entire offer.

ACCEPT RECEIPT_ID MAILBOX_CAPABILITY

Use this as the first nonempty body line and attach only acceptance.json. Its fields follow the REST body in the exact-offer acceptance contract; the operator cannot approve the price on the customer’s behalf. A changed or expired offer needs a new explicit decision.

When payments are enabled, the secure Stripe link authorizes a hold for the exact accepted total. A hold may reduce available card balance. The shipment charge is captured only after the completed, inspected order is physically handed to the carrier; creating a label is not shipment. If a hold expires, a new customer-approved authorization may be needed. We do not charge early just to preserve it.

What email does—and what it does not

Use the agent CAD-to-print workflow →
Report a non-sensitive problem with this flow →