Android Deep Link Integration
Direct drivers into the Vector mobile app from your Android application using deep links. Pre-fill document fields, select document types, and initiate workflows automatically.
Overview
How deep links work with Vector Mobile.
ADB Intents
Issue deep link URLs as Android intents from your calling application to open Vector directly on the driver's device.
QR Codes
Generate QR codes containing the deep link URL. Drivers scan with their camera to open Vector on Android or iOS.
Pre-fill Data
Pass JSON parameters to pre-select document types and pre-fill fields, reducing manual input for the driver.
Prerequisites
Requirements for deep link integration.
Vector App Installed
The Vector mobile app must be pre-installed on the driver's device. Available on Google Play and the App Store.
Driver Authentication
The driver must be authenticated in the Vector app. SSO authentication is also supported and can be discussed separately.
Base URL
Deep link URL format.
All deep links use the following base URL. Parameters are appended as query strings.
Create a document
https://app.withvector.com/actions/entity/create
View an existing document
https://app.withvector.com/entity/<doc_uuid>
Resume an active workflow
https://app.withvector.com/actions/workflow/resume
Invocation Methods
How to issue deep links.
Via ADB Intent
Send the deep link URL as an Android intent from your calling application. Upon completion, Vector returns control to the caller.
adb shell am start -a android.intent.action.VIEW -d \ https://app.withvector.com/actions/entity/create
Via QR Code
Generate a QR code containing the deep link URL. Drivers scan the code with their device camera and select Vector to open it. This works on both Android and iOS.
https://app.withvector.com/actions/entity/create
Use Cases
Deep link examples.
View a Document
Open the detail view for an existing document. Replace <doc_uuid> with the actual document UUID.
adb shell am start -a android.intent.action.VIEW -d \ https://app.withvector.com/entity/<doc_uuid>
Create a Document
Opens the document creation flow. With no parameters, the driver must manually select a document type and fill in all required fields.
adb shell am start -a android.intent.action.VIEW -d \ https://app.withvector.com/actions/entity/create
Create with Pre-Selected Document Type
Pre-select the document type so the driver only needs to fill in the required fields, scan paperwork, and submit.
{
"docTypeIds": ["<doc_type_id>"],
"autoNavigate": true
}adb shell am start -a android.intent.action.VIEW -d \ "https://app.withvector.com/actions/entity/create?jsonProps=%7B%22docTypeIds%22%3A%5B%22<doc_type_id>%22%5D%2C%22autoNavigate%22%3Atrue%7D"
Create with Pre-Filled Document Name
Pre-fill the load number (document name) using the base document mixin UUID 11111111-0000-0000-0000-000000000011. The driver selects the document type, then sees the field pre-populated.
{
"preFilledValues": {
"11111111-0000-0000-0000-000000000011": {
"document": {
"name": "LOAD1234"
}
}
}
}Create with Pre-Filled Document Type and Name
Combine document type selection and name pre-fill for a streamlined driver experience.
{
"docTypeIds": ["<doc_type_id>"],
"autoNavigate": true,
"preFilledValues": {
"<doc_type_id>": {
"document": {
"name": "LOAD1234"
}
}
}
}Create with Multiple Pre-Filled Parameters
Pass custom parameters specific to your document type schema. The available fields depend on your document type configuration.
{
"docTypeIds": ["<doc_type_id>"],
"autoNavigate": true,
"preFilledValues": {
"<doc_type_id>": {
"<custom_mixin_name>": {
"field1": "value1",
"field2": true,
"field3": "12345"
}
}
}
}Create Multiple Documents
Pass multiple document type IDs with different pre-filled values for each type.
{
"docTypeIds": ["<doc_type_id_1>", "<doc_type_id_2>"],
"autoNavigate": true,
"preFilledValues": {
"<doc_type_id_1>": {
"<custom_field_1>": {
"key1": "Value1"
}
},
"<doc_type_id_2>": {
"<custom_field_2>": {
"key2": "Value2"
}
}
}
}Important
URL encoding requirements.
JSON parameters must be URL-encoded
When the deep link includes a JSON block as part of the URL, the JSON portion after jsonProps= must be properly URL-encoded so the URL is a single line without spaces. You can use a tool like urlencoder.org to encode your JSON.
Unencoded URL (for reference only)
https://app.withvector.com/actions/entity/create?jsonProps={"docTypeIds":["<doc_type_id>"],"autoNavigate":true}Properly encoded URL
https://app.withvector.com/actions/entity/create?jsonProps=%7B%22docTypeIds%22%3A%5B%22<doc_type_id>%22%5D%2C%22autoNavigate%22%3Atrue%7D
Parameter Reference
jsonProps parameters.
The following parameters can be passed via the jsonProps query parameter as a URL-encoded JSON object.
| Parameter | Type | Required | Description |
|---|---|---|---|
| docTypeIds | string[] | Optional | Array of document type UUIDs to pre-select for the driver. |
| autoNavigate | boolean | Optional | When true, automatically navigates past the document type selection screen. Used with docTypeIds. |
| autoCapture | boolean | Optional | When true, automatically launches the camera after document info is pre-filled. |
| preFilledValues | object | Optional | Object keyed by document type UUID (or base mixin UUID) containing fields to pre-fill for the driver. |
| workflowTimeout | number | Optional | Timeout in seconds for the workflow session (e.g. 1800 for 30 minutes). |
| storyId | string | Optional | Identifies the persona/role for the user within the workflow. |
Pre-Filled Values
How preFilledValues works.
The preFilledValues object is keyed by document type UUID (or the base document mixin UUID). Each key maps to an object of field groups and their values.
Base Document Mixin
Use UUID 11111111-0000-0000-0000-000000000011 to set fields on the base document (e.g. document name / load number) without specifying a document type. The driver will select the type, then see the values pre-populated.
Document Type-Specific Values
Use the document type UUID as the key to pre-fill fields for that specific type. The available fields depend on the document type's entity schema. Contact your Vector representative for your document type UUIDs and available fields.
{
"preFilledValues": {
"<doc_type_id>": {
"document": {
"name": "LoadNumber123"
},
"<custom_mixin>": {
"customField": "customValue"
}
}
}
}Additional Parameters
Other deep link URL parameters.
These parameters are passed as standard URL query parameters (not inside jsonProps).
| Parameter | Type | Description |
|---|---|---|
| createFirmIfNotExists | boolean | Used for new driver self-registration. When set to true, the app will auto-create a new firm based on the DOT number lookup. |
| isDeferredLink | boolean | When the app is not installed, redirects the user to the App Store / Google Play first, then forwards the deep link parameters after installation. |
| entityId | string (UUID) | Identifies a specific workflow/plan to invoke (used for workflow-based deep links). |
Example: Deferred link with auto firm creation
https://app.withvector.com/actions/entity/create?createFirmIfNotExists=true&isDeferredLink=true&jsonProps={}Document Workflow
Driver document capture flow.
Understanding the standard workflow helps you determine which parameters to pre-fill for your integration.
Select Document Type
Driver chooses the type of document to create. Can be pre-selected via docTypeIds.
Enter Required Fields
Driver fills in load number and other required fields. Can be pre-filled via preFilledValues.
Scan Paperwork
Driver scans or photographs the physical document. Can be auto-launched via autoCapture.
Submit
Driver reviews and submits. Vector processes the document and returns to the calling app.
Sandbox
Validate your deep link URL.
Paste a deep link URL below to check its structure, query parameters, and jsonProps payload. Validation runs entirely in your browser.
Resources
Vector mobile app downloads.
Need help?
Contact your Vector Deployment Manager for your document type UUIDs, entity schema details, and integration support. You can also reach us at [email protected].


