SchemaExtractSchemaExtract home

Ocean freight · trade documents

Bill of lading to JSON API — ocean freight fields

Pull BoL number, parties, vessel, ports, freight terms, and container rows from an ocean bill of lading PDF.

Why this page exists

Freight desks copy BoL fields into TMS screens. A schema extraction API returns the same fields as JSON.

Default bill of lading schema

  • bol_number
  • shipper
  • consignee
  • vessel
  • port_of_loading
  • port_of_discharge
  • containers
{
  "type": "object",
  "properties": {
    "bol_number": {
      "type": "string"
    },
    "shipper": {
      "type": "string"
    },
    "consignee": {
      "type": "string"
    },
    "notify_party": {
      "type": "string"
    },
    "vessel": {
      "type": "string"
    },
    "port_of_loading": {
      "type": "string"
    },
    "port_of_discharge": {
      "type": "string"
    },
    "freight_terms": {
      "type": "string"
    },
    "containers": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "container_no": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "packages": {
            "type": "number"
          },
          "weight_kg": {
            "type": "number"
          }
        }
      }
    }
  }
}

Call the API

curl -sS -X POST https://schemaextract.shop/v1/extract \
  -F "preset=bol" \
  -F "file=@bol-pacific-cedar.pdf"

Self-serve. No sales call. Same path as the playground. Slow models: POST /v1/extract/jobs.

Questions

What does the BoL preset return?
bol_number, shipper, consignee, notify_party, vessel, voyage, ports, freight_terms, and containers[{container_no, description, packages, weight_kg}].
Is there a RapidAPI listing?
You can call POST /v1/extract yourself — self-serve, no sales call. OpenAPI is at /openapi.json.
Do I need to buy a domain or paid model credits?
No. Run locally or on free hosting. Default cloud path is OpenRouter-compatible free models.