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);

    }