[PERS SDK - v2.3.26](/sdk-reference/readme) / [Exports](/sdk-reference/modules) / BrowserFetchClientAdapter

# Class: BrowserFetchClientAdapter

Browser Fetch HTTP Client adapter for PERS SDK

Simple fetch-based HTTP client for browser environments.
Works with vanilla JavaScript, React, Vue, or any browser-based framework.

**`Example`**

```typescript
import { createPersSDK } from '@explorins/pers-sdk';
import { BrowserFetchClientAdapter } from '@explorins/pers-sdk/platform-adapters';

const sdk = createPersSDK(
  new BrowserFetchClientAdapter(),
  { environment: 'production', apiProjectKey: 'your-key' }
);

// Use managers directly
await sdk.user.getCurrentUser();
```

## Implements

- [`HttpClient`](/sdk-reference/interfaces/httpclient)


## Table of contents

### Constructors

- [constructor](/sdk-reference/classes/browserfetchclientadapter#constructor)


### Methods

- [get](/sdk-reference/classes/browserfetchclientadapter#get)
- [post](/sdk-reference/classes/browserfetchclientadapter#post)
- [put](/sdk-reference/classes/browserfetchclientadapter#put)
- [delete](/sdk-reference/classes/browserfetchclientadapter#delete)
- [patch](/sdk-reference/classes/browserfetchclientadapter#patch)


## Constructors

### constructor

• **new BrowserFetchClientAdapter**(): [`BrowserFetchClientAdapter`](/sdk-reference/classes/browserfetchclientadapter)

#### Returns

[`BrowserFetchClientAdapter`](/sdk-reference/classes/browserfetchclientadapter)

## Methods

### get

▸ **get**<`T`>(`url`, `options?`): `Promise`<`T`>

#### Type parameters

| Name |
|  --- |
| `T` |


#### Parameters

| Name | Type |
|  --- | --- |
| `url` | `string` |
| `options` | [`RequestOptions`](/sdk-reference/interfaces/requestoptions) |


#### Returns

`Promise`<`T`>

#### Implementation of

[HttpClient](/sdk-reference/interfaces/httpclient).[get](/sdk-reference/interfaces/httpclient#get)

#### Defined in

[platform-adapters/browser-fetch-client.ts:24](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/platform-adapters/browser-fetch-client.ts#L24)

### post

▸ **post**<`T`>(`url`, `data?`, `options?`): `Promise`<`T`>

#### Type parameters

| Name |
|  --- |
| `T` |


#### Parameters

| Name | Type | Default value |
|  --- | --- | --- |
| `url` | `string` | `undefined` |
| `data` | `unknown` | `null` |
| `options` | [`RequestOptions`](/sdk-reference/interfaces/requestoptions) | `{}` |


#### Returns

`Promise`<`T`>

#### Implementation of

[HttpClient](/sdk-reference/interfaces/httpclient).[post](/sdk-reference/interfaces/httpclient#post)

#### Defined in

[platform-adapters/browser-fetch-client.ts:28](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/platform-adapters/browser-fetch-client.ts#L28)

### put

▸ **put**<`T`>(`url`, `data?`, `options?`): `Promise`<`T`>

#### Type parameters

| Name |
|  --- |
| `T` |


#### Parameters

| Name | Type | Default value |
|  --- | --- | --- |
| `url` | `string` | `undefined` |
| `data` | `unknown` | `null` |
| `options` | [`RequestOptions`](/sdk-reference/interfaces/requestoptions) | `{}` |


#### Returns

`Promise`<`T`>

#### Implementation of

[HttpClient](/sdk-reference/interfaces/httpclient).[put](/sdk-reference/interfaces/httpclient#put)

#### Defined in

[platform-adapters/browser-fetch-client.ts:32](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/platform-adapters/browser-fetch-client.ts#L32)

### delete

▸ **delete**<`T`>(`url`, `options?`): `Promise`<`T`>

#### Type parameters

| Name |
|  --- |
| `T` |


#### Parameters

| Name | Type |
|  --- | --- |
| `url` | `string` |
| `options` | [`RequestOptions`](/sdk-reference/interfaces/requestoptions) |


#### Returns

`Promise`<`T`>

#### Implementation of

[HttpClient](/sdk-reference/interfaces/httpclient).[delete](/sdk-reference/interfaces/httpclient#delete)

#### Defined in

[platform-adapters/browser-fetch-client.ts:36](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/platform-adapters/browser-fetch-client.ts#L36)

### patch

▸ **patch**<`T`>(`url`, `data?`, `options?`): `Promise`<`T`>

#### Type parameters

| Name |
|  --- |
| `T` |


#### Parameters

| Name | Type | Default value |
|  --- | --- | --- |
| `url` | `string` | `undefined` |
| `data` | `unknown` | `null` |
| `options` | [`RequestOptions`](/sdk-reference/interfaces/requestoptions) | `{}` |


#### Returns

`Promise`<`T`>

#### Implementation of

[HttpClient](/sdk-reference/interfaces/httpclient).[patch](/sdk-reference/interfaces/httpclient#patch)

#### Defined in

[platform-adapters/browser-fetch-client.ts:40](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/platform-adapters/browser-fetch-client.ts#L40)