Sample code for 30+ languages & platforms
Java

Xero Get File Content (Files API)

Demonstrates how to download the content of a Xero file.

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

Chilkat Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.BinData;
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Rest;
import com.chilkatsoft.chilkat2.StringBuilder;

public class ChilkatExample {

    public static void main(String[] args) {
        // 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.

        Rest rest = new Rest();

        // 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..

        // ------------------------------------------------------------------------------
        String fileID = "f042e9a3-a31d-4595-b8b3-6030ea6084bb";

        StringBuilder sbPath = new StringBuilder();
        sbPath.append("/files.xro/1.0/Files/{FileId}/Content");
        int numReplaced = sbPath.replace("{FileId}", fileID);

        BinData jpgData = new BinData();
        try {
            rest.fullRequestNoBodyBd("GET", sbPath.getAsString(), jpgData);
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            return;
        }

        // A 200 response is expected for actual success.
        // If we don't get a 200 response, then the response body was not actually
        // the file data, but it was text containing error information.
        if (rest.getResponseStatusCode() != 200) {
            StringBuilder sbErrorText = new StringBuilder();
            sbErrorText.appendBd(jpgData, "utf-8", 0, 0);
            System.out.println(sbErrorText.getAsString());
            System.out.println("-- Failed.");
            return;
        }

        // Save to a local file.
        try {
            jpgData.writeFile("qa_output/xero_penguins.jpg");
        } catch (ChilkatException e) {
            System.out.println("Failed to save to local file.");
        }

        System.out.println("Xero Get File was Successful.");
    }
}