Chilkat2-Python
Chilkat2-Python
MyInvois Malaysia Get Document Types
See more Malaysia MyInvois Examples
There are multiple types of documents supported by MyInvois, and this API retrieves their definitions through API call.Chilkat Chilkat2-Python Downloads
import sys
import chilkat2
success = False
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
http = chilkat2.Http()
# Adds the "Authorization: Bearer <access_token>" header.
http.AuthToken = "<access_token>"
# Note: The access token is valid for a short amount of time. Perhaps 1 hour.
# The access token is used in the "Authorization: Bearer <access_token>" header in subsequent requests until it expires.
# Your application would then need to get a new access token, and so on..
# To get an access token, see How to Get a MyInvois Access Token
sb = chilkat2.StringBuilder()
success = http.QuickGetSb("https://preprod-api.myinvois.hasil.gov.my/api/v1.0/documenttypes",sb)
if (success == False):
print(http.LastErrorText)
sys.exit()
statusCode = http.LastStatus
print("response status code = " + str(statusCode))
if (statusCode != 200):
# Failed.
print(sb.GetAsString())
sys.exit()
# Sample response:
# {"result":
# [
# {"id":45,
# "invoiceTypeCode":4,
# "description":"Invoice",
# "activeFrom":"2015-02-13T13:15:00Z",
# "activeTo":"2027-03-01T00:00:00Z",
# "documentTypeVersions":
# [
# {"id":454,
# "name":"1.0",
# "description":"Invoice version 1.1",
# "activeFrom":"2015-02-13T13:15:00Z",
# "activeTo":"2027-03-01T00:00:00Z",
# "versionNumber":1.1,
# "status":"published"
# }
# ]
# }
# ]
# }
# Use this online tool to generate parsing code from sample JSON:
# Generate Parsing Code from JSON
json = chilkat2.JsonObject()
json.LoadSb(sb)
i = 0
count_i = json.SizeOfArray("result")
while i < count_i :
json.I = i
id = json.IntOf("result[i].id")
invoiceTypeCode = json.IntOf("result[i].invoiceTypeCode")
description = json.StringOf("result[i].description")
activeFrom = json.StringOf("result[i].activeFrom")
activeTo = json.StringOf("result[i].activeTo")
j = 0
count_j = json.SizeOfArray("result[i].documentTypeVersions")
while j < count_j :
json.J = j
id = json.IntOf("result[i].documentTypeVersions[j].id")
name = json.StringOf("result[i].documentTypeVersions[j].name")
description = json.StringOf("result[i].documentTypeVersions[j].description")
activeFrom = json.StringOf("result[i].documentTypeVersions[j].activeFrom")
activeTo = json.StringOf("result[i].documentTypeVersions[j].activeTo")
versionNumber = json.StringOf("result[i].documentTypeVersions[j].versionNumber")
status = json.StringOf("result[i].documentTypeVersions[j].status")
j = j + 1
i = i + 1