> ## Documentation Index
> Fetch the complete documentation index at: https://api-docs.go54.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Authorization

> A simple guide to authorizing your Go54 API request

**Username**: This is the email address of your client account with us

**Token**: Token is an API Key transformed into SHA256 hash using your email address and the current time encoded with base64. Please note that the API key has to be given to you by the GO54 team.

```base64 theme={null}
base64_encode(hash_hmac("sha256", "<api-key>","<email>:<gmdate("y-m-d H")>)")
```

**Sample Domain Reseller API Request**

```php theme={null}
$endpoint   = "https://www.whogohost.com/host/modules/addons/DomainsReseller/api/index.php";
$action     = "/order/domains/renew";
$params     = [
    "domain"    => "example.com",
    "regperiod" => "3",
    "addons"    => [
        "dnsmanagement"     => 0,
        "emailforwarding"   => 1,
        "idprotection"      => 1,
    ]
];
$headers = [
    "username: email@example.com",
    "token: ". base64_encode(hash_hmac("sha256", "1234567890QWERTYUIOPASDFGHJKLZXCVBNM", "email@example.com:".gmdate("y-m-d H")))
];

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "{$endpoint}{$action}");
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($params));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);

$response = curl_exec($curl);
curl_close($curl);
```
