CINXE.COM
Recent changes to Shopify’s platform
<!DOCTYPE html><html lang="en" class="scroll-smooth motion-reduce:scroll-auto"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><title>Recent changes to Shopify’s platform</title><meta property="og:title" content="Recent changes to Shopify’s platform"/><meta property="twitter:title" content="Recent changes to Shopify’s platform"/><meta property="og:url" content="https://shopify.dev/changelog"/><meta name="description" content="Shopify’s developer changelog documents all changes to Shopify’s platform. Find the latest news and learn about new platform opportunities."/><meta property="og:description" content="Shopify’s developer changelog documents all changes to Shopify’s platform. Find the latest news and learn about new platform opportunities."/><meta property="twitter:description" content="Shopify’s developer changelog documents all changes to Shopify’s platform. Find the latest news and learn about new platform opportunities."/><meta property="og:type" content="website"/><meta property="og:site_name" content="Shopify"/><meta property="og:image" content="https://shopify.dev/assets/social-share-24de3afa0326f705b84a0a98714acc192611e5a21ade3b7c8f2bd12ba7d1457f.jpg"/><meta property="twitter:card" content="summary_large_image"/><meta property="twitter:site" content="@Shopify"/><meta property="twitter:account_id" content="17136315"/><meta property="twitter:image" content="https://shopify.dev/assets/social-share-24de3afa0326f705b84a0a98714acc192611e5a21ade3b7c8f2bd12ba7d1457f.jpg"/><link rel="icon" type="image/png" href="https://cdn.shopify.com/static/shopify-favicon.png"/><script> self.getThemeMode = () => { for (const cookie of document.cookie.split(';')) { const [key, value] = cookie .trim() .split('=') .map((value) => decodeURIComponent(value)); if (key === 'theme_mode') { if (value === 'ThemeMode-dark') return 'dark'; if (value === 'ThemeMode-default') return 'light'; } } if (matchMedia('(prefers-color-scheme: dark)').matches) return 'dark'; return 'light'; }; self.setThemeMode = (mode) => { const cookieValue = mode === 'dark' ? 'ThemeMode-dark' : 'ThemeMode-default'; document.cookie = `theme_mode=${cookieValue}; path=/`; }; try { document.documentElement.classList.add( getThemeMode() === 'dark' ? 'Mode-Dark' : 'Mode-Light', ); } catch (_) {} </script><link rel="stylesheet" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/root-Bs6V8FjF.css"/><link rel="stylesheet" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Error404-C3Fl2khE.css"/><link rel="stylesheet" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/PageLayout-BWQveOLj.css"/><link rel="stylesheet" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/MarkdownRenderer-K3wHo5x3.css"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600;800&family=JetBrains+Mono:wght@400;700;800&display=swap"/><link rel="stylesheet" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/global-wrapper-BlPecmOO.css"/><link rel="stylesheet" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/GqlChip-DtFD-BE0.css"/><link rel="stylesheet" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/_SubmissionMessage-DvClNAzB.css"/><link rel="stylesheet" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/_EditorComponent-BW33Qjb_.css"/><link rel="stylesheet" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/changelog-DuQMWVz-.css"/><link rel="stylesheet" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/_ChangelogEntry-BcuNl7l-.css"/><link rel="stylesheet" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Feedback-DOMdGcIi.css"/></head><body class="Theme-Docs"><a href="#main-content" class="skip-to-main-content">Skip to main content</a><div><svg xmlns="http://www.w3.org/2000/svg" width="0" height="0"><defs id="symbols"><symbol id="AppBridgeMedium" viewBox="0 0 20 20"><path d="M11.642 10.089 10 5.162 8.358 10.09A15.678 15.678 0 0 1 10 10c.55 0 1.1.031 1.642.089Zm2.235.38-2.454-7.362c-.456-1.368-2.39-1.368-2.846 0l-2.454 7.361a21.094 21.094 0 0 0-4.57 1.638 1 1 0 1 0 .894 1.788 18.879 18.879 0 0 1 2.919-1.154L4.05 16.684a1 1 0 1 0 1.898.632l1.704-5.114C8.425 12.074 9.214 12 10 12s1.575.074 2.347.202l1.704 5.114a1 1 0 1 0 1.898-.632l-1.315-3.944a18.88 18.88 0 0 1 2.919 1.154 1 1 0 1 0 .894-1.788 21.095 21.095 0 0 0-4.57-1.638Z"/></symbol><symbol id="AppBridgeSmall" viewBox="0 0 16 16"><path d="M9.466 8.313 8 3.55 6.534 8.313c.484-.04.974-.063 1.466-.063s.983.023 1.466.063Zm1.632.206L9.195 2.332c-.362-1.176-2.028-1.176-2.39 0L4.902 8.52c-1.196.2-2.284.485-3.14.77a.75.75 0 1 0 .475 1.422 19.08 19.08 0 0 1 2.167-.574l-1.12 3.642a.75.75 0 0 0 1.433.441l1.339-4.35c.635-.076 1.29-.12 1.944-.12.653 0 1.309.044 1.944.12l1.34 4.35a.75.75 0 0 0 1.433-.44l-1.12-3.643c.814.167 1.555.37 2.166.574a.75.75 0 0 0 .474-1.423 21.08 21.08 0 0 0-3.139-.769Z"/></symbol><symbol id="ArrowRightMedium" viewBox="0 0 20 20"><path d="M10.172 5.05a1 1 0 0 1 1.414 0l4.242 4.243a1 1 0 0 1 0 1.414l-4.242 4.243a1 1 0 0 1-1.414-1.414L12.707 11H4.88a1 1 0 1 1 0-2h7.828l-2.535-2.535a1 1 0 0 1 0-1.415Z"/></symbol><symbol id="ArrowRightSmall" viewBox="0 0 16 16"><path d="M8 3.757a1 1 0 0 1 1.414 0l3.536 3.536a1 1 0 0 1 0 1.414l-3.536 3.536A1 1 0 1 1 8 10.828L9.828 9h-6.07a1 1 0 1 1 0-2h6.07L8 5.172a1 1 0 0 1 0-1.415Z"/></symbol><symbol id="BetaMedium" viewBox="0 0 20 20"><path d="M8.5 3a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v1h-3V3ZM8 5a1 1 0 0 0 0 2h.275c.128 0 .225.115.225.243v.294c0 .932-.393 1.82-1.083 2.447l-3.51 3.19A2.773 2.773 0 0 0 5.774 18h8.454a2.773 2.773 0 0 0 1.865-4.825l-3.51-3.19A3.308 3.308 0 0 1 11.5 7.536v-.294c0-.128.097-.243.225-.243H12a1 1 0 1 0 0-2H8Zm1.3 6.4a1 1 0 0 1-.2 1.4l-.558.418a9.526 9.526 0 0 0-2.21 2.337 1 1 0 0 1-1.664-1.11 11.526 11.526 0 0 1 2.674-2.827L7.9 11.2a1 1 0 0 1 1.4.2Z"/></symbol><symbol id="BetaSmall" viewBox="0 0 16 16"><path d="M6.5 2a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v1h-3V2ZM6 4a1 1 0 1 0 0 2h.275c.128 0 .225.115.225.243v.288c0 .934-.4 1.824-1.098 2.445l-2.707 2.406A2.07 2.07 0 0 0 4.07 15h7.86a2.07 2.07 0 0 0 1.375-3.618l-2.707-2.406A3.272 3.272 0 0 1 9.5 6.531v-.288c0-.128.097-.243.225-.243H10a1 1 0 1 0 0-2H6Zm1.4 5.7a.5.5 0 0 1-.1.7l-.558.418a10.023 10.023 0 0 0-2.326 2.46.5.5 0 0 1-.832-.555 11.025 11.025 0 0 1 2.558-2.705L6.7 9.6a.5.5 0 0 1 .7.1Z"/></symbol><symbol id="BoxedMinusMedium" viewBox="0 0 20 20"><path d="M5 4h10a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1ZM2 5a3 3 0 0 1 3-3h10a3 3 0 0 1 3 3v10a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V5Zm3.5 4a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-9Z"/></symbol><symbol id="BoxedMinusSmall" viewBox="0 0 16 16"><path d="M12 2.5H4A1.5 1.5 0 0 0 2.5 4v8A1.5 1.5 0 0 0 4 13.5h8a1.5 1.5 0 0 0 1.5-1.5V4A1.5 1.5 0 0 0 12 2.5ZM4 1a3 3 0 0 0-3 3v8a3 3 0 0 0 3 3h8a3 3 0 0 0 3-3V4a3 3 0 0 0-3-3H4Zm8 6.75V7.5a.5.5 0 0 0-.5-.5h-7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5v-.75Z"/></symbol><symbol id="BoxedPlusMedium" viewBox="0 0 20 20"><path d="M5 4h10a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1ZM2 5a3 3 0 0 1 3-3h10a3 3 0 0 1 3 3v10a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V5Zm7.5 10a.5.5 0 0 1-.5-.5V11H5.5a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5H9V5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5V9h3.5a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H11v3.5a.5.5 0 0 1-.5.5h-1Z"/></symbol><symbol id="BoxedPlusSmall" viewBox="0 0 16 16"><path d="M12 2.5H4A1.5 1.5 0 0 0 2.5 4v8A1.5 1.5 0 0 0 4 13.5h8a1.5 1.5 0 0 0 1.5-1.5V4A1.5 1.5 0 0 0 12 2.5ZM4 1a3 3 0 0 0-3 3v8a3 3 0 0 0 3 3h8a3 3 0 0 0 3-3V4a3 3 0 0 0-3-3H4Zm0 6.75V7.5a.5.5 0 0 1 .5-.5H7V4.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5V7h2.5a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H9v2.5a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5V9H4.5a.5.5 0 0 1-.5-.5v-.75Z"/></symbol><symbol id="CaretDownMedium" viewBox="0 0 20 20"><path d="M13.586 8H6.414c-.89 0-1.337 1.077-.707 1.707l3.586 3.586a1 1 0 0 0 1.414 0l3.586-3.586c.63-.63.184-1.707-.707-1.707Z"/></symbol><symbol id="CaretDownSmall" viewBox="0 0 16 16"><path d="M11.586 6H4.414c-.89 0-1.337 1.077-.707 1.707l3.586 3.586a1 1 0 0 0 1.414 0l3.586-3.586c.63-.63.184-1.707-.707-1.707Z"/></symbol><symbol id="CaretLeftMedium" viewBox="0 0 20 20"><path d="M12 13.586V6.414c0-.89-1.077-1.337-1.707-.707L6.707 9.293a1 1 0 0 0 0 1.414l3.586 3.586c.63.63 1.707.184 1.707-.707Z"/></symbol><symbol id="CaretLeftSmall" viewBox="0 0 16 16"><path d="M10 11.586V4.414c0-.89-1.077-1.337-1.707-.707L4.707 7.293a1 1 0 0 0 0 1.414l3.586 3.586c.63.63 1.707.184 1.707-.707Z"/></symbol><symbol id="CaretRightMedium" viewBox="0 0 20 20"><path d="M8 6.414v7.172c0 .89 1.077 1.337 1.707.707l3.586-3.586a1 1 0 0 0 0-1.414L9.707 5.707C9.077 5.077 8 5.523 8 6.414Z"/></symbol><symbol id="CaretRightSmall" viewBox="0 0 16 16"><path d="M6 4.414v7.172c0 .89 1.077 1.337 1.707.707l3.586-3.586a1 1 0 0 0 0-1.414L7.707 3.707C7.077 3.077 6 3.523 6 4.414Z"/></symbol><symbol id="CaretUpMedium" viewBox="0 0 20 20"><path d="M13.586 12H6.414c-.89 0-1.337-1.077-.707-1.707l3.586-3.586a1 1 0 0 1 1.414 0l3.586 3.586c.63.63.184 1.707-.707 1.707Z"/></symbol><symbol id="CaretUpSmall" viewBox="0 0 16 16"><path d="M11.586 10H4.414c-.89 0-1.337-1.077-.707-1.707l3.586-3.586a1 1 0 0 1 1.414 0l3.586 3.586c.63.63.184 1.707-.707 1.707Z"/></symbol><symbol id="CheatsheetMedium" viewBox="0 0 20 20"><path d="M4 4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1h-1V4h-1v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2h11v-1h-1.5l1.5-3h-3l1.5 3H9l-1.5-3L6 15H4V4Zm3.5 0L6 7h3L7.5 4Zm0 4L9 11H6l1.5-3Zm4-1L13 4h-3l1.5 3ZM10 8l1.5 3L13 8h-3Z"/></symbol><symbol id="CheatsheetSmall" viewBox="0 0 16 16"><path d="M13 3v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2h11v-1H3V3a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v1h-1V3h-1ZM5.5 3 4 5h3L5.5 3Zm4 5L8 6h3L9.5 8ZM8 3l1.5 2L11 3H8ZM5.5 6 7 8H4l1.5-2ZM11 9l-1.5 2L8 9h3ZM5.5 9 7 11H4l1.5-2Z"/></symbol><symbol id="CheckMedium" viewBox="0 0 20 20"><path d="M7.95 12.071 4.768 8.89a.5.5 0 0 0-.707 0l-.707.707a.5.5 0 0 0 0 .707l4.242 4.243a.5.5 0 0 0 .707 0l.707-.707.003-.003 7.068-7.068a.5.5 0 0 0 0-.707l-.707-.707a.5.5 0 0 0-.707 0L7.95 12.07Z"/></symbol><symbol id="CheckSmall" viewBox="0 0 16 16"><path d="M6.243 9.867 3.768 7.392a.5.5 0 0 0-.707 0l-.708.707a.5.5 0 0 0 0 .707l2.824 2.824a.722.722 0 0 0 .005.005l.707.707a.5.5 0 0 0 .707 0l.707-.707 6.364-6.364a.5.5 0 0 0 0-.707l-.707-.708a.5.5 0 0 0-.707 0l-6.01 6.01Z"/></symbol><symbol id="ChevronDownLarge" viewBox="0 0 24 24"><path d="M5.354 10.575a.5.5 0 0 0 0 .707l5.657 5.657.707.707a.5.5 0 0 0 .707 0l6.364-6.363a.5.5 0 0 0 0-.707l-.707-.708a.5.5 0 0 0-.707 0l-5.304 5.304-5.303-5.304a.5.5 0 0 0-.707 0l-.707.707Z"/></symbol><symbol id="ChevronDownMedium" viewBox="0 0 20 20"><path d="M3.989 8.283a.5.5 0 0 0 0 .707l4.95 4.95.706.707a.5.5 0 0 0 .707 0l.708-.707 4.95-4.95a.5.5 0 0 0 0-.707l-.708-.707a.5.5 0 0 0-.707 0L10 12.172 5.403 7.576a.5.5 0 0 0-.707 0l-.707.707Z"/></symbol><symbol id="ChevronDownSmall" viewBox="0 0 16 16"><path d="M3.404 6.697a.5.5 0 0 0 0 .707l3.535 3.535.707.707a.5.5 0 0 0 .707 0l.707-.707 3.536-3.535a.5.5 0 0 0 0-.707l-.707-.707a.5.5 0 0 0-.707 0L8 9.172 4.818 5.99a.5.5 0 0 0-.707 0l-.707.707Z"/></symbol><symbol id="ChevronLeftLarge" viewBox="0 0 24 24"><path d="M13.425 5.354a.5.5 0 0 0-.707 0L7.06 11.01l-.707.707a.5.5 0 0 0 0 .707l6.363 6.364a.5.5 0 0 0 .707 0l.708-.707a.5.5 0 0 0 0-.707L8.828 12.07l5.304-5.303a.5.5 0 0 0 0-.707l-.707-.707Z"/></symbol><symbol id="ChevronLeftMedium" viewBox="0 0 20 20"><path d="M11.717 3.989a.5.5 0 0 0-.707 0l-4.95 4.95-.707.706a.5.5 0 0 0 0 .707l.707.708 4.95 4.95a.5.5 0 0 0 .707 0l.707-.708a.5.5 0 0 0 0-.707L7.828 10l4.596-4.596a.5.5 0 0 0 0-.707l-.707-.707Z"/></symbol><symbol id="ChevronLeftSmall" viewBox="0 0 16 16"><path d="M9.303 3.404a.5.5 0 0 0-.707 0L5.061 6.939l-.707.707a.5.5 0 0 0 0 .707l.707.707 3.535 3.536a.5.5 0 0 0 .707 0l.707-.707a.5.5 0 0 0 0-.707L6.828 8l3.182-3.182a.5.5 0 0 0 0-.707l-.707-.707Z"/></symbol><symbol id="ChevronRightLarge" viewBox="0 0 24 24"><path d="M10.577 5.284a.5.5 0 0 1 .707 0l5.657 5.657.707.707a.5.5 0 0 1 0 .707l-6.364 6.364a.5.5 0 0 1-.707 0l-.707-.707a.5.5 0 0 1 0-.707l5.303-5.303L9.87 6.698a.5.5 0 0 1 0-.707l.707-.707Z"/></symbol><symbol id="ChevronRightMedium" viewBox="0 0 20 20"><path d="M8.286 3.988a.5.5 0 0 1 .708 0l4.95 4.95.706.707a.5.5 0 0 1 0 .707l-.707.707-4.95 4.95a.5.5 0 0 1-.707 0l-.707-.707a.5.5 0 0 1 0-.707l4.596-4.596L7.58 5.403a.5.5 0 0 1 0-.708l.707-.707Z"/></symbol><symbol id="ChevronRightSmall" viewBox="0 0 16 16"><path d="M6.696 3.354a.5.5 0 0 1 .708 0l3.535 3.535.707.707a.5.5 0 0 1 0 .707l-.707.707-3.535 3.536a.5.5 0 0 1-.708 0l-.707-.707a.5.5 0 0 1 0-.707L9.171 7.95 5.99 4.768a.5.5 0 0 1 0-.707l.707-.707Z"/></symbol><symbol id="ChevronUpLarge" viewBox="0 0 24 24"><path d="M5.284 13.423a.5.5 0 0 1 0-.707L10.94 7.06l.707-.707a.5.5 0 0 1 .707 0l6.364 6.364a.5.5 0 0 1 0 .707l-.707.707a.5.5 0 0 1-.707 0l-5.303-5.303-5.304 5.303a.5.5 0 0 1-.707 0l-.707-.707Z"/></symbol><symbol id="ChevronUpMedium" viewBox="0 0 20 20"><path d="M3.988 11.713a.5.5 0 0 1 0-.707l4.95-4.95.707-.706a.5.5 0 0 1 .707 0l.707.707 4.95 4.95a.5.5 0 0 1 0 .707l-.707.707a.5.5 0 0 1-.707 0L9.999 7.824l-4.596 4.597a.5.5 0 0 1-.708 0l-.707-.707Z"/></symbol><symbol id="ChevronUpSmall" viewBox="0 0 16 16"><path d="M3.354 9.303a.5.5 0 0 1 0-.707l3.535-3.535.707-.707a.5.5 0 0 1 .707 0l.707.707 3.536 3.535a.5.5 0 0 1 0 .707l-.707.708a.5.5 0 0 1-.707 0L7.95 6.829 4.768 10.01a.5.5 0 0 1-.707 0l-.707-.707Z"/></symbol><symbol id="ClipboardMedium" viewBox="0 0 20 20"><path d="M9 2a1 1 0 0 0 0 2h2a1 1 0 1 0 0-2H9ZM5.75 3a1 1 0 0 1 1 1 1 1 0 0 0 1 1h4.5a1 1 0 0 0 1-1 1 1 0 0 1 1-1h.375C15.385 3 16 3.616 16 4.375V16a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4.375C4 3.615 4.616 3 5.375 3h.375Z"/></symbol><symbol id="ClipboardSmall" viewBox="0 0 16 16"><path d="M7 1a1 1 0 0 0 0 2h2a1 1 0 0 0 0-2H7ZM4 2a1 1 0 0 1 1 1 1 1 0 0 0 1 1h4a1 1 0 0 0 1-1 1 1 0 1 1 2 0v10a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3a1 1 0 0 1 1-1Z"/></symbol><symbol id="CloseLarge" viewBox="0 0 24 24"><path d="M15.89 17.303a.5.5 0 0 0 .706 0l.707-.707a.5.5 0 0 0 0-.707L13.414 12l3.89-3.89a.5.5 0 0 0 0-.706l-.708-.707a.5.5 0 0 0-.707 0L12 10.586l-3.89-3.89a.5.5 0 0 0-.706 0l-.707.708a.5.5 0 0 0 0 .707L10.586 12l-3.89 3.89a.5.5 0 0 0 0 .706l.708.707a.5.5 0 0 0 .707 0L12 13.414l3.89 3.89Z"/></symbol><symbol id="CloseMedium" viewBox="0 0 20 20"><path d="M13.182 14.596a.5.5 0 0 0 .707 0l.707-.707a.5.5 0 0 0 0-.707L11.414 10l3.182-3.182a.5.5 0 0 0 0-.707l-.707-.707a.5.5 0 0 0-.707 0L10 8.586 6.818 5.404a.5.5 0 0 0-.707 0l-.707.707a.5.5 0 0 0 0 .707L8.586 10l-3.182 3.182a.5.5 0 0 0 0 .707l.707.707a.5.5 0 0 0 .707 0L10 11.414l3.182 3.182Z"/></symbol><symbol id="CloseSmall" viewBox="0 0 16 16"><path d="M10.475 11.89a.5.5 0 0 0 .707 0l.707-.708a.5.5 0 0 0 0-.707L9.414 8l2.475-2.475a.5.5 0 0 0 0-.707l-.707-.707a.5.5 0 0 0-.707 0L8 6.586 5.525 4.11a.5.5 0 0 0-.707 0l-.707.707a.5.5 0 0 0 0 .707L6.586 8 4.11 10.475a.5.5 0 0 0 0 .707l.707.707a.5.5 0 0 0 .707 0L8 9.414l2.475 2.475Z"/></symbol><symbol id="CloudSmall" viewBox="0 0 16 16"><path d="M12 7.5c0 .17-.012.337-.035.5h.535a2.5 2.5 0 0 1 0 5h-8c-.08 0-.16-.004-.239-.011A3 3 0 1 1 7 10a.5.5 0 1 0 1 0 4 4 0 0 0-2.75-3.8A3.501 3.501 0 0 1 12 7.5Z"/></symbol><symbol id="CodeMedium" viewBox="0 0 20 20"><path d="M10.897 2.035a.5.5 0 0 0-.58.405L7.714 17.212a.5.5 0 0 0 .405.58l.985.173a.5.5 0 0 0 .58-.405l2.604-14.773a.5.5 0 0 0-.405-.579l-.985-.173Zm2.7 12.51a.5.5 0 0 0 .706 0l3.536-3.535.707-.707a.5.5 0 0 0 0-.707l-.707-.707-3.536-3.536a.5.5 0 0 0-.707 0l-.707.708a.5.5 0 0 0 0 .707l3.182 3.182-3.182 3.182a.5.5 0 0 0 0 .707l.707.707ZM6.302 5.355a.5.5 0 0 0-.707 0L2.061 8.889l-.707.707a.5.5 0 0 0 0 .707l.707.707 3.535 3.536a.5.5 0 0 0 .707 0l.707-.707a.5.5 0 0 0 0-.707L3.828 9.95 7.01 6.768a.5.5 0 0 0 0-.707l-.707-.707Z"/></symbol><symbol id="CodeSmall" viewBox="0 0 16 16"><path d="M7.913 2.974a.5.5 0 0 1 .58-.406l.984.174a.5.5 0 0 1 .406.579l-1.737 9.848a.5.5 0 0 1-.579.406l-.985-.174a.5.5 0 0 1-.405-.58l1.736-9.847Zm-6.56 4.672a.5.5 0 0 0 0 .708l1.061 1.06 1.74 1.74c.21.21.552.21.763 0l.68-.68a.5.5 0 0 0 0-.706L3.827 8l1.768-1.768a.5.5 0 0 0 0-.707l-.707-.707a.5.5 0 0 0-.707 0L1.354 7.646Zm12.304-1.06 1.06 1.06a.5.5 0 0 1 0 .708l-2.828 2.828a.5.5 0 0 1-.707 0l-.707-.707a.5.5 0 0 1 0-.707L12.243 8l-1.768-1.768a.5.5 0 0 1 0-.707l.679-.679a.54.54 0 0 1 .763 0l1.74 1.74Z"/></symbol><symbol id="CollapseMedium" viewBox="0 0 20 20"><path d="M6.268 12.32H3.682a1 1 0 1 1 0-2h5a1 1 0 0 1 1 1v5a1 1 0 1 1-2 0v-2.586L3.707 17.71a1 1 0 0 1-1.414-1.414l3.975-3.975ZM13.732 7.682h2.586a1 1 0 0 1 0 2H11.32a1 1 0 0 1-1-1v-5a1 1 0 1 1 2 0v2.586l3.974-3.975a1 1 0 1 1 1.414 1.414l-3.975 3.975Z"/></symbol><symbol id="CollapseSmall" viewBox="0 0 16 16"><path d="M8 3v4a1 1 0 0 0 1 1h4a1 1 0 1 0 0-2h-1.586l2.207-2.207a1 1 0 0 0-1.414-1.414L10 4.586V3a1 1 0 1 0-2 0ZM8 12.998v-4a1 1 0 0 0-1-1H3a1 1 0 1 0 0 2h1.586l-2.207 2.207a1 1 0 1 0 1.414 1.414L6 11.412v1.586a1 1 0 0 0 2 0Z"/></symbol><symbol id="CompatibilityMedium" viewBox="0 0 20 20"><path d="M8 17.261a.793.793 0 0 0-.521-.729 7.001 7.001 0 0 1-.315-.13.793.793 0 0 0-.884.146.739.739 0 0 1-1.045 0L3.45 14.766a.74.74 0 0 1 0-1.045.793.793 0 0 0 .147-.885 6.927 6.927 0 0 1-.13-.314.794.794 0 0 0-.73-.521.739.739 0 0 1-.738-.739V8.74C2 8.33 2.33 8 2.739 8a.793.793 0 0 0 .729-.521c.04-.106.084-.211.13-.315a.793.793 0 0 0-.146-.884.739.739 0 0 1 0-1.045L5.235 3.45a.739.739 0 0 1 1.045 0c.231.232.585.28.884.147.104-.046.209-.09.315-.13A.793.793 0 0 0 8 2.738C8 2.332 8.33 2 8.739 2h2.522c.408 0 .739.33.739.739 0 .327.216.611.521.729.106.04.211.084.314.13a.794.794 0 0 0 .885-.147.739.739 0 0 1 1.045 0l1.784 1.784a.74.74 0 0 1 0 1.045.793.793 0 0 0-.147.884c.046.104.09.209.13.315a.793.793 0 0 0 .73.521c.407 0 .738.33.738.739v2.522c0 .408-.33.739-.739.739a.793.793 0 0 0-.729.521c-.04.106-.084.211-.13.314a.794.794 0 0 0 .146.885.739.739 0 0 1 0 1.045l-1.783 1.784a.739.739 0 0 1-1.045 0 .793.793 0 0 0-.884-.147c-.104.046-.209.09-.315.13a.793.793 0 0 0-.521.73c0 .407-.33.738-.739.738H8.74A.739.739 0 0 1 8 17.261Zm5.375-10.58a.5.5 0 0 1 .707 0l.707.708a.5.5 0 0 1 0 .707l-5.66 5.66a.5.5 0 0 1-.706 0l-1.06-1.061-2.126-2.125a.5.5 0 0 1 0-.707l.707-.707a.5.5 0 0 1 .707 0l2.125 2.125 4.6-4.6Z"/></symbol><symbol id="CompatibilitySmall" viewBox="0 0 16 16"><path d="M6.786 1A.786.786 0 0 0 6 1.786v.238c0 .19-.121.359-.297.431a.47.47 0 0 1-.515-.095l-.168-.168a.786.786 0 0 0-1.111 0L2.192 3.909a.786.786 0 0 0 0 1.11l.168.17a.47.47 0 0 1 .096.514.473.473 0 0 1-.432.297h-.238A.786.786 0 0 0 1 6.786v2.428c0 .434.352.786.786.786h.238c.19 0 .359.121.432.297a.47.47 0 0 1-.096.515l-.168.168a.786.786 0 0 0 0 1.111l1.717 1.718a.786.786 0 0 0 1.111 0l.168-.169a.47.47 0 0 1 .515-.096.473.473 0 0 1 .297.432v.238c0 .434.352.786.786.786h2.428a.786.786 0 0 0 .786-.786v-.238c0-.19.121-.359.297-.432a.47.47 0 0 1 .515.096l.168.168a.786.786 0 0 0 1.111 0l1.717-1.717a.786.786 0 0 0 0-1.111l-.168-.168a.47.47 0 0 1-.096-.515.473.473 0 0 1 .432-.297h.238A.786.786 0 0 0 15 9.214V6.786A.786.786 0 0 0 14.214 6h-.238a.473.473 0 0 1-.432-.297.47.47 0 0 1 .096-.515l.168-.168a.786.786 0 0 0 0-1.111l-1.717-1.717a.786.786 0 0 0-1.111 0l-.168.168a.47.47 0 0 1-.515.096.473.473 0 0 1-.297-.432v-.238A.786.786 0 0 0 9.214 1H6.786Zm3.982 3.975a.5.5 0 0 1 .707 0l.707.707a.5.5 0 0 1 0 .707l-3.89 3.89-1.06 1.06a.5.5 0 0 1-.707 0L3.697 8.51a.5.5 0 0 1 0-.707l.707-.707a.5.5 0 0 1 .707 0l1.768 1.768 3.889-3.89Z"/></symbol><symbol id="ConnectionSmall" viewBox="0 0 16 16"><path d="M4 3.25a.75.75 0 1 1 0 1.5.75.75 0 0 1 0-1.5Zm2.126 1.5h-.004a2.25 2.25 0 1 1 0-1.5H9a2.75 2.75 0 1 1 0 5.5H7a1.25 1.25 0 1 0 0 2.5H9.878a2.25 2.25 0 1 1 0 1.5H7a2.75 2.75 0 1 1 0-5.5H9a1.25 1.25 0 1 0 0-2.5H6.126ZM12.75 12a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0Z"/></symbol><symbol id="CopyMedium" viewBox="0 0 20 20"><path d="M14 4h-4a1 1 0 0 0-1 1H7a3 3 0 0 1 3-3h4a3 3 0 0 1 3 3v6a3 3 0 0 1-3 3v-2a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1ZM6 8h4a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1ZM3 9a3 3 0 0 1 3-3h4a3 3 0 0 1 3 3v6a3 3 0 0 1-3 3H6a3 3 0 0 1-3-3V9Z"/></symbol><symbol id="CopySmall" viewBox="0 0 16 16"><path d="M12 3H8a1 1 0 0 0-1 1H5a3 3 0 0 1 3-3h4a3 3 0 0 1 3 3v4a3 3 0 0 1-3 3V9a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1ZM4 7h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V8a1 1 0 0 1 1-1ZM1 8a3 3 0 0 1 3-3h4a3 3 0 0 1 3 3v4a3 3 0 0 1-3 3H4a3 3 0 0 1-3-3V8Z"/></symbol><symbol id="CriticalMedium" viewBox="0 0 20 20"><path d="m13.293 3.293 3.414 3.414a1 1 0 0 1 .293.707v5.172a1 1 0 0 1-.293.707l-3.414 3.414a1 1 0 0 1-.707.293H7.414a1 1 0 0 1-.707-.293l-3.414-3.414A1 1 0 0 1 3 12.586V7.414a1 1 0 0 1 .293-.707l3.414-3.414A1 1 0 0 1 7.414 3h5.172a1 1 0 0 1 .707.293ZM9 7a1 1 0 0 1 2 0v3a1 1 0 1 1-2 0V7Zm0 6a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z"/></symbol><symbol id="CriticalSmall" viewBox="0 0 16 16"><path d="m2.293 5.707 3.414-3.414A1 1 0 0 1 6.414 2h3.172a1 1 0 0 1 .707.293l3.414 3.414a1 1 0 0 1 .293.707v3.172a1 1 0 0 1-.293.707l-3.414 3.414a1 1 0 0 1-.707.293H6.414a1 1 0 0 1-.707-.293l-3.414-3.414A1 1 0 0 1 2 9.586V6.414a1 1 0 0 1 .293-.707ZM7 5a1 1 0 0 1 2 0v3a1 1 0 1 1-2 0V5Zm0 6a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z"/></symbol><symbol id="DarkModeMedium" viewBox="0 0 20 20"><path d="M4.378 15.002a8.137 8.137 0 0 1-1.796-2.656A8.36 8.36 0 0 1 2 9.286a8.218 8.218 0 0 1 .632-3.036 8.155 8.155 0 0 1 1.822-2.707c.247-.247.499-.474.755-.68.38-.307.871.133.744.604a7.911 7.911 0 0 0-.26 1.72 9.27 9.27 0 0 0 .531 3.39c.388 1.096.97 2.032 1.746 2.808a7.474 7.474 0 0 0 2.833 1.77 9.19 9.19 0 0 0 3.364.532 8 8 0 0 0 1.763-.27c.469-.128.904.36.6.739-.21.262-.441.518-.693.77a8.157 8.157 0 0 1-2.707 1.822 7.867 7.867 0 0 1-3.035.607 8 8 0 0 1-3.061-.557 8.137 8.137 0 0 1-2.656-1.796Z"/></symbol><symbol id="DarkModeSmall" viewBox="0 0 16 16"><path d="M3.068 12.308a7.076 7.076 0 0 1-1.562-2.31A7.27 7.27 0 0 1 1 7.336c.015-.91.198-1.79.55-2.64.352-.865.88-1.65 1.584-2.354.164-.164.33-.317.498-.46.372-.317.868.118.756.593a6.965 6.965 0 0 0-.176 1.297 8.063 8.063 0 0 0 .462 2.948 6.436 6.436 0 0 0 1.518 2.442 6.5 6.5 0 0 0 2.464 1.54 7.996 7.996 0 0 0 2.926.462c.462-.02.907-.082 1.336-.184.473-.114.903.377.59.749a8.4 8.4 0 0 1-.474.513 7.093 7.093 0 0 1-2.354 1.584c-.85.352-1.73.528-2.64.528a6.956 6.956 0 0 1-2.662-.484 7.077 7.077 0 0 1-2.31-1.562Z"/></symbol><symbol id="DashboardSmall" viewBox="0 0 16 16"><path d="m10.193 2.707.237-.074a.497.497 0 0 1 .103-.017V15L2 13.523S3.029 5.56 3.067 5.28c.051-.371.064-.383.457-.507l.687-.213.648-.2c.083-.597.377-1.367.762-1.98.548-.87 1.223-1.36 1.901-1.38a1.1 1.1 0 0 1 .921.408h.012c.032-.004.065-.006.097-.006h.002c.525 0 .96.3 1.257.867.092.176.156.35.2.493l.182-.056ZM7.02 3.69l1.44-.446c.004-.375-.037-.93-.224-1.322-.2.083-.369.227-.489.356-.324.348-.588.88-.727 1.412Zm.923-2.13a.691.691 0 0 0-.408-.108c-1.046.03-1.96 1.667-2.193 2.758L6.021 4l.503-.156c.132-.693.462-1.411.893-1.874.166-.178.343-.315.526-.41ZM6.917 8.39c-.374-.24-.683-.438-.701-.725-.009-.133 0-.665.842-.718a2.462 2.462 0 0 1 1.058.184l.434-1.624s-.375-.187-1.106-.141c-1.897.12-2.757 1.448-2.675 2.759.056.875.57 1.24 1.022 1.561.352.25.666.473.692.888a.539.539 0 0 1-.526.578c-.609.039-1.37-.536-1.37-.536l-.29 1.24s.755.81 2.128.724c1.144-.073 1.938-.989 1.854-2.328-.065-1.03-.79-1.494-1.362-1.862ZM8.705 1.87c.16.414.2.892.205 1.236l.67-.208c-.108-.347-.36-.93-.875-1.028Zm5.65 12.217-3.54.88V2.751l.836.814s.997.016 1.048.02a.136.136 0 0 1 .122.114l1.534 10.387Z"/></symbol><symbol id="DesktopSmall" viewBox="0 0 16 16"><path d="M13 2H3a1 1 0 0 0-1 1v7h12V3a1 1 0 0 0-1-1ZM3 1a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.999c-.002.255-.007.459-.018.625a1.79 1.79 0 0 1-.048.36A3.253 3.253 0 0 1 5.5 14a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1c-.24 0-.359-.002-.433-.014a1.79 1.79 0 0 1-.049-.361c-.01-.166-.015-.37-.017-.625H13a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H3Zm6.001 12H7c-.002.268-.007.497-.02.688-.006.105-.015.21-.03.312H9.05a3.873 3.873 0 0 1-.03-.312c-.013-.191-.018-.42-.02-.688Z"/></symbol><symbol id="DimModeMedium" viewBox="0 0 20 20"><path d="M10 4a1 1 0 0 0-1 1v1a1 1 0 1 0 2 0V5a1 1 0 0 0-1-1Zm3.874 9a4 4 0 1 0-7.748 0h7.748ZM16 13h1a1 1 0 1 0 0-2h-1a1 1 0 1 0 0 2ZM3 13a1 1 0 1 1 0-2h1a1 1 0 1 1 0 2H3Zm2-5a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm11-1a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM4 14.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5ZM6.5 16a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7Z"/></symbol><symbol id="DimModeSmall" viewBox="0 0 16 16"><path d="M8 2a1 1 0 0 0-1 1v1a1 1 0 0 0 2 0V3a1 1 0 0 0-1-1Zm2.83 8a3 3 0 1 0-5.659 0h5.658ZM13 10h1a1 1 0 1 0 0-2h-1a1 1 0 1 0 0 2ZM2 10a1 1 0 1 1 0-2h1a1 1 0 0 1 0 2H2Zm2-6a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm7 1a1 1 0 1 1 2 0 1 1 0 0 1-2 0Zm-8 6.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5ZM5.5 13a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5Z"/></symbol><symbol id="DownloadMedium" viewBox="0 0 20 20"><path d="M13.707 9.293a1 1 0 0 1 0 1.414l-3 3a1 1 0 0 1-1.414 0l-3-3a1 1 0 0 1 1.414-1.414L9 10.586V3a1 1 0 0 1 2 0v7.586l1.293-1.293a1 1 0 0 1 1.414 0Z"/><path d="M3.553 14.105a1 1 0 0 1 1.341.448l.448.894a1 1 0 0 0 .894.553h7.528a1 1 0 0 0 .894-.553l.447-.894a1 1 0 0 1 1.79.894l-.448.895A3 3 0 0 1 13.764 18H6.236a3 3 0 0 1-2.683-1.658l-.447-.895a1 1 0 0 1 .447-1.341Z"/></symbol><symbol id="DownloadSmall" viewBox="0 0 16 16"><path d="M11.518 6.482a1 1 0 0 1 0 1.414l-2.81 2.811a1 1 0 0 1-1.415 0l-2.81-2.81a1 1 0 0 1 1.413-1.415L7 7.586V3a1 1 0 1 1 2 0v4.586l1.104-1.104a1 1 0 0 1 1.414 0Z"/><path d="M2.553 10.105a1 1 0 0 1 1.341.448l.448.894a1 1 0 0 0 .894.553h5.528a1 1 0 0 0 .894-.553l.447-.894a1 1 0 0 1 1.79.894l-.448.895A3 3 0 0 1 10.764 14H5.236a3 3 0 0 1-2.683-1.658l-.447-.895a1 1 0 0 1 .447-1.341Z"/></symbol><symbol id="EnterMedium" viewBox="0 0 20 20"><path d="M15 2a1 1 0 0 0-1 1v10H6.826l1.124-1.124a1 1 0 1 0-1.414-1.414l-2.829 2.829a1 1 0 0 0 0 1.414l2.829 2.828A1 1 0 0 0 7.95 16.12L6.83 15H15a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1Z"/></symbol><symbol id="EnterSmall" viewBox="0 0 16 16"><path d="M13 2a1 1 0 0 0-1 1v6H5.826L6.95 7.876a1 1 0 0 0-1.414-1.414L2.707 9.291a1 1 0 0 0 0 1.414l2.829 2.828A1 1 0 0 0 6.95 12.12L5.83 11H13a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1Z"/></symbol><symbol id="ExpandMedium" viewBox="0 0 20 20"><path d="M5.414 16.002H8a1 1 0 1 1 0 2H3a1 1 0 0 1-1-1v-5a1 1 0 1 1 2 0v2.586l3.975-3.975a1 1 0 0 1 1.414 1.414l-3.975 3.975ZM14.586 4H12a1 1 0 1 1 0-2h5a1 1 0 0 1 1 1v5a1 1 0 1 1-2 0V5.414L12.025 9.39a1 1 0 1 1-1.414-1.414L14.586 4Z"/></symbol><symbol id="ExpandSmall" viewBox="0 0 16 16"><path d="M14 7V3a1 1 0 0 0-1-1H9a1 1 0 1 0 0 2h1.586L8.379 6.207A1 1 0 1 0 9.793 7.62L12 5.414V7a1 1 0 1 0 2 0ZM2 8.998v4a1 1 0 0 0 1 1h4a1 1 0 1 0 0-2H5.414L7.621 9.79a1 1 0 1 0-1.414-1.415L4 10.584V8.998a1 1 0 0 0-2 0Z"/></symbol><symbol id="ExternalMedium" viewBox="0 0 20 20"><path d="M5 4h10a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1ZM2 5a3 3 0 0 1 3-3h10a3 3 0 0 1 3 3v10a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V5Zm5 2a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v5a1 1 0 1 1-2 0V9.414l-4.293 4.293a1 1 0 0 1-1.414-1.414L10.586 8H8a1 1 0 0 1-1-1Z"/></symbol><symbol id="ExternalNavMedium" viewBox="0 0 20 20"><path d="M7.354 6a1 1 0 0 1 1-1h5.596a1 1 0 0 1 1 1v5.975a1 1 0 0 1-2 0v-3.56l-6.243 6.242a1 1 0 0 1-1.414-1.414L11.536 7H8.354a1 1 0 0 1-1-1Z"/></symbol><symbol id="ExternalNavSmall" viewBox="0 0 16 16"><path d="M5 5a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v5a1 1 0 1 1-2 0V7.414l-4.293 4.293a1 1 0 0 1-1.414-1.414L8.586 6H6a1 1 0 0 1-1-1Z"/></symbol><symbol id="ExternalSmall" viewBox="0 0 16 16"><path d="M4 2.5h8A1.5 1.5 0 0 1 13.5 4v8a1.5 1.5 0 0 1-1.5 1.5H4A1.5 1.5 0 0 1 2.5 12V4A1.5 1.5 0 0 1 4 2.5ZM1 4a3 3 0 0 1 3-3h8a3 3 0 0 1 3 3v8a3 3 0 0 1-3 3H4a3 3 0 0 1-3-3V4Zm4 1a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v5a1 1 0 1 1-2 0V7.414l-4.293 4.293a1 1 0 0 1-1.414-1.414L8.586 6H6a1 1 0 0 1-1-1Z"/></symbol><symbol id="FileMedium" viewBox="0 0 20 20"><path d="M6 14a1 1 0 0 0 1 1h6a1 1 0 1 0 0-2H7a1 1 0 0 0-1 1Zm0-4a1 1 0 0 0 1 1h6a1 1 0 1 0 0-2H7a1 1 0 0 0-1 1Zm0-4a1 1 0 0 0 1 1h2a1 1 0 0 0 0-2H7a1 1 0 0 0-1 1Zm9.707-.707-3-3A.996.996 0 0 0 12 2H5a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V6a.997.997 0 0 0-.293-.707Z"/></symbol><symbol id="FileSmall" viewBox="0 0 16 16"><path d="M4 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V5.414a1 1 0 0 0-.293-.707L11 3 9.293 1.293A1 1 0 0 0 8.586 1H4Zm2 4a1 1 0 0 0 0 2h2a1 1 0 0 0 0-2H6ZM5 9a1 1 0 0 1 1-1h4a1 1 0 1 1 0 2H6a1 1 0 0 1-1-1Zm1 2a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2H6Z"/></symbol><symbol id="FilterLarge" viewBox="0 0 24 24"><path d="M2 7a1 1 0 0 1 1-1h18a1 1 0 1 1 0 2H3a1 1 0 0 1-1-1Zm3 5a1 1 0 0 1 1-1h12a1 1 0 1 1 0 2H6a1 1 0 0 1-1-1Zm4 4a1 1 0 1 0 0 2h6a1 1 0 1 0 0-2H9Z"/></symbol><symbol id="FilterMedium" viewBox="0 0 20 20"><path d="M2 6a1 1 0 0 1 1-1h14a1 1 0 1 1 0 2H3a1 1 0 0 1-1-1Zm3 4a1 1 0 0 1 1-1h8a1 1 0 1 1 0 2H6a1 1 0 0 1-1-1Zm4 3a1 1 0 1 0 0 2h2a1 1 0 1 0 0-2H9Z"/></symbol><symbol id="FilterSmall" viewBox="0 0 16 16"><path d="M2 5a1 1 0 0 1 1-1h10a1 1 0 1 1 0 2H3a1 1 0 0 1-1-1Zm2 3a1 1 0 0 1 1-1h6a1 1 0 1 1 0 2H5a1 1 0 0 1-1-1Zm3 2a1 1 0 1 0 0 2h2a1 1 0 1 0 0-2H7Z"/></symbol><symbol id="GitHubLarge" viewBox="0 0 24 24"><path d="M12 3c-4.973 0-9 4.13-9 9.228 0 4.083 2.576 7.532 6.154 8.754.45.081.619-.196.619-.438 0-.22-.012-.946-.012-1.719-2.261.427-2.846-.565-3.026-1.084-.101-.265-.54-1.084-.923-1.303-.315-.173-.764-.6-.01-.612.708-.011 1.214.67 1.383.946.81 1.396 2.104 1.004 2.621.762.079-.6.315-1.004.574-1.235-2.003-.23-4.095-1.026-4.095-4.556 0-1.003.349-1.834.922-2.48-.09-.23-.404-1.176.09-2.445 0 0 .754-.242 2.476.946a8.158 8.158 0 0 1 2.25-.312c.764 0 1.53.104 2.25.312 1.72-1.2 2.474-.946 2.474-.946.495 1.269.18 2.215.09 2.445.574.646.923 1.465.923 2.48 0 3.541-2.104 4.326-4.106 4.556.326.289.607.842.607 1.707 0 1.235-.011 2.227-.011 2.538 0 .242.169.53.619.438a9.036 9.036 0 0 0 4.439-3.366A9.402 9.402 0 0 0 21 12.228C21 7.129 16.973 3 12 3Z"/></symbol><symbol id="GitHubMedium" viewBox="0 0 20 20"><path d="M9.997 2C5.58 2 2 5.67 2 10.202c0 3.63 2.29 6.696 5.468 7.782.4.072.55-.174.55-.39 0-.194-.01-.84-.01-1.527-2.01.38-2.53-.502-2.69-.964-.09-.236-.479-.963-.819-1.158-.28-.154-.68-.534-.01-.544.63-.01 1.08.595 1.23.841.72 1.24 1.87.892 2.329.677.07-.534.28-.892.51-1.097-1.78-.205-3.639-.913-3.639-4.05 0-.892.31-1.63.82-2.205-.08-.205-.36-1.045.08-2.173 0 0 .67-.216 2.199.84a7.247 7.247 0 0 1 2-.276c.68 0 1.359.092 1.999.276 1.53-1.066 2.199-.84 2.199-.84.44 1.128.16 1.968.08 2.173.51.575.82 1.302.82 2.205 0 3.147-1.87 3.845-3.65 4.05.29.256.54.748.54 1.517 0 1.097-.01 1.979-.01 2.256 0 .215.15.471.55.39a8.028 8.028 0 0 0 3.945-2.993 8.359 8.359 0 0 0 1.504-4.79C17.995 5.671 14.415 2 9.997 2Z"/></symbol><symbol id="GitHubSmall" viewBox="0 0 16 16"><path d="M8 1C4.133 1 1 4.213 1 8.18c0 3.176 2.004 5.86 4.786 6.811.35.063.482-.153.482-.341 0-.17-.01-.736-.01-1.337-1.758.332-2.213-.44-2.353-.844-.079-.206-.42-.843-.717-1.014-.246-.135-.596-.467-.01-.476.552-.008.946.521 1.077.736.63 1.086 1.636.781 2.039.593.061-.467.245-.781.446-.96-1.558-.18-3.185-.8-3.185-3.545 0-.781.271-1.427.717-1.93-.07-.18-.315-.915.07-1.902 0 0 .587-.189 1.926.735a6.343 6.343 0 0 1 1.75-.242c.595 0 1.19.08 1.75.242 1.338-.933 1.925-.735 1.925-.735.385.987.14 1.723.07 1.902.446.503.717 1.14.717 1.93 0 2.755-1.636 3.365-3.194 3.544.254.225.473.656.473 1.329 0 .96-.009 1.732-.009 1.974 0 .188.131.413.481.341a7.027 7.027 0 0 0 3.453-2.619A7.318 7.318 0 0 0 15 8.179C15 4.213 11.867 1 8 1Z"/></symbol><symbol id="HideMedium" viewBox="0 0 20 20"><path d="M16.1 2.535a.757.757 0 0 1 1.07 1.07L3.604 17.17a.757.757 0 0 1-1.07-1.07L16.1 2.535ZM7.093 15.367C8.013 15.76 8.991 16 10 16c3.777 0 7.12-3.37 8.638-5.47a.9.9 0 0 0 0-1.059 16.972 16.972 0 0 0-2.72-2.928l-2.14 2.14a4 4 0 0 1-5.095 5.095l-1.59 1.59Z"/><path d="M10.532 11.928a2.004 2.004 0 0 0 1.396-1.396l-1.396 1.396ZM10 4c1.353 0 2.65.433 3.828 1.084L12.232 6.68a4 4 0 0 0-5.552 5.552l-1.83 1.832c-1.506-1.108-2.727-2.481-3.488-3.535a.9.9 0 0 1 0-1.058C2.88 7.371 6.223 4 10 4Z"/><path d="M10 8c.27 0 .527.053.762.15L8.15 10.762A2 2 0 0 1 10 8Z"/><path d="M12 10a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm-3.4 0a1.4 1.4 0 1 0 2.8 0 1.4 1.4 0 0 0-2.8 0Z"/></symbol><symbol id="HistoryMedium" viewBox="0 0 20 20"><path d="M5.05 5.05 3.962 3.962a.5.5 0 0 0-.846.266l-.77 4.361a.5.5 0 0 0 .58.58l4.36-.77a.5.5 0 0 0 .267-.846L6.464 6.464a5 5 0 1 1 0 7.072l-.353-.354a.5.5 0 0 0-.707 0l-.707.707a.5.5 0 0 0 0 .707l.353.354a7 7 0 1 0 0-9.9ZM11 7.5a1 1 0 1 0-2 0V10a1 1 0 0 0 .293.707l1.5 1.5a1 1 0 0 0 1.414-1.414L11 9.586V7.5Z"/></symbol><symbol id="HistorySmall" viewBox="0 0 16 16"><path d="m3.72 3.74-.785-.786a.389.389 0 0 0-.657.208L1.68 6.549a.389.389 0 0 0 .45.45L5.517 6.4a.389.389 0 0 0 .207-.657l-.787-.788a4.302 4.302 0 1 1-.002 6.086l-.304-.304a.43.43 0 0 0-.608 0l-.609.608a.43.43 0 0 0 0 .608l.305.305a6.023 6.023 0 1 0 .001-8.52ZM8.75 6a.75.75 0 0 0-1.5 0v2c0 .199.079.39.22.53l1 1a.75.75 0 0 0 1.06-1.06l-.78-.78V6Z"/></symbol><symbol id="IdentitySmall" viewBox="0 0 16 16"><path d="M9.292 1.02a.573.573 0 0 0-.346.014.527.527 0 0 0-.265.209l-4.555 7.11a.788.788 0 0 0 .017.877c.09.13.217.235.368.301a.95.95 0 0 0 .483.075l1.695-.18-.714 5.01a.47.47 0 0 0 .072.321.528.528 0 0 0 .27.21c.114.04.238.043.353.009a.533.533 0 0 0 .282-.198l5.133-7.187a.789.789 0 0 0 .019-.894.872.872 0 0 0-.37-.314.95.95 0 0 0-.493-.08l-1.72.184.156-4.968a.475.475 0 0 0-.1-.311.537.537 0 0 0-.285-.188Z"/></symbol><symbol id="ImageMedium" viewBox="0 0 20 20"><path d="M2 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V4Zm7.5 3.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0Zm-4.872 7.193 2.47-3.176a.5.5 0 0 1 .795.007L9 13l2.551-3.827a.5.5 0 0 1 .85.03l3.171 5.549a.5.5 0 0 1-.434.748H5.022a.5.5 0 0 1-.394-.807Z"/></symbol><symbol id="ImageSmall" viewBox="0 0 16 16"><path d="M2 4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V4Zm5 1.25a1.25 1.25 0 1 1-2.5 0 1.25 1.25 0 0 1 2.5 0Zm-3.394 6.448L5.511 9.18a.5.5 0 0 1 .802.007l.854 1.17 2.047-3.159a.5.5 0 0 1 .857.03l2.516 4.53a.5.5 0 0 1-.437.742H4.005a.5.5 0 0 1-.399-.802Z"/></symbol><symbol id="InfoMedium" viewBox="0 0 20 20"><path d="M3 15a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v10Zm6-8a1 1 0 1 1 2 0 1 1 0 0 1-2 0Zm1.5 2a.5.5 0 0 1 .5.5v3a.5.5 0 0 0 .5.5.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1 .5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5.5.5 0 0 1 0-1h2Z"/></symbol><symbol id="InfoSmall" viewBox="0 0 16 16"><path d="M2 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v8Zm5-7a1 1 0 1 1 2 0 1 1 0 0 1-2 0Zm1.5 2a.5.5 0 0 1 .5.5v3a.5.5 0 0 0 .5.5.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1 .5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5.5.5 0 0 1 0-1h2Z"/></symbol><symbol id="JSONSmall" viewBox="0 0 16 16"><path d="M6.013 14.318c-.501 0-.945-.099-1.33-.296a2.033 2.033 0 0 1-.86-.833c-.198-.35-.283-.77-.256-1.264l.135-2.043c.026-.367-.05-.645-.229-.833-.17-.188-.461-.282-.874-.282H1.5a.5.5 0 0 1-.5-.5V7.72a.5.5 0 0 1 .5-.5h1.1c.412 0 .703-.094.873-.282.18-.188.255-.462.229-.82l-.135-2.11c-.027-.484.058-.9.256-1.25.197-.35.483-.619.86-.807.385-.188.829-.282 1.33-.282h.428a.5.5 0 0 1 .5.5v.546a.5.5 0 0 1-.5.5h-.186c-.322 0-.578.076-.766.228-.179.153-.26.394-.242.726l.135 2.097c.036.528-.121.954-.47 1.277-.341.314-.814.475-1.419.483a.047.047 0 0 1-.047-.047c0-.026.021-.047.047-.046.596.008 1.064.174 1.405.497.358.322.52.752.484 1.29l-.135 2.097c-.009.296.076.529.256.699.188.161.439.242.752.242h.186a.5.5 0 0 1 .5.5v.559a.5.5 0 0 1-.5.5h-.428ZM9.56 14.318a.5.5 0 0 1-.5-.5v-.56a.5.5 0 0 1 .5-.5h.185c.313 0 .564-.08.752-.241.188-.17.274-.403.256-.7l-.135-2.096c-.036-.538.121-.968.47-1.29.35-.323.823-.489 1.419-.497.026 0 .047.02.047.046a.047.047 0 0 1-.047.047c-.596-.008-1.069-.169-1.418-.483-.35-.323-.507-.749-.47-1.277l.134-2.097c.018-.332-.068-.573-.256-.726-.179-.152-.43-.228-.752-.228h-.186a.5.5 0 0 1-.5-.5V2.17a.5.5 0 0 1 .5-.5h.428c.501 0 .94.094 1.317.282.385.188.676.457.873.807.198.35.283.766.256 1.25l-.135 2.11c-.027.358.05.632.229.82.18.188.47.282.874.282H14.5a.5.5 0 0 1 .5.5v.546a.5.5 0 0 1-.5.5h-1.1c-.403 0-.694.094-.873.282-.18.188-.255.466-.229.833l.135 2.043c.027.493-.058.914-.256 1.264a2.016 2.016 0 0 1-.873.833c-.377.197-.816.296-1.317.296h-.428Z"/></symbol><symbol id="LaptopSmall" viewBox="0 0 16 16"><path d="M2 4.25C2 3.56 2.56 3 3.25 3h9.5c.69 0 1.25.56 1.25 1.25v4.5c0 .69-.56 1.25-1.25 1.25h-9.5C2.56 10 2 9.44 2 8.75v-4.5Zm1.25.5a.5.5 0 0 1 .5-.5h8.5a.5.5 0 0 1 .5.5v3.5a.5.5 0 0 1-.5.5h-8.5a.5.5 0 0 1-.5-.5v-3.5ZM1.809 11H6a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1h4.191a.5.5 0 0 1 .447.724l-.5 1a.5.5 0 0 1-.447.276H2.309a.5.5 0 0 1-.447-.276l-.5-1A.5.5 0 0 1 1.809 11Z"/></symbol><symbol id="LightModeMedium" viewBox="0 0 20 20"><path d="M9 3a1 1 0 1 1 2 0v1a1 1 0 1 1-2 0V3Zm5 7a4 4 0 1 1-8 0 4 4 0 0 1 8 0Zm-4 5a1 1 0 0 0-1 1v1a1 1 0 1 0 2 0v-1a1 1 0 0 0-1-1Zm6-4a1 1 0 1 1 0-2h1a1 1 0 1 1 0 2h-1ZM2 10a1 1 0 0 0 1 1h1a1 1 0 1 0 0-2H3a1 1 0 0 0-1 1Zm4-5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Zm9 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm1 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM5 16a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"/></symbol><symbol id="LightModeSmall" viewBox="0 0 16 16"><path d="M7 2a1 1 0 0 1 2 0v1a1 1 0 1 1-2 0V2Zm4 6a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm-3 4a1 1 0 0 0-1 1v1a1 1 0 1 0 2 0v-1a1 1 0 0 0-1-1Zm4-4a1 1 0 0 1 1-1h1a1 1 0 1 1 0 2h-1a1 1 0 0 1-1-1ZM2 7a1 1 0 0 0 0 2h1a1 1 0 1 0 0-2H2Zm1-3a1 1 0 1 1 2 0 1 1 0 0 1-2 0Zm9-1a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm-1 9a1 1 0 1 1 2 0 1 1 0 0 1-2 0Zm-7-1a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z"/></symbol><symbol id="LinkMedium" viewBox="0 0 20 20"><path d="M10.354 3.99a4 4 0 1 1 5.656 5.656l-.707.708-.707.707a2 2 0 0 1-2.828 0l1.414-1.415.707-.707.707-.707a2 2 0 1 0-2.828-2.828l-.707.707-.707.707-1.415 1.414a2 2 0 0 1 0-2.828l.707-.707.708-.707Zm-.708 12.02a4 4 0 0 1-5.656-5.656l.707-.708.707-.707a2 2 0 0 1 2.828 0l-1.414 1.415-.707.707-.707.707a2 2 0 1 0 2.828 2.828l.707-.707.707-.707 1.415-1.414a2 2 0 0 1 0 2.828l-.707.707-.708.707Zm3.536-9.192a1 1 0 0 0-1.414 0l-4.95 4.95a1 1 0 1 0 1.414 1.414l4.95-4.95a1 1 0 0 0 0-1.414Z"/></symbol><symbol id="LinkSmall" viewBox="0 0 16 16"><path d="M8.177 3.227a3.25 3.25 0 0 1 4.596 4.596l-.53.53-.53.53a1.5 1.5 0 0 1-2.122 0l1.06-1.06.531-.53.53-.53a1.75 1.75 0 0 0-2.475-2.475l-.53.53-.53.53-1.06 1.061a1.5 1.5 0 0 1 0-2.121l.53-.53.53-.53Zm-.354 9.546a3.25 3.25 0 0 1-4.596-4.596l.53-.53.53-.53a1.5 1.5 0 0 1 2.122 0l-1.06 1.06-.531.53-.53.53a1.75 1.75 0 1 0 2.475 2.475l.53-.53.53-.53 1.06-1.061a1.5 1.5 0 0 1 0 2.121l-.53.53-.53.531Zm2.652-7.248a.75.75 0 0 0-1.06 0l-3.89 3.89a.75.75 0 1 0 1.06 1.06l3.89-3.89a.75.75 0 0 0 0-1.06Z"/></symbol><symbol id="LiquidMedium" viewBox="0 0 20 20"><path d="M10.659 2.649c1.247 1.275 3.922 4.242 4.938 7.186a6 6 0 1 1-11.195 0C5.42 6.89 8.095 3.924 9.343 2.649a.914.914 0 0 1 1.316 0Zm-.666 4.02c.072.09.143.182.215.275.726.94 1.434 1.993 1.957 3.06.2.406.368.806.5 1.194.156.46.57.802 1.056.802.63 0 1.113-.564.928-1.167a11.697 11.697 0 0 0-.689-1.711c-.602-1.226-1.394-2.395-2.168-3.4a28.809 28.809 0 0 0-.29-.369A.946.946 0 0 0 10.76 5c-.84 0-1.29 1.01-.768 1.669Z"/></symbol><symbol id="LiquidSandboxMedium" viewBox="0 0 20 20"><path d="M5 4h10a1 1 0 0 1 1 1v2.828c.306.137.59.34.83.61.292.328.722.84 1.17 1.484V5a3 3 0 0 0-3-3H5a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h5.724a4.968 4.968 0 0 1-.69-2H5a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1Zm1 1a1 1 0 0 0 0 2h6a1 1 0 1 0 0-2H6Zm0 3a1 1 0 0 0 0 2h4a1 1 0 1 0 0-2H6Zm-1 4a1 1 0 0 1 1-1h2a1 1 0 1 1 0 2H6a1 1 0 0 1-1-1Zm7 3.408c0-2.398 1.88-4.76 2.664-5.64a.445.445 0 0 1 .672 0c.784.88 2.664 3.242 2.664 5.64a3 3 0 1 1-6 0Zm3.146-3.354a.5.5 0 0 1 .708 0c.194.195.472.529.703.927.228.392.443.899.443 1.427a.5.5 0 0 1-1 0c0-.273-.118-.599-.307-.924a3.77 3.77 0 0 0-.547-.723.5.5 0 0 1 0-.707Z"/></symbol><symbol id="LiquidSandboxSmall" viewBox="0 0 16 16"><path d="M3 2.5h10a.5.5 0 0 1 .5.5v3.593c.252.309.541.689.831 1.123.223.332.453.707.669 1.116V3a2 2 0 0 0-2-2H3a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h5.954a3.99 3.99 0 0 1-.803-1.5H3a.5.5 0 0 1-.5-.5V3a.5.5 0 0 1 .5-.5Zm9.706 8.006c.136.239.233.477.274.693l.02.208a.484.484 0 0 0 .012.108.5.5 0 0 0 .419.388.5.5 0 0 0 .57-.495 2.205 2.205 0 0 0-.052-.46 3.382 3.382 0 0 0-.392-.967 4.773 4.773 0 0 0-.703-.927.5.5 0 0 0-.708.707c.139.139.362.405.547.723l.013.022ZM15 12.408c0-.616-.124-1.23-.321-1.816a8.455 8.455 0 0 0-.423-1.017c-.214-.438-.457-.85-.702-1.222l-.012-.018-.011-.018-.006-.008-.02-.029-.005-.008a14.062 14.062 0 0 0-1.164-1.504.445.445 0 0 0-.672 0C10.88 7.648 9 10.01 9 12.408a3 3 0 0 0 6 0ZM4.5 4a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5Zm0 2a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1h-4ZM4 8.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5Z"/></symbol><symbol id="LiquidSmall" viewBox="0 0 16 16"><path d="M7.66 2.363C6.693 3.435 4 6.718 4 10a4 4 0 0 0 8 0c0-3.282-2.693-6.565-3.66-7.637a.453.453 0 0 0-.68 0ZM8.987 5c-.393 0-.62.45-.403.777.564.846 1.111 1.83 1.475 2.866.074.21.27.357.494.357a.483.483 0 0 0 .468-.635c-.405-1.173-1.014-2.255-1.605-3.142l-.007-.01A.48.48 0 0 0 9.01 5h-.022Z"/></symbol><symbol id="LiquidTemplateSmall" viewBox="0 0 16 16"><path d="M3 1a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3Zm4 2C5.5 4.25 4 6.125 4 8a3 3 0 0 0 6 0c0-1.875-1.5-3.75-3-5Z"/><path d="M4 14a1 1 0 0 0 1 1h7a2 2 0 0 0 2-2V4a1 1 0 0 0-1-1v10a1 1 0 0 1-1 1H4Z"/></symbol><symbol id="LockMedium" viewBox="0 0 20 20"><path d="M8 6a2 2 0 1 1 4 0v2H8V6ZM6 8V6a4 4 0 1 1 8 0v2h1a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1h1Zm5 4.618a1.5 1.5 0 1 0-2 0V14a1 1 0 1 0 2 0v-1.382Z"/></symbol><symbol id="LockSmall" viewBox="0 0 16 16"><path d="M6 6a2 2 0 1 1 4 0v1H6V6Zm6 1V6a4 4 0 0 0-8 0v1a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1Zm-5 3a1 1 0 1 1 2 0v1a1 1 0 1 1-2 0v-1Z"/></symbol><symbol id="MenuLarge" viewBox="0 0 24 24"><path d="M4.667 5C4.298 5 4 5.224 4 5.5v1c0 .276.298.5.667.5h14.666c.369 0 .667-.224.667-.5v-1c0-.276-.299-.5-.667-.5H4.667ZM4 11.5c0-.276.298-.5.667-.5h14.666c.369 0 .667.224.667.5v1c0 .276-.299.5-.667.5H4.667C4.298 13 4 12.776 4 12.5v-1Zm0 6c0-.276.298-.5.667-.5h14.666c.369 0 .667.224.667.5v1c0 .276-.299.5-.667.5H4.667C4.298 19 4 18.776 4 18.5v-1Z"/></symbol><symbol id="MenuMedium" viewBox="0 0 20 20"><path d="M3.583 4C3.261 4 3 4.224 3 4.5v1c0 .276.261.5.583.5h12.834c.322 0 .583-.224.583-.5v-1c0-.276-.261-.5-.583-.5H3.583ZM3 9.5c0-.276.261-.5.583-.5h12.834c.322 0 .583.224.583.5v1c0 .276-.261.5-.583.5H3.583C3.261 11 3 10.776 3 10.5v-1Zm0 5c0-.276.261-.5.583-.5h12.834c.322 0 .583.224.583.5v1c0 .276-.261.5-.583.5H3.583C3.261 16 3 15.776 3 15.5v-1Z"/></symbol><symbol id="MinimizeMedium" viewBox="0 0 20 20"><path d="M15 4H5a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h4.17a2.995 2.995 0 0 0 0 2H5a3 3 0 0 1-3-3V5a3 3 0 0 1 3-3h10a3 3 0 0 1 3 3v4.17a2.995 2.995 0 0 0-2 0V5a1 1 0 0 0-1-1Zm3 8a1 1 0 1 0-2 0v2.586L11.714 10.3l-.007-.007a1 1 0 1 0-1.414 1.414L14.586 16H12a1 1 0 1 0 0 2h5a1 1 0 0 0 1-1v-5Z"/></symbol><symbol id="MinimizeSmall" viewBox="0 0 16 16"><path d="M12 3H4a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h2.17a2.995 2.995 0 0 0 0 2H4a3 3 0 0 1-3-3V4a3 3 0 0 1 3-3h8a3 3 0 0 1 3 3v2.17a2.995 2.995 0 0 0-2 0V4a1 1 0 0 0-1-1Zm3 6a1 1 0 1 0-2 0v2.586L8.714 7.3l-.007-.007a1 1 0 0 0-1.414 1.414L11.586 13H9a1 1 0 1 0 0 2h5a1 1 0 0 0 1-1V9Z"/></symbol><symbol id="MinusLarge" viewBox="0 0 24 24"><path d="M6 11.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-11a.5.5 0 0 1-.5-.5v-1Z"/></symbol><symbol id="MinusMedium" viewBox="0 0 20 20"><path d="M5 9.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5v-1Z"/></symbol><symbol id="MinusSmall" viewBox="0 0 16 16"><rect x="4" y="7" width="8" height="2" rx=".5"/></symbol><symbol id="MobileSmall" viewBox="0 0 16 16"><path d="M11 2H5a1 1 0 0 0-1 1v8h8V3a1 1 0 0 0-1-1ZM5 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H5Zm3 13a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"/></symbol><symbol id="MoreActionsMedium" viewBox="0 0 20 20"><path d="M6 10a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0Zm5.5 0a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0Zm4 1.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"/></symbol><symbol id="MoreActionsSmall" viewBox="0 0 16 16"><path d="M5 8a1 1 0 1 1-2 0 1 1 0 0 1 2 0Zm4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0Zm3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"/></symbol><symbol id="NewChatMedium" viewBox="0 0 20 20"><path d="M17 9.5a6.5 6.5 0 0 1-8.66 6.133 3.066 3.066 0 0 0-1.763-.089l-2.828.707.707-2.828a3.066 3.066 0 0 0-.089-1.762A6.5 6.5 0 1 1 17 9.5ZM10.5 18a8.5 8.5 0 1 0-8.02-5.674c.07.197.086.41.036.612l-1.112 4.445a1 1 0 0 0 1.213 1.213l4.445-1.111c.203-.051.416-.035.613.034.884.312 1.834.481 2.825.481Zm-1-12a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v2.5H14a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-2.5V13a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-2.5H7a.5.5 0 0 1-.5-.5V9a.5.5 0 0 1 .5-.5h2.5V6Z"/></symbol><symbol id="NewChatSmall" viewBox="0 0 16 16"><path d="M13.281 7.471a5.001 5.001 0 0 1-6.38 4.81 2.597 2.597 0 0 0-1.515.022l-2.132.692.542-1.671a2.598 2.598 0 0 0-.099-1.846 5.001 5.001 0 1 1 9.584-2.007ZM8.28 14.222a6.751 6.751 0 1 0-6.185-4.041c.083.19.101.405.037.602L1.01 14.238a.794.794 0 0 0 1 1l3.916-1.27a.848.848 0 0 1 .495-.005c.59.169 1.214.26 1.859.26Zm-.751-9.377c0-.207.168-.375.375-.375h.75c.207 0 .375.168.375.375V6.72h1.875c.207 0 .375.168.375.375v.75a.375.375 0 0 1-.375.375H9.029v1.875a.375.375 0 0 1-.375.375h-.75a.375.375 0 0 1-.375-.375V8.22H5.654a.375.375 0 0 1-.375-.375v-.75c0-.207.168-.375.375-.375h1.875V4.845Z"/></symbol><symbol id="NoteMedium" viewBox="0 0 20 20"><path d="M3 4a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1H5v6a1 1 0 1 1-2 0V4Zm15 2h-6v4s0 2-2 2H8v1a1 1 0 0 0 1 1h9l-4-4 4-4Z"/></symbol><symbol id="NoteSmall" viewBox="0 0 16 16"><path d="M3 3a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H5v5a1 1 0 1 1-2 0V3Zm11 1h-4v3s0 2-2 2H7a1 1 0 0 0 1 1h6l-3-3 3-3Z"/></symbol><symbol id="OutputMedium" viewBox="0 0 20 20"><path d="M10 4H5a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1v-3h2v3a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V5a3 3 0 0 1 3-3h5a3 3 0 0 1 3 3v3h-2V5a1 1 0 0 0-1-1Zm4.293 2.293a1 1 0 0 1 1.414 0l3 3a1 1 0 0 1 0 1.414l-3 3a1 1 0 0 1-1.414-1.414L15.586 11H8a1 1 0 1 1 0-2h7.586l-1.293-1.293a1 1 0 0 1 0-1.414Z"/></symbol><symbol id="OutputSmall" viewBox="0 0 16 16"><path d="M7 3.5H4a.5.5 0 0 0-.5.5v8a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-1H9v1a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v1H7.5V4a.5.5 0 0 0-.5-.5Zm3.293.793a1 1 0 0 1 1.414 0l3 3a1 1 0 0 1 0 1.414l-3 3a1 1 0 0 1-1.414-1.414L11.586 9H7a1 1 0 0 1 0-2h4.586l-1.293-1.293a1 1 0 0 1 0-1.414Z"/></symbol><symbol id="PlayMedium" viewBox="0 0 20 20"><path d="M15.31 8.228c1.36.786 1.36 2.752 0 3.537l-8.577 4.952c-1.362.786-3.063-.196-3.063-1.768V5.045c0-1.572 1.701-2.554 3.063-1.768l8.577 4.951Z"/></symbol><symbol id="PlaySmall" viewBox="0 0 16 16"><path d="M12.248 6.583c1.089.629 1.089 2.2 0 2.83l-6.862 3.96a1.634 1.634 0 0 1-2.45-1.414V4.036a1.634 1.634 0 0 1 2.45-1.415l6.862 3.962Z"/></symbol><symbol id="PlusLarge" viewBox="0 0 24 24"><path d="M11 17.5a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5V13h4.5a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5H13V6.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5V11H6.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5H11v4.5Z"/></symbol><symbol id="PlusMedium" viewBox="0 0 20 20"><path d="M9 14.5a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5V11h3.5a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5H11V5.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5V9H5.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5H9v3.5Z"/></symbol><symbol id="PlusSmall" viewBox="0 0 16 16"><path d="M7.5 4a.5.5 0 0 0-.5.5V7H4.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5H7v2.5a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5V9h2.5a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5H9V4.5a.5.5 0 0 0-.5-.5h-1Z"/></symbol><symbol id="PointOfSaleSmall" viewBox="0 0 16 16"><path d="M8 2c-.663 0-1.328.209-1.93.626a.5.5 0 1 1-.57-.822A4.378 4.378 0 0 1 8 1c.878 0 1.74.277 2.5.804a.5.5 0 1 1-.57.822A3.379 3.379 0 0 0 8 2Zm5 6v4a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V8h10Zm-1-3a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h8Zm-4.921-.817a2.405 2.405 0 0 1 1.842 0 .5.5 0 0 0 .373-.927 3.404 3.404 0 0 0-2.588 0 .5.5 0 1 0 .373.927Z"/></symbol><symbol id="PolarisMedium" viewBox="0 0 20 20"><path d="M10 18a8 8 0 1 0 0-16 8 8 0 0 0 0 16Zm0 0a8 8 0 0 1 8-8 8 8 0 0 1-8-8 8 8 0 0 1-8 8 8 8 0 0 1 8 8Z"/></symbol><symbol id="PolarisSmall" viewBox="0 0 16 16"><path d="M8 14A6 6 0 1 0 8 2a6 6 0 0 0 0 12Zm0 0a6 6 0 0 1 6-6 6 6 0 0 1-6-6 6 6 0 0 1-6 6 6 6 0 0 1 6 6Z"/></symbol><symbol id="PrivacyMedium" viewBox="0 0 20 20"><path d="M3.003 4.998c-.005-.553.446-.995.994-1.07 1.644-.226 3.652-.98 5.257-2.262a1.204 1.204 0 0 1 1.492 0c1.604 1.282 3.613 2.036 5.257 2.262.547.075.999.517.994 1.07-.038 4.145-.525 10.956-6.72 12.919a.928.928 0 0 1-.554 0c-6.195-1.963-6.682-8.774-6.72-12.92ZM12 8.5a2 2 0 0 1-1 1.732V12.5a1 1 0 1 1-2 0v-2.268A2 2 0 0 1 10 6.5a2 2 0 0 1 2 2Z"/></symbol><symbol id="PrivacySmall" viewBox="0 0 16 16"><path d="M2.013 4.499c-.018-.552.437-1 .98-1.098 1.62-.294 3.517-1.168 4.56-1.679.282-.138.612-.138.894 0 1.043.51 2.94 1.385 4.56 1.679.543.098.998.546.98 1.098-.085 2.663-.731 8.032-5.67 9.889a.907.907 0 0 1-.634 0c-4.939-1.857-5.585-7.226-5.67-9.89ZM9.5 7a1.5 1.5 0 0 1-.75 1.3v1.45a.75.75 0 0 1-1.5 0V8.3A1.5 1.5 0 1 1 9.5 7Z"/></symbol><symbol id="RenderedMedium" viewBox="0 0 20 20"><path d="M2.75 7.031a2 2 0 0 1 1-1.732L9 2.268a2 2 0 0 1 2 0l5.25 3.031a2 2 0 0 1 1 1.734v6.062a2 2 0 0 1-1 1.732L11 17.858a1.999 1.999 0 0 1-2 0l-5.25-3.03a2 2 0 0 1-1-1.731V7.03Zm2 6.064L9 15.55v-4.91L4.75 8.187v4.91Zm9.5-6.641L10 8.908 5.75 6.454 10 4l4.25 2.454ZM11 10.64l4.25-2.454v4.91L11 15.548v-4.91Z"/></symbol><symbol id="RenderedSmall" viewBox="0 0 16 16"><path d="M2 5.598A1.5 1.5 0 0 1 2.75 4.3l4.5-2.598a1.5 1.5 0 0 1 1.5 0l4.5 2.598A1.5 1.5 0 0 1 14 5.6v5.196a1.5 1.5 0 0 1-.75 1.3l-4.5 2.597a1.5 1.5 0 0 1-1.5 0l-4.5-2.598A1.5 1.5 0 0 1 2 10.797V5.598Zm1.5 5.198 3 1.732.75.433V8.63L3.5 6.464v4.332Zm8.25-5.63L8 7.33 4.25 5.165 8 3l3.75 2.165Zm-3 3.463 3.75-2.165v4.332l-3 1.732-.75.433V8.63Z"/></symbol><symbol id="ResetMedium" viewBox="0 0 20 20"><path d="M10 2.5v1.54a7 7 0 1 1-7 7v-.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v.5a5 5 0 1 0 5-5v1.54a.5.5 0 0 1-.787.41L5.585 5.45a.5.5 0 0 1 0-.82l3.628-2.539a.5.5 0 0 1 .787.41Z"/></symbol><symbol id="ResetSmall" viewBox="0 0 16 16"><path d="m7.2 2.1-2.667 2a.5.5 0 0 0 0 .8l2.667 2a.5.5 0 0 0 .8-.4v-1a3 3 0 1 1-3 3V8a.5.5 0 0 0-.5-.5h-1A.5.5 0 0 0 3 8v.5a5 5 0 1 0 5-5v-1a.5.5 0 0 0-.8-.4Z"/></symbol><symbol id="RSSMedium" viewBox="0 0 20 20"><path d="M5 4a1 1 0 0 0 0 2c5.281 0 9 3.719 9 9a1 1 0 1 0 2 0C16 8.614 11.386 4 5 4ZM4 9a1 1 0 0 1 1-1c4.052 0 7 2.948 7 7a1 1 0 1 1-2 0c0-2.948-2.052-5-5-5a1 1 0 0 1-1-1Zm4 5a2 2 0 1 1-4 0 2 2 0 0 1 4 0Z"/></symbol><symbol id="RSSSmall" viewBox="0 0 16 16"><path d="M4 3a1 1 0 0 0 0 2c3.514 0 7 2.816 7 7a1 1 0 1 0 2 0c0-5.416-4.514-9-9-9ZM3 8a1 1 0 0 1 1-1c2.486 0 5 1.984 5 5a1 1 0 1 1-2 0c0-1.784-1.486-3-3-3a1 1 0 0 1-1-1Zm2 4a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"/></symbol><symbol id="ScintillateMedium" viewBox="0 0 20 20"><path d="m11.384 5.913-.6-3.261h-.001a.796.796 0 0 0-1.565 0l-.602 3.261a3.363 3.363 0 0 1-.885 1.743l-.039.036a3.36 3.36 0 0 1-1.78.924l-3.26.603a.796.796 0 0 0 0 1.564l3.26.601c.703.13 1.315.454 1.784.924.466.465.79 1.077.92 1.779l.603 3.261a.796.796 0 0 0 1.564 0l.601-3.261c.13-.7.456-1.311.924-1.783a3.355 3.355 0 0 1 1.78-.92l3.26-.601a.796.796 0 0 0 0-1.565l-3.26-.603a3.367 3.367 0 0 1-1.78-.923 3.365 3.365 0 0 1-.924-1.78Zm4.013-3.073c.057-.744 1.149-.744 1.206 0 .023.298.26.534.557.557.744.057.744 1.149 0 1.206a.605.605 0 0 0-.557.557c-.057.744-1.149.744-1.206 0a.605.605 0 0 0-.557-.557c-.744-.057-.744-1.149 0-1.206a.605.605 0 0 0 .557-.557ZM4.428 15.445c-.064-.837-1.292-.837-1.356 0a.68.68 0 0 1-.627.627c-.837.064-.837 1.292 0 1.356a.68.68 0 0 1 .627.627c.064.837 1.292.837 1.356 0a.68.68 0 0 1 .627-.627c.837-.064.837-1.292 0-1.356a.68.68 0 0 1-.627-.627Z"/></symbol><symbol id="ScintillateSmall" viewBox="0 0 16 16"><path d="m9.107 4.73-.48-2.609a.637.637 0 0 0-1.252 0l-.482 2.61a2.69 2.69 0 0 1-.708 1.394l-.031.029a2.689 2.689 0 0 1-1.424.739l-2.608.482a.637.637 0 0 0 0 1.251l2.608.481a2.686 2.686 0 0 1 1.426.74c.374.371.633.86.737 1.423l.482 2.608a.636.636 0 0 0 1.252 0l.48-2.608c.103-.56.365-1.05.74-1.427a2.684 2.684 0 0 1 1.423-.736l2.608-.481a.637.637 0 0 0 0-1.252l-2.608-.482a2.693 2.693 0 0 1-1.424-.739 2.693 2.693 0 0 1-.739-1.423Zm3.21-2.458c.046-.595.92-.595.965 0a.484.484 0 0 0 .446.446c.595.045.595.919 0 .964a.484.484 0 0 0-.446.446c-.045.595-.919.595-.964 0a.484.484 0 0 0-.446-.446c-.595-.045-.595-.919 0-.964a.484.484 0 0 0 .446-.446ZM3.544 12.356c-.052-.67-1.034-.67-1.086 0a.544.544 0 0 1-.5.501c-.67.052-.67 1.034 0 1.086.267.02.48.233.5.5.052.67 1.034.67 1.086 0a.544.544 0 0 1 .5-.5c.67-.052.67-1.034 0-1.086a.544.544 0 0 1-.5-.5Z"/></symbol><symbol id="SearchLarge" viewBox="0 0 24 24"><path d="M11.314 11.314a4 4 0 1 1-5.657-5.657 4 4 0 0 1 5.657 5.657Zm2.062.648a6.002 6.002 0 0 0-9.133-7.72 6 6 0 0 0 7.72 9.134l7.129 7.13a1 1 0 0 0 1.414-1.414l-7.13-7.13Z"/></symbol><symbol id="SearchLauncherMedium" viewBox="0 0 20 20"><path d="M7.218 15.28 11.442 4h1.356L8.574 15.28H7.218Z"/></symbol><symbol id="SearchLauncherSmall" viewBox="0 0 16 16"><path d="M5.45 13.17 9.322 2.83h1.232L6.682 13.17H5.45Z"/></symbol><symbol id="SearchMedium" viewBox="0 0 20 20"><path d="M10.192 10.192A3 3 0 1 1 5.95 5.95a3 3 0 0 1 4.242 4.242Zm.64 2.048a5.002 5.002 0 0 1-6.296-7.704 5 5 0 0 1 7.704 6.297c.025.02.05.043.074.066l4.95 4.95a1 1 0 1 1-1.415 1.415l-4.95-4.95a.974.974 0 0 1-.066-.074Z"/></symbol><symbol id="SearchSmall" viewBox="0 0 16 16"><path d="M8.071 8.071a2 2 0 1 1-2.828-2.828A2 2 0 0 1 8.07 8.07Zm.625 2.028a4.002 4.002 0 0 1-4.868-6.27A4 4 0 0 1 10.1 8.695c.033.025.064.052.093.082l3.536 3.536a1 1 0 1 1-1.414 1.414l-3.536-3.536c-.03-.03-.057-.06-.082-.093Z"/></symbol><symbol id="SelectorMedium" viewBox="0 0 20 20"><path d="M12.586 9H7.414c-.89 0-1.337-1.077-.707-1.707l2.586-2.586a1 1 0 0 1 1.414 0l2.586 2.586c.63.63.184 1.707-.707 1.707Zm-5.172 2h5.172c.89 0 1.337 1.077.707 1.707l-2.586 2.586a1 1 0 0 1-1.414 0l-2.586-2.586c-.63-.63-.184-1.707.707-1.707Z"/></symbol><symbol id="SelectorSmall" viewBox="0 0 16 16"><path d="M10.586 7H5.414c-.89 0-1.337-1.077-.707-1.707l2.586-2.586a1 1 0 0 1 1.414 0l2.586 2.586c.63.63.184 1.707-.707 1.707ZM5.414 9h5.172c.89 0 1.337 1.077.707 1.707l-2.586 2.586a1 1 0 0 1-1.414 0l-2.586-2.586C4.077 10.077 4.523 9 5.414 9Z"/></symbol><symbol id="SendMedium" viewBox="0 0 20 20"><path d="M4.68 8.855c.05.118.174.182.301.19l6.503.406a.532.532 0 0 1 0 1.062l-6.503.407c-.127.008-.252.071-.301.189L2.982 15.12c-.355.84.506 1.677 1.335 1.3l12.164-5.528c.781-.356.781-1.466 0-1.821L4.317 3.542c-.83-.376-1.69.462-1.335 1.3L4.68 8.856Z"/></symbol><symbol id="SendSmall" viewBox="0 0 16 16"><path d="M3.373 6.728c.098.231.374.325.624.343l5.504.393a.537.537 0 0 1 0 1.072l-5.504.393c-.25.018-.526.112-.624.343L2.07 12.353c-.301.71.428 1.42 1.13 1.101l10.303-4.683a.847.847 0 0 0 0-1.542L3.2 2.545c-.702-.319-1.431.391-1.13 1.102l1.303 3.081Z"/></symbol><symbol id="ShopifyPlusMedium" viewBox="0 0 20 20"><path d="M18.708 6.432h-.747l.144-.74a.285.285 0 0 0-.286-.35.456.456 0 0 0-.422.35l-.144.74h-.747a.455.455 0 0 0-.422.35c-.037.19.093.351.285.351h.748l-.144.74c-.037.19.094.35.285.35.192 0 .386-.16.422-.35l.144-.74h.747c.192 0 .386-.16.422-.35a.284.284 0 0 0-.285-.35ZM10.07 4.43c-.006-.397-.054-.949-.24-1.426.6.112.896.785 1.021 1.187-.231.07-.495.151-.78.24ZM6.923 9.697c.054.839 2.284 1.022 2.41 2.988.098 1.546-.829 2.603-2.165 2.687-1.604.1-2.486-.836-2.486-.836l.34-1.43s.888.663 1.6.618a.624.624 0 0 0 .613-.668c-.07-1.094-1.886-1.03-2-2.828-.097-1.514.907-3.047 3.123-3.186.854-.053 1.291.162 1.291.162L9.142 9.08s-.565-.254-1.235-.213c-.983.063-.994.676-.984.83Zm1.542-7.174a.817.817 0 0 1 .476.123c-.214.11-.421.268-.615.474-.503.534-.889 1.364-1.043 2.164l-1.38.423c.272-1.26 1.339-3.15 2.562-3.184Zm1.079 2.069-1.681.515c.163-.616.47-1.229.849-1.63.14-.15.337-.317.57-.412.22.452.267 1.093.262 1.527Zm2.3-.706-.488.15a3.352 3.352 0 0 0-.234-.57c-.347-.654-.854-1-1.467-1.001h-.003a1.42 1.42 0 0 0-.127.008A1.294 1.294 0 0 0 8.449 2c-.792.022-1.58.588-2.22 1.594-.45.707-.792 1.597-.89 2.284a2497 2497 0 0 0-1.559.479c-.459.142-.473.156-.534.584C3.201 7.266 2 16.46 2 16.46l9.966 1.706v-14.3a.607.607 0 0 0-.121.021ZM12.295 18.127l4.134-1.018S14.65 5.2 14.64 5.116a.158.158 0 0 0-.144-.132c-.06-.005-1.223-.022-1.223-.022l-.977-.94v14.105Z"/></symbol><symbol id="ShopifyPlusSmall" viewBox="0 0 16 16"><path d="M14.967 5.146h-.598l.115-.592a.228.228 0 0 0-.229-.28.364.364 0 0 0-.338.28l-.115.592h-.598a.364.364 0 0 0-.337.28c-.03.152.075.28.228.28h.598l-.115.592c-.03.152.075.28.229.28a.364.364 0 0 0 .337-.28l.115-.591h.598a.364.364 0 0 0 .338-.28.228.228 0 0 0-.228-.281ZM8.056 3.544c-.005-.318-.043-.76-.192-1.141.48.09.717.628.817.95l-.625.191ZM5.54 7.757c.043.672 1.827.818 1.927 2.39.079 1.238-.663 2.084-1.732 2.15-1.282.08-1.989-.668-1.989-.668l.272-1.145s.711.53 1.28.495a.5.5 0 0 0 .491-.534c-.056-.876-1.509-.824-1.6-2.263-.078-1.21.725-2.438 2.498-2.548.683-.043 1.033.13 1.033.13l-.405 1.5s-.452-.204-.989-.17c-.786.05-.794.54-.786.663Zm1.233-5.739a.654.654 0 0 1 .38.099 1.836 1.836 0 0 0-.491.379c-.403.427-.711 1.09-.834 1.73-.384.118-.76.233-1.104.34.217-1.008 1.07-2.52 2.049-2.548Zm.863 1.655-1.345.412c.13-.492.377-.983.68-1.304.112-.12.27-.253.456-.329.175.362.213.875.209 1.221Zm1.84-.564-.39.12a2.683 2.683 0 0 0-.188-.456c-.277-.523-.683-.8-1.173-.801h-.002c-.034 0-.068.003-.102.006a1.035 1.035 0 0 0-.86-.377c-.634.018-1.265.47-1.777 1.275-.36.566-.634 1.277-.711 1.827l-1.248.383c-.367.114-.379.125-.427.468-.036.26-.997 7.614-.997 7.614l7.973 1.364V3.092a.485.485 0 0 0-.097.017ZM9.836 14.501l3.307-.813-1.433-9.595a.127.127 0 0 0-.114-.105c-.047-.005-.979-.018-.979-.018s-.568-.546-.78-.753v11.284Z"/></symbol><symbol id="SidebarCollapseLarge" viewBox="0 0 24 24"><path d="M17.5 18a.5.5 0 0 0 .5-.5v-11a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v11a.5.5 0 0 0 .5.5h1ZM6.146 11.647a.5.5 0 0 0 0 .707l1.061 1.06 1.74 1.74c.21.21.552.21.763 0l.68-.679a.5.5 0 0 0 0-.707L9.62 13H13.5a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5H9.622l.767-.768a.5.5 0 0 0 0-.707l-.707-.707a.5.5 0 0 0-.707 0l-2.829 2.829Z"/></symbol><symbol id="SidebarCollapseMedium" viewBox="0 0 20 20"><path d="M15.5 16a.5.5 0 0 0 .5-.5v-11a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v11a.5.5 0 0 0 .5.5h1ZM4.146 9.647a.5.5 0 0 0 0 .707l1.061 1.06 1.74 1.74c.21.21.552.21.763 0l.68-.679a.5.5 0 0 0 0-.707L7.62 11H11.5a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5H7.622l.767-.768a.5.5 0 0 0 0-.707l-.707-.707a.5.5 0 0 0-.707 0L4.146 9.647Z"/></symbol><symbol id="SidebarExpandLarge" viewBox="0 0 24 24"><path d="M6.5 6a.5.5 0 0 0-.5.5v11a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-11a.5.5 0 0 0-.5-.5h-1Zm11.354 6.353a.5.5 0 0 0 0-.707l-1.061-1.06-1.74-1.74a.54.54 0 0 0-.763 0l-.68.679a.5.5 0 0 0 0 .707l.769.768H10.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h3.878l-.767.768a.5.5 0 0 0 0 .707l.707.707a.5.5 0 0 0 .707 0l2.829-2.829Z"/></symbol><symbol id="SidebarExpandMedium" viewBox="0 0 20 20"><path d="M4.5 4a.5.5 0 0 0-.5.5v11a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-11a.5.5 0 0 0-.5-.5h-1Zm11.354 6.353a.5.5 0 0 0 0-.707l-1.061-1.06-1.74-1.74a.54.54 0 0 0-.763 0l-.68.679a.5.5 0 0 0 0 .707L12.38 9H8.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h3.878l-.767.768a.5.5 0 0 0 0 .707l.707.707a.5.5 0 0 0 .707 0l2.829-2.829Z"/></symbol><symbol id="StopStreamMedium" viewBox="0 0 20 20"><path d="M18 10a8 8 0 1 1-16 0 8 8 0 0 1 16 0Zm-8 5.935a5.935 5.935 0 1 0 0-11.87 5.935 5.935 0 0 0 0 11.87Z"/><path d="M7.161 7.677c0-.285.231-.516.516-.516h4.646c.285 0 .516.231.516.516v4.646a.516.516 0 0 1-.516.516H7.677a.516.516 0 0 1-.516-.516V7.677Z"/></symbol><symbol id="StoreMedium" viewBox="0 0 20 20"><path d="M16.282 3H3.718L1.833 6.5h.015c.14 1.05 1.204 1.867 2.498 1.867.75 0 1.424-.275 1.885-.711.46.436 1.134.71 1.884.71S9.54 8.093 10 7.657c.46.436 1.134.71 1.885.71.75 0 1.424-.274 1.884-.71.46.436 1.134.71 1.885.71 1.294 0 2.359-.816 2.498-1.866h.015L16.282 3Zm-.657 6.417h.017-.034.017Zm-3.75 0h.017-.034.017Zm-3.75 0h.017-.034.017ZM17 17V9.703c-.415.19-.882.297-1.375.297a3.26 3.26 0 0 1-1.875-.583 3.26 3.26 0 0 1-1.875.583A3.26 3.26 0 0 1 10 9.417 3.26 3.26 0 0 1 8.125 10a3.26 3.26 0 0 1-1.875-.583A3.26 3.26 0 0 1 4.375 10c-.493 0-.96-.107-1.375-.297V17h4.667v-3.5c0-.644.522-1.167 1.166-1.167h2.334c.644 0 1.166.523 1.166 1.167V17H17ZM4.375 9.417h.012-.025.013Z"/></symbol><symbol id="StoreSmall" viewBox="0 0 16 16"><path d="M13.385 2H2.615L1 5h.013c.119.9 1.032 1.6 2.14 1.6.644 0 1.221-.236 1.616-.61.395.374.972.61 1.616.61.643 0 1.22-.236 1.615-.61.395.374.972.61 1.615.61.644 0 1.221-.236 1.616-.61.395.374.972.61 1.615.61 1.109 0 2.022-.7 2.141-1.6H15l-1.615-3ZM14 14V7.745A2.826 2.826 0 0 1 12.821 8c-.603 0-1.159-.186-1.607-.5-.447.314-1.004.5-1.607.5S8.447 7.814 8 7.5c-.448.314-1.004.5-1.607.5s-1.16-.186-1.607-.5c-.448.314-1.004.5-1.607.5-.423 0-.823-.092-1.179-.255V14h4v-3a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3h4Z"/></symbol><symbol id="SuggestionMedium" viewBox="0 0 20 20"><path d="M12.742 9.912c-.418.394-.742.906-.742 1.48V12.5a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1.108c0-.574-.324-1.086-.742-1.48a4 4 0 1 1 5.484 0ZM9.658 4.974a.5.5 0 1 0-.316-.948c-.88.293-1.46.878-1.811 1.37a4.26 4.26 0 0 0-.472.855 2.31 2.31 0 0 0-.023.062l-.007.019-.002.006v.002l-.001.002a.5.5 0 0 0 .948.318l.002-.006.013-.036a3.262 3.262 0 0 1 .355-.64c.273-.382.695-.797 1.314-1.004ZM8.667 14a.667.667 0 0 0-.4 1.2l1.133.85a1 1 0 0 0 1.2 0l1.133-.85a.667.667 0 0 0-.4-1.2H8.667Z"/></symbol><symbol id="TerminalMedium" viewBox="0 0 20 20"><path d="M5 4h10a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1ZM2 5a3 3 0 0 1 3-3h10a3 3 0 0 1 3 3v10a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V5Zm4.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-7Z"/></symbol><symbol id="TerminalSmall" viewBox="0 0 16 16"><path d="M12 2.5H4A1.5 1.5 0 0 0 2.5 4v8A1.5 1.5 0 0 0 4 13.5h8a1.5 1.5 0 0 0 1.5-1.5V4A1.5 1.5 0 0 0 12 2.5ZM4 1a3 3 0 0 0-3 3v8a3 3 0 0 0 3 3h8a3 3 0 0 0 3-3V4a3 3 0 0 0-3-3H4Zm1.5 9a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-5Z"/></symbol><symbol id="ThumbDownMedium" viewBox="0 0 20 20"><path d="M13.683 4.365a1.15 1.15 0 0 0-1.024-1.146c-1.667-.181-4.83-.512-5.334-.464-2.05.08-2.641.12-2.89.623-.304.515-2.48 4.551-1.155 6.89.377.664 1.777.8 3.468.903.881.054 1.733-.195 2.378.204.207.129.159.658-.067 1.341-.262.796-.6 1.82-.315 2.753.53 1.733 2.335 2.366 2.436 1.156.06-.719.153-1.022.754-2.281.01-.02.02-.04.032-.058.18-.29 1.716-2.806 1.715-4.018h.001V4.364ZM17.15 9.82c0 .32-.259.578-.578.578h-1.445a.578.578 0 0 1-.578-.578V4.041c0-.319.26-.578.578-.578h1.445c.32 0 .578.259.578.578v5.78Z"/></symbol><symbol id="ThumbUpMedium" viewBox="0 0 20 20"><path d="M6.317 15.635c0 .588.44 1.082 1.024 1.146 1.666.181 4.83.512 5.333.465 2.051-.08 2.642-.121 2.89-.624.305-.515 2.48-4.551 1.156-6.89-.377-.664-1.777-.8-3.468-.903-.881-.054-1.733.195-2.378-.204-.207-.129-.159-.658.067-1.341.262-.796.6-1.82.315-2.752-.53-1.734-2.335-2.367-2.436-1.157-.06.719-.153 1.022-.754 2.282-.01.02-.02.039-.032.057-.18.29-1.716 2.806-1.715 4.018h-.001v5.903ZM2.85 10.18c0-.32.259-.578.578-.578h1.445c.319 0 .578.259.578.578v5.779c0 .319-.26.578-.578.578H3.428a.578.578 0 0 1-.578-.578v-5.78Z"/></symbol><symbol id="TutorialSmall" viewBox="0 0 16 16"><path d="M7 3.796a.705.705 0 0 0-.296-.592 3.827 3.827 0 0 0-4.323.031l-.044.031A.784.784 0 0 0 2 3.91v8.116c0 .418.465.668.814.438a3.813 3.813 0 0 1 4.622.33l.045.04a.786.786 0 0 0 1.042 0l.047-.042a3.807 3.807 0 0 1 4.617-.328c.349.23.813-.02.813-.437V3.963a.886.886 0 0 0-.38-.727 3.822 3.822 0 0 0-4.325-.029.705.705 0 0 0-.295.591v5.15a1 1 0 1 1-2 0V3.796Z"/></symbol><symbol id="TwitchMedium" viewBox="0 0 20 20"><path d="M9.571 5.143h1.144V8.57H9.57V5.143Zm3.144 0h1.142V8.57h-1.142V5.143ZM5.857 2 3 4.857v10.286h3.429V18l2.857-2.857h2.285L16.715 10V2H5.857Zm9.714 7.429-2.285 2.285H11l-2 2v-2H6.429V3.143h9.142v6.286Z"/></symbol><symbol id="TwitchSmall" viewBox="0 0 16 16"><path d="M7.75 3.75h1v3h-1v-3Zm2.75 0h1v3h-1v-3ZM4.5 1 2 3.5v9h3V15l2.5-2.5h2L14 8V1H4.5ZM13 7.5l-2 2H9l-1.75 1.75V9.5H5V2h8v5.5Z"/></symbol><symbol id="TwitterMedium" viewBox="0 0 20 20"><path d="M17.969 4.796a6.667 6.667 0 0 1-1.884.516 3.305 3.305 0 0 0 1.442-1.815c-.634.37-1.336.64-2.084.79a3.28 3.28 0 0 0-5.59 2.987 9.292 9.292 0 0 1-6.76-3.417c-.294.5-.447 1.07-.444 1.65 0 1.14.58 2.142 1.459 2.73a3.27 3.27 0 0 1-1.485-.41v.04a3.282 3.282 0 0 0 2.63 3.218 3.331 3.331 0 0 1-1.474.057 3.29 3.29 0 0 0 3.069 2.278 6.578 6.578 0 0 1-4.068 1.403c-.26 0-.52-.015-.78-.045a9.33 9.33 0 0 0 5.038 1.473c6.035 0 9.332-4.997 9.332-9.323 0-.14 0-.28-.01-.42a6.623 6.623 0 0 0 1.64-1.7l-.031-.012Z"/></symbol><symbol id="TwitterSmall" viewBox="0 0 16 16"><path d="M14.973 3.602c-.525.23-1.08.383-1.648.452a2.892 2.892 0 0 0 1.261-1.588c-.554.323-1.17.559-1.824.69a2.87 2.87 0 0 0-4.89 2.615 8.13 8.13 0 0 1-5.915-2.99 2.813 2.813 0 0 0-.389 1.443 2.87 2.87 0 0 0 1.276 2.39 2.86 2.86 0 0 1-1.3-.36v.035a2.872 2.872 0 0 0 2.303 2.816c-.421.113-.862.13-1.29.05a2.88 2.88 0 0 0 2.685 1.993A5.756 5.756 0 0 1 1 12.337a8.165 8.165 0 0 0 4.408 1.288c5.281 0 8.166-4.372 8.166-8.158 0-.122 0-.245-.009-.367A5.795 5.795 0 0 0 15 3.614l-.027-.012Z"/></symbol><symbol id="ViewMedium" viewBox="0 0 20 20"><path d="M1.362 9.47a.9.9 0 0 0 0 1.06C2.88 12.63 6.223 16 10 16s7.12-3.37 8.638-5.47a.9.9 0 0 0 0-1.06C17.12 7.37 13.777 4 10 4S2.88 7.37 1.362 9.47ZM14 10a4 4 0 1 1-8 0 4 4 0 0 1 8 0Zm-4 2a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z"/></symbol><symbol id="ViewSmall" viewBox="0 0 16 16"><path d="M1.325 7.496a.891.891 0 0 0 0 1.008C2.525 10.258 5.098 13 8 13c2.902 0 5.476-2.742 6.675-4.496a.891.891 0 0 0 0-1.008C13.475 5.742 10.902 3 8 3 5.098 3 2.524 5.742 1.325 7.496ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm-3 2a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z"/></symbol><symbol id="WarningMedium" viewBox="0 0 20 20"><path d="M1.909 15.486 9.143 3.428a1 1 0 0 1 1.714 0l7.234 12.056A1 1 0 0 1 17.234 17H2.766a1 1 0 0 1-.857-1.514ZM9 8a1 1 0 0 1 2 0v3a1 1 0 1 1-2 0V8Zm0 6a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z"/></symbol><symbol id="WarningSmall" viewBox="0 0 16 16"><path d="m7.136 2.481-5.259 9.015A1 1 0 0 0 2.741 13h10.518a1 1 0 0 0 .864-1.504l-5.26-9.015a1 1 0 0 0-1.727 0ZM7 6.001a1 1 0 1 1 2 0v2a1 1 0 1 1-2 0V6Zm0 5a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z"/></symbol><symbol id="YouTubeMedium" viewBox="0 0 20 20"><path d="M17.665 5.76a2.01 2.01 0 0 0-1.414-1.423C15.003 4 10 4 10 4s-5.003 0-6.251.337A2.011 2.011 0 0 0 2.335 5.76C2 7.017 2 9.637 2 9.637s0 2.62.335 3.876a2.01 2.01 0 0 0 1.414 1.424c1.248.336 6.251.336 6.251.336s5.003 0 6.251-.336a2.01 2.01 0 0 0 1.415-1.424C18 12.257 18 9.637 18 9.637s0-2.62-.335-3.876Zm-9.302 6.255V7.258l4.182 2.379-4.182 2.378Z"/></symbol><symbol id="YouTubeSmall" viewBox="0 0 16 16"><path d="M14.707 4.54a1.76 1.76 0 0 0-1.238-1.245C12.378 3 8 3 8 3s-4.378 0-5.47.295A1.76 1.76 0 0 0 1.293 4.54C1 5.64 1 7.932 1 7.932s0 2.293.293 3.392A1.76 1.76 0 0 0 2.53 12.57c1.091.294 5.469.294 5.469.294s4.378 0 5.47-.294a1.76 1.76 0 0 0 1.238-1.246C15 10.224 15 7.932 15 7.932s0-2.292-.293-3.391Zm-8.14 5.473V5.851l3.66 2.081-3.66 2.081Z"/></symbol></defs></svg></div><div class="flex flex-col min-h-screen"><header class="sticky top-0 bg flex flex-row items-center justify-between h-[48px] gap-200 z-20 sm:px-400 max-sm:pr-200"><div role="progressbar" aria-hidden="true" aria-label="loading bar" class="absolute inset-x-0 left-0 top-0 z-50 bg-surface h-0 transition-none"><div class="h-full transition-all duration-500 delay-100 ease-in-out bg-icon-subdued w-0 opacity-0 transition-none"></div></div><div class="flex-1 shrink-1 flex flex-row items-center"><div class="sm:hidden"><button type="button" class="_Icon_ajx1z_1" name="open menu" aria-haspopup="dialog" aria-expanded="false" aria-label="Open navigation menu"><svg width="24" height="24" role="img"><use href="#MenuLarge"></use></svg></button></div><a class=" flex items-center gap-50" href="/docs" data-discover="true"><img src="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='60'%20height='24'%20viewBox='0%200%2060%2024'%20fill='none'%3e%3cpath%20d='M32.083%2017.13a1.21%201.21%200%200%200%201.193-1.194%201.208%201.208%200%200%200-1.193-1.183%201.188%201.188%200%201%200%200%202.376Zm5.746-.006c1.233%200%201.874-.71%202.168-1.347h.09V17h2.087V6.818h-2.113v3.828h-.064c-.284-.621-.895-1.382-2.173-1.382-1.675%200-3.092%201.303-3.092%203.928%200%202.555%201.357%203.932%203.097%203.932Zm.671-1.685c-1.039%200-1.606-.925-1.606-2.257%200-1.323.557-2.232%201.606-2.232%201.03%200%201.606.87%201.606%202.232s-.587%202.257-1.606%202.257Zm8.896%201.71c1.889%200%203.161-.92%203.46-2.337l-1.959-.129c-.214.582-.76.885-1.467.885-1.059%200-1.73-.7-1.73-1.84v-.004h5.2v-.582c0-2.595-1.57-3.878-3.589-3.878-2.247%200-3.704%201.596-3.704%203.953%200%202.42%201.437%203.932%203.789%203.932ZM45.7%2012.411c.045-.87.706-1.566%201.646-1.566.92%200%201.556.656%201.561%201.566H45.7Zm13.483-3.047h-2.242l-1.58%205.463h-.08l-1.586-5.463h-2.238L54.127%2017h2.386l2.67-7.636Z'%20fill='%23202223'/%3e%3cpath%20d='M18.392%204.621a.231.231%200%200%200-.208-.195c-.087-.008-1.78-.034-1.78-.034s-1.418-1.387-1.557-1.528c-.14-.142-.414-.099-.52-.067l-.712.222a5.053%205.053%200%200%200-.34-.844C12.77%201.205%2012.032.691%2011.139.69h-.003c-.062%200-.124.006-.186.01a2.75%202.75%200%200%200-.08-.093c-.39-.42-.888-.624-1.485-.606-1.153.033-2.3.873-3.232%202.364C5.5%203.415%205%204.733%204.86%205.754c-1.324.413-2.25.702-2.27.71-.668.21-.689.231-.776.867C1.748%207.81%200%2021.445%200%2021.445L14.65%2024%2021%2022.408%2018.391%204.621Zm-5.51-1.373-1.137.355c-.008-.588-.078-1.407-.35-2.115.875.167%201.305%201.165%201.487%201.76Zm-1.903.595-2.446.764c.236-.913.684-1.822%201.235-2.418.205-.222.491-.469.83-.61.32.671.388%201.621.38%202.264ZM9.409.775c.27-.006.498.054.692.183a3.34%203.34%200%200%200-.895.703c-.732.792-1.293%202.022-1.517%203.209l-2.009.627C6.077%203.629%207.63.827%209.408.775Z'%20fill='%2395BF47'/%3e%3cpath%20d='m11.131%207.719-.737%202.782s-.823-.377-1.798-.315c-1.43.091-1.445%201-1.43%201.229.077%201.244%203.323%201.516%203.506%204.431.143%202.293-1.206%203.862-3.15%203.986-2.334.148-3.619-1.24-3.619-1.24l.494-2.121s1.294.984%202.329.918c.676-.043.917-.598.893-.99-.102-1.624-2.745-1.528-2.912-4.195-.14-2.245%201.321-4.52%204.546-4.724%201.242-.08%201.878.239%201.878.239Z'%20fill='%23fff'/%3e%3cpath%20d='M18.184%204.426c-.086-.007-1.78-.033-1.78-.033s-1.417-1.388-1.557-1.529a.345.345%200%200%200-.197-.091l.001%2021.226L21%2022.408%2018.393%204.622a.232.232%200%200%200-.209-.196Z'%20fill='%235E8E3E'/%3e%3c/svg%3e" alt="Shopify.dev" class="block dark:hidden"/><img src="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='60'%20height='24'%20viewBox='0%200%2060%2024'%20fill='none'%3e%3cpath%20d='M32.083%2017.13a1.21%201.21%200%200%200%201.193-1.194%201.208%201.208%200%200%200-1.193-1.183%201.188%201.188%200%201%200%200%202.376Zm5.746-.006c1.233%200%201.874-.71%202.168-1.347h.09V17h2.087V6.818h-2.113v3.828h-.064c-.284-.621-.895-1.382-2.173-1.382-1.675%200-3.092%201.303-3.092%203.928%200%202.555%201.357%203.932%203.097%203.932Zm.671-1.685c-1.039%200-1.606-.925-1.606-2.257%200-1.323.557-2.232%201.606-2.232%201.03%200%201.606.87%201.606%202.232s-.587%202.257-1.606%202.257Zm8.896%201.71c1.889%200%203.161-.92%203.46-2.337l-1.959-.129c-.214.582-.76.885-1.467.885-1.059%200-1.73-.7-1.73-1.84v-.004h5.2v-.582c0-2.595-1.57-3.878-3.589-3.878-2.247%200-3.704%201.596-3.704%203.953%200%202.42%201.437%203.932%203.789%203.932ZM45.7%2012.411c.045-.87.706-1.566%201.646-1.566.92%200%201.556.656%201.561%201.566H45.7Zm13.483-3.047h-2.242l-1.58%205.463h-.08l-1.586-5.463h-2.238L54.127%2017h2.386l2.67-7.636Z'%20fill='%23fff'/%3e%3cpath%20d='M18.392%204.621a.231.231%200%200%200-.208-.195c-.087-.008-1.78-.034-1.78-.034s-1.418-1.387-1.557-1.528c-.14-.142-.414-.099-.52-.067l-.712.222a5.053%205.053%200%200%200-.34-.844C12.77%201.205%2012.032.691%2011.139.69h-.003c-.062%200-.124.006-.186.01a2.75%202.75%200%200%200-.08-.093c-.39-.42-.888-.624-1.485-.606-1.153.033-2.3.873-3.232%202.364C5.5%203.415%205%204.733%204.86%205.754c-1.324.413-2.25.702-2.27.71-.668.21-.689.231-.776.867C1.748%207.81%200%2021.445%200%2021.445L14.65%2024%2021%2022.408%2018.391%204.621Zm-5.51-1.373-1.137.355c-.008-.588-.078-1.407-.35-2.115.875.167%201.305%201.165%201.487%201.76Zm-1.903.595-2.446.764c.236-.913.684-1.822%201.235-2.418.205-.222.491-.469.83-.61.32.671.388%201.621.38%202.264ZM9.409.775c.27-.006.498.054.692.183a3.34%203.34%200%200%200-.895.703c-.732.792-1.293%202.022-1.517%203.209l-2.009.627C6.077%203.629%207.63.827%209.408.775Z'%20fill='%2395BF47'/%3e%3cpath%20d='m11.131%207.719-.737%202.782s-.823-.377-1.798-.315c-1.43.091-1.445%201-1.43%201.229.077%201.244%203.323%201.516%203.506%204.431.143%202.293-1.206%203.862-3.15%203.986-2.334.148-3.619-1.24-3.619-1.24l.494-2.121s1.294.984%202.329.918c.676-.043.917-.598.893-.99-.102-1.624-2.745-1.528-2.912-4.195-.14-2.245%201.321-4.52%204.546-4.724%201.242-.08%201.878.239%201.878.239Z'%20fill='%23fff'/%3e%3cpath%20d='M18.184%204.426c-.086-.007-1.78-.033-1.78-.033s-1.417-1.388-1.557-1.529a.345.345%200%200%200-.197-.091l.001%2021.226L21%2022.408%2018.393%204.622a.232.232%200%200%200-.209-.196Z'%20fill='%235E8E3E'/%3e%3c/svg%3e" alt="Shopify.dev" class="hidden dark:block"/><span class="text text-sm lowercase leading-snug border rounded-xs px-100">Docs</span></a></div><div class="shrink-0 hidden sm:block"><nav class="flex flex-row items-baseline text-sm"><a class="text hover:text-bright focus:text-bright px-200 py-150 rounded" href="/docs/apps" data-discover="true">Apps</a><a class="text hover:text-bright focus:text-bright px-200 py-150 rounded" href="/docs/storefronts" data-discover="true">Storefronts</a><div><button type="button" class="group inline-block text hover:text-bright focus:text-bright cursor-pointer z-30 py-100 pl-200 pr-100 rounded" aria-haspopup="dialog" aria-expanded="false" aria-controls="radix-:Rrin5:" data-state="closed">APIs and references<svg width="20" height="20" class="text-icon group-hover:text-icon-hover group-focus:text-icon-hover group-active:text-icon-active -translate-y-50 inline opacity-50" role="img"><use href="#CaretDownMedium"></use></svg></button></div></nav></div><div class="flex-1 shrink-1 flex items-center justify-end gap-200 md:gap-350 text-sm"><button id="open-search" type="button" class="_SearchButton_l42iu_1" aria-haspopup="dialog"><svg width="20" height="20" class="_SearchButtonIconDesktop_l42iu_36 _AnimationBottom_l42iu_94" role="img"><use href="#SearchMedium"></use></svg><svg width="20" height="20" class="_MagicSparkleIconDesktop_l42iu_75 _AnimationTop_l42iu_101" role="img"><use href="#ScintillateMedium"></use></svg><span class="_SearchButtonLabel_l42iu_32">search + assistant</span><svg width="16" height="16" class="_SearchLauncherIcon_l42iu_26" role="img"><use href="#SearchLauncherSmall"></use></svg><svg width="20" height="20" class="_SearchButtonIconMobile_l42iu_16 _AnimationBottom_l42iu_94" role="img"><use href="#SearchMedium"></use></svg><svg width="20" height="20" class="_MagicSparkleIconMobile_l42iu_17 _AnimationTop_l42iu_101" role="img"><use href="#ScintillateMedium"></use></svg></button><div class="mx-100"><button type="button" aria-label="Toggle dark mode" aria-live="polite"><div class="relative w-500 h-500 overflow-hidden"><svg width="20" height="20" class="absolute left-0 top-50 transition-transform duration-500 ease-out delay-200 translate-y-500 dark:translate-y-0 text-[#ebaf26]" role="img"><use href="#LightModeMedium"></use></svg><svg width="20" height="20" class="absolute left-0 top-50 transition-transform duration-500 ease-out delay-200 translate-y-0 dark:translate-y-500 text-subdued" role="img"><use href="#DarkModeMedium"></use></svg></div></button></div><a class="_Action_q26z0_1" href="https://partners.shopify.com/organizations?shpxid=222dd762-CA08-48FF-E4D4-FF926B8FFCAD">Log in</a><a class="_Action_q26z0_1 _HideInMobile_q26z0_11" href="https://partners.shopify.com/signup/developer?shpxid=222dd762-CA08-48FF-E4D4-FF926B8FFCAD">Sign up</a></div></header><div class="min-h-[calc(100vh-48px)] flex flex-col"><main><div class="_ChangelogHero_185tp_1"><div class="_ProseContainer_185tp_14"><h1 class="_HeroHeading_185tp_32">Developer changelog</h1><p class="_HeroSubhead_185tp_38">Subscribe to the changelog to stay up to date on recent changes to Shopify’s APIs and other developer products, as well as preview upcoming features and beta releases.</p><span class="_HeroRSSLink_185tp_44"><a href="/changelog/feed.xml" target="_BLANK" rel="noreferrer">RSS Updates</a></span></div><style> .Mode-Dark { .-httpscdnshopifycomshopifycloudshopify-devproductionassetshero-light-Drov1vFSpnghttpscdnshopifycomshopifycloudshopify-devproductionassetshero-dark-B9onMHn1png { background-image: url(https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/hero-dark-B9onMHn1.png); } } .Mode-Light { .-httpscdnshopifycomshopifycloudshopify-devproductionassetshero-light-Drov1vFSpnghttpscdnshopifycomshopifycloudshopify-devproductionassetshero-dark-B9onMHn1png { background-image: url(https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/hero-light-Drov1vFS.png); } } </style><div class="_ImageContainer_185tp_115"><div class="-httpscdnshopifycomshopifycloudshopify-devproductionassetshero-light-Drov1vFSpnghttpscdnshopifycomshopifycloudshopify-devproductionassetshero-dark-B9onMHn1png _HeroImage_185tp_142"></div></div></div><div class="w-constraint-xl mx-auto"><div class="_ChangelogContainer_qc8tn_1"><div class="_FiltersContainer_qc8tn_12"><form method="get" action="/changelog" class="flex flex-col gap-300" style="font:var(--font-sans-font-body-minor-base)" data-discover="true"><div class="_SearchInputContainer_tum2g_1"><label id="changelog_searchLabel" for="changelog_search" class="sr-only">Search changelog</label><div class="_SearchInputIconContainer_tum2g_5 _SearchInputIconContainerLeft_tum2g_12"><svg width="20" height="20" class="_SearchInputIcon_tum2g_5" role="img"><use href="#SearchMedium"></use></svg></div><input name="changelog_search" type="text" aria-labelledby="changelog_searchLabel" autoComplete="off" placeholder="Search changelog" class="_SearchInput_tum2g_1" value=""/></div><div class="flex flex-col gap-200 p-300 pt-200 rounded-sm bg-surface"><div class="flex flex-row justify-between"><span role="heading" aria-level="2">Filter by tag</span></div><div class="_CheckboxContainer_12int_1"><button type="button" role="checkbox" aria-checked="false" data-state="unchecked" value="on" class="_CheckboxRoot_12int_7" id="api"></button><input type="checkbox" aria-hidden="true" style="transform:translateX(-100%);position:absolute;pointer-events:none;opacity:0;margin:0" tabindex="-1" value="on"/><label id="apiLabel" for="api" class="_CheckboxLabel_12int_24">API</label></div><div class="_CheckboxContainer_12int_1"><button type="button" role="checkbox" aria-checked="false" data-state="unchecked" value="on" class="_CheckboxRoot_12int_7" id="tools"></button><input type="checkbox" aria-hidden="true" style="transform:translateX(-100%);position:absolute;pointer-events:none;opacity:0;margin:0" tabindex="-1" value="on"/><label id="toolsLabel" for="tools" class="_CheckboxLabel_12int_24">Tools</label></div><div class="_CheckboxContainer_12int_1"><button type="button" role="checkbox" aria-checked="false" data-state="unchecked" value="on" class="_CheckboxRoot_12int_7" id="shopify_app_store"></button><input type="checkbox" aria-hidden="true" style="transform:translateX(-100%);position:absolute;pointer-events:none;opacity:0;margin:0" tabindex="-1" value="on"/><label id="shopify_app_storeLabel" for="shopify_app_store" class="_CheckboxLabel_12int_24">Shopify App Store</label></div><div class="_CheckboxContainer_12int_1"><button type="button" role="checkbox" aria-checked="false" data-state="unchecked" value="on" class="_CheckboxRoot_12int_7" id="dev_themes"></button><input type="checkbox" aria-hidden="true" style="transform:translateX(-100%);position:absolute;pointer-events:none;opacity:0;margin:0" tabindex="-1" value="on"/><label id="dev_themesLabel" for="dev_themes" class="_CheckboxLabel_12int_24">Themes</label></div><div class="_CheckboxContainer_12int_1"><button type="button" role="checkbox" aria-checked="false" data-state="unchecked" value="on" class="_CheckboxRoot_12int_7" id="platform"></button><input type="checkbox" aria-hidden="true" style="transform:translateX(-100%);position:absolute;pointer-events:none;opacity:0;margin:0" tabindex="-1" value="on"/><label id="platformLabel" for="platform" class="_CheckboxLabel_12int_24">Platform</label></div><div class="_CheckboxContainer_12int_1"><button type="button" role="checkbox" aria-checked="false" data-state="unchecked" value="on" class="_CheckboxRoot_12int_7" id="shopify_theme_store"></button><input type="checkbox" aria-hidden="true" style="transform:translateX(-100%);position:absolute;pointer-events:none;opacity:0;margin:0" tabindex="-1" value="on"/><label id="shopify_theme_storeLabel" for="shopify_theme_store" class="_CheckboxLabel_12int_24">Shopify Theme Store</label></div><div class="_CheckboxContainer_12int_1"><button type="button" role="checkbox" aria-checked="false" data-state="unchecked" value="on" class="_CheckboxRoot_12int_7" id="built_for_shopify"></button><input type="checkbox" aria-hidden="true" style="transform:translateX(-100%);position:absolute;pointer-events:none;opacity:0;margin:0" tabindex="-1" value="on"/><label id="built_for_shopifyLabel" for="built_for_shopify" class="_CheckboxLabel_12int_24">Built For Shopify</label></div><div class="_CheckboxContainer_12int_1"><button type="button" role="checkbox" aria-checked="false" data-state="unchecked" value="on" class="_CheckboxRoot_12int_7" id="action"></button><input type="checkbox" aria-hidden="true" style="transform:translateX(-100%);position:absolute;pointer-events:none;opacity:0;margin:0" tabindex="-1" value="on"/><label id="actionLabel" for="action" class="_CheckboxLabel_12int_24"><span class="MinorTheme-Critical text-default">Action Required</span></label></div><hr class="width-full m-100 text-divider"/><div role="heading" aria-level="2">Filter by release</div><div class="flex gap-300"><button type="button" class="inline px-200 py-50 rounded-xs font-mono hover:text-bright bg-form-borderless hover:bg-form-borderless-hover cursor-pointer">2025-04</button><button type="button" class="inline px-200 py-50 rounded-xs font-mono hover:text-bright bg-form-borderless hover:bg-form-borderless-hover cursor-pointer">2025-01</button></div></div></form></div><div class="_PostsContainer_qc8tn_23"><ul><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T12:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28">Payments Apps API</span><span class="_Tag_iyybd_28">Storefront GraphQL API</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/stable-graphql-api-versions-to-backfill-enum-values" data-discover="true"><div class="_Markdown_19nbi_4">Stable GraphQL API versions to backfill enum values</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Stable API versions now retroactively add GraphQL Enum values. Refresh introspection caches and implement catch-alls to avoid toolchain disruptions.</p> </div><a href="/changelog/stable-graphql-api-versions-to-backfill-enum-values" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T12:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/new-enum-values-for-fulfillmentorderrejectionreason" data-discover="true"><div class="_Markdown_19nbi_4">New enum values for <code>FulfillmentOrderRejectionReason</code></div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>We've added new <code><span class="PreventFireFoxApplyingGapToWBR">Fulfillment<wbr/>Order<wbr/>Rejection<wbr/>Reason</span></code> enum values for more detailed error messages.</p> </div><a href="/changelog/new-enum-values-for-fulfillmentorderrejectionreason" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T12:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Customer Account API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/exposed-incontext-directive-with-the-customer-account-api" data-discover="true"><div class="_Markdown_19nbi_4"><code>@inContext</code> directive added to the Customer Account API</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p><code><span class="PreventFireFoxApplyingGapToWBR">@in<wbr/>Context</span></code> directive added to the 2025-04 version of the Customer Account API to help integrate with international markets</p> </div><a href="/changelog/exposed-incontext-directive-with-the-customer-account-api" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T12:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/productset-and-customerset-mutations-now-support-upserts" data-discover="true"><div class="_Markdown_19nbi_4"><code>productSet</code> and <code>customerSet</code> mutations now support upserts and custom IDs</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>As of API version 2025-04 of the GraphQL Admin API, the <code><span class="PreventFireFoxApplyingGapToWBR">product<wbr/>Set</span></code> and <code><span class="PreventFireFoxApplyingGapToWBR">customer<wbr/>Set</span></code> mutations can upsert by <code>identifier</code>, simplifying record management.</p> </div><a href="/changelog/productset-and-customerset-mutations-now-support-upserts" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-28T12:00:00-04:00">March 28, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">POS Extensions</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/pos-ui-extensions-2025-04-update" data-discover="true"><div class="_Markdown_19nbi_4">POS UI Extensions 2025-04 Update</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Renamed NewTextFieldProps to TextFieldProps. Added support for transaction complete, cash tracking, and receipt footer targets. Introduced POSReceiptBlock component for receipt footer.</p> </div><a href="/changelog/pos-ui-extensions-2025-04-update" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T12:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/add-new-customerpaymentmethodrevocationreasons" data-discover="true"><div class="_Markdown_19nbi_4">New enum values for <code>CustomerPaymentMethodRevocationReason</code></div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Added new enum values to <code><span class="PreventFireFoxApplyingGapToWBR">Customer<wbr/>Payment<wbr/>Method<wbr/>Revocation<wbr/>Reason</span></code>: <code><span class="PreventFireFoxApplyingGapToWBR">C<wbr/>U<wbr/>S<wbr/>T<wbr/>O<wbr/>M<wbr/>E<wbr/>R<wbr/>_R<wbr/>E<wbr/>D<wbr/>A<wbr/>C<wbr/>T<wbr/>E<wbr/>D</span></code>, <code><span class="PreventFireFoxApplyingGapToWBR">T<wbr/>O<wbr/>O<wbr/>_M<wbr/>A<wbr/>N<wbr/>Y<wbr/>_C<wbr/>O<wbr/>N<wbr/>S<wbr/>E<wbr/>C<wbr/>U<wbr/>T<wbr/>I<wbr/>V<wbr/>E<wbr/>_F<wbr/>A<wbr/>I<wbr/>L<wbr/>U<wbr/>R<wbr/>E<wbr/>S</span></code>, <code><span class="PreventFireFoxApplyingGapToWBR">C<wbr/>V<wbr/>V<wbr/>_A<wbr/>T<wbr/>T<wbr/>E<wbr/>M<wbr/>P<wbr/>T<wbr/>S<wbr/>_L<wbr/>I<wbr/>M<wbr/>I<wbr/>T<wbr/>_E<wbr/>X<wbr/>C<wbr/>E<wbr/>E<wbr/>D<wbr/>E<wbr/>D</span></code></p> </div><a href="/changelog/add-new-customerpaymentmethodrevocationreasons" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T12:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/new-theme-file-metadata-fields-added-to-onlinestorethemefileoperationresult-object" data-discover="true"><div class="_Markdown_19nbi_4">New theme file metadata fields added to <code>OnlineStoreThemeFileOperationResult </code> object</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>The <code><span class="PreventFireFoxApplyingGapToWBR">theme<wbr/>Files<wbr/>Upsert</span></code> mutation now returns theme file metadata directly, eliminating the need for extra fetch requests to verify updates.</p> </div><a href="/changelog/new-theme-file-metadata-fields-added-to-onlinestorethemefileoperationresult-object" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T12:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28">Webhook</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/new-finance-kyc-information-field-available-for-shopify-approved-finance-apps" data-discover="true"><div class="_Markdown_19nbi_4">New finance KYC information field available for Shopify-approved finance apps</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Shopify-approved finance apps can access shop finance details and subscribe to related webhooks</p> </div><a href="/changelog/new-finance-kyc-information-field-available-for-shopify-approved-finance-apps" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T12:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/customer-rfm-group-now-available-in-graphql-admin-api" data-discover="true"><div class="_Markdown_19nbi_4">Customer RFM group now available in GraphQL Admin API</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Added rfmGroup field to customer statistics in the Admin GraphQL Admin API to expose customer segmentation data based on purchasing patterns.</p> </div><a href="/changelog/customer-rfm-group-now-available-in-graphql-admin-api" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T12:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-07</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/draftordercount-available-in-2025-07" data-discover="true"><div class="_Markdown_19nbi_4"><code>draftOrderCount</code> available in 2025-07</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>The <a href="https://shopify.dev/docs/api/admin-graphql/2025-07/queries/draftOrderCount"><code><span class="PreventFireFoxApplyingGapToWBR">draft<wbr/>Order<wbr/>Count</span></code></a> query is now available in the 2025-07 stable version of the GraphQL Admin API. Previously, it was...</p> </div><a href="/changelog/draftordercount-available-in-2025-07" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T12:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/checkout-ui-extensions-attributes-api-now-supports-removing-cart-and-checkout-attributes" data-discover="true"><div class="_Markdown_19nbi_4">Checkout UI extensions: Attributes API now supports removing cart and checkout attributes</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>You can now remove cart and checkout attributes by passing the attribute key you wish to remove with the AttributeRemoveChange property.</p> </div><a href="/changelog/checkout-ui-extensions-attributes-api-now-supports-removing-cart-and-checkout-attributes" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T12:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Payments Apps API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-07</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/support-for-card-not-present-transaction-details-in-paymentsapps-api" data-discover="true"><div class="_Markdown_19nbi_4">Support for card not present transaction details in PaymentsApps API</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>The Payments Apps API now supports AVS and CVV details for card-not-present transactions.</p> </div><a href="/changelog/support-for-card-not-present-transaction-details-in-paymentsapps-api" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-31T12:00:00-04:00">March 31, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/location-id-queryable-with-inventory-scopes" data-discover="true"><div class="_Markdown_19nbi_4">Location ID Queryable with Inventory Scopes</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p><code>location.id</code> can now be queried with <code><span class="PreventFireFoxApplyingGapToWBR">read<wbr/>_inventory</span></code> or <code><span class="PreventFireFoxApplyingGapToWBR">read<wbr/>_locations</span></code> scopes. Other <code>Location</code> fields still need <code><span class="PreventFireFoxApplyingGapToWBR">read<wbr/>_locations</span></code>. Applies to all API versions.</p> </div><a href="/changelog/location-id-queryable-with-inventory-scopes" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T01:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/view-gift-card-maximum-values" data-discover="true"><div class="_Markdown_19nbi_4">View gift card maximum values</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Use the <code><span class="PreventFireFoxApplyingGapToWBR">gift<wbr/>Card<wbr/>Configuration</span></code> query to retrieve the maximum values for purchased and issued gift cards.</p> </div><a href="/changelog/view-gift-card-maximum-values" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T12:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Webhook</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/new-webhook-to-track-updates-to-checkout-and-accounts-configuration" data-discover="true"><div class="_Markdown_19nbi_4">New webhook to track updates to checkout and accounts configuration </div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Use this webhook to learn when your users have upgraded their Thank you and Order status pages.</p> </div><a href="/changelog/new-webhook-to-track-updates-to-checkout-and-accounts-configuration" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T00:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Customer Account API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/new-field-fulfillmentstatus-added-to-the-order-type-of-the-customer-account-api" data-discover="true"><div class="_Markdown_19nbi_4">New field <code>fulfillmentStatus</code> added to the <code>Order</code> type of the Customer Account API</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>API v2025-04 adds <code><span class="PreventFireFoxApplyingGapToWBR">fulfillment<wbr/>Status</span></code> to <code>Order</code>, showing the order's overall fulfillment status for display.</p> </div><a href="/changelog/new-field-fulfillmentstatus-added-to-the-order-type-of-the-customer-account-api" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T00:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/new-articleauthors-query-in-the-graphql-admin-api" data-discover="true"><div class="_Markdown_19nbi_4">New <code>articleAuthors</code> query in the GraphQL Admin API</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>To fetch a list of article authors for a store, use the new <code><span class="PreventFireFoxApplyingGapToWBR">article<wbr/>Authors</span></code> query.</p> </div><a href="/changelog/new-articleauthors-query-in-the-graphql-admin-api" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T00:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/new-filter-options-added-to-pages-articles-and-comments" data-discover="true"><div class="_Markdown_19nbi_4">New filter options added to <code>pages</code>, <code>articles</code>, and <code>comments</code> queries</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p><code>articles</code>, <code>pages</code>, and <code>comments</code> queries now have full filter parity with the REST Admin API</p> </div><a href="/changelog/new-filter-options-added-to-pages-articles-and-comments" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T00:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Tools</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/developer-preview-localhost-based-development-for-shopify-app-dev" data-discover="true"><div class="_Markdown_19nbi_4">Developer Preview: Localhost-based development for <code>shopify app dev</code></div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Developer Preview: Serve your app on localhost with a self-signed HTTPS certificate using Shopify CLI.</p> </div><a href="/changelog/developer-preview-localhost-based-development-for-shopify-app-dev" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-31T14:00:00-04:00">March 31, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28">Admin REST API</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/inventoryitem-webhooks-accessible-with-product-scopes" data-discover="true"><div class="_Markdown_19nbi_4">InventoryItem Webhooks Accessible with Product Scopes</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Webhook scopes for InventoryItem are now flexible, allowing <code><span class="PreventFireFoxApplyingGapToWBR">read<wbr/>_inventory</span></code> or <code><span class="PreventFireFoxApplyingGapToWBR">read<wbr/>_products</span></code> for <code><span class="PreventFireFoxApplyingGapToWBR">I<wbr/>N<wbr/>V<wbr/>E<wbr/>N<wbr/>T<wbr/>O<wbr/>R<wbr/>Y<wbr/>_I<wbr/>T<wbr/>E<wbr/>M<wbr/>S<wbr/>_C<wbr/>R<wbr/>E<wbr/>A<wbr/>T<wbr/>E</span></code>, <code><span class="PreventFireFoxApplyingGapToWBR">D<wbr/>E<wbr/>L<wbr/>E<wbr/>T<wbr/>E</span></code>, <code><span class="PreventFireFoxApplyingGapToWBR">U<wbr/>P<wbr/>D<wbr/>A<wbr/>T<wbr/>E</span></code> across all API versions.</p> </div><a href="/changelog/inventoryitem-webhooks-accessible-with-product-scopes" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-31T09:00:00-04:00">March 31, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Built for Shopify</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/ship-carry-out-in-a-single-order-on-pos-is-now-available-for-retail-pro-merchants-using-eligible-tax-software" data-discover="true"><div class="_Markdown_19nbi_4">Ship and carry out in a single order on POS is now available for Retail Pro Merchants using eligible tax software</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>How Retail Ship and carry out orders will impact the behaviour of order and fulfillment order objects</p> </div><a href="/changelog/ship-carry-out-in-a-single-order-on-pos-is-now-available-for-retail-pro-merchants-using-eligible-tax-software" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-31T12:00:00-04:00">March 31, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-07</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/new-additions-to-delivery-promise-participants-apis" data-discover="true"><div class="_Markdown_19nbi_4">New additions to delivery promise participants APIs</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Locations can now be used in delivery promise participant queries and mutations in the unstable GraphQL Admin API, with full release in 2025-07. Filter products by delivery promise participants.</p> </div><a href="/changelog/new-additions-to-delivery-promise-participants-apis" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-31T11:00:00-04:00">March 31, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Platform</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/hydrogen-march-2025-release" data-discover="true"><div class="_Markdown_19nbi_4">Hydrogen March 2025 Release</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Hydrogen v2025.1.3 adds support for Vite 6 and enables the <code><span class="PreventFireFoxApplyingGapToWBR">v3<wbr/>_route<wbr/>Config</span></code> future flag for Remix.</p> </div><a href="/changelog/hydrogen-march-2025-release" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-31T07:00:00-04:00">March 31, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Platform</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/app-bridge-title-bar-visual-update" data-discover="true"><div class="_Markdown_19nbi_4">App Bridge Title Bar visual update</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Apps will see an improved visual appearance of the <a href="https://shopify.dev/docs/api/app-bridge-library/web-components/ui-title-bar">App Bridge Title Bar API</a> starting to rollout, to match the new...</p> </div><a href="/changelog/app-bridge-title-bar-visual-update" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T13:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28">Webhook</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/new-planhandle-field-managed-pricing" data-discover="true"><div class="_Markdown_19nbi_4">New <code>planHandle</code> field for managed pricing app subscription plans</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>App subscription plans now include persistent plan handles, making it easier to query for plan data.</p> </div><a href="/changelog/new-planhandle-field-managed-pricing" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-31T12:00:00-04:00">March 31, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Storefront GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-07</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/storefront-api-cart-exposes-selling-plan-errors" data-discover="true"><div class="_Markdown_19nbi_4">Storefront API Cart now exposes selling plan errors</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Version 2025-07 of the GraphQL Storefront API improves error handling for selling plans. Cart mutations now specify errors for missing or inapplicable selling plans.</p> </div><a href="/changelog/storefront-api-cart-exposes-selling-plan-errors" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-27T12:00:00-04:00">March 27, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Themes</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/liquid-support-for-oklch-colors" data-discover="true"><div class="_Markdown_19nbi_4">Liquid support for OKLCH colors</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Liquid now supports OKLCH colors, enabling a broader color range. New features include <code><span class="PreventFireFoxApplyingGapToWBR">color<wbr/>_to<wbr/>_oklch</span></code> filter and enhanced <code>color</code> object properties for OKLCH.</p> </div><a href="/changelog/liquid-support-for-oklch-colors" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-26T12:00:00-04:00">March 26, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28">Admin REST API</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/re-enabled-customer-search-terms" data-discover="true"><div class="_Markdown_19nbi_4">Re-enabled customer search terms in the GraphQL and REST Admin APIs</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>The GraphQL and REST Admin API now support various customer-related search terms that were disabled in API version 2024-07. For example: <code><span class="PreventFireFoxApplyingGapToWBR">accepts<wbr/>_marketing</span></code>, <code>city</code>, <code>company</code>, and more.</p> </div><a href="/changelog/re-enabled-customer-search-terms" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-24T13:00:00-04:00">March 24, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/draft-orders-automatically-purged-after-1-year-of-inactivity" data-discover="true"><div class="_Markdown_19nbi_4">Draft Orders automatically purged after 1 year of inactivity</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Draft orders inactive for a year will auto-delete starting April 1, 2026 to improve data management and app performance. Applies to orders created after April 1, 2025.</p> </div><a href="/changelog/draft-orders-automatically-purged-after-1-year-of-inactivity" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-22T12:00:00-04:00">March 22, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/custom-ids-more-lookups" data-discover="true"><div class="_Markdown_19nbi_4">Using custom ids to look up collections, locations, orders, and product variants</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>The 2025-04 Admin API allows custom identifier lookup for collections, locations, orders, and product variants.</p> </div><a href="/changelog/custom-ids-more-lookups" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-31T15:30:00-04:00">March 31, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Tools</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/mcp-server-for-the-shopify-dev-assistant" data-discover="true"><div class="_Markdown_19nbi_4">Shopify.dev MCP Server</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>MCP server for Shopify dev assistant</p> </div><a href="/changelog/mcp-server-for-the-shopify-dev-assistant" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-21T12:00:00-04:00">March 21, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/retail-exchanges-now-use-the-shopify-exchanges-implementation" data-discover="true"><div class="_Markdown_19nbi_4">Retail Exchanges now use the Shopify Exchanges implementation</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Shopify Exchange Platform now supports Retail Exchanges, consolidating operations into a single Return. Update integrations for unified sales agreements. ExchangeV2 APIs deprecated in 1 year.</p> </div><a href="/changelog/retail-exchanges-now-use-the-shopify-exchanges-implementation" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-19T10:00:00-04:00">March 19, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Shopify App Store</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/ads-are-now-available-on-mobile-plus-more-surfaces-to-target-merchants" data-discover="true"><div class="_Markdown_19nbi_4">Ads are now available on mobile, plus more surfaces to target merchants</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Shopify App Store now supports mobile ads and targeting on homepage and category page ads. Set bid prices for devices and access detailed mobile ad reports via Ads Manager in your Partner Dashboard.</p> </div><a href="/changelog/ads-are-now-available-on-mobile-plus-more-surfaces-to-target-merchants" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-17T09:00:00-04:00">March 17, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28 MinorTheme-Critical">Action Required</span><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/deprecating-pricelistusererrorcode-values" data-discover="true"><div class="_Markdown_19nbi_4">Deprecating PriceListUserErrorCode values</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Starting from 2025-04, unused <code><span class="PreventFireFoxApplyingGapToWBR">Price<wbr/>List<wbr/>Error<wbr/>Code</span></code> values will be removed.</p> </div><a href="/changelog/deprecating-pricelistusererrorcode-values" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-13T13:00:00-04:00">March 13, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28 MinorTheme-Critical">Action Required</span><span class="_Tag_iyybd_28">API</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/now-available-js-buy-sdk-v30" data-discover="true"><div class="_Markdown_19nbi_4">Now available: JS Buy SDK v3.0 </div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>JS Buy SDK v3.0 is now available</p> </div><a href="/changelog/now-available-js-buy-sdk-v30" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-11T12:00:00-04:00">March 11, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/adding-defaultphonenumber-field-to-customer" data-discover="true"><div class="_Markdown_19nbi_4">Adding defaultPhoneNumber field to Customer</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>As of GraphQL Admin API version <strong>2025-04</strong>, the <code><span class="PreventFireFoxApplyingGapToWBR">default<wbr/>Phone<wbr/>Number</span></code> field is introduced on the <code>Customer</code> object to support querying a customer's phone number and marketing state.</p> <p>Learn more...</p> </div><a href="/changelog/adding-defaultphonenumber-field-to-customer" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-04-01T12:00:00-04:00">April 1, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/adding-defaultemailaddress-field-to-customer" data-discover="true"><div class="_Markdown_19nbi_4">Adding defaultEmailAddress field to Customer</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>As of GraphQL Admin API version <strong>2025-04</strong>, the <code><span class="PreventFireFoxApplyingGapToWBR">default<wbr/>Email<wbr/>Address</span></code> field is introduced on the <code>Customer</code> object to support querying a customer's email address and marketing state.</p> <p>Learn more...</p> </div><a href="/changelog/adding-defaultemailaddress-field-to-customer" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-07T12:00:00-05:00">March 7, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28 MinorTheme-Critical">Action Required</span><span class="_Tag_iyybd_28">POS Extensions</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/end-of-compatibility-for-old-pos-ui-extensions-versions" data-discover="true"><div class="_Markdown_19nbi_4">End of Compatibility for Old POS UI Extensions Versions</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Shopify API 2025.04 ends support for specific POS UI Extension versions. Update to the latest version to ensure functionality with POS 9.31 and beyond.</p> </div><a href="/changelog/end-of-compatibility-for-old-pos-ui-extensions-versions" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-07T12:00:00-05:00">March 7, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">API</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/shopify-collective-developer-documentation" data-discover="true"><div class="_Markdown_19nbi_4">New developer documentation now available for Shopify Collective</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>New Shopify Collective docs offer guidance on integrating systems using Shopify's API and webhooks, enhancing workflow integration for developers.</p> </div><a href="/changelog/shopify-collective-developer-documentation" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-06T12:00:00-05:00">March 6, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">POS Extensions</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/pos-ui-extensions-modal-update" data-discover="true"><div class="_Markdown_19nbi_4">POS UI Extensions: Modal update</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>In POS version 9.30, the POS UI Extensions modal will be enhanced to prevent accidental dismissals. You won't be able to dismiss the modal by swiping down or tapping outside of it. This update is...</p> </div><a href="/changelog/pos-ui-extensions-modal-update" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-05T12:00:00-05:00">March 5, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/order-edit-add-variant-mutation-applies-contextual-pricing-by-default" data-discover="true"><div class="_Markdown_19nbi_4">orderEditAddVariant mutation applies contextual pricing by default</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>As of the 2025-04 API version, the <code><span class="PreventFireFoxApplyingGapToWBR">Order<wbr/>Edit<wbr/>Add<wbr/>Variant</span></code> API will adhere to the pricing configurations set for Markets and Company Locations.</p> </div><a href="/changelog/order-edit-add-variant-mutation-applies-contextual-pricing-by-default" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-04T12:00:00-05:00">March 4, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">API</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/cart-ajax-api-inventory-error-message-updates" data-discover="true"><div class="_Markdown_19nbi_4">[Cart AJAX API] Inventory error message updates</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Updated AJAX API error messages for inventory requests: "Only available quantity added" and "Max quantity in cart." Affects <code>add.js</code>, <code>change.js</code>, and <code>update.js</code> endpoints.</p> </div><a href="/changelog/cart-ajax-api-inventory-error-message-updates" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-03T09:00:00-05:00">March 3, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Tools</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/introducing-the-dev-assistant-vscode-extension" data-discover="true"><div class="_Markdown_19nbi_4">Introducing the .dev Assistant VSCode Extension</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>Introducing the .dev Assistant extension for VSCode, enhancing your development workflow directly in the editor for improved efficiency.</p> </div><a href="/changelog/introducing-the-dev-assistant-vscode-extension" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-03T00:00:00-05:00">March 3, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/new-graphql-apis-for-inventory-transfers-management" data-discover="true"><div class="_Markdown_19nbi_4">New GraphQL APIs for Inventory Transfers Management</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>New Transfers and Shipment APIs enable seamless integration with IMS/ERP, allowing full transfer management. Currently in "Unstable" stage, expected release candidate by July 2025.</p> </div><a href="/changelog/new-graphql-apis-for-inventory-transfers-management" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-02T09:00:00-05:00">March 2, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28 MinorTheme-Critical">Action Required</span><span class="_Tag_iyybd_28">Admin REST API</span><span class="_Tag_iyybd_28">Storefront GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/checkout-apis-will-be-shut-down-april-1-2025" data-discover="true"><div class="_Markdown_19nbi_4">Checkout APIs will be shut down April 1, 2025</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>All impacted apps need to update to the Storefront Cart API before April 1, 2025 to avoid disruptions. </p> </div><a href="/changelog/checkout-apis-will-be-shut-down-april-1-2025" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-03-18T12:00:00-04:00">March 18, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-07</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/feesale-fee-field-is-nullable-as-of-2025-07" data-discover="true"><div class="_Markdown_19nbi_4">FeeSale fee field is nullable as of 2025-07</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>As of 2025-07, FeeSale.fee is nullable, allowing null values for deleted fees. Prior versions return deleted fees. Update your code to handle null fees.</p> </div><a href="/changelog/feesale-fee-field-is-nullable-as-of-2025-07" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-02-28T12:00:00-05:00">February 28, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28 MinorTheme-Critical">Action Required</span><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28">Storefront GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/amazonpay-enumerated-in-digitalwallets" data-discover="true"><div class="_Markdown_19nbi_4">AMAZON_PAY enumerated in DigitalWallets</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>The DigitalWallets enum now includes AMAZON_PAY, enabling its use in Storefront and Admin GraphQL APIs which can determine if Amazon Pay is available to buyers and has been used in transactions.</p> </div><a href="/changelog/amazonpay-enumerated-in-digitalwallets" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-02-24T12:00:00-05:00">February 24, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/graphql-return-actual-deprecation-reasons" data-discover="true"><div class="_Markdown_19nbi_4">The <code>X-Shopify-API-Deprecated-Reason</code> HTTP header will return actual GraphQL deprecations if any</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>As of <code>2025-04</code>, the <code><span class="PreventFireFoxApplyingGapToWBR">X-Shopify-A<wbr/>P<wbr/>I-Deprecated-Reason</span></code> HTTP header will return the list of detected deprecations instead of a generic URL.</p> </div><a href="/changelog/graphql-return-actual-deprecation-reasons" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-02-26T12:00:00-05:00">February 26, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-04</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/new-customer-address-capabilities-in-the-admin-api" data-discover="true"><div class="_Markdown_19nbi_4">New customer address capabilities in the Admin API</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>2025-04 adds <code><span class="PreventFireFoxApplyingGapToWBR">customer<wbr/>Address<wbr/>Create</span></code>, <code><span class="PreventFireFoxApplyingGapToWBR">customer<wbr/>Address<wbr/>Update</span></code>, and <code><span class="PreventFireFoxApplyingGapToWBR">customer<wbr/>Address<wbr/>Delete</span></code> mutations for more granular control on customer addresses.</p> </div><a href="/changelog/new-customer-address-capabilities-in-the-admin-api" data-discover="true">Read full post –></a></li><li class="_ChangelogListEntry_iyybd_1"><time class="_EntryDate_iyybd_14" dateTime="2025-02-27T12:00:00-05:00">February 27, 2025</time><div class="_EntryTags_iyybd_21"><span class="_Tag_iyybd_28 MinorTheme-Critical">Action Required</span><span class="_Tag_iyybd_28">Admin GraphQL API</span><span class="_Tag_iyybd_28 _TagMono_iyybd_37">2025-07</span></div><h3 class="_EntryListTitle_iyybd_41"><a href="/changelog/metafield-description-field-removal" data-discover="true"><div class="_Markdown_19nbi_4">Metafield description input field removal</div></a></h3><div class="_Markdown_19nbi_4 _EntryExcerpt_iyybd_55"><p>The <code>description</code> field for metafields is being removed in <code>unstable</code>.</p> </div><a href="/changelog/metafield-description-field-removal" data-discover="true">Read full post –></a></li></ul><div class="w-full flex justify-between"><div></div><div><a class="_ChangelogButton_qc8tn_27 _NextButton_qc8tn_69" href="/changelog?page=2" data-discover="true">Next<svg width="20" height="20" class="-mr-100" role="img"><use href="#ChevronRightMedium"></use></svg></a></div></div></div></div></div></main><footer class="bg-surface pb-800 p-1000 sm:rounded mt-auto"><div class="w-constraint-lg md:grid-cols-4 gap-500 grid flex-wrap grid-cols-4 mx-auto"><div><h3 class="font-kicker mb-400">Updates</h3><div class="gap-200 flex flex-col"><a class="font-body-minor text" href="/changelog" data-discover="true">Developer changelog</a><a class="font-body-minor text" href="https://shopifypartners.slack.com/">Shopify Partners Slack</a><a class="font-body-minor text" href="https://www.shopify.com/editions">Shopify Editions</a></div></div><div><h3 class="font-kicker mb-400">Business growth</h3><div class="gap-200 flex flex-col"><a class="font-body-minor text" href="https://www.shopify.com/partners?shpxid=222dd762-CA08-48FF-E4D4-FF926B8FFCAD">Shopify Partners Program</a><a class="font-body-minor text" href="https://apps.shopify.com/?shpxid=222dd762-CA08-48FF-E4D4-FF926B8FFCAD">Shopify App Store</a><a class="font-body-minor text" href="https://academy.shopify.com/page/developers?itcat=shopifydev-footer-business-growth&itterm=developers">Shopify Academy</a></div></div><div><h3 class="font-kicker mb-400">Legal</h3><div class="gap-200 flex flex-col"><a class="font-body-minor text" href="https://www.shopify.com/legal/terms?shpxid=222dd762-CA08-48FF-E4D4-FF926B8FFCAD">Terms of service</a><a class="font-body-minor text" href="https://www.shopify.com/legal/api-terms?shpxid=222dd762-CA08-48FF-E4D4-FF926B8FFCAD">API terms of use</a><a class="font-body-minor text" href="https://www.shopify.com/legal/privacy?shpxid=222dd762-CA08-48FF-E4D4-FF926B8FFCAD">Privacy policy</a><a class="font-body-minor text" href="https://www.shopify.com/partners/terms?shpxid=222dd762-CA08-48FF-E4D4-FF926B8FFCAD">Partners Program Agreement</a></div></div><div><h3 class="font-kicker mb-400">Shopify</h3><div class="gap-200 flex flex-col"><a class="font-body-minor text" href="https://www.shopify.com/about?shpxid=222dd762-CA08-48FF-E4D4-FF926B8FFCAD">About Shopify</a><a class="font-body-minor text" href="https://www.shopify.com/plus?shpxid=222dd762-CA08-48FF-E4D4-FF926B8FFCAD">Shopify Plus</a><a class="font-body-minor text" href="https://www.shopify.com/careers?shpxid=222dd762-CA08-48FF-E4D4-FF926B8FFCAD">Careers</a><a class="font-body-minor text" href="https://investors.shopify.com/home/default.aspx?shpxid=222dd762-CA08-48FF-E4D4-FF926B8FFCAD">Investors</a><a class="font-body-minor text" href="https://shopify.com/news?shpxid=7db0d4e4-24E8-4087-58FA-7EE470CA745A">Press and media</a></div></div></div></footer></div></div><script>((storageKey2, restoreKey) => { if (!window.history.state || !window.history.state.key) { let key = Math.random().toString(32).slice(2); window.history.replaceState({ key }, ""); } try { let positions = JSON.parse(sessionStorage.getItem(storageKey2) || "{}"); let storedY = positions[restoreKey || window.history.state.key]; if (typeof storedY === "number") { window.scrollTo(0, storedY); } } catch (error) { console.error(error); sessionStorage.removeItem(storageKey2); } })("react-router-scroll-positions", null)</script><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/entry.client-CminVUE2.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/chunk-GNGMS2XR-CJ15y8y4.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index-BnUJs53q.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/root-DQnyxfLL.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/with-props-BKJv5YNo.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Error404-DIoBfXRl.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/constants-C4j34BLw.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/bugsnag-DzB21Gc5.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/MarkdownRenderer-B6Nj5-Pr.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/v4-C6aID195.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index-PZjyCU-r.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/PageLayout-HCldD9xS.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Icon-DB7RS96Y.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index-B9JUhP26.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/global-wrapper-BkFKWy1K.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/hooks-BWC2bZDb.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/GqlChip-WKOr6mQA.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/_SubmissionMessage-B1v-1s26.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/useClientLayoutEffect-BPxZywlm.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index.module-o_DdfkIn.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/variation-name-BfNofEGX.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Combination-FnFeQEWK.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/_EditorComponent-Dxq5tDBv.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/createLeafMeta-Bzt3wAZf.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/changelog-Ck_pZ_2H.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/_ChangelogEntry-Dv2M7eO8.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index-OP_cY8rj.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/useThemeModeImage-BgiZf6T8.js"/><link rel="modulepreload" href="https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Feedback-U30zKqEH.js"/><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_middleware":false,"unstable_optimizeDeps":false,"unstable_splitRouteModules":false,"unstable_viteEnvironmentApi":false},"ssr":true,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamController = controller;}}).pipeThrough(new TextEncoderStream());</script><script type="module" async="">; import * as route0 from "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/root-DQnyxfLL.js"; import * as route1 from "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/global-wrapper-BkFKWy1K.js"; import * as route2 from "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/changelog-Ck_pZ_2H.js"; window.__reactRouterManifest = { "entry": { "module": "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/entry.client-CminVUE2.js", "imports": [ "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/chunk-GNGMS2XR-CJ15y8y4.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index-BnUJs53q.js" ], "css": [] }, "routes": { "root": { "id": "root", "path": "", "hasAction": false, "hasLoader": false, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/root-DQnyxfLL.js", "imports": [ "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/chunk-GNGMS2XR-CJ15y8y4.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index-BnUJs53q.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/with-props-BKJv5YNo.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Error404-DIoBfXRl.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/constants-C4j34BLw.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/bugsnag-DzB21Gc5.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/MarkdownRenderer-B6Nj5-Pr.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/v4-C6aID195.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index-PZjyCU-r.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/PageLayout-HCldD9xS.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Icon-DB7RS96Y.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index-B9JUhP26.js" ], "css": [ "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/root-Bs6V8FjF.css", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Error404-C3Fl2khE.css", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/PageLayout-BWQveOLj.css", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/MarkdownRenderer-K3wHo5x3.css" ] }, "routes/global-wrapper": { "id": "routes/global-wrapper", "parentId": "root", "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": true, "module": "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/global-wrapper-BkFKWy1K.js", "imports": [ "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/with-props-BKJv5YNo.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/chunk-GNGMS2XR-CJ15y8y4.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/MarkdownRenderer-B6Nj5-Pr.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/hooks-BWC2bZDb.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/GqlChip-WKOr6mQA.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index-BnUJs53q.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/_SubmissionMessage-B1v-1s26.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/useClientLayoutEffect-BPxZywlm.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index.module-o_DdfkIn.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Icon-DB7RS96Y.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index-PZjyCU-r.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/variation-name-BfNofEGX.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/bugsnag-DzB21Gc5.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Error404-DIoBfXRl.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/PageLayout-HCldD9xS.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/v4-C6aID195.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Combination-FnFeQEWK.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/_EditorComponent-Dxq5tDBv.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/createLeafMeta-Bzt3wAZf.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/constants-C4j34BLw.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index-B9JUhP26.js" ], "css": [ "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/global-wrapper-BlPecmOO.css", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/MarkdownRenderer-K3wHo5x3.css", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/GqlChip-DtFD-BE0.css", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/_SubmissionMessage-DvClNAzB.css", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Error404-C3Fl2khE.css", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/PageLayout-BWQveOLj.css", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/_EditorComponent-BW33Qjb_.css" ] }, "routes/changelog": { "id": "routes/changelog", "parentId": "routes/global-wrapper", "path": "changelog", "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasErrorBoundary": false, "module": "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/changelog-Ck_pZ_2H.js", "imports": [ "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/with-props-BKJv5YNo.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/chunk-GNGMS2XR-CJ15y8y4.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/MarkdownRenderer-B6Nj5-Pr.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Icon-DB7RS96Y.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/_ChangelogEntry-Dv2M7eO8.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index.module-o_DdfkIn.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index-PZjyCU-r.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index-OP_cY8rj.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/createLeafMeta-Bzt3wAZf.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index-BnUJs53q.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/useThemeModeImage-BgiZf6T8.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Feedback-U30zKqEH.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/_SubmissionMessage-B1v-1s26.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/variation-name-BfNofEGX.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/bugsnag-DzB21Gc5.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/constants-C4j34BLw.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/v4-C6aID195.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/index-B9JUhP26.js", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Combination-FnFeQEWK.js" ], "css": [ "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/changelog-DuQMWVz-.css", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/MarkdownRenderer-K3wHo5x3.css", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/_ChangelogEntry-BcuNl7l-.css", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/Feedback-DOMdGcIi.css", "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/_SubmissionMessage-DvClNAzB.css" ] } }, "url": "https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/manifest-d3d94d20.js", "version": "d3d94d20" }; window.__reactRouterRouteModules = {"root":route0,"routes/global-wrapper":route1,"routes/changelog":route2}; import("https://cdn.shopify.com/shopifycloud/shopify-dev/production/assets/entry.client-CminVUE2.js");</script></body></html><!--$?--><template id="B:0"></template><!--/$--><div hidden id="S:0"><script>window.__reactRouterContext.streamController.enqueue("[{\"_1\":2,\"_787\":-5,\"_788\":-5},\"loaderData\",{\"_3\":4,\"_145\":146,\"_786\":-5},\"routes/global-wrapper\",{\"_5\":6,\"_94\":95,\"_96\":97,\"_100\":101,\"_144\":15},\"search\",{\"_7\":8,\"_53\":54},\"selectableVersions\",{\"_9\":10,\"_20\":21,\"_26\":27,\"_31\":32,\"_34\":35,\"_37\":38,\"_41\":42,\"_44\":45,\"_50\":51},\"default\",{\"_11\":12,\"_19\":15},\"values\",[13,14,15,16,17,18],\"unstable\",\"2025-07\",\"2025-04\",\"2025-01\",\"2024-10\",\"2024-07\",\"stable_version\",\"API: Admin Extensions\",{\"_19\":13,\"_11\":22},[13,16,17,18,23,24,25],\"2024-04\",\"2024-01\",\"2023-10\",\"API: Checkout UI extensions\",{\"_19\":13,\"_11\":28},[13,15,16,17,18,23,24,25,29,30],\"2023-07\",\"2023-04\",\"API: Customer account UI extensions\",{\"_19\":13,\"_11\":33},[13,16,17],\"API: Hydrogen\",{\"_19\":16,\"_11\":36},[16,17,18,23,24,25,29,30],\"API: Hydrogen React\",{\"_19\":16,\"_11\":39},[16,17,18,23,24,25,29,30,40],\"2023-01\",\"API: POS UI Extensions\",{\"_19\":13,\"_11\":43},[13,16,17,18,23],\"API: shopify app remix\",{\"_19\":46,\"_11\":47},\"v3\",[46,48,49],\"v2\",\"v1\",\"API: Webhooks\",{\"_19\":13,\"_11\":52},[13,14,15,16,17,18],\"categories\",[55,63,67,69,71,73,75,78,80,83,86,89,92],{\"_56\":20,\"_57\":58,\"_59\":60,\"_61\":62},\"name\",\"referenceName\",\"admin-extensions\",\"versioned\",true,\"cookieName\",\"api_version\",{\"_56\":64,\"_57\":65,\"_59\":66,\"_61\":62},\"API: App Bridge Library\",\"app-bridge-library\",false,{\"_56\":26,\"_57\":68,\"_59\":60,\"_61\":62},\"checkout-ui-extensions\",{\"_56\":31,\"_57\":70,\"_59\":60,\"_61\":62},\"customer-account-ui-extensions\",{\"_56\":34,\"_57\":72,\"_59\":60,\"_61\":62},\"hydrogen\",{\"_56\":37,\"_57\":74,\"_59\":60,\"_61\":62},\"hydrogen-react\",{\"_56\":76,\"_57\":77,\"_59\":66,\"_61\":62},\"API: Hydrogen UI\",\"hydrogen-ui\",{\"_56\":41,\"_57\":79,\"_59\":60,\"_61\":62},\"pos-ui-extensions\",{\"_56\":44,\"_57\":81,\"_59\":60,\"_61\":82},\"shopify-app-remix\",\"api_version_shopify-app-remix\",{\"_56\":84,\"_57\":85,\"_59\":66,\"_61\":62},\"API: Shopify CLI\",\"shopify-cli\",{\"_56\":87,\"_57\":88,\"_59\":66,\"_61\":62},\"API: Storefront elements\",\"storefront-elements\",{\"_56\":90,\"_57\":91,\"_59\":66,\"_61\":62},\"API: Web Pixels API\",\"web-pixels-api\",{\"_56\":50,\"_57\":93,\"_59\":60,\"_61\":62},\"webhooks\",\"railsCsrfToken\",\"-EwnC9UTADBiu2PXRNxqBN4MjtRan7bjnkdR-NxFgGzaJDFSXMc9nVpt5gUwHECK-8B5NJhMeOm9LrKmYfCfmg\",\"userPreferences\",{\"_98\":99,\"_62\":15},\"gqlLanguage\",\"remix\",\"features\",[102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143],\"adaptive_rate_limiter\",\"automated_privacy\",\"cli_managed_subscription_link_creation_and_migration\",\"combined_listings\",\"customer_account_ui_extensions_stable_docs\",\"dat_scheduled_feature_tho\",\"dev_assistant_vscode_extension\",\"discounts_allocator_function\",\"editor_extension_collections_docs\",\"enforce_fulfillment_order_status_on_create_fulfillment\",\"explicit_buyer_consent\",\"flex_sections\",\"gql_ai\",\"gql_ai_v2\",\"gql_example_switcher\",\"gql_operation_cache\",\"headless_cmp\",\"identity_integration\",\"mockshop_ai\",\"mockshop_ai_disable_force_ai\",\"multi_class_discount_functions\",\"net_new_webhooks_reference_2024\",\"online_store_new_datasources\",\"open_source_subscriptions_1p_app\",\"optional_scopes\",\"product_discount_cart_line_targeting\",\"purchase_options_extensions\",\"remove_php_example\",\"rest_admin_api_deprecation\",\"rev_share_jan24\",\"sched_2\",\"schedule_test\",\"shipping_discount_functions_general_availability\",\"ssr-changelog\",\"ssr-graphql\",\"static_blocks\",\"style_settings\",\"theme_blocks\",\"theme_blocks_data_sources\",\"theme_blocks_ga\",\"versioned_app_config\",\"zero_redirect_auth\",\"apiVersion\",\"routes/changelog\",{\"_147\":148,\"_783\":784},\"entries\",[149,190,203,216,227,241,252,263,277,288,299,309,320,332,345,356,368,379,390,402,417,430,441,454,465,479,491,503,516,529,540,552,563,576,590,602,614,626,640,650,662,674,685,696,708,721,734,746,758,771],{\"_150\":151,\"_152\":153,\"_154\":155,\"_156\":157,\"_158\":155,\"_159\":160,\"_161\":162,\"_163\":164,\"_165\":166,\"_167\":-5,\"_168\":169,\"_181\":182,\"_185\":186,\"_189\":66},\"slug\",\"stable-graphql-api-versions-to-backfill-enum-values\",\"title\",\"Stable GraphQL API versions to backfill enum values\",\"summary\",\"Our stable API versions will retroactively add values into GraphQL Enum types, making them non-exhaustive going forward. This assures that new application data values can be represented in older API versions, which provides better stability.\\r\\n\\r\\nWhile this is a non-breaking change, it can cause disruptions to development toolchains. We recommend that you periodically refresh introspection caches, and integrate enums into your application logic with a catch-all that anticipates unknown cases.\\r\\n\\r\\nFor more information, see https://shopify.dev/docs/api/usage/versioning#stable-api-versions.\",\"excerpt\",\"Stable API versions now retroactively add GraphQL Enum values. Refresh introspection caches and implement catch-alls to avoid toolchain disruptions.\",\"content\",\"createdAt\",\"2025-04-01T14:36:23-04:00\",\"updatedAt\",\"2025-04-01T16:41:44-04:00\",\"postedAt\",\"2025-04-01T12:00:00-04:00\",\"effectiveAt\",\"2025-04-02T12:00:00-04:00\",\"effectiveApiVersion\",\"affectedApi\",[170,175,178],{\"_171\":172,\"_173\":174},\"displayName\",\"Admin GraphQL API\",\"handle\",\"admin-graphql\",{\"_171\":176,\"_173\":177},\"Payments Apps API\",\"payments-apps-api\",{\"_171\":179,\"_173\":180},\"Storefront GraphQL API\",\"storefront-graphql\",\"primaryTag\",{\"_171\":183,\"_173\":184},\"API\",\"api\",\"secondaryTag\",{\"_171\":187,\"_173\":188},\"Update\",\"update\",\"indicatesActionRequired\",{\"_150\":191,\"_152\":192,\"_154\":193,\"_156\":194,\"_158\":193,\"_159\":195,\"_161\":196,\"_163\":164,\"_165\":164,\"_167\":15,\"_168\":197,\"_181\":199,\"_185\":200,\"_189\":66},\"new-enum-values-for-fulfillmentorderrejectionreason\",\"New enum values for `FulfillmentOrderRejectionReason`\",\"We've added the following new values to the `FulfillmentOrderRejectionReason` enum:\\r\\n\\r\\n- [`INTERNATIONAL_SHIPPING_UNAVAILABLE`](https://shopify.dev/docs/api/admin-graphql/2025-04/enums/FulfillmentOrderRejectionReason#value-internationalshippingunavailable): The fulfillment order was rejected because international address shipping hasn't been enabled.\\r\\n- [`INCORRECT_PRODUCT_INFO`](https://shopify.dev/docs/api/admin-graphql/2025-04/enums/FulfillmentOrderRejectionReason#value-incorrectproductinfo): The fulfillment order was rejected because product information is incorrect to be able to ship.\\r\\n- [`INVALID_CONTACT_INFORMATION`](https://shopify.dev/docs/api/admin-graphql/2025-04/enums/FulfillmentOrderRejectionReason#value-invalidcontactinformation): The fulfillment order was rejected because of invalid customer contact information.\\r\\n- [`INVALID_SKU`](https://shopify.dev/docs/api/admin-graphql/2025-04/enums/FulfillmentOrderRejectionReason#value-invalidsku): The fulfillment order was rejected because of an invalid SKU.\\r\\n- [`MERCHANT_BLOCKED_OR_SUSPENDED`](https://shopify.dev/docs/api/admin-graphql/2025-04/enums/FulfillmentOrderRejectionReason#value-merchantblockedorsuspended): The fulfillment order was rejected because the merchant is blocked or suspended.\\r\\n- [`MISSING_CUSTOMS_INFO`](https://shopify.dev/docs/api/admin-graphql/2025-04/enums/FulfillmentOrderRejectionReason#value-missingcustomsinfo): The fulfillment order was rejected because customs information was missing for international shipping.\\r\\n- [`ORDER_TOO_LARGE`](https://shopify.dev/docs/api/admin-graphql/2025-04/enums/FulfillmentOrderRejectionReason#value-ordertoolarge): The fulfillment order was rejected because the order is too large.\\r\\n- [`PACKAGE_PREFERENCE_NOT_SET`](https://shopify.dev/docs/api/admin-graphql/2025-04/enums/FulfillmentOrderRejectionReason#value-packagepreferencenotset): The fulfillment order was rejected because the package preference was not set.\\r\\n- [`PAYMENT_DECLINED`](https://shopify.dev/docs/api/admin-graphql/2025-04/enums/FulfillmentOrderRejectionReason#value-paymentdeclined): The fulfillment order was rejected because the payment method was declined.\",\"We've added new `FulfillmentOrderRejectionReason` enum values for more detailed error messages.\",\"2025-03-04T15:08:20-05:00\",\"2025-03-05T00:16:08-05:00\",[198],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},\"New\",\"new\",{\"_150\":204,\"_152\":205,\"_154\":206,\"_156\":207,\"_158\":206,\"_159\":208,\"_161\":209,\"_163\":164,\"_165\":164,\"_167\":15,\"_168\":210,\"_181\":214,\"_185\":215,\"_189\":66},\"exposed-incontext-directive-with-the-customer-account-api\",\"`@inContext` directive added to the Customer Account API\",\"As of API version 2025-04, we've added the `@inContext` directive in the [Customer Account API](https://shopify.dev/docs/api/customer). The `@inContext` directive accepts an argument: `language`.\\r\\n\\r\\n* If the requested language is active for the given country, as configured within the shop's [Language settings](https://help.shopify.com/en/manual/international/languages/manage-languages), then the query will return translated values.\\r\\n* If an unsupported language or country is requested using `@inContext`, then the response will fall back to the default language.\\r\\n\\r\\nThe following operation shows an example usage of this directive:\\r\\n\\r\\n```\\r\\n\\t\\t\\tmutation customerAddressUpdate @inContext(language: FR){\\r\\n\\t\\t\\t\\tcustomerAddressUpdate(address: {phoneNumber: \\\"invalid123\\\"}, addressId: \\\"gid://shopify/CustomerAddress/123456\\\" ) {\\r\\n\\t\\t\\t\\t\\tuserErrors {\\r\\n\\t\\t\\t\\t\\t\\tcode\\r\\n\\t\\t\\t\\t\\t\\tfield\\r\\n\\t\\t\\t\\t\\t\\tmessage\\r\\n\\t\\t\\t\\t\\t}\\r\\n\\t\\t\\t\\t}\\r\\n\\t\\t\\t}\\r\\n```\\r\\n\\r\\nResponse:\\r\\n```\\r\\n\\t\\t{\\r\\n\\t\\t\\t\\t\\\"data\\\": {\\r\\n\\t\\t\\t\\t\\t\\\"customerAddressUpdate\\\": {\\r\\n\\t\\t\\t\\t\\t\\t\\\"userErrors\\\": [\\r\\n\\t\\t\\t\\t\\t\\t\\t{\\r\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\"code\\\": \\\"PHONE_NUMBER_NOT_VALID\\\",\\r\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\"field\\\": null,\\r\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\"message\\\": \\\"Le numéro de téléphone n'est pas valide.\\\"\\r\\n\\t\\t\\t\\t\\t\\t\\t}\\r\\n\\t\\t\\t\\t\\t\\t]\\r\\n\\t\\t\\t\\t\\t}\\r\\n\\t\\t\\t\\t},\\r\\n\\t\\t\\t\\t\\\"extensions\\\": {\\r\\n\\t\\t\\t\\t\\t\\\"context\\\": {\\r\\n\\t\\t\\t\\t\\t\\t\\\"country\\\": \\\"CA\\\",\\r\\n\\t\\t\\t\\t\\t\\t\\\"language\\\": \\\"FR\\\"\\r\\n\\t\\t\\t\\t\\t},\\r\\n\\t\\t\\t\\t\\t\\\"cost\\\": {\\r\\n\\t\\t\\t\\t\\t\\t\\\"requestedQueryCost\\\": 10,\\r\\n\\t\\t\\t\\t\\t\\t\\\"actualQueryCost\\\": 10\\r\\n\\t\\t\\t\\t\\t}\\r\\n\\t\\t\\t\\t}\\r\\n\\t\\t\\t}\\r\\n```\\r\\n\",\"`@inContext` directive added to the 2025-04 version of the Customer Account API to help integrate with international markets\",\"2025-03-07T14:16:42-05:00\",\"2025-03-28T16:42:15-04:00\",[211],{\"_171\":212,\"_173\":213},\"Customer Account API\",\"customer-account-graphql\",{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":217,\"_152\":218,\"_154\":219,\"_156\":220,\"_158\":219,\"_159\":221,\"_161\":222,\"_163\":164,\"_165\":164,\"_167\":15,\"_168\":223,\"_181\":225,\"_185\":226,\"_189\":66},\"productset-and-customerset-mutations-now-support-upserts\",\"`productSet` and `customerSet` mutations now support upserts and custom IDs\",\"As of version 2025-04, the [`productSet`](/docs/api/admin-graphql/2025-04/mutations/productSet) and [`customerSet`](/docs/api/admin-graphql/2025-04/mutations/customerSet) mutations of the GraphQL Admin API support upserting (creating or updating) records by `identifier`. \\r\\n\\r\\nWhen `identifier` is provided, these mutations use it to check for an existing record. If an existing record is found, then the mutation updates it with the data provided in `input`. Otherwise, the mutation creates a new record.\\r\\n\\r\\nThe `identifier` gives developers a straightforward, idempotent mechanism to create and subsequently update records with the same shape of inputs, without the need for extra queries to check if records exist. For identifiers, `productSet` allows `handle`, `id`, and `customId`. `customerSet` allows `phone`, `email`, and `customId`.\\r\\n\\r\\nThis extends previously existing behaviour on `productSet`, which updates a record if `id` is provided in the `input` and otherwise creates a new record. The `customerSet` mutation was previously released only to the `unstable` version of the API.\\r\\n\\r\\nRead more about [using Custom IDs](/docs/apps/build/custom-data/metafields/working-with-custom-ids).\",\"As of API version 2025-04 of the GraphQL Admin API, the `productSet` and `customerSet` mutations can upsert by `identifier`, simplifying record management.\",\"2025-03-12T15:47:33-04:00\",\"2025-03-26T17:18:01-04:00\",[224],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":228,\"_152\":229,\"_154\":230,\"_156\":231,\"_158\":230,\"_159\":232,\"_161\":233,\"_163\":234,\"_165\":164,\"_167\":15,\"_168\":235,\"_181\":239,\"_185\":240,\"_189\":66},\"pos-ui-extensions-2025-04-update\",\"POS UI Extensions 2025-04 Update\",\"As of April 1, 2025, we made the following updates to POS UI Extensions:\\r\\n\\r\\n### Features\\r\\n\\r\\n**Developer Preview**\\r\\n\\r\\n* Added support for the [`pos.transaction-complete.event.observe`](https://shopify.dev/docs/api/pos-ui-extensions/targets/post-purchase/pos-transaction-complete-event-observe) target.\\r\\n* Added support for the [`pos.cart-update.event.observe`](https://shopify.dev/docs/api/pos-ui-extensions/unstable/targets/cart-details/pos-cart-update-event-observe) target.\\r\\n* Added support for [`pos.cash-tracking-session-start.event.observe`](https://shopify.dev/docs/api/pos-ui-extensions/targets/cash-tracking/pos-cash-tracking-session-start-event-observe) and [`pos.cash-tracking-session-complete.event.observe`](https://shopify.dev/docs/api/pos-ui-extensions/targets/cash-tracking/pos-cash-tracking-session-complete-event-observe) targets.\\r\\n* Added support for the [`pos.receipt-footer.block.render`](https://shopify.dev/docs/api/pos-ui-extensions/targets/receipts/pos-receipt-footer-block-render) target.\\r\\n* Introduced a [`POSReceiptBlock`](https://shopify.dev/docs/api/pos-ui-extensions/components/posreceiptblock) component, which is the required parent component for the [`POSReceiptBlock`](https://shopify.dev/docs/api/pos-ui-extensions/components/posreceiptblock) component targets.\\r\\n* Introduced a [`QRCode`](https://shopify.dev/docs/api/pos-ui-extensions/unstable/components/qrcode) component.\\r\\n\\r\\nAll of the changes are available for POS UI extensions version 2025-04 and POS app version 9.31.0. For all version details, refer to the [version log](https://shopify.dev/docs/api/pos-ui-extensions/unstable/versions).\",\"Renamed NewTextFieldProps to TextFieldProps. Added support for transaction complete, cash tracking, and receipt footer targets. Introduced POSReceiptBlock component for receipt footer.\",\"2025-03-13T10:48:16-04:00\",\"2025-04-01T21:36:30-04:00\",\"2025-03-28T12:00:00-04:00\",[236],{\"_171\":237,\"_173\":238},\"POS Extensions\",\"pos-extensions\",{\"_171\":183,\"_173\":184},{\"_171\":187,\"_173\":188},{\"_150\":242,\"_152\":243,\"_154\":244,\"_156\":245,\"_158\":244,\"_159\":246,\"_161\":247,\"_163\":164,\"_165\":164,\"_167\":15,\"_168\":248,\"_181\":250,\"_185\":251,\"_189\":66},\"add-new-customerpaymentmethodrevocationreasons\",\"New enum values for `CustomerPaymentMethodRevocationReason`\",\"We've added the following new values to the `CustomerPaymentMethodRevocationReason` enum:\\r\\n\\r\\n- [`CUSTOMER_REDACTED`](https://shopify.dev/docs/api/admin-graphql/2025-04/enums/customerpaymentmethodrevocationreason#value-customerredacted): A payment method is redacted for reasons such as GDPR compliance.\\r\\n- [`TOO_MANY_CONSECUTIVE_FAILURES`](https://shopify.dev/docs/api/admin-graphql/2025-04/enums/customerpaymentmethodrevocationreason#value-toomanyconsecutivefailures): A payment method has 30 consecutive failures within 35 days.\\r\\n- [`CVV_ATTEMPTS_LIMIT_EXCEEDED`](https://shopify.dev/docs/api/admin-graphql/2025-04/enums/customerpaymentmethodrevocationreason#value-cvvattemptslimitexceeded): A buyer repeatedly fails to provide the CVV for card-on-file checkouts.\",\"Added new enum values to `CustomerPaymentMethodRevocationReason`: `CUSTOMER_REDACTED`, `TOO_MANY_CONSECUTIVE_FAILURES`, `CVV_ATTEMPTS_LIMIT_EXCEEDED`\",\"2025-02-07T01:02:39-05:00\",\"2025-02-07T19:08:36-05:00\",[249],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":253,\"_152\":254,\"_154\":255,\"_156\":256,\"_158\":255,\"_159\":257,\"_161\":258,\"_163\":164,\"_165\":164,\"_167\":15,\"_168\":259,\"_181\":261,\"_185\":262,\"_189\":66},\"new-theme-file-metadata-fields-added-to-onlinestorethemefileoperationresult-object\",\"New theme file metadata fields added to `OnlineStoreThemeFileOperationResult ` object\",\"Developers can now retrieve theme file metadata directly in the response body of a successful `themeFilesUpsert` mutation using the Admin GraphQL API. This eliminates the need for additional fetch requests to verify changes to files after updates. For detailed information, please refer to the latest documentation on [`OnlineStoreThemeFileOperationResult`](https://shopify.dev/docs/api/admin-graphql/latest/objects/OnlineStoreThemeFileOperationResult).\",\"The `themeFilesUpsert` mutation now returns theme file metadata directly, eliminating the need for extra fetch requests to verify updates.\",\"2025-03-03T12:55:48-05:00\",\"2025-03-04T02:47:49-05:00\",[260],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":264,\"_152\":265,\"_154\":266,\"_156\":267,\"_158\":266,\"_159\":268,\"_161\":269,\"_163\":164,\"_165\":164,\"_167\":15,\"_168\":270,\"_181\":275,\"_185\":276,\"_189\":66},\"new-finance-kyc-information-field-available-for-shopify-approved-finance-apps\",\"New finance KYC information field available for Shopify-approved finance apps\",\"As of API version 2025-04, [Shopify-approved finance apps](https://shopify.dev/docs/api/usage/access-scopes#authenticated-access-scopes) can retrieve the following information using the [`FinanceKycInformation`](https://shopify.dev/docs/api/admin-graphql/unstable/objects/FinanceKycInformation) object, on behalf of an approved shop [staff member](https://shopify.dev/docs/api/admin-graphql/unstable/objects/StaffMember):\\r\\n\\r\\n* Business address\\r\\n* Business type\\r\\n* Industry\\r\\n* Business legal name\\r\\n* Shop owner information\\r\\n* Tax identification information\\r\\n* Finances access policies\\r\\n\\r\\nThe following webhooks related to updating staff with access to the app will also be available:\\r\\n* `FINANCE_APP_STAFF_MEMBER_DELETE` - Triggers when a staff with access to all or some finance app has been removed\\r\\n* `FINANCE_APP_STAFF_MEMBER_GRANT` - Triggers when a staff is granted access to all or some finance app\\r\\n* `FINANCE_APP_STAFF_MEMBER_REVOKE` - Triggers when a staff's access to all or some finance app has been revoked\\r\\n* `FINANCE_APP_STAFF_MEMBER_UPDATE` - Triggers when a staff's information has been updated\\r\\n* `FINANCE_KYC_INFORMATION_UPDATE` - Triggers whenever shop's finance KYC information was updated\\r\\n\",\"Shopify-approved finance apps can access shop finance details and subscribe to related webhooks\",\"2025-03-06T10:10:30-05:00\",\"2025-03-11T10:52:11-04:00\",[271,272],{\"_171\":172,\"_173\":174},{\"_171\":273,\"_173\":274},\"Webhook\",\"webhook\",{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":278,\"_152\":279,\"_154\":280,\"_156\":281,\"_158\":280,\"_159\":282,\"_161\":283,\"_163\":164,\"_165\":164,\"_167\":15,\"_168\":284,\"_181\":286,\"_185\":287,\"_189\":66},\"customer-rfm-group-now-available-in-graphql-admin-api\",\"Customer RFM group now available in GraphQL Admin API\",\"You can now access a customer's RFM (Recency, Frequency, Monetary) group through the GraphQL Admin API. This new `rfmGroup` field in customer statistics helps you understand customer engagement and purchasing patterns.\\r\\n\\r\\nThe `rfmGroup` field is available through the `statistics` field on the `Customer` object. You can use this information to segment customers based on their purchasing behavior and create targeted marketing campaigns.\\r\\n\\r\\nFor more detailed information, please refer to the [official documentation](https://shopify.dev/docs/api/admin-graphql/2025-04/objects/CustomerStatistics).\\r\\n\\r\\nExample query:\\r\\n\\r\\n``` graphql\\r\\nquery {\\r\\n customer(id: \\\"gid://shopify/Customer/1\\\") {\\r\\n statistics {\\r\\n rfmGroup\\r\\n }\\r\\n }\\r\\n}\\r\\n```\",\"Added rfmGroup field to customer statistics in the Admin GraphQL Admin API to expose customer segmentation data based on purchasing patterns.\",\"2025-03-06T11:05:24-05:00\",\"2025-03-13T12:55:22-04:00\",[285],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":289,\"_152\":290,\"_154\":291,\"_156\":292,\"_158\":291,\"_159\":293,\"_161\":294,\"_163\":164,\"_165\":164,\"_167\":14,\"_168\":295,\"_181\":297,\"_185\":298,\"_189\":66},\"draftordercount-available-in-2025-07\",\"`draftOrderCount` available in 2025-07\",\"The [`draftOrderCount`](https://shopify.dev/docs/api/admin-graphql/2025-07/queries/draftOrderCount) query is now available in the 2025-07 stable version of the GraphQL Admin API. Previously, it was only available in the `unstable` version.\\r\\n\",\"The [`draftOrderCount`](https://shopify.dev/docs/api/admin-graphql/2025-07/queries/draftOrderCount) query is now available in the 2025-07 stable version of the GraphQL Admin API. Previously, it was...\",\"2025-03-18T15:18:15-04:00\",\"2025-03-18T16:58:02-04:00\",[296],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":187,\"_173\":188},{\"_150\":300,\"_152\":301,\"_154\":302,\"_156\":303,\"_158\":302,\"_159\":304,\"_161\":305,\"_163\":164,\"_165\":164,\"_167\":15,\"_168\":306,\"_181\":307,\"_185\":308,\"_189\":66},\"checkout-ui-extensions-attributes-api-now-supports-removing-cart-and-checkout-attributes\",\"Checkout UI extensions: Attributes API now supports removing cart and checkout attributes\",\"You can now use checkout UI extensions to remove cart and checkout attributes using the [**AttributeRemoveChange**](https://shopify.dev/docs/api/checkout-ui-extensions/unstable/apis/attributes#useApplyAttributeChange) property. To remove an attribute during checkout, simply pass the attribute key you wish to remove through this new property.\",\"You can now remove cart and checkout attributes by passing the attribute key you wish to remove with the AttributeRemoveChange property.\",\"2025-03-19T17:08:39-04:00\",\"2025-04-02T12:36:16-04:00\",[],{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":310,\"_152\":311,\"_154\":312,\"_156\":313,\"_158\":312,\"_159\":314,\"_161\":315,\"_163\":164,\"_165\":164,\"_167\":14,\"_168\":316,\"_181\":318,\"_185\":319,\"_189\":66},\"support-for-card-not-present-transaction-details-in-paymentsapps-api\",\"Support for card not present transaction details in PaymentsApps API\",\"You can now enhance the security of \\\"card not present\\\" transactions by providing additional verification details through the Payments Apps API. This update allows you to include Address Verification System (AVS) and Card Verification Value (CVV) results when resolving payment sessions.\\r\\n\\r\\nTo implement these new fields, incorporate them into your `paymentSessionResolve` mutation:\\r\\n\\r\\n```graphql\\r\\nmutation PaymentSessionResolve($id: ID\\\\!, $paymentDetails: PaymentSessionDetailsInput) {\\r\\n paymentsAppPaymentSessionResolve(id: $id, paymentDetails: $paymentDetails) {\\r\\n paymentSession {\\r\\n id\\r\\n }\\r\\n }\\r\\n}\\r\\n```\\r\\n\\r\\nThe new `CardNotPresentInput` type includes the following fields:\\r\\n- `cvvResultCode`: The response code from CVV verification.\\r\\n- `avsResultCode`: The response code from address verification.\\r\\n\\r\\nBy utilizing these fields, you can provide more granular level of fraud analysis data for transactions where the card is not physically present, helping merchants make the right decisions.\\r\\n\\r\\nFor more detailed information, please refer to the [Payments Apps API documentation](https://shopify.dev/api/payments-apps).\",\"The Payments Apps API now supports AVS and CVV details for card-not-present transactions.\",\"2025-03-21T09:58:56-04:00\",\"2025-03-23T16:47:21-04:00\",[317],{\"_171\":176,\"_173\":177},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":321,\"_152\":322,\"_154\":323,\"_156\":324,\"_158\":323,\"_159\":325,\"_161\":326,\"_163\":327,\"_165\":164,\"_167\":-5,\"_168\":328,\"_181\":330,\"_185\":331,\"_189\":66},\"location-id-queryable-with-inventory-scopes\",\"Location ID Queryable with Inventory Scopes\",\"The access scopes for the `id` field in the [Location](https://shopify.dev/docs/api/admin-graphql/latest/objects/location) object have been updated. You can now query this field using either the `read_inventory` or `read_locations` scopes.\\r\\n\\r\\nKey changes include:\\r\\n- The `location.id` field in GraphQL can now be queried with just the `read_inventory` or `read_locations` scope.\\r\\n\\r\\nPlease note the following restriction:\\r\\n- All other fields of the `Location` object, such as `name` and `address`, still require the `read_locations` scope for querying.\\r\\n\\r\\nThese updates apply to all API versions.\",\"`location.id` can now be queried with `read_inventory` or `read_locations` scopes. Other `Location` fields still need `read_locations`. Applies to all API versions.\",\"2025-03-31T07:31:46-04:00\",\"2025-03-31T10:40:28-04:00\",\"2025-03-31T12:00:00-04:00\",[329],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":187,\"_173\":188},{\"_150\":333,\"_152\":334,\"_154\":335,\"_156\":336,\"_158\":335,\"_159\":337,\"_161\":338,\"_163\":339,\"_165\":340,\"_167\":15,\"_168\":341,\"_181\":343,\"_185\":344,\"_189\":66},\"view-gift-card-maximum-values\",\"View gift card maximum values\",\"You can now retrieve the maximum values for gift cards using the [`giftCardConfiguration`](https://shopify.dev/docs/api/admin-graphql/2025-04/queries/giftCardConfiguration) query. There are separate maximum values for purchased and issued gift cards.\\r\\n\\r\\nLearn more about [creating and selling gift cards](https://help.shopify.com/en/manual/products/gift-card-products).\",\"Use the `giftCardConfiguration` query to retrieve the maximum values for purchased and issued gift cards.\",\"2025-02-07T08:53:25-05:00\",\"2025-02-18T15:17:38-05:00\",\"2025-04-01T01:00:00-04:00\",\"2025-04-01T09:00:00-04:00\",[342],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":346,\"_152\":347,\"_154\":348,\"_156\":349,\"_158\":348,\"_159\":350,\"_161\":351,\"_163\":164,\"_165\":340,\"_167\":15,\"_168\":352,\"_181\":354,\"_185\":355,\"_189\":66},\"new-webhook-to-track-updates-to-checkout-and-accounts-configuration\",\"New webhook to track updates to checkout and accounts configuration \",\"API version 2025-04 introduces the `checkout_and_accounts_configurations/update` webhook, which fires when merchants update their checkout and accounts configuration (draft and published). \\r\\n\\r\\nTo learn whether or not your users have upgraded their Thank you and Order status pages, monitor the `typ_osp_pages_enabled` field in this webhook's payload. No need to check manually by making API calls!\\r\\n\\r\\nWith this knowledge, you can send timely communication to merchants regarding onboarding and configuration steps for your app.\\r\\n\\r\\nMake sure to subscribe to this [webhook](https://shopify.dev/docs/api/webhooks/2025-04?reference=tool#list-of-topics-checkout_and_accounts_configurations/update) as soon as possible, in advance of the upcoming deadlines for merchants to upgrade their Thank you and Order status pages:\\r\\n\\r\\n- **Plus merchants**: [August 28, 2025](https://help.shopify.com/manual/checkout-settings/customize-checkout-configurations/plus-upgrade-guide)\\r\\n- **Non-Plus merchants**: [August 26, 2026](https://help.shopify.com/manual/checkout-settings/customize-checkout-configurations/checkout-upgrade-guide)\",\"Use this webhook to learn when your users have upgraded their Thank you and Order status pages.\",\"2025-03-13T18:09:55-04:00\",\"2025-04-02T00:36:27-04:00\",[353],{\"_171\":273,\"_173\":274},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":357,\"_152\":358,\"_154\":359,\"_156\":360,\"_158\":359,\"_159\":361,\"_161\":362,\"_163\":363,\"_165\":363,\"_167\":15,\"_168\":364,\"_181\":366,\"_185\":367,\"_189\":66},\"new-field-fulfillmentstatus-added-to-the-order-type-of-the-customer-account-api\",\"New field `fulfillmentStatus` added to the `Order` type of the Customer Account API\",\"As of API version 2025-04, we've introduced the field [`fulfillmentStatus`](https://shopify.dev/docs/api/customer/2025-04/objects/Order#field-fulfillmentstatus) to the `Order`object. This field represents the order's aggregated fulfillment status for display purposes.\",\"API v2025-04 adds `fulfillmentStatus` to `Order`, showing the order's overall fulfillment status for display.\",\"2025-03-10T21:07:54-04:00\",\"2025-03-17T09:15:04-04:00\",\"2025-04-01T00:00:00-04:00\",[365],{\"_171\":212,\"_173\":213},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":369,\"_152\":370,\"_154\":371,\"_156\":372,\"_158\":371,\"_159\":373,\"_161\":374,\"_163\":363,\"_165\":363,\"_167\":15,\"_168\":375,\"_181\":377,\"_185\":378,\"_189\":66},\"new-articleauthors-query-in-the-graphql-admin-api\",\"New `articleAuthors` query in the GraphQL Admin API\",\"We've added an `articleAuthors` query to the GraphQL Admin API. You can use this query to fetch a list of article authors for a store.\",\"To fetch a list of article authors for a store, use the new `articleAuthors` query.\",\"2025-03-28T17:36:16-04:00\",\"2025-03-31T16:12:32-04:00\",[376],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":380,\"_152\":381,\"_154\":382,\"_156\":383,\"_158\":382,\"_159\":384,\"_161\":385,\"_163\":363,\"_165\":363,\"_167\":15,\"_168\":386,\"_181\":388,\"_185\":389,\"_189\":66},\"new-filter-options-added-to-pages-articles-and-comments\",\"New filter options added to `pages`, `articles`, and `comments` queries\",\"We've introduced the following new query parameters to the [`articles`](https://shopify.dev/docs/api/admin-graphql/2025-04/queries/articles), [`pages` ](https://shopify.dev/docs/api/admin-graphql/2025-04/queries/pages) , and [`comments`](https://shopify.dev/docs/api/admin-graphql/2025-04/queries/comments) queries in the GraphQL Admin API:\\r\\n\\r\\n- You can now filter articles by `blog_id`, `handle`, and `published_at` values\\r\\n- You can now filter pages by `published_status`, `published_at`, and `id` values\\r\\n- You can now filter comments by `created_at`, `updated_at`, and `published_at` values\\r\\n\\r\\nWith these changes, `articles`, `pages`, and `comments` queries have fill filter parity with the REST Admin API.\",\"`articles`, `pages`, and `comments` queries now have full filter parity with the REST Admin API\",\"2025-03-27T18:58:41-04:00\",\"2025-03-28T09:57:21-04:00\",[387],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":391,\"_152\":392,\"_154\":393,\"_156\":394,\"_158\":393,\"_159\":395,\"_161\":396,\"_163\":363,\"_165\":363,\"_167\":-5,\"_168\":397,\"_181\":398,\"_185\":401,\"_189\":66},\"developer-preview-localhost-based-development-for-shopify-app-dev\",\"Developer Preview: Localhost-based development for `shopify app dev`\",\"Now in developer preview, you can serve your app using `localhost` (`127.0.0.1`) with a self-signed HTTPS certificate, which Shopify CLI generates for you. This allows you to develop some Shopify app features without the use of network tunnels.\\r\\n\\r\\nTo serve your app using localhost, run the following command using Shopify CLI 3.77 or higher:\\r\\n\\r\\n```\\r\\nshopify app dev --use-localhost\\r\\n```\\r\\n\\r\\n\\r\\n**Note:** Localhost-based development isn't compatible with the Shopify features that directly invoke your app, such as Webhooks, App proxy, and Flow actions, and features that require you to test your app from another device, such as POS.\\r\\n\\r\\nFor more information, you can read about [networking options for local development](https://shopify.dev/docs/apps/build/cli-for-apps/networking-options).\\r\\n\\r\\nPlease report any issues and provide your feedback about this feature [on the Shopify Developer Community](https://community.shopify.dev/new-topic?category=shopify-cli-libraries\u0026tags=app-dev-on-localhost).\",\"Developer Preview: Serve your app on localhost with a self-signed HTTPS certificate using Shopify CLI.\",\"2025-04-01T10:25:40-04:00\",\"2025-04-02T14:25:34-04:00\",[],{\"_171\":399,\"_173\":400},\"Tools\",\"tools\",{\"_171\":201,\"_173\":202},{\"_150\":403,\"_152\":404,\"_154\":405,\"_156\":406,\"_158\":405,\"_159\":407,\"_161\":408,\"_163\":409,\"_165\":409,\"_167\":-5,\"_168\":410,\"_181\":415,\"_185\":416,\"_189\":66},\"inventoryitem-webhooks-accessible-with-product-scopes\",\"InventoryItem Webhooks Accessible with Product Scopes\",\"The scopes for receiving webhooks for the InventoryItem object have been relaxed. [Webhook topics](https://shopify.dev/docs/api/admin-graphql/latest/enums/WebhookSubscriptionTopic) for this object can now be configured with either the `read_inventory` or `read_products` scope.\\r\\n\\r\\nSpecifically, the following topics can now be configured with either scope:\\r\\n* `INVENTORY_ITEMS_CREATE`\\r\\n* `INVENTORY_ITEMS_DELETE`\\r\\n* `INVENTORY_ITEMS_UPDATE`\\r\\n\\r\\nThese changes apply to all API versions.\",\"Webhook scopes for InventoryItem are now flexible, allowing `read_inventory` or `read_products` for `INVENTORY_ITEMS_CREATE`, `DELETE`, `UPDATE` across all API versions.\",\"2025-03-31T10:39:31-04:00\",\"2025-03-31T10:40:40-04:00\",\"2025-03-31T14:00:00-04:00\",[411,412],{\"_171\":172,\"_173\":174},{\"_171\":413,\"_173\":414},\"Admin REST API\",\"admin-rest\",{\"_171\":183,\"_173\":184},{\"_171\":187,\"_173\":188},{\"_150\":418,\"_152\":419,\"_154\":420,\"_156\":421,\"_158\":420,\"_159\":422,\"_161\":423,\"_163\":424,\"_165\":327,\"_167\":-5,\"_168\":425,\"_181\":426,\"_185\":429,\"_189\":66},\"ship-carry-out-in-a-single-order-on-pos-is-now-available-for-retail-pro-merchants-using-eligible-tax-software\",\"Ship and carry out in a single order on POS is now available for Retail Pro Merchants using eligible tax software\",\"Shopify's Point of Sale (POS) now supports combining ship and carry out items in a single order for Retail Pro Merchants. \\r\\n\\r\\nIf you're a Retail Pro Merchant, you can now include carry out items and items that will ship at a later date in one transaction. Learn more about [eligibility details](https://changelog.shopify.com/posts/ship-and-carryout-in-a-single-order-on-pos).\\r\\n\\r\\n### Email templates changes\\r\\nWe've updated the default email templates in the [Shopify admin](https://admin.shopify.com/) under **Settings** \u003e **Notification** for `POS and mobile receipt`, `Order confirmation`, `Order invoice`, and `Order edited` . \\r\\n\\r\\nIf you use the default template, no action is required. However, if you've customized your template, then we recommend reverting to the default template and reapplying your changes. If you choose not to revert, please review the [`delivery_agreements`](https://help.shopify.com/en/manual/fulfillment/setup/notifications/email-variables#delivery-properties) object.\\r\\n\\r\\nThere will be two [`delivery_agreements`](https://help.shopify.com/en/manual/fulfillment/setup/notifications/email-variables#delivery-properties) properties for Ship and carry out orders: one for In store and one for Shipping. Loop through the [`delivery_agreements`](https://help.shopify.com/en/manual/fulfillment/setup/notifications/email-variables#delivery-properties) to find the line items for each agreement. Key fields include:\\r\\n* `delivery_agreement.delivery_method_name`: Indicates if the method is `In store` or `Shipping`. This field is translated to the buyer's checkout language.\\r\\n* `delivery_agreement.line_items`: Provides access to the line items specific to the `delivery_agreement`. \\r\\n\\r\\n### POS receipts template changes\\r\\nWe've updated the default POS receipt [Shopify admin](https://admin.shopify.com/) under **Sales channels** \u003e **Point of Sale** \u003e **Customize** \u003e **Receipts** for `footer.liquid` template. It now lists which items are shipped. \\r\\n\\r\\nIf you use the default footer template, no action is required. However, if you've customized your template, then we recommend reverting to the default footer template and reapplying your changes. If you choose not to revert, please review the [`shipping_groups`](https://help.shopify.com/en/manual/sell-in-person/shopify-pos/receipt-management/receipt-editor#edit-your-receipt-templates) object inside the [`order`](https://help.shopify.com/en/manual/sell-in-person/shopify-pos/receipt-management/receipt-editor#edit-your-receipt-templates) object to find all the items that are being shipped.\\r\\n \\r\\n### Behavior changes to the [Order](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order) and [FulfillmentOrder](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrder) objects for Ship and carry out orders\\r\\n\\r\\nThe following is the high level impact to [`Order`](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order) and [`FulfillmentOrder`](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrder) objects for Ship and carry out orders:\\r\\n\\r\\n- [`Order.taxLines`](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order#field-taxlines) contains the tax lines for both the carry out and ship portions of the order. To determine which taxes are applied, refer to [`Order.lineitems`](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order#connection-lineitems).[`taxLines`](https://shopify.dev/docs/api/admin-graphql/latest/objects/LineItem#field-taxlines).\\r\\n- Multiple fulfillment orders are generated for a POS order that contains both Ship and carry out items. The [`deliveryMethod.methodType`](https://shopify.dev/docs/api/admin-graphql/latest/objects/DeliveryMethod#field-methodtype) will either be `RETAIL` or `SHIPPING`.\\r\\n\\r\\nCheck out some GraphQL examples for the [`order`](https://shopify.dev/docs/api/admin-graphql/latest/queries/order?example=Retrieves+tax+related+information+for+a+given+order) and [`fulfillmentOrder`](https://shopify.dev/docs/api/admin-graphql/latest/queries/order?example=Retrieves+a+list+of+fulfillment+orders+for+a+specific+order) queries.\\r\\n\\r\\nThe following are relevant fields of the [`Order`](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order) object and the [`FulfillmentOrder`](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrder) object for a Ship and carry out order.\\r\\n\\r\\n#### [Order](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order) object\\r\\n\\r\\n* [`Order.taxLines`](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order#field-taxlines): Stores the tax lines for the entire order, as generated by the configured tax software during checkout. For taxes charged on each `LineItem`, refer to `Order.lineitems[x].taxLines`, where `x` denotes the array index.\\r\\n* [`Order.fulfillments`](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order#field-fulfillments): Contains only the fulfilled parts of the order. Initially, it only displays the carry out portion. After the ship portion of the order is fulfilled, it will be listed here as well.\\r\\n* [`Order.shippingAddress`](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order#field-shippingaddress): Contains the shipping address of the ship portion of the order.\\r\\n* [`Order.shippingLines`](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order#connection-shippinglines): Contains the shipping lines that are relevant to the ship portion of the order.\\r\\n* [`Order.lineitems`](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order#connection-lineitems).[taxLines](https://shopify.dev/docs/api/admin-graphql/latest/objects/LineItem#field-taxlines): The tax lines for this specific line item.\\r\\n\\r\\n#### [FulfillmentOrder](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrder) object\\r\\n\\r\\nFor a given Ship and carry out order, there will be at least two [`FulfillmentOrder`](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrder) objects. One [`FulfillmentOrder`](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrder) for the carry out and separate objects for ship portions.\\r\\n\\r\\n* [`FulfillmentOrder.deliveryMethod`](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrder#field-deliverymethod): Describes the delivery method for the fulfillment order. The [`deliveryMethod.methodType`](https://shopify.dev/docs/api/admin-graphql/latest/objects/DeliveryMethod#field-methodtype) will either be `RETAIL` or `SHIPPING`.\\r\\n* [`FulfillmentOrder.lineItems`](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrder#connection-lineitems): Contains the lines items for the specific fulfillment order. The fulfillment order with [`deliveryMethod.methodType`](https://shopify.dev/docs/api/admin-graphql/latest/objects/DeliveryMethod#field-methodtype) set to `RETAIL` will only have the carry out line items. The fulfillment order with [`deliveryMethod.methodType`](https://shopify.dev/docs/api/admin-graphql/latest/objects/DeliveryMethod#field-methodtype) set to `SHIPPING` will only have the ship line items.\",\"How Retail Ship and carry out orders will impact the behaviour of order and fulfillment order objects\",\"2025-02-20T21:34:32-05:00\",\"2025-03-21T13:02:27-04:00\",\"2025-03-31T09:00:00-04:00\",[],{\"_171\":427,\"_173\":428},\"Built for Shopify\",\"built_for_shopify\",{\"_171\":201,\"_173\":202},{\"_150\":431,\"_152\":432,\"_154\":433,\"_156\":434,\"_158\":433,\"_159\":435,\"_161\":436,\"_163\":327,\"_165\":327,\"_167\":14,\"_168\":437,\"_181\":439,\"_185\":440,\"_189\":66},\"new-additions-to-delivery-promise-participants-apis\",\"New additions to delivery promise participants APIs\",\"The ability to use locations as delivery promise participants is currently available in the `unstable` version and is planned for release in the `2025-07` version of the GraphQL Admin API.\\r\\n\\r\\nThe `deliveryPromiseParticipants` query and the `deliveryPromiseParticipantsUpdate` mutation have been enhanced. They now allow you to specify locations that should be excluded from the Shop Promise program. \\r\\n\\r\\nAdditionally, you can use the `delivery_promise_participants_handle` in the products query. This enables you to filter products with variants that are delivery promise participants and retrieve the list of corresponding delivery promise participants for a specific product variant.\",\"Locations can now be used in delivery promise participant queries and mutations in the unstable GraphQL Admin API, with full release in 2025-07. Filter products by delivery promise participants.\",\"2025-03-07T10:51:39-05:00\",\"2025-03-07T11:01:28-05:00\",[438],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":442,\"_152\":443,\"_154\":444,\"_156\":445,\"_158\":444,\"_159\":446,\"_161\":447,\"_163\":448,\"_165\":448,\"_167\":-5,\"_168\":449,\"_181\":450,\"_185\":453,\"_189\":66},\"hydrogen-march-2025-release\",\"Hydrogen March 2025 Release\",\"The latest version of Hydrogen v2025.1.3 is out today. The release contains updates to support Vite 6 and `v3_route_config`:\\r\\n\\r\\n- Turn on Remix future flag [`v3_routeConfig`](https://remix.run/docs/en/main/start/future-flags#v3_routeconfig) ([#2722](https://github.com/Shopify/hydrogen/pull/2722))\\r\\n- Bump Remix package dependency to 2.16.2 and support Vite 6 ([#2784](https://github.com/Shopify/hydrogen/pull/2784))\\r\\n\\r\\nCheck out our full [Hydrogen March 2025 release blog post](https://hydrogen.shopify.dev/update/march-2025)for more details. And please drop your comments, feedback, and suggestions over in [GitHub Discussions](https://github.com/Shopify/hydrogen/discussions)!\\r\\n\",\"Hydrogen v2025.1.3 adds support for Vite 6 and enables the `v3_routeConfig` future flag for Remix.\",\"2025-03-25T13:34:01-04:00\",\"2025-03-28T12:33:52-04:00\",\"2025-03-31T11:00:00-04:00\",[],{\"_171\":451,\"_173\":452},\"Platform\",\"platform\",{\"_171\":187,\"_173\":188},{\"_150\":455,\"_152\":456,\"_154\":457,\"_156\":458,\"_158\":457,\"_159\":459,\"_161\":460,\"_163\":461,\"_165\":461,\"_167\":-5,\"_168\":462,\"_181\":463,\"_185\":464,\"_189\":66},\"app-bridge-title-bar-visual-update\",\"App Bridge Title Bar visual update\",\"Apps will see an improved visual appearance of the [App Bridge Title Bar API](https://shopify.dev/docs/api/app-bridge-library/web-components/ui-title-bar) starting to rollout, to match the new experience in the Shopify admin. \\r\\n\\r\\nNo developer action is required. The new experience will work with the existing API. \\r\\n\\r\\n\",\"Apps will see an improved visual appearance of the [App Bridge Title Bar API](https://shopify.dev/docs/api/app-bridge-library/web-components/ui-title-bar) starting to rollout, to match the new...\",\"2025-03-12T18:40:36-04:00\",\"2025-03-18T17:02:36-04:00\",\"2025-03-31T07:00:00-04:00\",[],{\"_171\":451,\"_173\":452},{\"_171\":187,\"_173\":188},{\"_150\":466,\"_152\":467,\"_154\":468,\"_156\":469,\"_158\":468,\"_159\":470,\"_161\":471,\"_163\":472,\"_165\":473,\"_167\":15,\"_168\":474,\"_181\":477,\"_185\":478,\"_189\":66},\"new-planhandle-field-managed-pricing\",\"New `planHandle` field for managed pricing app subscription plans\",\"App subscription plans created with [managed pricing](https://shopify.dev/docs/apps/launch/billing/managed-pricing) now include plan handle data. This makes it easier and more consistent to query for app subscription plans, because these human-readable handles persist even if the plan ID changes due to updates or edits.\\r\\n\\r\\n`planHandle` is available on the [`AppRecurringPricing`](https://shopify.dev/docs/api/admin-graphql/latest/objects/AppRecurringPricing#field-planhandle) object, while `plan_handle` is included in the [`app_subscriptions/update`](https://shopify.dev/docs/api/webhooks/latest?reference=toml#list-of-topics-app_subscriptions/update) webhook topic.\\r\\n\\r\\nWith this update, you'll now be asked to define your own plan handle when creating new app subscription plans through your Partner Dashboard. All existing plans have been updated with a `planHandle` value based on their plan name.\",\"App subscription plans now include persistent plan handles, making it easier to query for plan data.\",\"2025-03-10T15:44:29-04:00\",\"2025-03-17T16:23:20-04:00\",\"2025-04-01T13:00:00-04:00\",\"2025-03-29T12:00:00-04:00\",[475,476],{\"_171\":172,\"_173\":174},{\"_171\":273,\"_173\":274},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":480,\"_152\":481,\"_154\":482,\"_156\":483,\"_158\":482,\"_159\":484,\"_161\":485,\"_163\":327,\"_165\":486,\"_167\":14,\"_168\":487,\"_181\":489,\"_185\":490,\"_189\":66},\"storefront-api-cart-exposes-selling-plan-errors\",\"Storefront API Cart now exposes selling plan errors\",\"As of version 2025-07 of the GraphQL Storefront API, enhanced error handling for selling plans is introduced. The Cart mutations now expose specific user errors for scenarios involving selling plans:\\r\\n\\r\\n- `VARIANT_REQUIRES_SELLING_PLAN`: The error is returned when a merchandise added to the cart requires a selling plan, but none is provided.\\r\\n- `SELLING_PLAN_NOT_APPLICABLE`: The error is returned when a selling plan is added to a merchandise in the cart but is not applicable.\\r\\n\",\"Version 2025-07 of the GraphQL Storefront API improves error handling for selling plans. Cart mutations now specify errors for missing or inapplicable selling plans.\",\"2025-03-26T04:52:08-04:00\",\"2025-03-27T10:03:51-04:00\",\"2025-03-27T12:00:00-04:00\",[488],{\"_171\":179,\"_173\":180},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":492,\"_152\":493,\"_154\":494,\"_156\":495,\"_158\":494,\"_159\":496,\"_161\":497,\"_163\":486,\"_165\":486,\"_167\":-5,\"_168\":498,\"_181\":499,\"_185\":502,\"_189\":66},\"liquid-support-for-oklch-colors\",\"Liquid support for OKLCH colors\",\"We've introduced support for OKLCH colors in Liquid, enabling more natural color transitions and access to a broader range of colors than sRGB.\\r\\n\\r\\nNew features include:\\r\\n\\r\\n- The [`color_to_oklch`](/docs/api/liquid/filters/color_to_oklch) filter, which takes a `color` object or string and returns an OKLCH color string.\\r\\n- Enhanced [`color`](/docs/api/liquid/objects/color) objects with new properties: [`color_space`](/docs/api/liquid/filters/color_to_oklch), [`chroma`](/docs/api/liquid/objects/color#color-chroma), [`oklch`](/docs/api/liquid/objects/color#color-oklch), and [`oklcha`](/docs/api/liquid/objects/color#color-oklcha). These allow you to access OKLCH channels and convert color objects into the OKLCH color space.\\r\\n- Color filters like [`color_saturate`](/docs/api/liquid/filters#color_saturate) now operate within the OKLCH color space.\\r\\n\\r\\nExplore the [Liquid docs](/docs/api/liquid) to learn more about OKLCH and start integrating these vibrant colors into your projects today.\",\"Liquid now supports OKLCH colors, enabling a broader color range. New features include `color_to_oklch` filter and enhanced `color` object properties for OKLCH.\",\"2025-03-26T12:28:35-04:00\",\"2025-03-26T16:29:35-04:00\",[],{\"_171\":500,\"_173\":501},\"Themes\",\"dev_themes\",{\"_171\":201,\"_173\":202},{\"_150\":504,\"_152\":505,\"_154\":506,\"_156\":507,\"_158\":506,\"_159\":508,\"_161\":509,\"_163\":510,\"_165\":510,\"_167\":-5,\"_168\":511,\"_181\":514,\"_185\":515,\"_189\":66},\"re-enabled-customer-search-terms\",\"Re-enabled customer search terms in the GraphQL and REST Admin APIs\",\"We've re-enabled several customer-related `query` terms in all versions of the [GraphQL Admin API](/docs/api/admin-graphql/2024-07/queries/customers#argument-query) and [REST Admin API](/docs/api/admin-rest/2024-07/resources/customer#get-customers-search?query=email:bob.norman@mail.example.com).\\r\\n\\r\\nVersion 2024-07 of these APIs disabled the following `query` terms for searching customers:\\r\\n\\r\\n- `accepts_marketing`\\r\\n- `city`\\r\\n- `company`\\r\\n- `country`\\r\\n- `customer_date`\\r\\n- `email_marketing_state`\\r\\n- `last_abandoned_order_date`\\r\\n- `order_date`\\r\\n- `orders_count`\\r\\n- `province`\\r\\n- `sms_marketing_state`\\r\\n- `state`\\r\\n- `tag`\\r\\n- `tag_not`\\r\\n- `territory_code`\\r\\n- `total_spent`\\r\\n\\r\\nThese options have been re-enabled across all API versions, allowing for more specific customer searches. For more details, refer to the [GraphQL Admin API documentation](/docs/api/admin-graphql/2024-07/queries/customers#argument-query) and the [REST Admin API documentation](/docs/api/admin-rest/2024-07/resources/customer#get-customers-search?query=email:bob.norman@mail.example.com).\",\"The GraphQL and REST Admin API now support various customer-related search terms that were disabled in API version 2024-07. For example: `accepts_marketing`, `city`, `company`, and more.\",\"2025-03-25T17:17:26-04:00\",\"2025-03-26T09:24:21-04:00\",\"2025-03-26T12:00:00-04:00\",[512,513],{\"_171\":172,\"_173\":174},{\"_171\":413,\"_173\":414},{\"_171\":183,\"_173\":184},{\"_171\":187,\"_173\":188},{\"_150\":517,\"_152\":518,\"_154\":519,\"_156\":520,\"_158\":519,\"_159\":521,\"_161\":522,\"_163\":523,\"_165\":524,\"_167\":-5,\"_168\":525,\"_181\":527,\"_185\":528,\"_189\":66},\"draft-orders-automatically-purged-after-1-year-of-inactivity\",\"Draft Orders automatically purged after 1 year of inactivity\",\"Draft orders created on or after April 1, 2025 will be automatically purged after one year of inactivity, simplifying data management and improving performance for apps interacting with draft orders. Automatic removal of inactive draft orders will begin on April 1, 2026.\\r\\n\\r\\nLearn more about [draft order deletion](https://help.shopify.com/en/manual/fulfillment/managing-orders/create-orders/create-draft#delete-draft-order). \\r\\n\",\"Draft orders inactive for a year will auto-delete starting April 1, 2026 to improve data management and app performance. Applies to orders created after April 1, 2025.\",\"2025-03-21T11:55:25-04:00\",\"2025-03-24T12:26:45-04:00\",\"2025-03-24T13:00:00-04:00\",\"2025-03-25T10:00:00-04:00\",[526],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":187,\"_173\":188},{\"_150\":530,\"_152\":531,\"_154\":532,\"_156\":533,\"_158\":532,\"_159\":534,\"_161\":535,\"_163\":536,\"_165\":536,\"_167\":15,\"_168\":537,\"_181\":538,\"_185\":539,\"_189\":66},\"custom-ids-more-lookups\",\"Using custom ids to look up collections, locations, orders, and product variants\",\"As of 2025-04 Admin API, you can use your own identifiers to lookup more resource types with the following APIs:\\r\\n\\r\\n* `collectionByIdentifier`\\r\\n* `locationByIdentifier`\\r\\n* `orderByIdentifier`\\r\\n* `productVariantByIdentifier`\\r\\n\\r\\nCustom ids are defined by a new metafield type: id. The unique values capability is required and enabled by default for the id type. The id type unlocks custom ids for Shopify, enabling merchants and partners to specify their own identifiers for objects with metafields.\\r\\n\\r\\nSupport for product and customer lookup by custom id was [announced as part of the 2025-01 API release](https://shopify.dev/changelog/using-custom-ids-and-handles-in-product-and-customer-lookups).\",\"The 2025-04 Admin API allows custom identifier lookup for collections, locations, orders, and product variants.\",\"2025-03-21T10:58:51-04:00\",\"2025-03-21T12:01:39-04:00\",\"2025-03-22T12:00:00-04:00\",[],{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":541,\"_152\":542,\"_154\":543,\"_156\":544,\"_158\":543,\"_159\":545,\"_161\":546,\"_163\":547,\"_165\":548,\"_167\":-5,\"_168\":549,\"_181\":550,\"_185\":551,\"_189\":66},\"mcp-server-for-the-shopify-dev-assistant\",\"Shopify.dev MCP Server\",\"We're excited to announce the release of the new Shopify.dev MCP Server. Now you can harness the full potential of the dev assistant directly within Cursor chat, Windsurf, or Claude desktop. \\r\\n\\r\\nConfigure your Shopify [dev-mcp](https://github.com/Shopify/dev-mcp?tab=readme-ov-file#setup) server and take it for a spin!\",\"MCP server for Shopify dev assistant\",\"2025-03-20T12:44:51-04:00\",\"2025-03-31T15:26:49-04:00\",\"2025-03-31T15:30:00-04:00\",\"2025-03-21T12:00:00-04:00\",[],{\"_171\":399,\"_173\":400},{\"_171\":201,\"_173\":202},{\"_150\":553,\"_152\":554,\"_154\":555,\"_156\":556,\"_158\":555,\"_159\":557,\"_161\":558,\"_163\":548,\"_165\":548,\"_167\":-5,\"_168\":559,\"_181\":561,\"_185\":562,\"_189\":66},\"retail-exchanges-now-use-the-shopify-exchanges-implementation\",\"Retail Exchanges now use the Shopify Exchanges implementation\",\"Retail Exchanges are now supported by the Shopify Exchange Platform. Previously, Retail Exchanges used a separate system called ExchangesV2, which handled exchanges as a combination of a Return and an Order Edit, along with any necessary refunds.\\r\\n\\r\\nIf your shop has opted out of Shopify Exchanges, we will continue to process exchanges using the old system.\\r\\n\\r\\nNow, Retail Exchanges will create a Return with exchange line items, consolidating several operations into one:\\r\\n\\r\\n- Separate sales agreements for the Return and the Order Edit are no longer created. The Return agreement now includes all the sales created from an exchange. \\r\\n- The same validations and constraints that apply to exchanges on the Return platform also apply to exchanges conducted through Shopify POS.\\r\\n\\r\\nIf your integrations or ERP interfaces previously depended on having distinct sales agreements for the Return and the Order Edit, please note that these are now consolidated. The Return agreement now encompasses both operations, so you may need to update your integration to utilize a single sales agreement.\\r\\n\\r\\nFurthermore, exchanges created in Admin, or via the `returnCreate()` APIs will now be visible on the `Order.exchangeV2s()` API. If you are using that API and would like to exclude those “mirrored” exchanges from the API, you can use a [new `include_mirrored_exchanges` query filter](https://shopify.dev/changelog/new-includemirroredexchanges-query-filter-parameter) parameter.\\r\\n\\r\\nWe are [deprecating](https://shopify.dev/docs/apps/build/pos/exchangesv2deprecation) the ExchangeV2 APIs and plan to remove them after a 1-year deprecation period. During this time, even though exchanges are created through the Shopify Exchange Platform, they will still be accessible via the `Order.exchangeV2s()` API. \",\"Shopify Exchange Platform now supports Retail Exchanges, consolidating operations into a single Return. Update integrations for unified sales agreements. ExchangeV2 APIs deprecated in 1 year.\",\"2025-03-20T09:25:34-04:00\",\"2025-03-21T13:05:55-04:00\",[560],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":187,\"_173\":188},{\"_150\":564,\"_152\":565,\"_154\":566,\"_156\":567,\"_158\":566,\"_159\":568,\"_161\":569,\"_163\":570,\"_165\":570,\"_167\":-5,\"_168\":571,\"_181\":572,\"_185\":575,\"_189\":66},\"ads-are-now-available-on-mobile-plus-more-surfaces-to-target-merchants\",\"Ads are now available on mobile, plus more surfaces to target merchants\",\"Shopify has introduced new advertising options in the App Store, enabling developers to run ads on mobile devices and target merchants based on location or plan type on the homepage and category pages.\\r\\n\\r\\nHere are the latest updates to enhance your ad management and execution:\\r\\n\\r\\n* **Mobile ads**: You can now run mobile ads on the Shopify App Store\\r\\n* **Ad Auction Types**: You can now set different bid prices for mobile and desktop ads, with options for geotargeting and merchant plan-based targeting.\\r\\n* **Ad Reports**: These now include mobile-specific metrics and insights, offering a comprehensive view of your app's performance across various device channels.\\r\\n* **Geotargeting and Merchant Plan-Based Targeting**: These features are now extended beyond search results and are available on homepage and category page ads. Note that merchant plan-based targeting is exclusive to apps with [Built for Shopify](https://shopify.dev/docs/apps/launch/built-for-shopify) status.\\r\\n\\r\\nYou can access these ad features through the Ads Manager in your Partner Dashboard.\\r\\n\\r\\nFor more information, [learn more here](https://shopify.dev/docs/apps/launch/marketing/advertising/create-ads).\",\"Shopify App Store now supports mobile ads and targeting on homepage and category page ads. Set bid prices for devices and access detailed mobile ad reports via Ads Manager in your Partner Dashboard.\",\"2025-03-18T14:07:51-04:00\",\"2025-03-19T11:40:05-04:00\",\"2025-03-19T10:00:00-04:00\",[],{\"_171\":573,\"_173\":574},\"Shopify App Store\",\"shopify_app_store\",{\"_171\":201,\"_173\":202},{\"_150\":577,\"_152\":578,\"_154\":579,\"_156\":580,\"_158\":579,\"_159\":581,\"_161\":582,\"_163\":583,\"_165\":583,\"_167\":15,\"_168\":584,\"_181\":586,\"_185\":587,\"_189\":60},\"deprecating-pricelistusererrorcode-values\",\"Deprecating PriceListUserErrorCode values\",\"Starting in API version 2025-04, [PriceListErrorCode](https://shopify.dev/docs/api/admin-graphql/unstable/enums/PriceListUserErrorCode) values that are currently not returned by the API will be hidden. These error codes include:\\r\\n\\r\\n- `CATALOG_ASSIGNMENT_NOT_ALLOWED`\\r\\n- `CATALOG_CANNOT_CHANGE_CONTEXT_TYPE`\\r\\n- `APP_CATALOG_PRICE_LIST_ASSIGNMENT`\\r\\n- `CONTEXT_RULE_MARKET_LOCKED`\",\"Starting from 2025-04, unused `PriceListErrorCode` values will be removed.\",\"2025-01-03T10:22:05-05:00\",\"2025-01-06T13:32:03-05:00\",\"2025-03-17T09:00:00-04:00\",[585],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":588,\"_173\":589},\"Breaking API Change\",\"breaking-api-change\",{\"_150\":591,\"_152\":592,\"_154\":593,\"_156\":594,\"_158\":593,\"_159\":595,\"_161\":596,\"_163\":597,\"_165\":598,\"_167\":-5,\"_168\":599,\"_181\":600,\"_185\":601,\"_189\":60},\"now-available-js-buy-sdk-v30\",\"Now available: JS Buy SDK v3.0 \",\"We released the last and final version of JavaScript Buy SDK v3.0 to extend its useful life following the [Checkout API deprecation](https://shopify.dev/changelog/deprecation-of-checkout-apis). Upgrading to v3.0 will extend the grace period of SDK's `.checkout` interface by replacing it with an equivalent interface based on the [Cart API](https://shopify.dev/docs/api/storefront/2025-01/objects/Cart) with some limitations inherent to the different scope of both APIs. See this [upgrade guide](https://github.com/Shopify/js-buy-sdk/blob/main/README.md#how-to-upgrade-to-v30) with supported use cases to help the transition. \\r\\n\\r\\n\\r\\nThe other option to remain operational is to switch to the [Storefront API Client](https://github.com/Shopify/shopify-app-js/tree/main/packages/api-clients/storefront-api-client#readme), which manages the API’s authentication information and provides various methods that enable devs to interact with the API. See this [migration guide](https://github.com/Shopify/js-buy-sdk/tree/main/migration-guide) for more details. \\r\\n\\r\\n\\r\\n**Critical Deadline: July 1, 2025 11:00 AM ET**. You must implement one of these changes by this date, or customers will not be able to complete purchases. Please choose the option that best suits your needs and timelines.\\r\\n\",\"JS Buy SDK v3.0 is now available\",\"2025-03-13T12:36:30-04:00\",\"2025-03-13T12:58:38-04:00\",\"2025-03-13T13:00:00-04:00\",\"2025-03-14T12:00:00-04:00\",[],{\"_171\":183,\"_173\":184},{\"_171\":588,\"_173\":589},{\"_150\":603,\"_152\":604,\"_154\":605,\"_156\":606,\"_158\":605,\"_159\":607,\"_161\":608,\"_163\":609,\"_165\":609,\"_167\":-5,\"_168\":610,\"_181\":612,\"_185\":613,\"_189\":66},\"adding-defaultphonenumber-field-to-customer\",\"Adding defaultPhoneNumber field to Customer\",\"As of GraphQL Admin API version **2025-04**, the `defaultPhoneNumber` field is introduced on the `Customer` object to support querying a customer's phone number and marketing state.\\r\\n\\r\\nLearn more about the `Customer` fields on [Shopify.dev](https://shopify.dev/docs/api/admin-graphql/2025-04/objects/Customer).\",\"As of GraphQL Admin API version **2025-04**, the `defaultPhoneNumber` field is introduced on the `Customer` object to support querying a customer's phone number and marketing state.\\r\\n\\r\\nLearn more...\",\"2025-03-10T16:53:01-04:00\",\"2025-03-11T09:48:13-04:00\",\"2025-03-11T12:00:00-04:00\",[611],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":615,\"_152\":616,\"_154\":617,\"_156\":618,\"_158\":617,\"_159\":619,\"_161\":620,\"_163\":164,\"_165\":621,\"_167\":15,\"_168\":622,\"_181\":624,\"_185\":625,\"_189\":66},\"adding-defaultemailaddress-field-to-customer\",\"Adding defaultEmailAddress field to Customer\",\"As of GraphQL Admin API version **2025-04**, the `defaultEmailAddress` field is introduced on the `Customer` object to support querying a customer's email address and marketing state.\\r\\n\\r\\nLearn more about the `Customer` fields on [Shopify.dev](https://shopify.dev/docs/api/admin-graphql/2025-04/objects/Customer).\",\"As of GraphQL Admin API version **2025-04**, the `defaultEmailAddress` field is introduced on the `Customer` object to support querying a customer's email address and marketing state.\\r\\n\\r\\nLearn more...\",\"2025-03-07T11:28:55-05:00\",\"2025-03-10T20:49:41-04:00\",\"2025-03-08T12:00:00-05:00\",[623],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":627,\"_152\":628,\"_154\":629,\"_156\":630,\"_158\":629,\"_159\":631,\"_161\":632,\"_163\":633,\"_165\":633,\"_167\":15,\"_168\":634,\"_181\":636,\"_185\":637,\"_189\":60},\"end-of-compatibility-for-old-pos-ui-extensions-versions\",\"End of Compatibility for Old POS UI Extensions Versions\",\"[Shopify's API version policy](https://shopify.dev/docs/api/usage/versioning) supports stable versions for 12 months. With the release of Shopify API 2025.04, we will discontinue support for the following POS UI Extension versions:\\r\\n\\r\\n- 1.0.0\\r\\n- 1.0.1\\r\\n- 1.1.2\\r\\n- 1.2.0\\r\\n- 1.3.0\\r\\n- 1.4.0\\r\\n- 1.5.1\\r\\n- 1.6.0\\r\\n- 1.7.0\\r\\n- 2024-04\\r\\n\\r\\nStarting with POS version 9.31, POS UI extensions built on these unsupported versions will no longer function. If your application uses any of these versions, please update to the latest POS UI Extension version to ensure continued functionality and support.\",\"Shopify API 2025.04 ends support for specific POS UI Extension versions. Update to the latest version to ensure functionality with POS 9.31 and beyond.\",\"2025-03-06T15:32:33-05:00\",\"2025-03-09T20:52:20-04:00\",\"2025-03-07T12:00:00-05:00\",[635],{\"_171\":237,\"_173\":238},{\"_171\":183,\"_173\":184},{\"_171\":638,\"_173\":639},\"Deprecation Announcement\",\"deprecation\",{\"_150\":641,\"_152\":642,\"_154\":643,\"_156\":644,\"_158\":643,\"_159\":645,\"_161\":646,\"_163\":633,\"_165\":633,\"_167\":-5,\"_168\":647,\"_181\":648,\"_185\":649,\"_189\":66},\"shopify-collective-developer-documentation\",\"New developer documentation now available for Shopify Collective\",\"As of March 6, 2025, you can access the new [developer documentation](https://shopify.dev/docs/apps/build/collective) for Shopify Collective. This resource is designed to help developers integrate seamlessly with Shopify Collective, especially when working with external dependencies like third-party ERP and PIM solutions. The documentation provides clear guidance on using Shopify's API and webhooks to integrate your existing workflows into the Collective ecosystem.\",\"New Shopify Collective docs offer guidance on integrating systems using Shopify's API and webhooks, enhancing workflow integration for developers.\",\"2025-03-06T05:01:31-05:00\",\"2025-03-06T05:06:25-05:00\",[],{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":651,\"_152\":652,\"_154\":653,\"_156\":654,\"_158\":653,\"_159\":655,\"_161\":656,\"_163\":657,\"_165\":657,\"_167\":-5,\"_168\":658,\"_181\":660,\"_185\":661,\"_189\":66},\"pos-ui-extensions-modal-update\",\"POS UI Extensions: Modal update\",\"In POS version 9.30, the POS UI Extensions modal will be enhanced to prevent accidental dismissals. You won't be able to dismiss the modal by swiping down or tapping outside of it. This update is designed to improve user experience and ensure that important information remains accessible. [Learn more about POS UI Extensions here](https://shopify.dev/docs/api/pos-ui-extensions/2025-01/versions).\\r\\n\",\"In POS version 9.30, the POS UI Extensions modal will be enhanced to prevent accidental dismissals. You won't be able to dismiss the modal by swiping down or tapping outside of it. This update is...\",\"2025-03-05T16:08:29-05:00\",\"2025-03-11T10:33:44-04:00\",\"2025-03-06T12:00:00-05:00\",[659],{\"_171\":237,\"_173\":238},{\"_171\":183,\"_173\":184},{\"_171\":187,\"_173\":188},{\"_150\":663,\"_152\":664,\"_154\":665,\"_156\":666,\"_158\":665,\"_159\":667,\"_161\":668,\"_163\":669,\"_165\":669,\"_167\":15,\"_168\":670,\"_181\":672,\"_185\":673,\"_189\":66},\"order-edit-add-variant-mutation-applies-contextual-pricing-by-default\",\"orderEditAddVariant mutation applies contextual pricing by default\",\"As of the 2025-04 API version, the [`OrderEditAddVariant`](https://shopify.dev/docs/api/admin-graphql/2025-04/mutations/orderEditAddVariant) API will adhere to the pricing configurations set for Markets and Company Locations. \\r\\nThis means that any variant added to an order will automatically apply the appropriate pricing context based on the specified market or company location settings.\",\"As of the 2025-04 API version, the `OrderEditAddVariant` API will adhere to the pricing configurations set for Markets and Company Locations.\",\"2025-03-04T16:00:35-05:00\",\"2025-03-05T00:17:08-05:00\",\"2025-03-05T12:00:00-05:00\",[671],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":588,\"_173\":589},{\"_150\":675,\"_152\":676,\"_154\":677,\"_156\":678,\"_158\":677,\"_159\":679,\"_161\":680,\"_163\":681,\"_165\":681,\"_167\":-5,\"_168\":682,\"_181\":683,\"_185\":684,\"_189\":66},\"cart-ajax-api-inventory-error-message-updates\",\"[Cart AJAX API] Inventory error message updates\",\"We are updating the error messages in the AJAX API for cases where a client requests more inventory than is available.\\r\\n\\r\\n* If no inventory of a variant is in the cart and the client requests more than is available, the error message will be: \\\"Only *available quantity* items were added to your cart.\\\"\\r\\n* If all available inventory of a variant is already in the cart and the client requests more, the error message will be: \\\"The maximum quantity of this item is already in your cart.\\\"\\r\\n\\r\\nThese changes will affect the `add.js`, `change.js`, and `update.js` endpoints.\",\"Updated AJAX API error messages for inventory requests: \\\"Only available quantity added\\\" and \\\"Max quantity in cart.\\\" Affects `add.js`, `change.js`, and `update.js` endpoints.\",\"2025-03-04T10:21:29-05:00\",\"2025-03-04T11:11:38-05:00\",\"2025-03-04T12:00:00-05:00\",[],{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":686,\"_152\":687,\"_154\":688,\"_156\":689,\"_158\":688,\"_159\":690,\"_161\":691,\"_163\":692,\"_165\":692,\"_167\":-5,\"_168\":693,\"_181\":694,\"_185\":695,\"_189\":66},\"introducing-the-dev-assistant-vscode-extension\",\"Introducing the .dev Assistant VSCode Extension\",\"We're excited to announce the release of the new .dev Assistant extension for VSCode! Now, you can harness the full potential of the dev assistant directly within your favorite code editor to streamline your development workflow.\\r\\n\\r\\nDownload [the dev assistant extension on VSCode](https://marketplace.visualstudio.com/items?itemName=Shopify.vscode-shopify-dev-assistant) and take it for a spin!\",\"Introducing the .dev Assistant extension for VSCode, enhancing your development workflow directly in the editor for improved efficiency.\",\"2025-02-28T15:14:19-05:00\",\"2025-02-28T16:45:11-05:00\",\"2025-03-03T09:00:00-05:00\",[],{\"_171\":399,\"_173\":400},{\"_171\":201,\"_173\":202},{\"_150\":697,\"_152\":698,\"_154\":699,\"_156\":700,\"_158\":699,\"_159\":701,\"_161\":702,\"_163\":703,\"_165\":703,\"_167\":-5,\"_168\":704,\"_181\":706,\"_185\":707,\"_189\":66},\"new-graphql-apis-for-inventory-transfers-management\",\"New GraphQL APIs for Inventory Transfers Management\",\"With the introduction of the new Transfers APIs and webhooks, merchants and developers can now seamlessly integrate inventory transfer data between Shopify and external systems such as Inventory Management Systems (IMS) or Enterprise Resource Planning (ERP) systems. This integration enables users to view, create, edit, delete, duplicate, and mark transfers as ready to ship. Additionally, we are launching new Shipment APIs that allow for the creation and management of multiple shipments associated with these transfers.\\r\\n\\r\\nThese APIs are currently available in the `unstable` API version, which is a preliminary phase for testing and feedback. They're intended to be added to the release candidate by July 2025. For more details, please refer to the [Shopify API documentation](https://shopify.dev/docs/api/admin-graphql/unstable/mutations/inventoryTransferCreate).\",\"New Transfers and Shipment APIs enable seamless integration with IMS/ERP, allowing full transfer management. Currently in \\\"Unstable\\\" stage, expected release candidate by July 2025.\",\"2025-02-27T13:43:08-05:00\",\"2025-03-05T13:20:31-05:00\",\"2025-03-03T00:00:00-05:00\",[705],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":709,\"_152\":710,\"_154\":711,\"_156\":712,\"_158\":711,\"_159\":713,\"_161\":714,\"_163\":715,\"_165\":715,\"_167\":15,\"_168\":716,\"_181\":719,\"_185\":720,\"_189\":60},\"checkout-apis-will-be-shut-down-april-1-2025\",\"Checkout APIs will be shut down April 1, 2025\",\"Reminder: The Checkout APIs (Storefront Checkout Mutations and REST Checkout Endpoints) are deprecated and [will be shut off](https://shopify.dev/changelog/deprecation-of-checkout-apis?utm_source=mozart\u0026utm_medium=email\u0026utm_campaign=checkoutapideprecation\u0026utm_content=30daynotice) on April 1, 2025. Customers will not be able to create or complete checkouts using the deprecated Checkout APIs after the deadline. \\r\\n\\r\\nTo prevent disruptions, all impacted apps, including mobile apps, need to [update to the Storefront Cart API](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/cart/migrate-to-cart-api) before April 1, 2025. In addition to the Storefront Cart API, mobile apps can also adopt [Checkout Sheet Kit](https://shopify.dev/docs/storefronts/headless/mobile-apps/checkout-sheet-kit).\\r\\n\\r\\n*Note: This change is unrelated to the prior move from checkout.liquid to Checkout Extensibility.*\\r\\n\",\"All impacted apps need to update to the Storefront Cart API before April 1, 2025 to avoid disruptions. \",\"2025-02-26T18:41:38-05:00\",\"2025-02-27T13:08:12-05:00\",\"2025-03-02T09:00:00-05:00\",[717,718],{\"_171\":413,\"_173\":414},{\"_171\":179,\"_173\":180},{\"_171\":183,\"_173\":184},{\"_171\":638,\"_173\":639},{\"_150\":722,\"_152\":723,\"_154\":724,\"_156\":725,\"_158\":724,\"_159\":726,\"_161\":727,\"_163\":728,\"_165\":729,\"_167\":14,\"_168\":730,\"_181\":732,\"_185\":733,\"_189\":66},\"feesale-fee-field-is-nullable-as-of-2025-07\",\"FeeSale fee field is nullable as of 2025-07\",\"As of 2025-07, the \u003ccode\u003eFeeSale.fee\u003c/code\u003e field is now nullable, meaning a \u003ccode\u003eFee\u003c/code\u003e can be null if it has been deleted. In versions prior to 2025-07, the \u003ccode\u003efee\u003c/code\u003e field will still return the deleted fee. \\r\\n\\r\\nFor more information, visit the [Shopify.dev](https://shopify.dev/docs/api/admin-graphql/unstable/objects/FeeSale) documentation on \u003ccode\u003eFeeSale\u003c/code\u003e.\",\"As of 2025-07, FeeSale.fee is nullable, allowing null values for deleted fees. Prior versions return deleted fees. Update your code to handle null fees.\",\"2025-01-22T20:11:47-05:00\",\"2025-01-24T13:24:50-05:00\",\"2025-03-18T12:00:00-04:00\",\"2025-02-28T12:00:00-05:00\",[731],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":588,\"_173\":589},{\"_150\":735,\"_152\":736,\"_154\":737,\"_156\":738,\"_158\":737,\"_159\":739,\"_161\":740,\"_163\":729,\"_165\":729,\"_167\":15,\"_168\":741,\"_181\":744,\"_185\":745,\"_189\":60},\"amazonpay-enumerated-in-digitalwallets\",\"AMAZON_PAY enumerated in DigitalWallets\",\"The [`DigitalWallet`](https://shopify.dev/docs/api/storefront/2025-04/enums/DigitalWallet) enum type will now include `AMAZON_PAY`\\r\\n\\r\\nThis adds Amazon Pay as an enumerated wallet on the Storefront and GraphQL Admin APIs. On a query for [`shop.paymentDetails.supportedDigitalWallets`](https://shopify.dev/docs/api/admin-graphql/2025-04/objects/PaymentSettings#field-supporteddigitalwallets) including this value indicates that the AmazonPay wallet is active on the merchant storefront.\\r\\n\\r\\nThis also enables visibility of AMAZON_PAY as a value on the [`wallet`](https://shopify.dev/docs/api/admin-graphql/2025-04/objects/CardPaymentDetails#field-wallet) field of the on [`CardPaymentDetails`](https://shopify.dev/docs/api/admin-graphql/2025-04/objects/CardPaymentDetails) object. Previously, transactions using Amazon Pay would have a null `wallet` value.\",\"The DigitalWallets enum now includes AMAZON_PAY, enabling its use in Storefront and Admin GraphQL APIs which can determine if Amazon Pay is available to buyers and has been used in transactions.\",\"2025-02-27T13:17:01-05:00\",\"2025-02-28T16:42:18-05:00\",[742,743],{\"_171\":172,\"_173\":174},{\"_171\":179,\"_173\":180},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":747,\"_152\":748,\"_154\":749,\"_156\":750,\"_158\":749,\"_159\":751,\"_161\":752,\"_163\":753,\"_165\":753,\"_167\":15,\"_168\":754,\"_181\":756,\"_185\":757,\"_189\":66},\"graphql-return-actual-deprecation-reasons\",\"The `X-Shopify-API-Deprecated-Reason` HTTP header will return actual GraphQL deprecations if any\",\"As of `2025-04`, the `X-Shopify-API-Deprecated-Reason` HTTP header will return the list of detected deprecations instead of a generic URL.\\r\\n\\r\\n**Example**\\r\\n\\r\\nAs of `2025-04`: `X-Shopify-API-Deprecated-Reason: Shop.products, Shop.productVariants`\\r\\nBefore `2025-04`: `X-Shopify-API-Deprecated-Reason: https://shopify.dev/api/usage/versioning#deprecation-practices`\",\"As of `2025-04`, the `X-Shopify-API-Deprecated-Reason` HTTP header will return the list of detected deprecations instead of a generic URL.\",\"2025-01-31T15:37:11-05:00\",\"2025-02-05T11:50:58-05:00\",\"2025-02-24T12:00:00-05:00\",[755],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":187,\"_173\":188},{\"_150\":759,\"_152\":760,\"_154\":761,\"_156\":762,\"_158\":761,\"_159\":763,\"_161\":764,\"_163\":765,\"_165\":766,\"_167\":15,\"_168\":767,\"_181\":769,\"_185\":770,\"_189\":66},\"new-customer-address-capabilities-in-the-admin-api\",\"New customer address capabilities in the Admin API\",\"Starting with API version 2025-04, we've enhanced the Admin API with new capabilities for managing customer addresses. You can now efficiently create, update, and delete customer addresses using the following mutations: `customerAddressCreate`, `customerAddressUpdate`, and `customerAddressDelete`. Both create and update mutations allow the address to be the default address for the customer with the `setAsDefault` argument set to true. See more in the docs:\\r\\n- [customerAddressCreate](https://shopify.dev/docs/api/admin-graphql/2025-04/mutations/customerAddressCreate)\\r\\n- [customerAddressUpdate](https://shopify.dev/docs/api/admin-graphql/2025-04/mutations/customerAddressUpdate)\\r\\n- [customerAddressDelete](https://shopify.dev/docs/api/admin-graphql/2025-04/mutations/customerAddressDelete)\",\"2025-04 adds `customerAddressCreate`, `customerAddressUpdate`, and `customerAddressDelete` mutations for more granular control on customer addresses.\",\"2025-02-14T16:04:41-05:00\",\"2025-02-26T13:36:51-05:00\",\"2025-02-26T12:00:00-05:00\",\"2025-02-20T12:00:00-05:00\",[768],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":201,\"_173\":202},{\"_150\":772,\"_152\":773,\"_154\":774,\"_156\":775,\"_158\":774,\"_159\":776,\"_161\":777,\"_163\":778,\"_165\":766,\"_167\":14,\"_168\":779,\"_181\":781,\"_185\":782,\"_189\":60},\"metafield-description-field-removal\",\"Metafield description input field removal\",\"The `description` field on metafield is being removed from the [`MetafieldInput`](https://shopify.dev/docs/api/admin-graphql/unstable/input-objects/MetafieldInput) GraphQL input object. The change will appear in `unstable` and will be included in the `2025-07` API version.\\r\\n\\r\\nThe `description` field is optional and isn't exposed to merchants. You can safely stop including the field in queries and mutations.\\r\\n\\r\\nIf you want to set or get the description of a metafield, use the `description` field on [`MetafieldDefinition`](https://shopify.dev/docs/api/admin-graphql/unstable/objects/MetafieldDefinition).\",\"The `description` field for metafields is being removed in `unstable`.\",\"2025-02-19T15:14:08-05:00\",\"2025-02-21T12:18:05-05:00\",\"2025-02-27T12:00:00-05:00\",[780],{\"_171\":172,\"_173\":174},{\"_171\":183,\"_173\":184},{\"_171\":588,\"_173\":589},\"versions\",{\"_11\":12,\"_785\":15},\"stable\",\"root\",\"actionData\",\"errors\"]\n");</script><!--$?--><template id="B:1"></template><!--/$--></div><script>function $RC(a,b){a=document.getElementById(a);b=document.getElementById(b);b.parentNode.removeChild(b);if(a){a=a.previousSibling;var f=a.parentNode,c=a.nextSibling,e=0;do{if(c&&8===c.nodeType){var d=c.data;if("/$"===d)if(0===e)break;else e--;else"$"!==d&&"$?"!==d&&"$!"!==d||e++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;b.firstChild;)f.insertBefore(b.firstChild,c);a.data="$";a._reactRetry&&a._reactRetry()}};$RC("B:0","S:0")</script><div hidden id="S:1"><script>window.__reactRouterContext.streamController.close();</script></div><script>$RC("B:1","S:1")</script>