# Dynamic data (rate, live price, submitting lead...)

{% hint style="danger" %}
DOCUMENTATION NOT FINISHED
{% endhint %}

Galaxy does **static websites**, the content is only updated **on publishing**. We serve pre-built HTML, CSS, JS, assets files; contrary to dynamic sites where the content of the page is rendered on the server for each request.

To have parts of the website dynamic, you need to get/send asynchronously some data, for example:

* send form (lead) data to the backoffice
* get the best lead rate for the next 90 days from iHotelier API

### Legacy solution

<details>

<summary>todo</summary>

* explain how we currently get data

- difference static data (only updated on publishing) / dynamic (for example rates for rooms, live price, etc.. coming from an external API)

</details>

### Proxy

* Remove the dependency to the Galaxy back office by providing a distinct platform
* Improve performance and resiliency by providing a world-wide architecture
* The proxy ensures that only allowed websites are making the API calls.

### Edit configuration in the BO

For the call using an API, most of the time you need to add a configuration, such as API credentials

Edit your domain and go to the tab "Proxy Settings" ([domain settings](https://galaxy-cms.gitbook.io/project/backoffice#domain-settings) - [proxy settings](https://galaxy-cms.gitbook.io/project/backoffice#proxy-settings))

### Caching

Each region (Europe, Asia, America) has its own caching for the responses.

Also, each call can have different rules for caching. For example, getting a "best lead rate" will be cached 24h in your region, but a "live price" will be cached for a shorted period of time.

### FAQ

#### Proxy is not working on my dev environment

On the local website, check the value for `window.galaxyInfo.proxy_url`

Knowing this value can be helpful in the case of debugging. In case there is no value, your dev environment is not configured properly, please ask xo7 for assistance.
