Sample code for 30+ languages & platforms
Zig

Box.com Download File

See more Box Examples

Retrieves the actual data of the file.

Chilkat Zig Downloads

Zig
const std = @import("std");
const chilkat = @import("chilkat");

pub fn main(init: std.process.Init) !void {
    const alloc = init.arena.allocator();

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

    // ------------------------------------------------------------------------------------------
    // Important:
    // See this information about Box.com Service Accounts
    // Box.com will automatically generate a Service Account where the name of the account is the name of your App.�
    // When you make API calls, it is for this service account, and the files that exist and what you see are not the same as your normal account.
    // ------------------------------------------------------------------------------------------

    const http = try chilkat.Http.init();
    defer http.deinit();

    // Provide a previously obtained OAuth2 access token.
    // See Get Box OAuth2 Access Token.
    http.setAuthToken("BOX_ACCESS_TOKEN");

    http.setFollowRedirects(true);

    // Streaming download directly to a file
    // The file is specified by the file ID.
    // In this case, we're downloading a file with FILE_ID = 283371752129.
    // The general form of the URL for downloading is: https://api.box.com/2.0/files/FILE_ID/content
    http.download("https://api.box.com/2.0/files/283371752129/content", "qa_output/tigers.jpeg") catch {
        std.debug.print("{s}\n", .{try http.getLastErrorText(alloc)});
        return;
    };

    std.debug.print("Downloaded tigers.jpeg\n", .{});
}