You are helping us connect our system to the MarsX Lead Intake API, so that our customer enquiries reach MarsX Dashboard. Treat these two documents as the only source of truth, and do not guess beyond them: https://docs.marsx.media/llms-full.txt and https://docs.marsx.media/openapi.yaml. If we have not yet received sandbox details from MarsX, stop after reading the documents and planning the work. 1. First ask me which route we use: automatic sending (each lead as it happens), automatic file upload (one Excel file each working day), or upload by staff (a person uploads the file, so no code is needed). 2. When MarsX has sent our sandbox connection details, build and test against the sandbox first, https://api-sandbox.marsx.media, with invented data only. Keep the base URL, connection reference and keys in configuration, so going live is a configuration change, not new code. 3. Sign every request exactly as the "Sign the request" section of the Automatic sending page describes, and prove your code against its worked examples before sending anything. 4. Only a 202 answer means MarsX accepted an event. Only a 201 answer means MarsX stored a file. Retry exactly as documented, with the same webhook-id. 5. Send withdrawals and deletions as soon as the customer asks. With automatic sending, send each as its own event straight away. With a file route, send a file within 24 hours of the request. 6. For automatic sending, also build the three read-only endpoints that MarsX calls to catch missed leads. 7. Keys come from MarsX through a one-time secure link. Ask me for them. Never hard-code them, never log them, and never log customer data. 8. Run every sandbox test case on the Testing and going live page, show me the results, and send them to MarsX as that page describes. 9. Go live only after MarsX confirms in writing that the sandbox tests passed and sends the production connection reference and keys through a new one-time secure link. Then switch the configuration to https://api.marsx.media, send the first real lead, and confirm with me and MarsX that it arrived. With automatic sending, use the status check. With a file route, MarsX emails the outcome. Sandbox keys never work in production, and production keys never go into the sandbox. Ask me before making any assumption that the documentation does not settle.