Download OpenAPI specification:
Draft preview of the Ready App driver-passport document-sharing surface for the TruckX integration.
Consent model: passport data is driver-owned. Each document carries a driver-controlled shareability flag; only documents the driver has marked shareable are visible to partners.
Authentication: endpoints shown use bearer tokens. Dedicated, scoped partner credentials will be provisioned for TruckX as part of the integration; details follow in the full integration guide.
This preview is shared under NDA, is subject to change, and is not a commitment of endpoint availability for server-to-server use until partner credentials are issued.
Bulk-create DriverDocument rows. Accepts application/json with documents[].file as base64, or multipart/form-data using bracketed keys documents[0][name], documents[0][file], documents[0][issue_date], documents[0][expiration_date], documents[0][document_type_id] or documents[0][custom_document_type], documents[0][is_shareable_with_broker_shipper]. Exactly one of document_type_id / custom_document_type per item; custom types are created (or reused) per driver. is_shareable_with_broker_shipper defaults to true.
required | Array of objects (UMBDocumentV2Item) |
{- "documents": [
- {
- "name": "string",
- "file": "string",
- "issue_date": "string",
- "expiration_date": "string",
- "document_type_id": 0,
- "custom_document_type": "string",
- "is_shareable_with_broker_shipper": true
}
]
}{- "status": true,
- "status_code": 0,
- "message": "string",
- "data": { }
}Bulk-create DriverInstitute certification rows for the authenticated driver. Items use issue_date/expiration_date in DD/MM/YYYY. Validation errors are returned inside a 200/201 envelope (status=false, status_code=400), not as HTTP 400.
required | Array of objects (UMBCertificationItem) |
{- "certification": [
- {
- "institute": "string",
- "certification": "string",
- "issue_date": "string",
- "expiration_date": "string"
}
]
}{- "status": true,
- "status_code": 0,
- "message": "string",
- "data": { }
}Bulk-create DriverEndorsement rows with issue_date and expiration_date (DD/MM/YYYY, expiration must be after issue).
required | Array of objects (UMBEndorsementV2Item) |
{- "endorsement": [
- {
- "company": "string",
- "certification": "string",
- "issue_date": "string",
- "expiration_date": "string"
}
]
}{- "status": true,
- "status_code": 0,
- "message": "string",
- "data": { }
}Driver profile with vehicles, document type list, experiences, DOT form completion and marketing consent flags. Always returned with HTTP 200 on success. A non-driver caller gets HTTP 403 from the IsDriver permission class (the in-body 401 branch in the view is dead code behind IsDriver).
| tz | string Default: "0:00" Client timezone offset used when building documents_type list |
{- "status": true,
- "message": "string",
- "status_code": 0,
- "data": [
- {
- "profile_id": 0,
- "full_name": "string",
- "first_name": "string",
- "last_name": "string",
- "middle_name": "string",
- "country": "string",
- "city": "string",
- "state": "string",
- "number": "string",
- "about": "string",
- "profile_picture": "string",
- "current_position": "string",
- "percentage": 0,
- "form_completion_percentage": 0,
- "form_complete_index": 0,
- "notification": true,
- "firestore_id": "string",
- "vehicle_type": [
- {
- "key": "string",
- "value": "string"
}
], - "email": "string",
- "health_care_url": "string",
- "documents_type": [
- { }
], - "experiences": [
- {
- "company": "string",
- "role": "string",
- "start_date": "string",
- "end_date": "string",
- "currently_working": true
}
], - "sms_opt_in": true,
- "phone_number": "string",
- "phone_verified": true,
- "email_opt_in": true
}
]
}Status per canonical required document type with every upload listed in uploaded_documents. Optional company_id switches the required list to that company's require_* flags (same rules as submission validation).
| company_id | integer Use this company's verification requirements instead of the full fixed list |
{- "status": true,
- "status_code": 0,
- "data": {
- "driver_id": 0,
- "company_id": 0,
- "is_valid": true,
- "documents": [
- {
- "type": "string",
- "document_type_id": 0,
- "document_type_name": "string",
- "status": "available",
- "file_url": "string",
- "expiration_date": "2019-08-24",
- "uploaded_documents": [
- {
- "id": 0,
- "document_type_id": 0,
- "document_type_name": "string",
- "file_url": "string",
- "expiration_date": "2019-08-24",
- "status": "available"
}
]
}
], - "missing_documents": [
- "string"
]
}
}| q | string Matches company name, description, or load pickup/delivery cities |
| page | integer >= 1 Default: 1 |
| page_size | integer [ 1 .. 100 ] Default: 20 |
{- "status": true,
- "status_code": 0,
- "data": {
- "companies": [
- {
- "company_id": 0,
- "company_name": "string",
- "company_picture": "string",
- "short_description": "string",
- "location": "string",
- "active_load_count": 0,
- "driver_submission_status": "string",
- "submitted_at": "string"
}
], - "pagination": {
- "page": 0,
- "page_size": 0,
- "total_count": 0,
- "total_pages": 0
}
}
}| company_id required | integer |
{- "status": true,
- "status_code": 0,
- "data": {
- "company": {
- "company_id": 0,
- "company_name": "string",
- "company_logo": "string",
- "location": "string",
- "contact_phone": "string",
- "contact_person": "string",
- "description": "string",
- "recipient_profile_id": 0,
- "chat_thread_id": 0
}, - "driver_submission_status": "string",
- "loads": [
- {
- "load_id": 0,
- "commodity_type": "string",
- "pickup_city": "string",
- "delivery_city": "string",
- "equipment_type": "string",
- "equipment_size": "string",
- "equipment_weight": "string",
- "pickup_date": "2019-08-24",
- "pickup_time": "string",
- "delivery_date": "2019-08-24",
- "delivery_time": "string",
- "rate_offered": "string"
}
]
}
}Validates duplicate submissions, questionnaire booleans, experience/document ownership, expiry of shared documents and required-document completeness (validate_driver_documents per company require_* flags) before creating a DriverProfileSubmission with status "Submitted".
| company_id required | integer |
| selected_experience_ids | Array of integers Required (non-empty) when own_authority is false; ids must belong to the driver |
| shared_document_ids | Array of integers Must belong to the driver and be unexpired |
| drug_test required | boolean |
| own_truck required | boolean |
| own_authority required | boolean |
| carrier_company_id | integer or null DriverExperience pk used as carrier reference |
{- "company_id": 0,
- "selected_experience_ids": [
- 0
], - "shared_document_ids": [
- 0
], - "drug_test": true,
- "own_truck": true,
- "own_authority": true,
- "carrier_company_id": 0
}{- "status": true,
- "status_code": 0,
- "message": "string",
- "data": {
- "submission_id": 0
}
}