How to Add License Key Verification to Your Game Cheat
February 22, 2026
You built a cheat. People are buying it. But they're also sharing it for free. License key verification stops that — here's how to integrate it in minutes.
How It Works
- Customer buys your cheat on CheatBay → receives a unique license key
- Your cheat loader sends the key to the CheatBay API on startup
- API returns valid/invalid → your cheat runs or exits
Simple. No database to maintain, no auth server to host.
API Endpoint
GET https://cheatbay.gg/api/verify/?key=XXXX-XXXX-XXXX-XXXX
// Success response:
{
"valid": true,
"hack": "your-cheat-name",
"expires": null
}
// Invalid key:
{
"valid": false,
"error": "Invalid or expired key"
}
C++ Integration
For C++ loaders using WinHTTP:
#include <winhttp.h>
#include <string>
#pragma comment(lib, "winhttp.lib")
bool VerifyLicense(const std::wstring& key) {
HINTERNET hSession = WinHttpOpen(L"CheatLoader/1.0",
WINHTTP_ACCESS_TYPE_DEFAULT_PROXY, NULL, NULL, 0);
HINTERNET hConnect = WinHttpConnect(hSession,
L"cheatbay.gg", INTERNET_DEFAULT_HTTPS_PORT, 0);
std::wstring path = L"/api/verify/?key=" + key;
HINTERNET hRequest = WinHttpOpenRequest(hConnect,
L"GET", path.c_str(), NULL, NULL, NULL, WINHTTP_FLAG_SECURE);
WinHttpSendRequest(hRequest, NULL, 0, NULL, 0, 0, 0);
WinHttpReceiveResponse(hRequest, NULL);
DWORD dwSize = 0;
WinHttpQueryDataAvailable(hRequest, &dwSize);
char* buffer = new char[dwSize + 1];
DWORD dwRead = 0;
WinHttpReadData(hRequest, buffer, dwSize, &dwRead);
buffer[dwRead] = '\0';
std::string response(buffer);
delete[] buffer;
WinHttpCloseHandle(hRequest);
WinHttpCloseHandle(hConnect);
WinHttpCloseHandle(hSession);
return response.find("\"valid\": true") != std::string::npos;
}
C# Integration
For C# / .NET loaders:
using System.Net.Http;
using System.Text.Json;
public static async Task<bool> VerifyLicense(string key)
{
using var client = new HttpClient();
var response = await client.GetStringAsync(
$"https://cheatbay.gg/api/verify/?key={key}");
var json = JsonDocument.Parse(response);
return json.RootElement.GetProperty("valid").GetBoolean();
}
Python Integration
For Python-based cheats or tools:
import requests
def verify_license(key: str) -> bool:
r = requests.get(f"https://cheatbay.gg/api/verify/?key={key}")
return r.json().get("valid", False)
Best Practices
- Check on every launch — not just first run
- Obfuscate the API call — don't leave the URL as a plaintext string in your binary
- Cache the result briefly — if the API is unreachable, allow a short grace period so users aren't locked out by network issues
- HWID binding — combine license keys with hardware IDs for extra protection
Start Protecting Your Revenue
Every copy shared for free is a lost sale. License key verification takes 10 minutes to integrate and pays for itself immediately.
Ready to Level Up?
Browse verified, undetected cheats on CheatBay — or start selling your own and earn crypto.
Browse Cheats Start Selling