> For the complete documentation index, see [llms.txt](https://chainrewardz.gitbook.io/documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://chainrewardz.gitbook.io/documentation/integration-guide/fundamentals.md).

# Fundamentals

## Environment

We have two base API URL endpoints for our sandbox and production environments as below:

* Sandbox: [https://sandbox.chainrewardz.net](https://sandbox.chainrewardz.com/)
* Production: [https://api.chainrewardz.net](https://api.chainrewardz.com/)

***

## Prerequisites

The Chainrewardz system consists of two main system type: a Web2 system and a Web3 system. Your choice of system will determine the authentication method required to interact with our platform. However, both systems follow the same fundamental workflow when integrating via *Hosted Mode* or *API Connect* and require the following:

1. In the business dashboard,  an NFT smart contract address or a membership plan **MUST** be created. In the case of NFT Smart contract this can be a dummy address when using *Hosted Mode* and *API Connect*
2. Our API is used to authenticate users and generate access token. This is then used to perform all future actions through our platform.
3. When retrieving the price of any service, You **MUST** include the user's access token and NFT smart contract address/membership plan in the request.

{% hint style="danger" %}
It is important the above steps are followed to prevent errors and save time when integrating with our system.
{% endhint %}
