{
  "name": "Shipment booking confirmation capture",
  "description": "Extract booking reference, carrier name, origin port from booking confirmation. Start with an editable schema, inspect JSON and review exceptions before your system handoff.",
  "prompt_additions": "Extract only information explicitly present in this document. Do not infer missing values, verify authenticity, make business decisions, or compare other documents. Preserve identifiers as strings. Return amounts as numbers and dates as YYYY-MM-DD. Review and set required fields for your process before using this schema in production.",
  "fields": [
    {
      "key": "booking_reference",
      "label": "Booking Reference",
      "type": "string",
      "required": false,
      "description": "Booking reference exactly as printed in this booking confirmation. Preserve identifiers and qualifiers; do not look up or infer missing information."
    },
    {
      "key": "carrier_name",
      "label": "Carrier Name",
      "type": "string",
      "required": false,
      "description": "Carrier name exactly as printed in this booking confirmation. Preserve identifiers and qualifiers; do not look up or infer missing information."
    },
    {
      "key": "origin_port",
      "label": "Origin Port",
      "type": "string",
      "required": false,
      "description": "Origin port exactly as printed in this booking confirmation. Preserve identifiers and qualifiers; do not look up or infer missing information."
    },
    {
      "key": "destination_port",
      "label": "Destination Port",
      "type": "string",
      "required": false,
      "description": "Destination port exactly as printed in this booking confirmation. Preserve identifiers and qualifiers; do not look up or infer missing information."
    },
    {
      "key": "estimated_departure",
      "label": "Estimated Departure",
      "type": "date",
      "required": false,
      "description": "Estimated departure explicitly printed in this booking confirmation. Keep it distinct from other dates; leave it empty if no calendar date is stated."
    },
    {
      "key": "estimated_arrival",
      "label": "Estimated Arrival",
      "type": "date",
      "required": false,
      "description": "Estimated arrival explicitly printed in this booking confirmation. Keep it distinct from other dates; leave it empty if no calendar date is stated."
    },
    {
      "key": "equipment_rows",
      "label": "Equipment Rows",
      "type": "array",
      "required": false,
      "description": "Every visible equipment rows row in this booking confirmation. Preserve separate rows, labels and qualifiers; do not merge entries or reconstruct missing ones.",
      "items": {
        "type": "object",
        "fields": [
          {
            "key": "equipment_type",
            "label": "Equipment Type",
            "type": "string",
            "required": false,
            "description": "Equipment type exactly as printed in this booking confirmation. Preserve identifiers and qualifiers; do not look up or infer missing information."
          },
          {
            "key": "quantity",
            "label": "Quantity",
            "type": "number",
            "required": false,
            "description": "Quantity as reported in this booking confirmation. Preserve the labeled measure and its unit; do not estimate it."
          },
          {
            "key": "container_reference",
            "label": "Container Reference",
            "type": "string",
            "required": false,
            "description": "Container reference exactly as printed in this booking confirmation. Preserve identifiers and qualifiers; do not look up or infer missing information."
          }
        ]
      }
    }
  ]
}