Sample code for 30+ languages & platforms
C

MYOB: Get List of Company Files

See more MYOB Examples

Gets a list of company files.

Chilkat C Downloads

C
#include <C_CkHttp.h>
#include <C_CkJsonObject.h>

void ChilkatSample(void)
    {
    HCkHttp http;
    const char *strResp;
    HCkJsonObject jsonResponse;
    const char *Id;
    const char *Name;
    const char *LibraryPath;
    const char *ProductVersion;
    int ProductLevelCode;
    const char *ProductLevelName;
    const char *CheckedOutDate;
    const char *CheckedOutBy;
    const char *Uri;
    const char *Country;

    // This example requires the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    http = CkHttp_Create();

    CkHttp_putAuthToken(http,"ACCESS_TOKEN");

    CkHttp_putAccept(http,"application/json");

    CkHttp_SetRequestHeader(http,"x-myobapi-key","MYOB_API_KEY");
    CkHttp_SetRequestHeader(http,"x-myobapi-version","v2");

    strResp = CkHttp_quickGetStr(http,"https://ar1.api.myob.com/accountright");
    if (CkHttp_getLastMethodSuccess(http) != TRUE) {
        printf("%s\n",CkHttp_lastErrorText(http));
        CkHttp_Dispose(http);
        return;
    }

    printf("Response Status Code: %d\n",CkHttp_getLastStatus(http));

    jsonResponse = CkJsonObject_Create();
    CkJsonObject_Load(jsonResponse,strResp);
    CkJsonObject_putEmitCompact(jsonResponse,FALSE);
    printf("%s\n",CkJsonObject_emit(jsonResponse));

    if (CkHttp_getLastStatus(http) != 200) {
        printf("Failed.\n");
        CkHttp_Dispose(http);
        CkJsonObject_Dispose(jsonResponse);
        return;
    }

    // Sample output...
    // (See the parsing code below..)
    // 
    // Use the this online tool to generate parsing code from sample JSON: 
    // Generate Parsing Code from JSON

    // {
    //   "Id": "d2014f64-ffdf-487b-8d12-67a20976aca6",
    //   "Name": "Internal Sandbox API",
    //   "LibraryPath": "Internal Sandbox API",
    //   "ProductVersion": "2013.0",
    //   "ProductLevel": {
    //     "Code": 20,
    //     "Name": "Standard"
    //   },
    //   "CheckedOutDate": "2013-06-11T01:47:47.0065514",
    //   "CheckedOutBy": "developers@myob.com",
    //   "Uri": "{cf_uri}",
    //   "Country": "AU"
    // }
    // 

    Id = CkJsonObject_stringOf(jsonResponse,"Id");
    Name = CkJsonObject_stringOf(jsonResponse,"Name");
    LibraryPath = CkJsonObject_stringOf(jsonResponse,"LibraryPath");
    ProductVersion = CkJsonObject_stringOf(jsonResponse,"ProductVersion");
    ProductLevelCode = CkJsonObject_IntOf(jsonResponse,"ProductLevel.Code");
    ProductLevelName = CkJsonObject_stringOf(jsonResponse,"ProductLevel.Name");
    CheckedOutDate = CkJsonObject_stringOf(jsonResponse,"CheckedOutDate");
    CheckedOutBy = CkJsonObject_stringOf(jsonResponse,"CheckedOutBy");
    Uri = CkJsonObject_stringOf(jsonResponse,"Uri");
    Country = CkJsonObject_stringOf(jsonResponse,"Country");


    CkHttp_Dispose(http);
    CkJsonObject_Dispose(jsonResponse);

    }