# CoinPaprikaPriceProvider\<T>

Defined in: [atomiq-sdk/src/prices/providers/CoinPaprikaPriceProvider.ts:18](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/providers/CoinPaprikaPriceProvider.ts#L18)

Price provider using CoinPaprika API

## Extends

* `HttpPriceProvider`<`T`>

## Type Parameters

| Type Parameter             |
| -------------------------- |
| `T` *extends* `MultiChain` |

## Constructors

### Constructor

```
new CoinPaprikaPriceProvider<T>(

   coinsMap, 

   url, 

httpRequestTimeout?): CoinPaprikaPriceProvider<T>;
```

Defined in: [atomiq-sdk/src/prices/providers/CoinPaprikaPriceProvider.ts:20](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/providers/CoinPaprikaPriceProvider.ts#L20)

#### Parameters

| Parameter             | Type                 | Default value                      |
| --------------------- | -------------------- | ---------------------------------- |
| `coinsMap`            | `CtorCoinTypes`<`T`> | `undefined`                        |
| `url`                 | `string`             | `"https://api.coinpaprika.com/v1"` |
| `httpRequestTimeout?` | `number`             | `undefined`                        |

#### Returns

`CoinPaprikaPriceProvider`<`T`>

#### Overrides

```
HttpPriceProvider<T>.constructor
```

## Properties

### coinsMap

```
coinsMap: CoinTypes<T> = {};
```

Defined in: [atomiq-sdk/src/prices/abstract/IPriceProvider.ts:42](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/abstract/IPriceProvider.ts#L42)

#### Inherited from

```
HttpPriceProvider.coinsMap
```

***

### httpRequestTimeout?

```
optional httpRequestTimeout: number;
```

Defined in: [atomiq-sdk/src/prices/providers/abstract/HttpPriceProvider.ts:7](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/providers/abstract/HttpPriceProvider.ts#L7)

#### Inherited from

```
HttpPriceProvider.httpRequestTimeout
```

***

### url

```
url: string;
```

Defined in: [atomiq-sdk/src/prices/providers/abstract/HttpPriceProvider.ts:6](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/providers/abstract/HttpPriceProvider.ts#L6)

#### Inherited from

```
HttpPriceProvider.url
```

## Methods

### fetchPrice()

```
fetchPrice(token, abortSignal?): Promise<bigint>;
```

Defined in: [atomiq-sdk/src/prices/providers/CoinPaprikaPriceProvider.ts:27](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/providers/CoinPaprikaPriceProvider.ts#L27)

#### Parameters

| Parameter      | Type          |
| -------------- | ------------- |
| `token`        | `CoinType`    |
| `abortSignal?` | `AbortSignal` |

#### Returns

`Promise`<`bigint`>

#### Inherit Doc

#### Overrides

```
HttpPriceProvider.fetchPrice
```

***

### getPrice()

```
getPrice<C>(

   chainIdentifier, 

   token, 

abortSignal?): Promise<bigint>;
```

Defined in: [atomiq-sdk/src/prices/abstract/IPriceProvider.ts:84](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/abstract/IPriceProvider.ts#L84)

Returns coin price in uSat (microSat)

#### Type Parameters

| Type Parameter         |
| ---------------------- |
| `C` *extends* `string` |

#### Parameters

| Parameter         | Type          | Description |
| ----------------- | ------------- | ----------- |
| `chainIdentifier` | `C`           |             |
| `token`           | `string`      |             |
| `abortSignal?`    | `AbortSignal` |             |

#### Returns

`Promise`<`bigint`>

#### Throws

if token is not found

#### Inherited from

```
HttpPriceProvider.getPrice
```

***

### getUsdPrice()

```
getUsdPrice(abortSignal?): Promise<number>;
```

Defined in: [atomiq-sdk/src/prices/abstract/IPriceProvider.ts:106](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/abstract/IPriceProvider.ts#L106)

Returns coin price in uSat (microSat)

#### Parameters

| Parameter      | Type          | Description |
| -------------- | ------------- | ----------- |
| `abortSignal?` | `AbortSignal` |             |

#### Returns

`Promise`<`number`>

#### Throws

if token is not found

#### Inherited from

```
HttpPriceProvider.getUsdPrice
```

***

### fetchUsdPrice()

```
protected fetchUsdPrice(abortSignal?): Promise<number>;
```

Defined in: [atomiq-sdk/src/prices/providers/CoinPaprikaPriceProvider.ts:40](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/providers/CoinPaprikaPriceProvider.ts#L40)

#### Parameters

| Parameter      | Type          |
| -------------- | ------------- |
| `abortSignal?` | `AbortSignal` |

#### Returns

`Promise`<`number`>

#### Inherit Doc

#### Overrides

```
HttpPriceProvider.fetchUsdPrice
```

***

### getDecimals()

```
protected getDecimals<C>(chainIdentifier, token): number;
```

Defined in: [atomiq-sdk/src/prices/abstract/IPriceProvider.ts:119](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/abstract/IPriceProvider.ts#L119)

Returns the decimal places of the specified token, or -1 if token should be ignored, returns null if token is not found

#### Type Parameters

| Type Parameter         |
| ---------------------- |
| `C` *extends* `string` |

#### Parameters

| Parameter         | Type     | Description |
| ----------------- | -------- | ----------- |
| `chainIdentifier` | `C`      |             |
| `token`           | `string` |             |

#### Returns

`number`

#### Throws

If token is not found

#### Inherited from

```
HttpPriceProvider.getDecimals
```
