Dart
Dart
Shippo Create a Refund
See more Shippo Examples
Demonstrates how to refund a shipping label.Chilkat Dart Downloads
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/refunds/ \
// -H "Authorization: ShippoToken <API_Token>" \
// -d transaction="4503427478ea45a899e9b54abc4c5803"
final req = CkHttpRequest();
req.httpVerb = 'POST';
req.path = '/refunds/';
req.contentType = 'application/x-www-form-urlencoded';
req.addParam('transaction', '4503427478ea45a899e9b54abc4c5803');
req.addHeader('Authorization', 'ShippoToken <API_Token>');
final resp = CkHttpResponse();
try {
http.httpReq('https://api.goshippo.com/refunds/', req, resp);
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
final sbResponseBody = CkStringBuilder();
resp.getBodySb(sbResponseBody);
final jResp = CkJsonObject();
jResp.loadSb(sbResponseBody);
jResp.emitCompact = false;
print('Response Body:');
print(jResp.emit());
final respStatusCode = resp.statusCode;
print('Response Status Code = $respStatusCode');
if (respStatusCode >= 400) {
print('Response Header:');
print(resp.header);
print('Failed.');
return;
}
// Sample JSON response:
// (Sample code for parsing the JSON response is shown below)
// {
// "object_created": "2014-04-21T07:12:41.044Z",
// "object_id": "bd7b8379a2e847bcb0818125943dde5d",
// "object_owner": "shippotle@goshippo.com",
// "object_updated": "2014-04-21T07:12:41.045Z",
// "status": "QUEUED",
// "transaction": "35ed59f23a514ecfa2faeaed93a00086"
// }
// Sample code for parsing the JSON response...
// Use the following online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON
final objectCreated = jResp.stringOf('object_created');
final objectId = jResp.stringOf('object_id');
final objectOwner = jResp.stringOf('object_owner');
final objectUpdated = jResp.stringOf('object_updated');
final status = jResp.stringOf('status');
final transaction = jResp.stringOf('transaction');
}