Server Validation

Prev Next

Overview

Server validation allows you to verify form data on your integration server before a user's submission is finalized. Unlike in-line validation, which runs on the user's device, server validation checks input against your back-office systems. For example, you can confirm that a trailer number exists or that a load is still active.

Server validation is an optional layer on top of Forms. Forms without server validation are delivered directly to your Messaging web service.


How It Works

When server validation is active, submitting a form becomes a two-stage process:

1. Provisional Stage: The mobile app sends the form data to your server and displays a loading spinner, which prevents the user from making changes while the data is verified.

2. Finalization Stage: The mobile app responds based on the HTTP status code your server returns.

  • 200 Response: Locks the form and sends the final record

  • 422 Response: Reopens the form so the user can make corrections

TIP: You may provide your own custom error messages for invalid responses.

IMPORTANT: For mobile app versions 1.62 and earlier, enabling server validation on a workflow action disables validation_rule_javascript for all fields on the form. For versions 1.63 and later, if server validation cannot run because the user is offline or the mobile app cannot reach your server, the mobile app runs validation_rule_javascript if it is provided.

Status Definitions

In the final message delivery, the server_validation_status field indicates how the data was verified.

There are three possible statuses:

Status

Meaning

Action

validated

Successfully validated by your server.

No further action needed.

client_side_validated

Server could not be reached.
The Data was validated via local JavaScript rules (v1.63+).

Re-run the server logic if JavaScript rules on the client side are less strict.

not_validated

Server was unreachable and no client side JavaScript rules existed.

Must validate the data manually upon receipt.

NOTE: enable_telematics_data is ignored during the validation request to keep the payload small. Telematics data is attached only to the final delivery.


Resources

API

Guides