---
title: "au-widget-ajax/au-widget-ajax | Customer's Canvas On-Premises"
canonical: "https://customerscanvas.com/docs/on-premises/ui-framework/widgets/reference/au-widget-ajax.au-widget-ajax/"
---

# au-widget-ajax/au-widget-ajax

> A non-visual widget that is used to send requests to the server and receive responses, which can be used in other widgets.

## Classes

### AuWidgetAjax

For details, see the [Ajax widget](https://customerscanvas.com/dev/ui-framework/widgets/ajax.html) topic.

The following example illustrates how you can populate a gallery with images obtained through an HTTP request.
```json
{
  "widgets": [
   {
     "name": "bg-request",
     "type": "ajax",
     "params": {
       "lock": "gallery",
       "url": "{{vars.apiUrl + '/api/images?subfolder=backgrounds'}}",
       "method": "GET",
       "responseType": "json"
     }
   },
   {
     "name": "gallery",
     "title": "Gallery",
     "type": "gallery",
     "params": {
       "prompt": "Set a background",
       "showTitle": false,
       "forceSelection": true,
       "items": "{{ $['bg-request'].response.items }}"
     }
   }
 ]
}
```

#### Implements

- [`IRestorableWidget`](https://customerscanvas.com/docs/on-premises/ui-framework/widgets/reference/widget.interface.IRestorableWidget.md#irestorablewidget)

#### Constructors

##### Constructor

```ts
new AuWidgetAjax(): AuWidgetAjax;
```

###### Returns

[`AuWidgetAjax`](#auwidgetajax)

###### Inherited from

```ts
AuBaseInvisibleWidget.constructor
```

#### Properties

##### enabled

```ts
enabled: boolean = true;
```

If `false`, the request will not be executed. The default value is `true`.

##### error

```ts
error: any = null;
```

##### headers

```ts
headers: any = {};
```

A dictionary of HTTP headers sent along with the request (an object with the keys used as a header name and a value used as a header value).

##### method

```ts
method: string = "POST";
```

An HTTP method like `POST`, `GET`, etc. The default value is `POST`.

##### params

```ts
params: IAuWidgetAjaxConfig;
```

Parameters of the `Ajax` widget.

###### Overrides

```ts
AuBaseInvisibleWidget.params
```

##### request

```ts
request: any;
```

A request body. Typically, you put a JSON here that consists of references to other widgets.

##### requestPromise

```ts
requestPromise: Promise<any>;
```

Promise, for awaiting in #function for getting response.
```
"{{ #function $['image-request'].compile() }}",
"{{ #asyncFunction await $['image-request'].requestPromise }}"
```

##### requests

```ts
requests: any[];
```

##### response

```ts
response: any;
```

A server response, interpreted based on the `responseType` param. If `autoCompile` is `true`, it is automatically updated every time the widget gets a server response.

##### responseHeaders

```ts
responseHeaders: Headers = null;
```

##### responses

```ts
responses: any = [];
```

##### responseType

```ts
responseType: ResponseType = "json";
```

Defines how to interpret the response received from the server.

##### statusCode

```ts
statusCode: number = null;
```

##### url

```ts
url: string;
```

A URL that is used to accept requests.

#### Accessors

##### template

###### Get Signature

```ts
get static template(): any;
```

###### Returns

`any`

###### Inherited from

```ts
AuBaseInvisibleWidget.template
```

#### Methods

##### checkInitDependenciesWidgets()

```ts
checkInitDependenciesWidgets(): string[];
```

Returns an array of widget names, due to which the current widget cannot receive parameters.

###### Returns

`string`[]

###### Inherited from

```ts
AuBaseInvisibleWidget.checkInitDependenciesWidgets
```

##### exportWidgetData()

```ts
exportWidgetData(force): Promise<AjaxWidgetData>;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `force` | `boolean` |

###### Returns

`Promise`\<`AjaxWidgetData`\>

###### Implementation of

[`IRestorableWidget`](https://customerscanvas.com/docs/on-premises/ui-framework/widgets/reference/widget.interface.IRestorableWidget.md#irestorablewidget).[`exportWidgetData`](https://customerscanvas.com/docs/on-premises/ui-framework/widgets/reference/widget.interface.IRestorableWidget.md#exportwidgetdata)

##### resetPreloaderState()

```ts
resetPreloaderState(): void;
```

###### Returns

`void`

###### Inherited from

```ts
AuBaseInvisibleWidget.resetPreloaderState
```

##### restoreWidgetFromData()

```ts
restoreWidgetFromData(widgetData, force): Promise<void>;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `widgetData` | `AjaxWidgetData` |
| `force` | `boolean` |

###### Returns

`Promise`\<`void`\>

###### Implementation of

[`IRestorableWidget`](https://customerscanvas.com/docs/on-premises/ui-framework/widgets/reference/widget.interface.IRestorableWidget.md#irestorablewidget).[`restoreWidgetFromData`](https://customerscanvas.com/docs/on-premises/ui-framework/widgets/reference/widget.interface.IRestorableWidget.md#restorewidgetfromdata)

##### showPreloader()

```ts
showPreloader(isShow): void;
```

Shows a preloader.

###### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `isShow` | `boolean` | If `true`, enables the preloader. |

###### Returns

`void`

###### Overrides

```ts
AuBaseInvisibleWidget.showPreloader
```

##### showToast()

```ts
showToast(data?, duration?): void;
```

Shows a toast.

```
return editor.loadUserInfo(data)
    .catch(err => {
        this.widget.showToast("Error: Invalid data");
        console.log(err);
    });
```

###### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `data?` | `string` | A string message to display in the toast. |
| `duration?` | `number` | Defines how long to show the toast for. |

###### Returns

`void`

###### Inherited from

```ts
AuBaseInvisibleWidget.showToast
```

## References

### widget

Renames and re-exports [AuWidgetAjax](#auwidgetajax)
