Example request to server

curl \
  https://xmlagri.qcone.com/api/v1/inspections/1.xml \
  -X PUT \
  -H "Content-Type: text/xml" \
  --user :api_key \
  --data '<?xml version="1.0" encoding="UTF-8"?>
  <Message>
    <ContentType>text/xml</ContentType>
    <user>api_key</user>
    <Data>
      <Header>
        <shipperId>11951</shipperId>
        <consigneeId>9289</consigneeId>
        <inspectionType>import</inspectionType>
        <inspectionPoint>arrival</inspectionPoint>
        <principalId>9289</principalId>
        <shipperReference>Example shiper ref</shipperReference>
        <consigneeReference>Example consignee reference</consigneeReference>
        <instructions>Please check pallets in the back extra!</instructions>
        <isHighPrio>false</isHighPrio>
        <isWaitingForArrival>false</isWaitingForArrival>
      <eta>2015-12-03T11:00:00Z</eta>
        <inspector>inspector@example.com</inspector>
          <Details>
            <type>Containerized</type>
        <vessel>Santa Elane</vessel>
        <container>SUDU 123456-7</container>
      </Details>
    </Header>
      <Units>
        <UnitLine>
          <Unit>
            <productName>Apples</productName>
            <varietyName>African Carmine</varietyName>
            <palletCode>123456</palletCode>
          </Unit>
        </UnitLine>
        <UnitLine>
          <Unit>
            <productName>Apples</productName>
            <varietyName>African Carmine</varietyName>
            <palletCode>123457</palletCode>
          </Unit>
        </UnitLine>
      </Units>
    </Data>
  </Message>'

Example response from server

<?xml version="1.0" encoding="UTF-8"?>
<inspection>
    <id>1</id>
    <shipperId>11951</shipperId>
    <consigneeId>9289</consigneeId>
    <principalId>9289</principalId>
    <shipperReference>EXAMPLE SHIPER REF</shipperReference>
    <consigneeReference>EXAMPLE CONSIGNEE REFERENCE</consigneeReference>
    <inspectionType>import</inspectionType>
    <instructions>Please check pallets in the back extra!</instructions>
    <isHighPrio>false</isHighPrio>
    <isWaitingForArrival>false</isWaitingForArrival>
    <isUnitDataEditable>true</isUnitDataEditable>
    <eta>2015-12-03T11:00:00Z</eta>
    <location/>
    <inspectionPoint>arrival</inspectionPoint>
    <details>
        <type>containerized</type>
        <vessel>SANTA ELANE</vessel>
        <container>SUDU 123456-7</container>
    </details>
    <created>2016-12-16T11:04:26Z</created>
    <units>
        <unit>
            <id>2598789</id>
            <productId>7</productId>
            <varietyId>240</varietyId>
            <carton/>
            <brand/>
            <productClass/>
            <packType/>
            <palletCode>123456</palletCode>
            <growerCode/>
            <countSize/>
            <surveyMethod>count</surveyMethod>
            <sampleSize/>
        </unit>
        <unit>
            <id>2598790</id>
            <productId>7</productId>
            <varietyId>240</varietyId>
            <carton/>
            <brand/>
            <productClass/>
            <packType/>
            <palletCode>123457</palletCode>
            <growerCode/>
            <countSize/>
            <surveyMethod>count</surveyMethod>
            <sampleSize/>
        </unit>
    </units>
</inspection>

Params

Param name Description
user
required

API key for the connecting user

Validations:

  • Must be String

Data
optional

Validations:

  • Must be a Hash

Data[Header]
optional

Validations:

  • Must be a Hash

Data[Header][shipperId]
required

Shipper (organisation) ID

Validations:

  • Must be Integer

Data[Header][consigneeId]
required

Consignee (organisation) ID

Validations:

  • Must be Integer

Data[Header][principalId]
required

Either Consignee ID or Shipper ID

Validations:

  • Must be Integer

Data[Header][shipperReference]
optional

Reference tag for Shipper

Validations:

  • Must be String

Data[Header][consigneeReference]
optional

Reference tag for Consignee

Validations:

  • Must be String

Data[Header][inspectionType]
required

Validations:

  • Must be one of: import, export, purchase, reinspection, stockInspection, growerInspection, exitControl, entranceControl, preharvest, retour.

Data[Header][inspectionPoint]
required

Validations:

  • Must be one of: arrival, orchard, packhouse, departure, processing, distributionCenter, ripeningFacility, customer, supplier.

Data[Header][instructions]
optional

Instructions for this inspection

Validations:

  • Must be String

Data[Header][isHighPrio]
optional

Is this a high-prio inspection? (default: false)

Validations:

  • Must be 'true' or 'false' or '1' or '0'

Data[Header][isWaitingForArrival]
required

Has status “waiting for arrival”?

Validations:

  • Must be 'true' or 'false' or '1' or '0'

Data[Header][eta]
required

Estimated time of arrival in format: YYYY-MM-ddTHH:mm:ssZ

Validations:

  • Must be String

Data[Header][inspector]
optional

Email address of the inspector

Validations:

  • Must be String

Data[Header][location]
optional

Inspection location

Validations:

  • Must be String

