Welcome to the Weighing and Measuring Solutions API documentation. Here you'll find information on how to interact with our API, including details on endpoints, request formats, and response structures.
Our API requires authentication to access. Include your API key in the
API-Key
header of each request.
API-Key: YOUR_API_KEY
Access to the vehicles
and dockets
endpoints
are not granted to users by default.
Contact us for more info at enquiries@weighsolutions.nz .
Retrieve a list of available web servers and their online status.
API-Key
: Your API key.
Retrieve a list of sitecodes.
API-Key
: Your API key.WBServer
: Use TESTSITE
for testing
purposes.
Return a list of customers associated with your account.
The maximum number of records returned is limited to 1000.
If more than 1000 records are available, the field
additionalRecordsAvailable
indicates how many more
there are.
API-Key
: Your API key.WBServer
: Use TESTSITE
for testing
purposes.
LastIndex
: In order to return additional records,
specify the index value of the last record which was returned.
Return a list of available carriers.
The maximum number of records returned is limited to 1000.
If more than 1000 records are available, the field
additionalRecordsAvailable
indicates how many more
there are.
API-Key
: Your API key.WBServer
: Use TESTSITE
for testing
purposes.
LastIndex
: In order to return additional records,
specify the index value of the last record which was returned.
Return a filtered list of transactions.
Not specifying a value for CustomerID
and
CarrierID
will return all transactions associated with
your user account within the specified data range. The relevant
customers and carriers will be determined by WMS office staff during
the creation of your unique API account and key.
The LinkedToKey
field is useful to find a linked
trailer record. A positive value is the Index
for the
corresponding trailer transaction. If this field contains
-1
for a truck record, then there is no linked trailer.
The maximum number of records returned is limited to 1000.
If more than 1000 records are available, the field
additionalRecordsAvailable
indicates how many more
there are.
If a value is specified for LastIndex
then the first
transaction returned will be the one following that value.
API-Key
: Your API key.WBServer
: Use TESTSITE
for testing
purposes.
StartDate
: Provide the start date in
YYYY-MM-DD
format (e.g., 2024-12-25
).
FinishDate
: Provide the end date in
YYYY-MM-DD
format (e.g., 2024-12-25
).
LastIndex
: In order to return additional records,
specify the index value of the last record which was returned.
CarrierID
: Provide the CarrierID if knownCustomerID
: Provide a CustomerID if knownMostRecentOnly
: Set to "T"
to retrieve
the most recent two transactions. This is useful when used in
conjunction with VehNumberPlate
to obtain the most
recent transaction for a particular vehicle. If the most recent
transaction for a specified vehicle was a split load, then the
other transaction returned will be for the trailer. If it was a
combined load, then the other transaction will be the previous
transaction for the truck.
VehNumberPlate
: Pass a number plate to search for a
specific vehicle.
PreadviceType
: Pass a provider name to filter
transactions by preadvice type.
The GET Vehicle method has two functions:
VehNumberPlate
header.
GetAll
header.
Access to vehicles are determined by the Customers and Carriers associated with your unique API account.
If more than 1000 records are available, the field
additionalRecordsAvailable
in the response indicates
how many more there are.
Additional records can be accessed using the
LastIndex
header to request the next batch of records.
Simply set this value to the index of the last record returned.
API-Key
: Your API key.WBServer
: Use TESTSITE
for testing
purposes.
VehNumberPlate
: The number plate of a single vehicle
GetAll
: Set the parameter of this header to
'Y'
to retrive a list of all vehicles. This cannot be
used with VehNumberPlate
.
Sitecode
: Must only be used with
VehNumberPlate
. Pass a SiteCode if known. Omitting
the SiteCode header will fetch data from a global Vehicles table.
Sitecodes can be found using the
Sitecodes endpoint.
LastIndex
: In order to return additional records,
pass the index value of the last record which was returned.
Searching a vehicle by plate:
Getting all vehicles:
(The next batch can be retrieved by passing the index of the last
item (27513), with the LastIndex
header)
Update vehicle tares for one or more vehicles by number plate.
Tare Update data is sent to the API via the request body.
The VehicleTares
array must be present and contain JSON
objects representing each vehicle to be updated.
For vehicles without an attached trailer, omit the
TrailerPlate
and TrailerTare
fields from
the JSON object.
Access to any given truck or trailer is determined by the Customers and Carriers associated with your unique API account.
API-Key
: Your API key.WBServer
: Use TESTSITE
for testing
purposes.
Sitecode
: Pass a SiteCode. Omitting this header will
save data to the global Vehicles table. Sitecodes can be found
using the Sitecodes endpoint.
Key | Data Type | Description |
---|---|---|
TruckPlate |
String | The number plate of a truck |
TruckTare |
Integer | Tare value to the nearest kilogram |
TrailerPlate |
String | (Optional) Number plate of the attached trailer |
TrailerTare |
Integer | (Optional) Tare value of the attached trailer to the nearest kilogram |
TareDateTime |
String | Tare Date and Time in ISO8601 format (e.g., "2024-10-23T13:30:58") |
Tare Update data for vehicle(s) must be passed in the request body using the following structure:
(Note: The second entry represents a truck with no attached trailer).
Check if a vehicle has any existing pre-entered dockets.
If a vehicle has an attached trailer, the pre-entered trailer data will be automatically fetched.
Access to any given vehicle is determined by the Customers and Carriers which are associated with your unique API account.
API-Key
: Your API key.WBServer
: Use TESTSITE
for testing
purposes.
VehNumberPlate
: The numberplate of the vehicle you
are searching for.
Allows pre-entering dockets for vehicles before they reach the weighbridge.
Docket data is sent to the API via the request body.
The PreEnteredDockets
array must be present and contain
JSON objects consisting of either a single truck, or a truck with
one or two attached trailers.
Access to any given truck or trailer is determined by the Customers and Carriers associated with your unique API account.
API-Key
: Your API key.WBServer
: Use TESTSITE
for testing
purposes.
All fields are mandatory unless specified
Key | Data Type | Description |
---|---|---|
TruckAndTrailer |
Boolean |
Include for Truck objects only. Set to
true if the new record is for a truck and trailer
combined in a single docket.
|
CustId |
String | The customer ID associated with the truck/trailer |
CarrierId |
String | The carrier ID associated with the truck/trailer |
ProdId |
String | Product ID |
VehNumberPlate |
String | The number plate of the truck/trailer |
Destination |
String | The vehicle's destination |
Docket |
String | Bush docket number. Can also be used as a general docket field for non-log loads |
Forest |
String | Forest logs were sourced from |
Gang |
String | The felling gang |
Grade |
String | Grade of the logs |
Length |
Double | Length of the logs |
NumOfLogs |
Integer | Number of logs |
SiteCode |
String | Sitecode of the weighbridge the vehicle will weigh at |
ValidFromDateTime |
String | Starting Date and Time for validity period of docket in ISO8601 format (e.g., "2024-10-23T13:30:58"). Defaults to current date and time if no value is provided |
ValidUntilDateTime |
String | Expiration Date and Time for docket in ISO8601 format (e.g., "2024-10-23T13:30:58"). Defaults to 48hrs from current date and time if no value is provided |
WeighsValidFor |
Integer | Number of weighs the docket is valid for |
The first entry represents a single truck with no trailer.
The second entry represents a truck and trailer combined in a single docket.
The third entry represents a truck and trailer with seperate dockets.
The fourth entry represents a truck and two trailers with seperate dockets.
Pre-entered data for vehicle(s) must be passed in the request body using the following structure:
A results object will be returned for each docket:
Delete an existing pre-entered docket by passing the
Docket
number and VehNumberPlate
.
Non-WMS users can only delete dockets which were created using their own API account.
API-Key
: Your API key.WBServer
: Use TESTSITE
for testing
purposes.
VehNumberPlate
: The vehicle number plate for the
Pre-entered record.
Docket
: The docket number for the Pre-entered record.
Check if a vehicle is currently onsite by passing its
VehNumberPlate
or use the GetAll
header to
receive a list of all vehicles currently onsite.
If the vehicle currently has an attached trailer, an additional
Trailer
object will be included in the response.
API-Key
: Your API key.WBServer
: The server you wish to pull data from. See
/wbservers for more info.
VehNumberPlate
: The number plate of the vehicle you
are checking for.
GetAll
: Pass 'Y'
to receive all vehicles
instead. This cannot be used with the
VehNumberPlate
header.
When an error occurs, the API returns an error object with a status code and a description of the error.
{
"status": 401,
"statusDesc": "API key invalid"
}