> For the complete documentation index, see [llms.txt](https://scorefam.gitbook.io/scorefam-whitepaper/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://scorefam.gitbook.io/scorefam-whitepaper/appendix/developer-integration-predictpro-sdk/initialization.md).

# Initialization

The PredictPro SDK provides a comprehensive interface to interact with the PredictPro smart contract and associated APIs. It enables seamless interaction with features like tournament registration,etc

Constructor

Initializes the SDK with the required parameters.

**Syntax**

{% tabs %}
{% tab title="JavaScript" %}

```javascript
constructor(providerUrl, predictProAddress, predictProABI, usdbABI, apiConfig)
```

{% endtab %}
{% endtabs %}

**Parameters**

* <mark style="color:green;">**providerUrl**</mark>**:** URL of the Ethereum node provider (e.g., Infura, Alchemy).
* <mark style="color:green;">**predictProAddress**</mark>**:** Address of the PredictPro smart contract.
* <mark style="color:green;">**predictProABI**</mark>**:** ABI of the PredictPro contract.
* <mark style="color:green;">**usdbABI**</mark>: ABI of the USDB token contract.
* <mark style="color:green;">**apiConfig**</mark>: Configuration for external APIs:
  * <mark style="color:green;">baseUrl</mark>: API's base URL.
  * <mark style="color:green;">apiKey</mark>: API key for authentication (Reach out to @nvzvhenry to get an API key).

**Example**

{% tabs %}
{% tab title="JavaScript" %}

```javascript
const sdk = new PredictProSDK(
    "https://mainnet.infura.io/v3/YOUR_INFURA_KEY",
    "0xPredictProContractAddress",
    predictProABI,
    usdbABI,
    { baseUrl: "https://api.example.com", apiKey: "API_KEY (Reach out to @nvzvhenry to get an API key)" }
);

```

{% endtab %}
{% endtabs %}
