Sample code for 30+ languages & platforms
AutoIt

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 AutoIt Downloads

AutoIt
Local $bSuccess = False

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

$oHttp = ObjCreate("Chilkat.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"
; }

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

$oHttp.SetRequestHeader "Authorization","ShippoToken <API_Token>"
$oHttp.SetRequestHeader "Content-Type","application/json"

$oResp = ObjCreate("Chilkat.HttpResponse")
$bSuccess = $oHttp.HttpJson("POST","https://api.goshippo.com/orders/",$oJson,"application/json",$oResp)
If ($bSuccess = False) Then
    ConsoleWrite($oHttp.LastErrorText & @CRLF)
    Exit
EndIf

$oSbResponseBody = ObjCreate("Chilkat.StringBuilder")
$oResp.GetBodySb($oSbResponseBody)
$oJResp = ObjCreate("Chilkat.JsonObject")
$oJResp.LoadSb($oSbResponseBody)
$oJResp.EmitCompact = False

ConsoleWrite("Response Body:" & @CRLF)
ConsoleWrite($oJResp.Emit() & @CRLF)

Local $iRespStatusCode = $oResp.StatusCode
ConsoleWrite("Response Status Code = " & $iRespStatusCode & @CRLF)
If ($iRespStatusCode >= 400) Then
    ConsoleWrite("Response Header:" & @CRLF)
    ConsoleWrite($oResp.Header & @CRLF)
    ConsoleWrite("Failed." & @CRLF)
    Exit
EndIf

; 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