Bill of Lading OCR Node.js
The Node.js OCR SDK supports the Bill of Lading API.
The sample below can be used for testing purposes.
Quick-Start
const mindee = require("mindee");
// for TS or modules:
// import * as mindee from "mindee";
// Init a new client
const mindeeClient = new mindee.Client({ apiKey: "my-api-key" });
// Load a file from disk
const inputSource = mindeeClient.docFromPath("/path/to/the/file.ext");
// Parse the file
const apiResponse = mindeeClient.enqueueAndParse(
mindee.product.BillOfLadingV1,
inputSource
);
// Handle the response Promise
apiResponse.then((resp) => {
// print a string summary
console.log(resp.document.toString());
});
Field Types
Standard Fields
These fields are generic and used in several products.
Basic Field
Each prediction object contains a set of fields that inherit from the generic Field
class.
A typical Field
object will have the following attributes:
- value (
number | string
): corresponds to the field value. Can beundefined
if no value was extracted. - confidence (
number
): the confidence score of the field prediction. - boundingBox (
[Point, Point, Point, Point]
): contains exactly 4 relative vertices (points) coordinates of a right rectangle containing the field in the document. - polygon (
Point[]
): contains the relative vertices coordinates (Point
) of a polygon containing the field in the image. - pageId (
number
): the ID of the page, alwaysundefined
when at document-level. - reconstructed (
boolean
): indicates whether an object was reconstructed (not extracted as the API gave it).
Note: A
Point
simply refers to an array of two numbers ([number, number]
).
Aside from the previous attributes, all basic fields have access to a toString()
method that can be used to print their value as a string.
Date Field
Aside from the basic Field
attributes, the date field DateField
also implements the following:
- dateObject (
Date
): an accessible representation of the value as a JavaScript object.
String Field
The text field StringField
only has one constraint: its value is a string
(or undefined
).
Specific Fields
Fields which are specific to this product; they are not used in any other product.
Carrier Field
The shipping company responsible for transporting the goods.
A BillOfLadingV1Carrier
implements the following attributes:
name
(string): The name of the carrier.professionalNumber
(string): The professional number of the carrier.scac
(string): The Standard Carrier Alpha Code (SCAC) of the carrier.
Fields which are specific to this product; they are not used in any other product.
Consignee Field
The party to whom the goods are being shipped.
A BillOfLadingV1Consignee
implements the following attributes:
address
(string): The address of the consignee.email
(string): The email of the shipper.name
(string): The name of the consignee.phone
(string): The phone number of the consignee.
Fields which are specific to this product; they are not used in any other product.
Items Field
The goods being shipped.
A BillOfLadingV1CarrierItem
implements the following attributes:
description
(string): A description of the item.grossWeight
(number): The gross weight of the item.measurement
(number): The measurement of the item.measurementUnit
(string): The unit of measurement for the measurement.quantity
(number): The quantity of the item being shipped.weightUnit
(string): The unit of measurement for weights.
Fields which are specific to this product; they are not used in any other product.
Notify Party Field
The party to be notified of the arrival of the goods.
A BillOfLadingV1NotifyParty
implements the following attributes:
address
(string): The address of the notify party.email
(string): The email of the shipper.name
(string): The name of the notify party.phone
(string): The phone number of the notify party.
Fields which are specific to this product; they are not used in any other product.
Shipper Field
The party responsible for shipping the goods.
A BillOfLadingV1Shipper
implements the following attributes:
address
(string): The address of the shipper.email
(string): The email of the shipper.name
(string): The name of the shipper.phone
(string): The phone number of the shipper.
Attributes
The following fields are extracted for Bill of Lading V1:
Bill of Lading Number
billOfLadingNumber (StringField): A unique identifier assigned to a Bill of Lading document.
console.log(result.document.inference.prediction.billOfLadingNumber.value);
Carrier
carrier (BillOfLadingV1Carrier): The shipping company responsible for transporting the goods.
console.log(result.document.inference.prediction.carrier.value);
Items
carrierItems (BillOfLadingV1CarrierItem[]): The goods being shipped.
for (const carrierItemsElem of result.document.inference.prediction.carrierItems) {
console.log(carrierItemsElem.value);
}
Consignee
consignee (BillOfLadingV1Consignee): The party to whom the goods are being shipped.
console.log(result.document.inference.prediction.consignee.value);
Date of issue
dateOfIssue (DateField): The date when the bill of lading is issued.
console.log(result.document.inference.prediction.dateOfIssue.value);
Departure Date
departureDate (DateField): The date when the vessel departs from the port of loading.
console.log(result.document.inference.prediction.departureDate.value);
Notify Party
notifyParty (BillOfLadingV1NotifyParty): The party to be notified of the arrival of the goods.
console.log(result.document.inference.prediction.notifyParty.value);
Place of Delivery
placeOfDelivery (StringField): The place where the goods are to be delivered.
console.log(result.document.inference.prediction.placeOfDelivery.value);
Port of Discharge
portOfDischarge (StringField): The port where the goods are unloaded from the vessel.
console.log(result.document.inference.prediction.portOfDischarge.value);
Port of Loading
portOfLoading (StringField): The port where the goods are loaded onto the vessel.
console.log(result.document.inference.prediction.portOfLoading.value);
Shipper
shipper (BillOfLadingV1Shipper): The party responsible for shipping the goods.
console.log(result.document.inference.prediction.shipper.value);
Questions?
Updated 22 days ago