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

# Interface: HttpClient

Platform-agnostic HTTP client interface
To be implemented by platform-specific adapters (Angular, React Native, etc.)

## Implemented by

- [`AngularHttpClientAdapter`](/sdk-reference/classes/angularhttpclientadapter)
- [`BrowserFetchClientAdapter`](/sdk-reference/classes/browserfetchclientadapter)
- [`NodeHttpClientAdapter`](/sdk-reference/classes/nodehttpclientadapter)


## Table of contents

### Methods

- [get](/sdk-reference/interfaces/httpclient#get)
- [post](/sdk-reference/interfaces/httpclient#post)
- [put](/sdk-reference/interfaces/httpclient#put)
- [patch](/sdk-reference/interfaces/httpclient#patch)
- [delete](/sdk-reference/interfaces/httpclient#delete)


## 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`>

#### Defined in

[core/abstractions/http-client.ts:7](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/core/abstractions/http-client.ts#L7)

### post

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

#### Type parameters

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


#### Parameters

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


#### Returns

`Promise`<`T`>

#### Defined in

[core/abstractions/http-client.ts:8](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/core/abstractions/http-client.ts#L8)

### put

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

#### Type parameters

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


#### Parameters

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


#### Returns

`Promise`<`T`>

#### Defined in

[core/abstractions/http-client.ts:9](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/core/abstractions/http-client.ts#L9)

### patch

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

#### Type parameters

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


#### Parameters

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


#### Returns

`Promise`<`T`>

#### Defined in

[core/abstractions/http-client.ts:10](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/core/abstractions/http-client.ts#L10)

### 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`>

#### Defined in

[core/abstractions/http-client.ts:11](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/core/abstractions/http-client.ts#L11)