Sample code for 30+ languages & platforms
Zig Requires Chilkat v9.5.0.89+

Duo Auth API - Check

See more Duo Auth MFA Examples

The /check endpoint can be called to verify that the Auth API integration and secret keys are valid, and that the signature is being generated properly.

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

    const integration_key = "DIMS3V5QDVG9J9ABRXC4";
    const secret_key = "HWVQ46nubLBxhnRlKddTltWIi3hL0fIQF2qTvLab";

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

    http.setAccept("application/json");

    // Use your own hostname here:
    const url = "https://api-a03782e1.duosecurity.com/auth/v2/check";

    http.setLogin(integration_key);
    http.setPassword(secret_key);

    const json_str = http.quickGetStr(alloc, url) catch {
        std.debug.print("{s}\n", .{try http.getLastErrorText(alloc)});
        return;
    };

    std.debug.print("status code = {d}\n", .{http.getLastStatus()});
    std.debug.print("{s}\n", .{json_str});

    // Sample successful output:

    // status code = 200
    // {"response": {"time": 1632358829}, "stat": "OK"}
}