Data[Header][Details]
optional

Validations:

  • Must be a Hash

Data[Header][Details][type]
required

Validations:

  • Must be one of: containerized, conventional, roadTransport, airCargo, doesNotApply.

Data[Header][Details][container]
required

Container format: ccccddddddd (4 characters 7 digits), required when type is containerized

Validations:

  • Must be String

Data[Header][Details][vessel]
optional

Vessel

Validations:

  • Must be String

Data[Header][Details][trailer]
required

Trailer

Validations:

  • Must be String

Data[Header][Details][awb]
required

AWB format: ddddddddddd (11 digits)

Validations:

  • Must be String

Data[Header][Details][flightnumber]
optional

Flight number format: ccdddd (2 characters 4 digits)

Validations:

  • Must be String

Data[Header][Details][description]
optional

Description

Validations:

  • Must be String

Units
required

Validations:

  • Must be an Array of nested elements

Units[UnitLine]
optional

Validations:

  • Must be a Hash

Units[UnitLine][Unit]
optional

Validations:

  • Must be a Hash

Units[UnitLine][Unit][productName]
required

Product name or empty when using productId

Validations:

  • Must be String

Units[UnitLine][Unit][productId]
required

Product ID or empty when using productName

Validations:

  • Must be Integer

Units[UnitLine][Unit][varietyName]
required

Variety name or empty when using varietyId

Validations:

  • Must be String

Units[UnitLine][Unit][varietyId]
required

Variety ID or empty when using varietyName

Validations:

  • Must be Integer

Units[UnitLine][Unit][carton]
optional

Number of cartons

Validations:

  • Must be Integer

Units[UnitLine][Unit][brand]
optional

Product brand

Validations:

  • Must be String

Units[UnitLine][Unit][productClass]
required

Validations:

  • Must be one of: not_available, I, II, III.

Units[UnitLine][Unit][packType]
optional

Pack type

Validations:

  • Must be String

Units[UnitLine][Unit][palletCode]
optional

Pallet code

Validations:

  • Must be String

Units[UnitLine][Unit][growerCode]
optional

Either GGN or GC

Validations:

  • Must be String

Units[UnitLine][Unit][countSize]
optional

Count/size: number representing number of items in unit, or a string (e.g. 'L') when survey method manual

Validations:

  • Must be String

Units[UnitLine][Unit][countryOfOrigin]
optional

Country of origin

Validations:

  • Must be String

Units[UnitLine][Unit][packhouse]
optional

Packhouse

Validations:

  • Must be String

Units[UnitLine][Unit][organic]
optional

Organic: boolean or string value (e.g. 'yes' or 'no')

Validations:

  • Must be String

Units[UnitLine][Unit][color]
optional

Color

Validations:

  • Must be String

Units[UnitLine][Unit][ggn]
optional

GGN

Validations:

  • Must be String

Units[UnitLine][Unit][gln]
optional

GLN

Validations:

  • Must be String

Units[UnitLine][Unit][description]
optional

Unit description. This can be an internal article description

Validations:

  • Must be String

Units[UnitLine][Unit][trace]
optional

Trace / Lot

Validations:

  • Must be String

Units[UnitLine][Unit][orchard]
optional

Orchard

Validations:

  • Must be String

Units[UnitLine][Unit][carrier]
optional

Carrier

Validations:

  • Must be String

Units[UnitLine][Unit][additional]
optional

Additional

Validations:

  • Must be String

Units[UnitLine][Unit][dateCode]
optional

Validations:

  • Must be String

Units[UnitLine][Unit][url]
optional

URL

Validations:

  • Must be String

Units[UnitLine][Unit][daysOnStock]
optional

Days on stock

Validations:

  • Must be Integer

Units[UnitLine][Unit][tradingUnit]
optional

Trading Unit

Validations:

  • Must be String

Units[UnitLine][Unit][productSpecificationId]
optional

Product Specification ID

Validations:

  • Must be String

Units[UnitLine][Unit][parameterValues]
optional

Parameter values: Only one value or unit ID per parameter is allowed

Validations:

  • Must be an Array of nested elements

Units[UnitLine][Unit][parameterValues][parameterId]
required

Parameter ID

Validations:

  • Must be Numeric

Units[UnitLine][Unit][parameterValues][numericValue]
optional

Validations:

  • Must be Numeric

Units[UnitLine][Unit][parameterValues][stringValue]
optional

Validations:

  • Must be String

Units[UnitLine][Unit][parameterValues][dateValue]
optional

Format (ISO 8601): 'YYYY-MM-DD'

Validations:

  • Must be String

Units[UnitLine][Unit][parameterValues][itemId]
optional

Validations:

  • Must be Numeric

Units[UnitLine][Unit][auditItems]
optional

Validations:

  • Must be an Array of nested elements

Units[UnitLine][Unit][auditItems][label]
required

The label/number/code to be checked

Validations:

  • Must be String

Units[UnitLine][Unit][auditItems][value]
optional

Validations:

  • Must be one of: true, false.

Units[UnitLine][Unit][auditItems][type]
required

Validations:

  • Must be one of: packaging_type, number_of_packages, load_carrier, country_of_origin, kcb_number, day_code.