Quick Start
Create your first order via the API in three steps
Overview
This guide takes you from zero to a live order created via the API in three steps. You'll set up a workflow template in the Routing App, grab a ready-made example payload from the same screen, then post it to the Create Order endpoint with your API token.
Before you start, get an API token from Settings → Integrations in app.installer.com. See Authentication for details.
Steps
Create a workflow template
Workflow templates define the steps an order goes through (dispatching, booking, offer, payment, installation, sign-off). Every order created via the API references a workflow template by ID, so this is the first thing to set up.
- In app.installer.com, open Workflows in the sidebar.
- Click New workflow template and configure the steps your order should follow.
- Add questions for the data your workflow needs to collect, for example:
mpan(Meter Point Administration Number) for UK grid applicationsmeter-numberormeter-serialfor the existing metervehicle-registrationandcharger-modelfor EV installspanel-countandsystem-size-kwfor solar PVheat-pump-output-kwfor heat pump installs
- Each question references a custom field. Give each custom field a stable custom ID (the kebab-case examples above). Your API integration sends and reads values by these custom IDs.
- Save and publish the template.
Custom IDs are the stable contract between your external system and Installer.com. They survive renames and won't break your integration the way UUIDs do when fields are recreated. Questions are the UI presentation layer on top of those fields, so the same custom field can be reused across multiple questions and workflows.
Copy an example payload from the Routing App
Each workflow template in the Routing App has an API button that opens a "Send orders via API" dialog. It shows:
- The endpoint URL (
POST https://api.installer.com/api/v1/order) - A ready-made example JSON payload with
workflowIdpre-filled to your template's ID - The custom fields you configured on the template, with their custom IDs
Open the Workflow Templates list, click API on the template you want to use, and copy the payload. The example is a working request shape: edit the values to match your data, add your Authorization: Bearer <token> header, and post it.
curl -X POST https://api.installer.com/api/v1/order \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d @order.jsonThe response contains the new orderId, a human-readable displayId, and a clientUrl you can share with the end customer.
Prefill data you already have (optional)
The example payload is intentionally generic. If your system already holds answers to the workflow's questions, send them at creation with customFields. Each entry references a custom field by its stable customId and carries the value:
{
"workflowId": "...",
"customFields": [
{ "customId": "mpan", "value": "S12345678901234567890" },
{ "customId": "panel-count", "value": 12 },
{ "customId": "scaffolding-required", "value": true },
{ "customId": "preferred-install-date", "value": "2026-08-01" }
]
}Prefilled fields show up as already-answered questions, so the operator and installer don't have to ask the customer again.
You can prefill more than custom fields: attach files, pre-assign the installer, and include a priced offer. See Creating Orders for every field type, file uploads, actor assignment, and offer prefill.
Next steps
- Creating Orders for custom field types, file uploads, actor assignment, and offer prefill.
- Integrating with External Systems for the broader integration model, including outbound webhooks and automation hooks.
- Webhooks to receive workflow state changes back in your system.
- API Reference for the full endpoint catalogue.