> For the complete documentation index, see [llms.txt](https://eventrix.gitbook.io/eventrix/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://eventrix.gitbook.io/eventrix/receivers/fetchstatereceiver.md).

# fetchStateReceiver

fetchStateReceiver was created to handle the data fetching process. Information about the data fetching process and fetch results are saved in the state selected by us.

{% hint style="info" %}
This helper method is integrated with **useFetchState** hook.
{% endhint %}

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

```javascript
import { fetchStateReceiver } from 'eventrix';
import axios from 'axios';

const fetchUsersListReceiver = fetchStateReceiver(
    'users',
    (fetchParams) => {
        return axios.get('http://domain.com/users', fetchParams)
                    .then(({data: usersList}) => {
                        return usersList;
                    });
    }
);

export default receiver;
```

{% endtab %}

{% tab title="Typescript" %}

```typescript
import { fetchStateReceiver } from 'eventrix';
import axios from 'axios';
import { User, UserFetchParams} from './interfaces';

const fetchUsersListReceiver = fetchStateReceiver<UserFetchParams, User[]>(
    'users',
    (fetchParams) => {
        return axios.get('http://domain.com/users', fetchParams)
                    .then(({data: usersList}) => {
                        return usersList;
                    });
    }
);

export default receiver;
```

{% endtab %}
{% endtabs %}
