This guide explains dashboard setup, files to add to your project, and functions to call so your app works with https://keyghotz.space/api/1.2/.
name — app nameownerid — 10 charactersversion — must match init() (e.g. 1.0)Point every client library to Ghotz, not any other host:
https://keyghotz.space/api/1.2/
1. init() ← REQUIRED first (sessionid)
2. check() ← optional
3. ONE OF:
register(user, pass, license_key)
login(user, pass)
license(license_key)
4. Run your program only if response.success == true
| Program type | Guide | Typical use |
|---|---|---|
| Windows .exe (C++) | C++ / EXE tutorial | Console or Win32 app |
| Injected DLL (C++) | C++ DLL tutorial | Game mod, overlay, cheat menu |
| C# / .NET / Unity | C# tutorial | WinForms, WPF, Unity |
| Python | Python tutorial | Scripts, tools |
| Website / PHP | Website tutorial | Seller panel, webhooks |
| Raw HTTP | API reference | Any language |
Use these as a starter template. Replace APP_NAME, OWNER_ID, and 1.0 with your dashboard values.
#include <iostream>
#include "auth.hpp" // from docs/exe.php package
api KeyAuthApp("APP_NAME", "OWNER_ID", "1.0", "https://keyghotz.space/api/1.2/");
int main() {
KeyAuthApp.init();
if (!KeyAuthApp.response.success) {
std::cout << "Init failed: " << KeyAuthApp.response.message << "\n";
return 1;
}
std::string key;
std::cout << "License key: ";
std::getline(std::cin, key);
KeyAuthApp.license(key);
if (!KeyAuthApp.response.success) {
std::cout << "Auth failed: " << KeyAuthApp.response.message << "\n";
return 1;
}
std::cout << "Authenticated. Run protected code.\n";
return 0;
}
#include <Windows.h>
#include "auth.hpp" // from docs/dll.php package
api KeyAuthApp("APP_NAME", "OWNER_ID", "1.0", "https://keyghotz.space/api/1.2/");
DWORD WINAPI AuthThread(LPVOID) {
KeyAuthApp.init();
if (!KeyAuthApp.response.success) return 0;
KeyAuthApp.license("TEST-KEY-HERE");
if (!KeyAuthApp.response.success) return 0;
// your hooked / overlay / feature code here
return 0;
}
BOOL APIENTRY DllMain(HMODULE hModule, DWORD reason, LPVOID) {
if (reason == DLL_PROCESS_ATTACH) {
DisableThreadLibraryCalls(hModule);
CreateThread(nullptr, 0, AuthThread, nullptr, 0, nullptr);
}
return TRUE;
}
using KeyAuth;
var app = new api(
name: "APP_NAME",
ownerid: "OWNER_ID",
secret: "", // keep empty on client
version: "1.0"
);
app.init();
if (!app.response.success) return;
app.license("TEST-KEY-HERE");
if (!app.response.success) return;
Console.WriteLine("Authenticated. Continue app.");
import keyauth
app = keyauth.api(
name="APP_NAME",
ownerid="OWNER_ID",
secret="",
version="1.0",
hash_to_check=""
)
app.init()
if not app.response["success"]:
print("Init failed:", app.response["message"])
raise SystemExit
app.license("TEST-KEY-HERE")
if not app.response["success"]:
print("Auth failed:", app.response["message"])
raise SystemExit
print("Authenticated. Continue app.")
| Function | Use | Enable in dashboard |
|---|---|---|
init() | Always first | — |
register() / regstr() | New user + license key | Register |
login() | Returning user | Login |
license() | Key only | License |
var() / getvar() | Server variables | Vars |
log() / webhook() | Logs & Discord | Log / Webhook |
If HWID lock is enabled, the library sends hardware ID on auth calls. Use the built-in HWID from the SDK unless you have a custom stable ID.
init() → must succeed.register() or license() → success.login() → success.secret or sellerkey in an EXE/DLL. Only name, ownerid, version, and API URL belong in the client.
Share this prompt with users so AI can help them add auth correctly in their project:
I am integrating Ghotz Auth in my project. Use this API URL: https://keyghotz.space/api/1.2/ My app values: - name: APP_NAME - ownerid: OWNER_ID - version: 1.0 Project type: [C++ EXE / C++ DLL / C# / Python] Goal: add init + license/login/register flow with clear error messages. Please return: 1) exact files to create/edit 2) full working code snippet 3) where to call init() first 4) where to block app execution if auth fails 5) short test checklist Important: - do NOT use seller secret in client - keep auth checks before protected features - code should be beginner-friendly
You can also ask AI: "Explain this like I am new, step-by-step, and show exactly where to paste each code block."