> For the complete documentation index, see [llms.txt](https://developer.redstonepgs.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.redstonepgs.com/api-documentation/publish-your-docs.md).

# Authentication

The  API supports basic authentication using Access Keys (public and private keys) which we provide to you within the Redstone dashboard&#x20;

Public keys are meant to be used from any front-end integration of our widget. By design, public keys cannot modify any part of you, or your customer account details besides initiating transactions and making payments. The private keys however, are to be kept secret. If for any reason you believe your private key has been compromised or you wish to reset them, you can do so from the dashboard.

### Usage

Authenticate your API calls by including your private key in the header of each request you make.&#x20;

```
 --header 'accept: application/json' \
 --header 'secret-key: redSec_test_795128106ab241cdbb2d10eda4dea988795128106ab2fkASnT'
 --header 'public-key: redPub_test_b4250fb765454c0bb7da38909ba1af2fb4250fb765453hII4k' 
```

> Upon request, we will provide you **test keys** to perform test transactions. However, after testing, we must switch to using the **Live keys** in production when you finally deploying your implementations.
>
> API requests made without authentication will fail with the status code `401: Unauthorized`
