Developer, your orders have arrived. World Industries needs authority over their documents — and they need it now. Deep in their basement sits a generation engine: powerful, idle, and waiting. Its storage bays are empty. The blueprints and data that feed it have been lost somewhere in the archive. Before you can deliver, you'll need to assemble the stranded components and get that engine running:
Your job is to recover the lost components, load them into storage, and bring the engine to life with a single generation call. Empty bays, cold engine. Cold engine, no documents. No documents, no authority. The clock is running.
Objective: Load a template and data into storage, configure and run the generation, then collect the finished document.
Before running the steps, take a look at the two raw materials this mission works with:
Customer.Name, Customer.EffectiveDate, and Customer.LineItems.Knowing what's in both files before you start makes it much easier to see how they connect once you get to generation in Step 3.
Open the Doctavian Postman collection and navigate to the Mission 1 — Command and Conquer Your Document Empire folder. Run the steps in order.
Don't have the collection yet? Make sure you've completed the Quickstart and have a valid access token before starting.
This mission walks through connecting your data to a template and generating a finished contract, end to end.
Download the sample contract template, then open Step 1 — Upload the template in Postman, attach the file, and send the request.
The template reads from Customer.Name, Customer.EffectiveDate, and a Customer.LineItems collection. Article 3 — Scope of Services uses a Repeater over that collection, rendering one row per line item. Article 4 — Volume Discount is a conditional Paragraph that only appears if the total contract value — calculated with a sum() expression across all line items — exceeds $10,000.
The collection saves the returned template ID as {{templateId}} automatically. A 201 Created with a template ID confirms the template is in storage and ready.
Download the sample data file, then open Step 2 — Upload the data and send the request.
The collection saves the returned data ID as {{dataId}} automatically. A 201 Created confirms the data is uploaded and ready.
Open Step 3 — Generate the document. This is where everything from the previous two steps comes together in a single call:
{{templateId}}, the contract template with its Repeater and conditional clause{{dataId}}, the customer data uploaded in Step 2Send the request. A 201 Created response confirms the document was generated, with the output file's URN included in the response. Open it: the customer name, account ID, formatted effective date, line item table, and total contract value should all be populated correctly — and the volume discount clause should appear or not depending on whether the total clears $10,000.
This call is synchronous — the generated document is returned in the same response, no polling required. For high-volume batch generation, see Async Generation.
Open Step 4 — Download the document and send the request — it uses the generated document's URN from Step 3, saved automatically as {{generatedDocumentId}}. The response is the file itself, ready to open and review.
The components are united. The empire has its first document. Continue to Mission 2 — The Meridian Merger →