> Portal Navigation: > > - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version. > - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages). > - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`). > - Top-level index of all portals: https://dev.wix.com/docs/llms.txt > - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt # Method name: invalidateCache() # Method package: wixSiteBackend # Method menu location: wixSiteBackend --> invalidateCache # Method Link: https://dev.wix.com/docs/velo/apis/wix-site-backend/invalidate-cache.md # Method Description: Invalidates the cache for a site. Calling the `invalidateCache()` function submits a request to invalidate (clear) the site cache. The function returns a Promise that resolves when the invalidation request is accepted (or rejected). Note that the invalidation process normally takes a few seconds to propagate. Most Wix sites are cached by default to provide better performance. In cases where your site changes without publishing, caching may adversely affect your site. For example, if your site fetches and displays data from a 3rd-party service, you might experience the following issues on a cached site: + Updated data is not displayed. + Updated data is not exposed to bots, hurting SEO. You can prevent such issues by invalidating your site's cache following a data update. >**Note:** This function only invalidates the cache for your site. To invalidate web method and router caches, use the [`invalidateCache()`](https://dev.wix.com/docs/velo/api-reference/wix-cache-backend/cache/invalidate-cache.md) function in the `wix-cache-backend` module. # Method Code Examples: *** Note: do not assume any prop names or enum values other than the ones in the example. ## Invalidate a site's cache ```javascript import { Permissions, webMethod } from 'wix-web-module'; import wixSiteBackend from 'wix-site-backend'; export const invalidateCache = webMethod(Permissions.Anyone, () => { return wixSiteBackend.invalidateCache(); }); ``` ## Get data from a 3rd party service and invalidate the site's cache ```javascript /*************************************** * Backend code - myModule.web.js * ***************************************/ import { Permissions, webMethod } from 'wix-web-module'; import wixSiteBackend from 'wix-site-backend'; import { getJSON } from 'wix-fetch'; export const invalidateCache = webMethod(Permissions.Anyone, () => { return wixSiteBackend.invalidateCache(); }); export const fetchData = webMethod(Permissions.Anyone, () => { return getJSON("https://someapi.com/api/someendpoint"); }); let json = fetchData(); // This function is triggered by a 3rd-party service // when data changes (for example, via webhook) export const updateData = webMethod(Permissions.Anyone, () => { json = fetchData(); invalidateCache(); }); export const getData = webMethod(Permissions.Anyone, () => { return json; }); /******************** * Client-side code * ********************/ import { getData } from 'backend/myModule.web'; $w.onReady(function () { return getData() .then((json) => { $w('#myTextElement').text = json.someData[0].description; }) .catch((error) => { console.log(error); }); }); ``` ---