Sample code for 30+ languages & platforms
Zig

Using an S3 Compatible Storage Provider

See more Amazon S3 Examples

Demonstrates how to use a compatible S3 storage provider. This example retrieves the XML listing the buckets for an Amazon S3 account.

In all cases, follow the Amazon S3 examples, except specify the AwsEndpoint for your S3 compatible storage provider.

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 example requires the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

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

    // Insert your access key here:
    http.setAwsAccessKey("AWS_ACCESS_KEY");

    // Insert your secret key here:
    http.setAwsSecretKey("AWS_SECRET_KEY");

    // Set the AwsEndpoint to your S3 compatible storage provider
    // This example uses basefarm.net
    http.setAwsEndpoint("basefarm.bf.object.osl.basefarm.net");

    const xml_str = http.s3ListBuckets(alloc) catch "";
    if (!http.getLastMethodSuccess()) {
        // Failed
        std.debug.print("{s}\n", .{try http.getLastErrorText(alloc)});
    } else {
        // Success.  Show the XML response.  (Use the online tool at the link below to generate parsing code.)
        std.debug.print("{s}\n", .{xml_str});
    }

    // Use this online tool to generate parsing code from sample XML:
    // Generate Parsing Code from XML
}