Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(Excel) Shippo Create Customs DeclarationDemonstrates how to create a customs declaration and send a POST request with the necessary information to the Customs Declarations endpoint. For more information, see https://goshippo.com/docs/international/
' This example assumes the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. Dim http As Chilkat.Http Set http = Chilkat.NewHttp ' Implements the following CURL command: ' curl https://api.goshippo.com/customs/declarations/ \ ' -H "Authorization: ShippoToken <API_TOKEN>" \ ' -H "Content-Type: application/json" \ ' -d '{ ' "contents_type": "MERCHANDISE", ' "non_delivery_option": "RETURN", ' "certify": true, ' "certify_signer": "Simon Kreuz", ' "incoterm": "DDU", ' "items": [{ ' "description": "T-shirt", ' "quantity": 20, ' "net_weight": "5", ' "mass_unit": "lb", ' "value_amount": "200", ' "value_currency": "USD", ' "tariff_number": "", ' "origin_country": "US" ' }] ' }' ' Use this online tool to generate code from sample JSON: ' Generate Code to Create JSON ' The following JSON is sent in the request body. ' { ' "contents_type": "MERCHANDISE", ' "non_delivery_option": "RETURN", ' "certify": true, ' "certify_signer": "Simon Kreuz", ' "incoterm": "DDU", ' "items": [ ' { ' "description": "T-shirt", ' "quantity": 20, ' "net_weight": "5", ' "mass_unit": "lb", ' "value_amount": "200", ' "value_currency": "USD", ' "tariff_number": "", ' "origin_country": "US" ' } ' ] ' } Dim json As Chilkat.JsonObject Set json = Chilkat.NewJsonObject success = json.UpdateString("contents_type","MERCHANDISE") success = json.UpdateString("non_delivery_option","RETURN") success = json.UpdateBool("certify",True) success = json.UpdateString("certify_signer","Simon Kreuz") success = json.UpdateString("incoterm","DDU") success = json.UpdateString("items[0].description","T-shirt") success = json.UpdateInt("items[0].quantity",20) success = json.UpdateString("items[0].net_weight","5") success = json.UpdateString("items[0].mass_unit","lb") success = json.UpdateString("items[0].value_amount","200") success = json.UpdateString("items[0].value_currency","USD") success = json.UpdateString("items[0].tariff_number","") success = json.UpdateString("items[0].origin_country","US") http.SetRequestHeader "Authorization","ShippoToken <API_TOKEN>" http.SetRequestHeader "Content-Type","application/json" Set resp = http.PostJson3("https://api.goshippo.com/customs/declarations/","application/json",json) If (http.LastMethodSuccess = False) Then Debug.Print http.LastErrorText Exit Sub End If Dim sbResponseBody As Chilkat.StringBuilder Set sbResponseBody = Chilkat.NewStringBuilder success = resp.GetBodySb(sbResponseBody) Dim jResp As Chilkat.JsonObject Set jResp = Chilkat.NewJsonObject success = jResp.LoadSb(sbResponseBody) jResp.EmitCompact = False Debug.Print "Response Body:" Debug.Print jResp.Emit() respStatusCode = resp.StatusCode Debug.Print "Response Status Code = "; respStatusCode If (respStatusCode >= 400) Then Debug.Print "Response Header:" Debug.Print resp.Header Debug.Print "Failed." Exit Sub End If ' Sample JSON response: ' (Sample code for parsing the JSON response is shown below) ' { ' "object_created": "2019-07-04T16:00:29.043Z", ' "object_updated": "2019-07-04T16:00:29.043Z", ' "object_id": "4a1e6ab7b1ba49ed9bc6cb1a8798e0fd", ' "object_owner": "admin@chilkatsoft.com", ' "object_state": "VALID", ' "address_importer": null, ' "certify_signer": "Simon Kreuz", ' "certify": true, ' "items": [ ' "4096c68693364b7ea0af72fb869ee861" ' ], ' "non_delivery_option": "RETURN", ' "contents_type": "MERCHANDISE", ' "contents_explanation": "", ' "exporter_reference": "", ' "importer_reference": "", ' "invoice": "", ' "commercial_invoice": false, ' "license": "", ' "certificate": "", ' "notes": "", ' "eel_pfc": "", ' "aes_itn": "", ' "disclaimer": "", ' "incoterm": "DDU", ' "metadata": "", ' "test": true, ' "duties_payor": null ' } ' Sample code for parsing the JSON response... ' Use the following online tool to generate parsing code from sample JSON: ' Generate Parsing Code from JSON object_created = jResp.StringOf("object_created") object_updated = jResp.StringOf("object_updated") object_id = jResp.StringOf("object_id") object_owner = jResp.StringOf("object_owner") object_state = jResp.StringOf("object_state") address_importer = jResp.StringOf("address_importer") certify_signer = jResp.StringOf("certify_signer") certify = jResp.BoolOf("certify") non_delivery_option = jResp.StringOf("non_delivery_option") contents_type = jResp.StringOf("contents_type") contents_explanation = jResp.StringOf("contents_explanation") exporter_reference = jResp.StringOf("exporter_reference") importer_reference = jResp.StringOf("importer_reference") invoice = jResp.StringOf("invoice") commercial_invoice = jResp.BoolOf("commercial_invoice") license = jResp.StringOf("license") certificate = jResp.StringOf("certificate") notes = jResp.StringOf("notes") eel_pfc = jResp.StringOf("eel_pfc") aes_itn = jResp.StringOf("aes_itn") disclaimer = jResp.StringOf("disclaimer") incoterm = jResp.StringOf("incoterm") metadata = jResp.StringOf("metadata") test = jResp.BoolOf("test") duties_payor = jResp.StringOf("duties_payor") i = 0 count_i = jResp.SizeOfArray("items") Do While i < count_i jResp.I = i strVal = jResp.StringOf("items[i]") i = i + 1 Loop |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.