Sample code for 30+ languages & platforms
Dart

Shippo List All Orders

See more Shippo Examples

Demonstrates how to list all orders created by sending a GET request to the orders endpoint.

Chilkat Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

void main() {
  // This example assumes the Chilkat API to have been previously unlocked.
  // See Global Unlock Sample for sample code.

  final http = CkHttp();

  // Implements the following CURL command:

  // curl https://api.goshippo.com/orders/ \
  //     -H "Authorization: ShippoToken <API_Token>"

  http.setRequestHeader('Authorization', 'ShippoToken <API_Token>');

  final sbResponseBody = CkStringBuilder();
  try {
    http.quickGetSb('https://api.goshippo.com/orders/', sbResponseBody);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  final jResp = CkJsonObject();
  jResp.loadSb(sbResponseBody);
  jResp.emitCompact = false;

  print('Response Body:');
  print(jResp.emit());

  final respStatusCode = http.lastStatus;
  print('Response Status Code = $respStatusCode');
  if (respStatusCode >= 400) {
    print('Response Header:');
    print(http.lastHeader);
    print('Failed.');
    return;
  }

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

  // {
  //   "count": 1382,
  //   "next": "https://api.goshippo.com/orders/?page=2",
  //   "previous": null,
  //   "results": [
  //     {
  //       "object_id": "4f2bc588e4e5446cb3f9fdb7cd5e190b",
  //       "object_owner": "shippotle@goshippo.com",
  //       "order_number": "#1068",
  //       "order_status": "PAID",
  //       "placed_at": "2016-09-23T01:28:12Z",
  //       "to_address": {
  //         "object_created": "2016-09-23T01:38:56Z",
  //         "object_updated": "2016-09-23T01:38:56Z",
  //         "object_id": "d799c2679e644279b59fe661ac8fa488",
  //         "object_owner": "shippotle@goshippo.com",
  //         "is_complete": true,
  //         "validation_results": {},
  //         "name": "Mr Hippo",
  //         "company": "Shippo",
  //         "street1": "215 Clayton St.",
  //         "street2": "",
  //         "city": "San Francisco",
  //         "state": "CA",
  //         "zip": "94117",
  //         "country": "US",
  //         "phone": "15553419393",
  //         "email": "shippotle@goshippo.com",
  //         "is_residential": null,
  //         "metadata": ""
  //       },
  //       "from_address": null,
  //       "line_items": [
  //         {
  //           "object_id": "abf7d5675d744b6ea9fdb6f796b28f28",
  //           "title": "Hippo Magazines",
  //           "variant_title": "",
  //           "sku": "HM-123",
  //           "quantity": 1,
  //           "total_price": "12.10",
  //           "currency": "USD",
  //           "weight": "0.40",
  //           "weight_unit": "lb",
  //           "manufacture_country": null,
  //           "max_ship_time": null,
  //           "max_delivery_time": null,
  //           "description": null
  //         }
  //       ],
  //       "shipping_cost": "12.83",
  //       "shipping_cost_currency": "USD",
  //       "shipping_method": "USPS First Class Package",
  //       "shop_app": "Shippo",
  //       "subtotal_price": "12.10",
  //       "total_price": "24.93",
  //       "total_tax": "0.00",
  //       "currency": "USD",
  //       "transactions": [
  //       ],
  //       "weight": "0.40",
  //       "weight_unit": "lb",
  //       "notes": 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

  var intVal = 0;
  var j = 0;
  var countJ = 0;
  var objectId = '';
  var title = '';
  var variantTitle = '';
  var sku = '';
  var quantity = 0;
  var totalPrice = '';
  var currency = '';
  var weight = '';
  var weightUnit = '';
  var manufactureCountry = '';
  var maxShipTime = '';
  var maxDeliveryTime = '';
  var description = '';

  final count = jResp.intOf('count');
  final next = jResp.stringOf('next');
  final previous = jResp.stringOf('previous');
  var i = 0;
  final countI = jResp.sizeOfArray('results');
  while (i < countI) {
    jResp.i = i;
    intVal = jResp.intOf('results[i]');
    j = 0;
    countJ = jResp.sizeOfArray('results[i].line_items');
    while (j < countJ) {
      jResp.j = j;
      objectId = jResp.stringOf('results[i].line_items[j].object_id');
      title = jResp.stringOf('results[i].line_items[j].title');
      variantTitle = jResp.stringOf('results[i].line_items[j].variant_title');
      sku = jResp.stringOf('results[i].line_items[j].sku');
      quantity = jResp.intOf('results[i].line_items[j].quantity');
      totalPrice = jResp.stringOf('results[i].line_items[j].total_price');
      currency = jResp.stringOf('results[i].line_items[j].currency');
      weight = jResp.stringOf('results[i].line_items[j].weight');
      weightUnit = jResp.stringOf('results[i].line_items[j].weight_unit');
      manufactureCountry = jResp.stringOf('results[i].line_items[j].manufacture_country');
      maxShipTime = jResp.stringOf('results[i].line_items[j].max_ship_time');
      maxDeliveryTime = jResp.stringOf('results[i].line_items[j].max_delivery_time');
      description = jResp.stringOf('results[i].line_items[j].description');
      j++;
    }

    j = 0;
    countJ = jResp.sizeOfArray('results[i].transactions');
    while (j < countJ) {
      jResp.j = j;
      j++;
    }

    i++;
  }
}