Skip to main content

Step 1.5 — SAT module configuration (sat-config) - Optional

There is a single configuration record per tenant. It changes how service orders are created and how printing behaves. Read it at the start of an integration: one of the fields makes otherwise optional data mandatory.

Read current configuration:

GET /gateway/sat-config
Authorization: Bearer {token}

200 OK response:

{
"printServiceOrder": 0,
"printIntervention": 0,
"printInterventionResume": 0,
"serviceOrderLayout": "5115481f-ba42-4a44-a865-5c76ae4bd0fa",
"interventionLayout": "7707abf6-6fab-4031-b57e-ad562b3a4806",
"interventionResumeLayout": "9fb2b7bd-1b27-479f-8a32-b3f342e4500f",
"allowNumerationIntervals": false,
"interventionToScheduler": false,
"invoiceToCustomerRelatedEntity": false,
"isEmployeeFillObligatory": false
}
warning

Until the configuration has been saved at least once, GET returns 404 ServiceOrderConfiguration.NotFound. Treat that 404 as “use defaults” (all booleans false, print modes 0), which is what the product UI does.

Save the configuration

PUT /gateway/sat-config
Content-Type: application/json
Authorization: Bearer {token}
{
"printServiceOrder": 1,
"printIntervention": 0,
"printInterventionResume": 2,
"serviceOrderLayout": "5115481f-ba42-4a44-a865-5c76ae4bd0fa",
"interventionLayout": "7707abf6-6fab-4031-b57e-ad562b3a4806",
"interventionResumeLayout": "9fb2b7bd-1b27-479f-8a32-b3f342e4500f",
"allowNumerationIntervals": false,
"interventionToScheduler": false,
"invoiceToCustomerRelatedEntity": false,
"isEmployeeFillObligatory": true
}

Response: 204 No Content. PUT is an upsert — it creates the record if it does not exist, so it works even when GET returns 404.

warning

PUT is a full replacement, not a patch: omitted fields take the type default (false, 0, empty GUID). Always GET, change the field you need, and send the complete object back.

What each field does

FieldTypeEffect
isEmployeeFillObligatorybooleanMakes responsibleUserId required on create and update of the service order. Validated on the server, not only in the UI
printServiceOrder0 | 1 | 2Print behaviour when saving the service order
printIntervention0 | 1 | 2Print behaviour when saving the intervention
printInterventionResume0 | 1 | 2Print behaviour when closing the service order
serviceOrderLayoutGUIDLayout used when printing the service order
interventionLayoutGUIDLayout used when printing the intervention
interventionResumeLayoutGUIDLayout used for the intervention summary
allowNumerationIntervalsbooleanStored, no effect yet
interventionToSchedulerbooleanStored, no effect yet
invoiceToCustomerRelatedEntitybooleanStored, no effect yet

Print mode values:

ValueMeaning
0Always ask before printing
1Print immediately, without asking
2Do not print
warning

The three print modes and layout GUIDs are interpreted by the product UI on save/close; they have no effect for callers that integrate through the API only. allowNumerationIntervals is inert in the UI as well: order numbers are always the highest number in the series plus one, without reusing gaps.

How isEmployeeFillObligatory affects order creation

When the flag is on, responsibleUserId (assigned employee) is required and must be greater than zero:

Fails: responsibleUserId missing or zero:

POST /gateway/service-order
Content-Type: application/json
Authorization: Bearer {token}
{
"series": 2026,
"status": "RECEB",
"priority": "URG",
"assistanceTypeKeyId": "REP"
}

Response 400 Bad Request with ServiceOrder.ResponsibleUserRequired ("The responsible user is required.").

Correct:

POST /gateway/service-order
Content-Type: application/json
Authorization: Bearer {token}
{
"series": 2026,
"status": "RECEB",
"priority": "URG",
"assistanceTypeKeyId": "REP",
"responsibleUserId": 7
}

The same validation runs on PUT /gateway/service-order/{guid}: an update that drops responsibleUserId is rejected with the same error.

warning

Do not confuse responsibleUserId with the record author: the user who creates the order is taken from the token and is not accepted in the payload. responsibleUserId is the employee the order is assigned to.

Next

Assistance contracts (optional) or equipment.