Sample code for 30+ languages & platforms
Zig Requires Chilkat v11.0.0+

Xero Delete Account

See more Xero Examples

Deletes an account in a Xero company (Accounting API).

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

    const json_token = try chilkat.JsonObject.init();
    defer json_token.deinit();
    json_token.loadFile("qa_data/tokens/xero-access-token.json") catch {
        std.debug.print("{s}\n", .{try json_token.getLastErrorText(alloc)});
        return;
    };

    http.setAuthToken(try json_token.stringOf(alloc, "access_token"));

    // Replace the value here with an actual tenant ID obtained from this example:
    // Get Xero Tenant IDs
    http.setRequestHeader("Xero-tenant-id", "83299b9e-5747-4a14-a18a-a6c94f824eb7");

    http.setAccept("application/json");

    const url = "https://api.xero.com/api.xro/2.0/Accounts/54ddab14-4a8d-45cf-86be-076c99a0cea0";

    const resp = try chilkat.HttpResponse.init();
    defer resp.deinit();
    http.httpNoBody("DELETE", url, resp) catch {
        std.debug.print("{s}\n", .{try http.getLastErrorText(alloc)});
        return;
    };

    // A 200 status code indicates success.
    std.debug.print("Response Status Code: {d}\n", .{resp.getStatusCode()});
    std.debug.print("Response Body:\n", .{});
    std.debug.print("{s}\n", .{try resp.getBodyStr(alloc)});
}