Quick start
A key, an SDK, a first call. About five minutes.
1. Create an API key§
- Sign in to the company console with the AllowID app. Your company needs an owner or administrator to do this. If your company is not on AllowID yet, create it at company.allowid.eu; it is free.
- Open API, type a name that says where the key will live (for example Reception kiosk), and press Create key.
- Copy the key, which starts with
aidk_, into your server's configuration as the environment variableALLOWID_API_KEY. It is shown once: AllowID stores only its hash.
2. Install an SDK§
Every SDK is free (MIT), has no runtime dependencies, and contains nothing about your company: the key is the only thing that does. Download them from SDKs and downloads.
# Python 3.8+, standard library only
unzip allowid-sdk-python-1.0.0.zip
pip install ./allowid-sdk-python-1.0.0
# Node 18+, Deno or Bun
unzip allowid-sdk-js-1.0.0.zip
npm install ./allowid-sdk-js-1.0.0
# .NET 8 or netstandard2.0: add the project to your solution
unzip allowid-sdk-dotnet-1.0.0.zip
dotnet add reference allowid-sdk-dotnet-1.0.0/AllowID/AllowID.csproj
# Java 11+, no dependencies
unzip allowid-sdk-java-1.0.0.zip
cd allowid-sdk-java-1.0.0 && mvn install
# PHP 7.4+: copy src/ into your project, or add it as a Composer path repository
unzip allowid-sdk-php-1.0.0.zip
# Go 1.21+: unpack next to your module and point a replace directive at it
unzip allowid-sdk-go-1.0.0.zip
go mod edit -replace github.com/allowid/allowid-go=./allowid-sdk-go-1.0.0
# C99 + libcurl; C++17 header-only wrapper
unzip allowid-sdk-c-1.0.0.zip
make -C allowid-sdk-c-1.0.0 # → build/liballowid.a3. Your first call§
usage() is free and proves the key works:
import allowid
print(allowid.Client().usage())
# Usage(month='2026-10-01', used=0, included=1000, hard_limit=1200, licensed=False)
import { AllowID } from "@allowid/sdk";
console.log(await new AllowID().usage());
// { month: '2026-10-01', used: 0, included: 1000, hard_limit: 1200, licensed: false }
using var allowid = new AllowID.AllowIDClient();
var u = await allowid.UsageAsync();
Console.WriteLine($"{u.Used} of {u.Included} this month");
AllowID.Usage u = new AllowID().usage();
System.out.println(u.used() + " of " + u.included() + " this month");
$u = (new \AllowID\Client())->usage();
echo "{$u['used']} of {$u['included']} this month\n";
u, err := allowid.New("", "").Usage(context.Background())
if err != nil {
log.Fatal(err)
}
fmt.Printf("%d of %d this month\n", u.Used, u.Included)
curl_global_init(CURL_GLOBAL_DEFAULT);
allowid::Client client;
auto u = client.usage();
std::cout << u.used << " of " << u.included << " this month\n";
curl https://api.allowid.eu/v1/usage -H "Authorization: Bearer $ALLOWID_API_KEY"An invalid_key error means the key is mistyped or revoked;
missing_key means the environment variable is not set where your code runs.