Sample code for 30+ languages & platforms
B4X

Shippo Create an Order

See more Shippo Examples

Demonstrates how to create an order with all the information about your order by sending a POST request to the orders endpoint.

Chilkat B4X Downloads

B4X
Dim success As Boolean = False

'  This example assumes the Chilkat API to have been previously unlocked.
'  See Global Unlock Sample for sample code.

Dim http As ChilkatHttp
http.Initialize("http")

'  Implements the following CURL command:

'  curl https://api.goshippo.com/orders/ \
'      -H "Authorization: ShippoToken <API_Token>" \
'      -H "Content-Type: application/json"  \
'      -d '{
'              "to_address": {
'                  "city": "San Francisco",
'                  "company": "Shippo",
'                  "country": "US",
'                  "email": "shippotle@goshippo.com",
'                  "name": "Mr Hippo",
'                  "phone": "15553419393",
'                  "state": "CA",
'                  "street1": "215 Clayton St.",
'                  "zip": "94117"
'              },
'              "line_items": [
'                  {
'                      "quantity": 1,
'                      "sku": "HM-123",
'                      "title": "Hippo Magazines",
'                      "total_price": "12.10",
'                      "currency": "USD",
'                      "weight": "0.40",
'                      "weight_unit": "lb"
'                  }
'              ],
'              "placed_at": "2016-09-23T01:28:12Z",
'              "order_number": "#1068",
'              "order_status": "PAID",
'              "shipping_cost": "12.83",
'              "shipping_cost_currency": "USD",
'              "shipping_method": "USPS First Class Package",
'              "subtotal_price": "12.10",
'              "total_price": "24.93",
'              "total_tax": "0.00",
'              "currency": "USD",
'              "weight": "0.40",
'              "weight_unit": "lb"
'          }'

'  Use this online tool to generate code from sample JSON:
'  Generate Code to Create JSON

'  The following JSON is sent in the request body.

'  {
'    "to_address": {
'      "city": "San Francisco",
'      "company": "Shippo",
'      "country": "US",
'      "email": "shippotle@goshippo.com",
'      "name": "Mr Hippo",
'      "phone": "15553419393",
'      "state": "CA",
'      "street1": "215 Clayton St.",
'      "zip": "94117"
'    },
'    "line_items": [
'      {
'        "quantity": 1,
'        "sku": "HM-123",
'        "title": "Hippo Magazines",
'        "total_price": "12.10",
'        "currency": "USD",
'        "weight": "0.40",
'        "weight_unit": "lb"
'      }
'    ],
'    "placed_at": "2016-09-23T01:28:12Z",
'    "order_number": "#1068",
'    "order_status": "PAID",
'    "shipping_cost": "12.83",
'    "shipping_cost_currency": "USD",
'    "shipping_method": "USPS First Class Package",
'    "subtotal_price": "12.10",
'    "total_price": "24.93",
'    "total_tax": "0.00",
'    "currency": "USD",
'    "weight": "0.40",
'    "weight_unit": "lb"
'  }

Dim json As ChilkatJsonObject
json.Initialize
json.UpdateString("to_address.city", "San Francisco")
json.UpdateString("to_address.company", "Shippo")
json.UpdateString("to_address.country", "US")
json.UpdateString("to_address.email", "shippotle@goshippo.com")
json.UpdateString("to_address.name", "Mr Hippo")
json.UpdateString("to_address.phone", "15553419393")
json.UpdateString("to_address.state", "CA")
json.UpdateString("to_address.street1", "215 Clayton St.")
json.UpdateString("to_address.zip", "94117")
json.UpdateInt("line_items[0].quantity", 1)
json.UpdateString("line_items[0].sku", "HM-123")
json.UpdateString("line_items[0].title", "Hippo Magazines")
json.UpdateString("line_items[0].total_price", "12.10")
json.UpdateString("line_items[0].currency", "USD")
json.UpdateString("line_items[0].weight", "0.40")
json.UpdateString("line_items[0].weight_unit", "lb")
json.UpdateString("placed_at", "2016-09-23T01:28:12Z")
json.UpdateString("order_number", "#1068")
json.UpdateString("order_status", "PAID")
json.UpdateString("shipping_cost", "12.83")
json.UpdateString("shipping_cost_currency", "USD")
json.UpdateString("shipping_method", "USPS First Class Package")
json.UpdateString("subtotal_price", "12.10")
json.UpdateString("total_price", "24.93")
json.UpdateString("total_tax", "0.00")
json.UpdateString("currency", "USD")
json.UpdateString("weight", "0.40")
json.UpdateString("weight_unit", "lb")

http.SetRequestHeader("Authorization", "ShippoToken <API_Token>")
http.SetRequestHeader("Content-Type", "application/json")

Dim resp As ChilkatHttpResponse
resp.Initialize
success = http.HttpJson("POST", "https://api.goshippo.com/orders/", json, "application/json", resp)
If success = False Then
    Log(http.LastErrorText)
    Return
End If


Dim sbResponseBody As ChilkatStringBuilder
sbResponseBody.Initialize
resp.GetBodySb(sbResponseBody)
Dim jResp As ChilkatJsonObject
jResp.Initialize
jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = False

Log("Response Body:")
Log(jResp.Emit)

Dim respStatusCode As Int = resp.StatusCode
Log("Response Status Code = " & respStatusCode)
If respStatusCode >= 400 Then
    Log("Response Header:")
    Log(resp.Header)
    Log("Failed.")
    Return
End If


'  Sample JSON response:
'  (Sample code for parsing the JSON response is shown below)

'  {}

'  Sample code for parsing the JSON response...
'  Use the following online tool to generate parsing code from sample JSON:
'  Generate Parsing Code from JSON