C++
Header-only. C++17 with libcurl, nlohmann/json, and OpenSSL.
Install (CMake)
include(FetchContent)
FetchContent_Declare(
geckoguard
URL https://geckoguard.net/downloads/sdk/v1.3.0/geckoguard-sdk-1.3.0-source.tar.gz
URL_HASH SHA256=cde424beff9dfa31eb1149108e28b9fa27dafcad117440a19ce92c452f218952
SOURCE_SUBDIR cpp
)
FetchContent_MakeAvailable(geckoguard)
target_link_libraries(your_app PRIVATE geckoguard)
This uses the reviewed historical v1.3.0 preview source. The first official coordinated release is planned as v1.0.0 and remains on hold.
Or copy include/geckoguard/geckoguard.hpp into your project and link libcurl yourself.
Quick start
#define GECKOGUARD_USE_OPENSSL
#include <geckoguard/geckoguard.hpp>
#include <geckoguard/response_verifier.hpp>
int main() {
geckoguard::Client client("gg_live_...", "your-product-uuid", "https://api.geckoguard.net", "your-signing-secret");
geckoguard::install_default_verifier(client);
auto auth = client.authorize("LICENSE-KEY-123");
}
Build with -DGECKOGUARD_USE_OPENSSL and link OpenSSL. install_default_verifier enables Ed25519 response verification.
Configuration
geckoguard::Client client(
"gg_live_...",
"your-product-uuid",
"https://api.geckoguard.net", // base URL
"your-signing-secret" // required by the hosted API
);
For the full method list and endpoint reference, see the API Reference.
For long-running applications, follow the session lifecycle and heartbeat requirements.