Retrieve VAT liabilities
curl -X GET https://test-api.service.hmrc.gov.uk/organisations/vat/MY_HMRC_VRN/liabilities?from=2018-06-25&to=2019-02-17 \
-H 'Authorization: Bearer HMRC_ACCESS_TOKEN' \
-H 'Accept: application/vnd.hmrc.1.0+json'
func chilkatTest() {
let rest = CkoRest()
var success: Bool
// URL: https://test-api.service.hmrc.gov.uk/organisations/vat/MY_HMRC_VRN/liabilities?from=2018-06-25&to=2019-02-17
var bTls: Bool = true
var port: Int = 443
var bAutoReconnect: Bool = true
success = rest.Connect("test-api.service.hmrc.gov.uk", port: port, tls: bTls, autoReconnect: bAutoReconnect)
if success != true {
print("ConnectFailReason: \(rest.ConnectFailReason.intValue)")
print("\(rest.LastErrorText)")
return
}
rest.AddHeader("Authorization", value: "Bearer HMRC_ACCESS_TOKEN")
rest.AddHeader("Accept", value: "application/vnd.hmrc.1.0+json")
let sbResponseBody = CkoStringBuilder()
success = rest.FullRequestNoBodySb("GET", uriPath: "/organisations/vat/MY_HMRC_VRN/liabilities?from=2018-06-25&to=2019-02-17", sb: sbResponseBody)
if success != true {
print("\(rest.LastErrorText)")
return
}
var respStatusCode: Int = rest.ResponseStatusCode.intValue
if respStatusCode >= 400 {
print("Response Status Code = \(respStatusCode)")
print("Response Header:")
print("\(rest.ResponseHeader)")
print("Response Body:")
print("\(sbResponseBody.GetAsString())")
return
}
let jsonResponse = CkoJsonObject()
jsonResponse.LoadSb(sbResponseBody)
// See the Online Tool for Generating JSON Parse Code
var i: Int
var count_i: Int
var taxPeriodFrom: String?
var taxPeriodTo: String?
var type: String?
var originalAmount: String?
var outstandingAmount: String?
var due: String?
i = 0
count_i = jsonResponse.SizeOfArray("liabilities").intValue
while i < count_i {
jsonResponse.I = i
taxPeriodFrom = jsonResponse.StringOf("liabilities[i].taxPeriod.from")
taxPeriodTo = jsonResponse.StringOf("liabilities[i].taxPeriod.to")
type = jsonResponse.StringOf("liabilities[i].type")
originalAmount = jsonResponse.StringOf("liabilities[i].originalAmount")
outstandingAmount = jsonResponse.StringOf("liabilities[i].outstandingAmount")
due = jsonResponse.StringOf("liabilities[i].due")
i = i + 1
}
}
{
"liabilities": [
{
"taxPeriod": {
"from": "2018-04-06",
"to": "2018-07-06"
},
"type": "VAT ...",
"originalAmount": 6000.3,
"outstandingAmount": 100.51,
"due": "2018-07-06"
}
]
}