Vector
Carrier Integration Guide

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

Create Entity URL
https://app.withvector.com/actions/entity/create

View an existing document

View Entity URL
https://app.withvector.com/entity/<doc_uuid>

Resume an active workflow

Resume Workflow URL
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 Intent Example
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.

URL for QR Code Generator
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.

View Document
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.

Create Document (No Parameters)
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.

jsonProps
{
  "docTypeIds": ["<doc_type_id>"],
  "autoNavigate": true
}
ADB Intent (URL-Encoded)
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.

jsonProps
{
  "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.

jsonProps
{
  "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.

jsonProps
{
  "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.

jsonProps
{
  "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)

Unencoded
https://app.withvector.com/actions/entity/create?jsonProps={"docTypeIds":["<doc_type_id>"],"autoNavigate":true}

Properly encoded URL

URL-Encoded
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.

ParameterTypeRequiredDescription
docTypeIdsstring[]
Optional
Array of document type UUIDs to pre-select for the driver.
autoNavigateboolean
Optional
When true, automatically navigates past the document type selection screen. Used with docTypeIds.
autoCaptureboolean
Optional
When true, automatically launches the camera after document info is pre-filled.
preFilledValuesobject
Optional
Object keyed by document type UUID (or base mixin UUID) containing fields to pre-fill for the driver.
workflowTimeoutnumber
Optional
Timeout in seconds for the workflow session (e.g. 1800 for 30 minutes).
storyIdstring
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 Structure
{
  "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).

ParameterTypeDescription
createFirmIfNotExistsbooleanUsed for new driver self-registration. When set to true, the app will auto-create a new firm based on the DOT number lookup.
isDeferredLinkbooleanWhen the app is not installed, redirects the user to the App Store / Google Play first, then forwards the deep link parameters after installation.
entityIdstring (UUID)Identifies a specific workflow/plan to invoke (used for workflow-based deep links).

Example: Deferred link with auto firm creation

Self-Registration QR Code URL
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.

1

Select Document Type

Driver chooses the type of document to create. Can be pre-selected via docTypeIds.

2

Enter Required Fields

Driver fills in load number and other required fields. Can be pre-filled via preFilledValues.

3

Scan Paperwork

Driver scans or photographs the physical document. Can be auto-launched via autoCapture.

4

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.

Deep Link Validator
Paste a Vector deep link URL to validate its structure, parameters, and jsonProps payload.

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].