Sample code for 30+ languages & platforms
DataFlex

Xero Create a Folder (Files API)

Demonstrates how to create a folder.

Note: This example requires Chilkat v9.5.0.64 or greater.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoRest
    Handle hoJson
    String sResponseJson
    String sTemp1
    Integer iTemp1
    Boolean bTemp1

    Move False To iSuccess

    // Note: Requires Chilkat v9.5.0.64 or greater.

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

    Get Create (RefClass(cComChilkatRest)) To hoRest
    If (Not(IsComObjectCreated(hoRest))) Begin
        Send CreateComObject of hoRest
    End

    // Before sending REST API calls, the REST object needs to be
    // initialized for OAuth1.
    // See Xero 2-Legged OAuth1 Setup for sample code.

    // Assuming the REST object's OAuth1 authenticator is setup, and the initial
    // connection was made, we may now send REST HTTP requests..

    // -------------------------------------------------------------------------

    // Create a folder named "Images"
    Get Create (RefClass(cComChilkatJsonObject)) To hoJson
    If (Not(IsComObjectCreated(hoJson))) Begin
        Send CreateComObject of hoJson
    End
    Get ComAppendString Of hoJson "name" "Images" To iSuccess

    Get ComAddHeader Of hoRest "Content-Type" "application/json" To iSuccess

    Get ComEmit Of hoJson To sTemp1
    Get ComFullRequestString Of hoRest "POST" "/files.xro/1.0/Folders" sTemp1 To sResponseJson
    Get ComLastMethodSuccess Of hoRest To bTemp1
    If (bTemp1 <> True) Begin
        Get ComLastErrorText Of hoRest To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    Get ComLoad Of hoJson sResponseJson To iSuccess
    Set ComEmitCompact Of hoJson To False

    // A 200 response is expected for actual success.
    Get ComResponseStatusCode Of hoRest To iTemp1
    If (iTemp1 <> 200) Begin
        Get ComEmit Of hoJson To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    Get ComEmit Of hoJson To sTemp1
    Showln sTemp1

    // A successful response looks like this:

    // 	{
    // 	  "Name": "Images",
    // 	  "FileCount": 0,
    // 	  "IsInbox": false,
    // 	  "Id": "0ffca059-f2f1-4271-8de9-4b87c8c2c638"
    // 	}
    // 


End_Procedure