API Documentation

Welcome to the TRACEKEY API documentation. Our API enables you to verify software licenses and manage user access programmatically.

Authentication

All API requests must include your API key in the request headers. You can obtain an API key from your dashboard.

Request Header
X-API-Key: your_api_key_here

Endpoints

Verify License

POST /api_verify.php

Request Parameters

Parameter Type Description
license_key string The license key to verify

Response

JSON Response
{
    "valid": true,
    "type": "premium",
    "app": "MyApp",
    "ip_address": "123.45.67.89"
}

Error Responses

Status Description
400 No license key provided
401 Invalid or missing API key
403 License has reached maximum number of IP bindings
404 Invalid or inactive license

Code Examples

Python

import asyncio
import aiohttp
import json

class LicenseVerifier:
    def __init__(self, api_key):
        self.api_key = api_key
        self.headers = {"X-API-Key": self.api_key}
        
    async def verify_license(self, license_key):
        async with aiohttp.ClientSession() as session:
            data = {"license_key": license_key}
            async with session.post(
                "https://www.tracekey.shop/api_verify.php",
                headers=self.headers,
                data=data
            ) as response:
                return await response.json()

# Usage example
async def main():
    verifier = LicenseVerifier("YOUR-API-KEY")
    result = await verifier.verify_license("LICENSE-KEY")
    print(result)

C#

using System.Net.Http;
using System.Text.Json;

public class LicenseVerifier
{
    private readonly HttpClient _client;
    private const string ApiUrl = "https://www.tracekey.shop/api_verify.php";

    public LicenseVerifier(string apiKey)
    {
        _client = new HttpClient();
        _client.DefaultRequestHeaders.Add("X-API-Key", apiKey);
    }

    public async Task VerifyLicenseAsync(string licenseKey)
    {
        var content = new FormUrlEncodedContent(new[]
        {
            new KeyValuePair("license_key", licenseKey)
        });

        var response = await _client.PostAsync(ApiUrl, content);
        var responseBody = await response.Content.ReadAsStringAsync();
        
        return JsonSerializer.Deserialize(responseBody);
    }
}

Rate Limits

Plan Rate Limit IP Bindings
Basic 100 requests/minute 1 IP per license
Premium 1000 requests/minute 3 IPs per license
Enterprise 5000 requests/minute 10 IPs per license