Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Xojo Plugin) Shippo Validate Global AddressDemonstrates how to validate a global address. For more information, see https://goshippo.com/docs/address-validation/
// This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Dim http As New Chilkat.Http Dim success As Boolean // Implements the following CURL command: // curl https://api.goshippo.com/addresses/ \ // -H "Authorization: ShippoToken <API_TOKEN>" \ // -d name="Shawn Ippotle" \ // -d company="Shippo" \ // -d street1="Kortrijksesteenweg 1005" \ // -d city="Gent" \ // -d zip=9000 \ // -d country="BE" \ // -d email="shippotle@goshippo.com"\ // -d validate=true Dim req As New Chilkat.HttpRequest req.HttpVerb = "POST" req.Path = "/addresses/" req.ContentType = "application/x-www-form-urlencoded" req.AddParam "name","Shawn Ippotle" req.AddParam "company","Shippo" req.AddParam "street1","Kortrijksesteenweg 1005" req.AddParam "city","Gent" req.AddParam "zip","9000" req.AddParam "country","BE" req.AddParam "email","shippotle@goshippo.com" req.AddParam "validate","true" req.AddHeader "Authorization","ShippoToken <API_TOKEN>" Dim resp As Chilkat.HttpResponse resp = http.PostUrlEncoded("https://api.goshippo.com/addresses/",req) If (http.LastMethodSuccess = False) Then System.DebugLog(http.LastErrorText) Return End If Dim sbResponseBody As New Chilkat.StringBuilder success = resp.GetBodySb(sbResponseBody) Dim jResp As New Chilkat.JsonObject success = jResp.LoadSb(sbResponseBody) jResp.EmitCompact = False System.DebugLog("Response Body:") System.DebugLog(jResp.Emit()) Dim respStatusCode As Int32 respStatusCode = resp.StatusCode System.DebugLog("Response Status Code = " + Str(respStatusCode)) If (respStatusCode >= 400) Then System.DebugLog("Response Header:") System.DebugLog(resp.Header) System.DebugLog("Failed.") Return End If // Sample JSON response: // (Sample code for parsing the JSON response is shown below) // { // "object_created": "2017-07-26T17:52:37.305Z", // "object_updated": "2017-07-26T17:52:37.351Z", // "object_id": "b7f9709df3914d1ca6efe4c30e7b0572", // "is_complete": true, // "validation_results": { // "is_valid": true, // "messages": [ // { // "source": "Shippo Address Validator", // "type": "address_correction", // "code": "administrative_area_change", // "text": "The administrative area (state or province) was added or changed." // }, // { // "source": "Shippo Address Validator", // "code": "geocoded_rooftop", // "text": "The record was geocoded down to rooftop level, meaning the point is within the property boundaries (most often the center)." // }, // { // "source": "Shippo Address Validator", // "code": "premises_full", // "text": "The address has been verified to the Premise (House or Building) Level, which is the highest level possible with the reference data." // } // ] // }, // "object_owner": "hippo@goshippo.com", // "name": "Hippo Shippo", // "company": "Shippo", // "street_no": "2", // "street1": "Unter den Linden", // "street2": "", // "street3": "", // "city": "Berlin", // "state": "", // "zip": "10117", // "country": "DE", // "longitude": "13.39751", // "latitude": "52.51785", // "phone": "14151234567", // "email": "hippo@goshippo.com", // "is_residential": null, // "metadata": "", // "test": false // } // Sample code for parsing the JSON response... // Use the following online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON Dim source As String Dim v_type As String Dim code As String Dim text As String Dim object_created As String object_created = jResp.StringOf("object_created") Dim object_updated As String object_updated = jResp.StringOf("object_updated") Dim object_id As String object_id = jResp.StringOf("object_id") Dim is_complete As Boolean is_complete = jResp.BoolOf("is_complete") Dim validation_resultsIs_valid As Boolean validation_resultsIs_valid = jResp.BoolOf("validation_results.is_valid") Dim object_owner As String object_owner = jResp.StringOf("object_owner") Dim name As String name = jResp.StringOf("name") Dim company As String company = jResp.StringOf("company") Dim street_no As String street_no = jResp.StringOf("street_no") Dim street1 As String street1 = jResp.StringOf("street1") Dim street2 As String street2 = jResp.StringOf("street2") Dim street3 As String street3 = jResp.StringOf("street3") Dim city As String city = jResp.StringOf("city") Dim state As String state = jResp.StringOf("state") Dim zip As String zip = jResp.StringOf("zip") Dim country As String country = jResp.StringOf("country") Dim longitude As String longitude = jResp.StringOf("longitude") Dim latitude As String latitude = jResp.StringOf("latitude") Dim phone As String phone = jResp.StringOf("phone") Dim email As String email = jResp.StringOf("email") Dim is_residential As String is_residential = jResp.StringOf("is_residential") Dim metadata As String metadata = jResp.StringOf("metadata") Dim test As Boolean test = jResp.BoolOf("test") Dim i As Int32 i = 0 Dim count_i As Int32 count_i = jResp.SizeOfArray("validation_results.messages") While i < count_i jResp.I = i source = jResp.StringOf("validation_results.messages[i].source") v_type = jResp.StringOf("validation_results.messages[i].type") code = jResp.StringOf("validation_results.messages[i].code") text = jResp.StringOf("validation_results.messages[i].text") i = i + 1 Wend |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.