![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Objective-C) MyInvois Malaysia Get Document TypesSee more Malaysia MyInvois ExamplesThere are multiple types of documents supported by MyInvois, and this API retrieves their definitions through API call.For more information, see https://sdk.myinvois.hasil.gov.my/api/03-get-document-types/
#import <CkoHttp.h> #import <CkoStringBuilder.h> #import <CkoJsonObject.h> #import <NSString.h> // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. CkoHttp *http = [[CkoHttp alloc] init]; // 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 CkoStringBuilder *sb = [[CkoStringBuilder alloc] init]; BOOL success = [http QuickGetSb: @"https://preprod-api.myinvois.hasil.gov.my/api/v1.0/documenttypes" sbContent: sb]; if (success == NO) { NSLog(@"%@",http.LastErrorText); return; } int statusCode = [http.LastStatus intValue]; NSLog(@"%@%d",@"response status code = ",statusCode); if (statusCode != 200) { // Failed. NSLog(@"%@",[sb GetAsString]); return; } // 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 CkoJsonObject *json = [[CkoJsonObject alloc] init]; [json LoadSb: sb]; int id; int invoiceTypeCode; NSString *description = 0; NSString *activeFrom = 0; NSString *activeTo = 0; int j; int count_j; NSString *name = 0; NSString *versionNumber = 0; NSString *status = 0; int i = 0; int count_i = [[json SizeOfArray: @"result"] intValue]; while (i < count_i) { json.I = [NSNumber numberWithInt: i]; id = [[json IntOf: @"result[i].id"] intValue]; invoiceTypeCode = [[json IntOf: @"result[i].invoiceTypeCode"] intValue]; 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"] intValue]; while (j < count_j) { json.J = [NSNumber numberWithInt: j]; id = [[json IntOf: @"result[i].documentTypeVersions[j].id"] intValue]; 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; } |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.