HaulHub
Enabling the Haul Hub Integration
Navigate to Admin Settings (Gear Icon) > API Info
Click on the "Show" button to access the Webhooks Dashboard.
Click the "+ Add Endpoint" button to build the webhook.
In the Message Filtering options, select
ticket.created
,ticket.updated
, andticket.voided
.Build the Endpoint URL following this layout:
https://integrations.fast-weigh.dev/api/HaulHubDOT?fw_api_key=<insert_fast-weigh_api_key_here>&hh_api_key=<insert_haulhub_api_key_here>&fw_graphql_server=<insert_graphql_server_prefix_here>
You can find your API Key and GraphQL server (the first part of the GraphQL Endpoint URL) on the API Info Page.
It should look something like this when you are finished:
https://integrations.fast-weigh.dev/api/HaulHubDOT?fw_api_key=11111-11111-1111-11111&hh_api_key=2222222-22222-22222-22222&fw_graphql_server=fwt
Hit the Create button to create the new webhook.
Check the "Certified" checkbox on any order that you want tickets to flow to HaulHub.
Some DOTs require a Agency Code. This value will be provided by Haul Hub if applicable.
https://haulhub.fast-weigh.workers.dev/send?FW_GRAPHQL_SERVER=FWT&FW_API_KEY=<insert_fast-weigh_api_key_here>&HH_API_KEY=<insert_haulhub_api_key_here>&DOT_CODE=<insert_agency_code_here>
It should looks something like this when you are finished:
https://haulhub.fast-weigh.workers.dev/send?FW_GRAPHQL_SERVER=FWT&FW_API_KEY=11111-11111-1111-11111&HH_API_KEY=2222222-22222-22222-22222&DOT_CODE=0123436C3A3FABCD
Haulhub Javascript Payload
slip_number: ticket.TicketNumber,
dot_code: DOT_CODE ?? '',
dispatched_at: formattedDateTime,
last_updated: formattedDateTime,
timestamp: formattedDateTime,
gross_amount: ticket.GrossWeight,
tare_amount: ticket.TareWeight,
net_amount: ticket.NetWeight,
quantity_uom_code: 'ton',
gross2_amount: ticket.GrossWeight! * 2000,
tare2_amount: ticket.TareWeight! * 2000,
net2_amount: ticket.NetWeight * 2000,
uom2: 'lbs',
client_id: ticket.Order.Customer.CustomerID,
client_name: ticket.Order.Customer.CustomerName,
comments: ticket.Note,
contract_number: ticket.Order.PONumber,
customer_name: ticket.Order.Customer.CustomerName,
deputy: ticket.Operator,
dispatch_number: ticket.TicketNumber,
job: ticket.Order.Description,
job_number: ticket.Job ? ticket.Job : ticket.Order.DefaultJob,
line_item_description: ticket.OrderProduct?.Product.ProductDescription,
line_item_quantity: ticket.NetWeight,
loads_today: totalTickets,
material_number: ticket.OrderProduct?.Product.ProductID,
phase_code: ticket.Phase,
plant_id: ticket.OrderProduct?.Yard.YardName,
plant_name: ticket.OrderProduct?.Yard.YardDescription,
product_code: ticket.OrderProduct?.Product.ProductID,
purchase_order_number: ticket.Order.PONumber,
quantity_shipped_today: totalNetWeight,
supplier: ticket.OrderProduct?.Yard.Location.Region.RemitName,
supplier_code: ticket.OrderProduct?.Yard.WarehouseCode ?? ticket.OrderProduct?.Yard.Location.Region.RegionName,
tonnage: ticket.NetWeight,
void: ticket.Void,
weighmaster: ticket.Operator,
fleet_id: ticket.Truck.Hauler.HaulerID,
fleet_name: ticket.Truck.Hauler.HaulerName,
truck_id: ticket.Truck.TruckID,
license_1: ticket.Truck.LicenseNum,
audit_log: [],
Last updated