NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #3404 most downloaded on PyPI
Open WebUI
Last release 13 days ago
21 Sep 2026
Ships on a steady schedule
a new release about every 4 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
2 years old
166 releases · first in 2024
🔐 Fixed a security vulnerability where knowledge base access within chat folders persisted after permissions were revoked. #17182, Commit
[!TIP]
Looking for an Enterprise Plan? – Speak with Our Sales Team Today!Get enhanced capabilities, including custom theming and branding, Service Level Agreement (SLA) support, and more!
👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: @athoik, @rgaricano, @Classic298, @Elettrotecnica, @thomascooper, @garylab, @Ithanil, @dependabot[bot], @acwoo97, @aleixdorca, @aREversez, @AdamJohnSwan, @hadadrjt, @Viruzaum, @joaoback, @ShirasawaSama
🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!)
@amd, @agency-agency, @roosi-gmbh, @feddersen-group, @SRKConsulting, @mushmax, @rndmcnlly, @icanbwell, @Krambu-Travis, @loitragg, @GenieDev101, @CubicleGangster, @GitDatamind, @TOWaB, @TheZigGroup, @Classic298, @comet-ml, @FominVO, @catalyst-net-nz, @JrdnHans, @hkosm, @VeroFess, @joaoback
One column per month.
🛂 Granular Chat Interaction Permissions: Added fine-grained permission controls for individual chat actions including "Continue Response", "Regenerate
Nothing published for this version
🖼️ Image Generation Reliability Restored: Fixed a key issue causing image generation failures.
♿ High Contrast Mode in Chat Messages: Implemented enhanced High Contrast Mode support for chat messages, making text and important details easier to
⚡ Asynchronous Chat Payload Processing: Refactored the chat completion pipeline to return a response immediately for streaming requests involving web
[!TIP]
Looking for an Enterprise Plan? – Speak with Our Sales Team Today!Get enhanced capabilities, including custom theming and branding, Service Level Agreement (SLA) support, and more!
👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: @timovanasten, @mahenning, @olivier-lacroix, @FukkenShit, @PeterDaveHello, @BoFFire, @adamoutler, @silentoplayz, @Classic298, @koflerm, @Gyarbij, @expruc, @decent-engineer-decent-datascientist, @kahghi, @Kylapaallikko, @athoik, @rgaricano, @Rain6435, @ShirasawaSama, @0xThresh, @SebastienLentzAM, @tremlin, @tcx4c70, @joaoback
🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!)
@amd, @agency-agency, @roosi-gmbh, @feddersen-group, @SRKConsulting, @mushmax, @rndmcnlly, @icanbwell, @Krambu-Travis, @loitragg, @GenieDev101, @CubicleGangster, @GitDatamind, @TOWaB, @TheZigGroup, @Classic298, @comet-ml, @FominVO, @catalyst-net-nz, @JrdnHans, @hkosm, @VeroFess
🔗 OpenAI API '/v1' Endpoint Compatibility: Enhanced API compatibility by supporting requests to paths like '/v1/models', '/v1/embeddings', and '/v1/ch
👥 User Groups in Edit Modal: Added display of user groups information in the user edit modal, allowing administrators to view and manage group members
🛠️ Quick Actions "Add" Behavior: Fixed a bug where using the "Add" button in Quick Actions would add the resulting message as the very first message i
🛡️ Hardened OAuth Security by Removing JWT from URL: Fixed a critical security vulnerability where the authentication token was exposed in the URL aft…
[!TIP]
Looking for an Enterprise Plan? – Speak with Our Sales Team Today!Get enhanced capabilities, including custom theming and branding, Service Level Agreement (SLA) support, Long-Term Support (LTS) versions, and more!
👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: @silentoplayz, @andrewbbaek, @psy42a, @expruc, @Ithanil, @17jmumford, @dependabot[bot], @Classic298, @Rain6435, @Jakobu5, @Ithanil, @rndmcnlly, @hiwylee, @ahangarha, @gaby, @hadadrjt, @leebeomhun
🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!)
@amd, @agency-agency, @roosi-gmbh, @feddersen-group, @SRKConsulting, @Poxel2, @mushmax, @rndmcnlly, @icanbwell, @Krambu-Travis, @loitragg, @GenieDev101, @CubicleGangster, @GitDatamind, @TOWaB, @TheZigGroup, @Classic298, @FominVO, @catalyst-net-nz, @JrdnHans, @hkosm, @VeroFess
🚑 Users Not Loading in Groups: Resolved an issue where user list was not displaying within user groups, restoring full visibility and management of gr
🗂️ Folders as Projects: Organize your workflow with folder-based projects—set folder-level system prompts and associate custom knowledge, bringing sea
[!TIP]
Looking for an Enterprise Plan? – Speak with Our Sales Team Today!Get enhanced capabilities, including custom theming and branding, Service Level Agreement (SLA) support, Long-Term Support (LTS) versions, and more!
👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: @athoik, @aleixdorca, @tarmst, @qingchunnh, @gmacario, @aindriu80, @amberyufangchiu, @rgaricano, @zomnium, @ryanmrodriguez, @Anush008, @sihyeonn, @moblangeois, @kopero2000, @python4004, @guenhter, @Classic298, @silentoplayz, @Classic298, @expruc, @EntropyYue
🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!)
@amd, @agency-agency, @roosi-gmbh, @feddersen-group, @SRKConsulting, @mushmax, @rndmcnlly, @icanbwell, @Krambu-Travis, @loitragg, @euron-tech, @GenieDev101, @CubicleGangster, @GitDatamind, @TOWaB, @TheZigGroup, @Classic298, @comet-ml, @catalyst-net-nz, @FominVO, @JrdnHans, @hkosm
🖼️ Global Image Compression Option: Effortlessly set image compression globally so all image uploads and outputs are optimized, speeding up load times
[!TIP]
Looking for an Enterprise Plan? – Speak with Our Sales Team Today!Get enhanced capabilities, including custom theming and branding, Service Level Agreement (SLA) support, Long-Term Support (LTS) versions, and more!
👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: @SadmL, @Bek85, @vaclcer, @2underscores, @Ithanil, @ayanahye, @qingchunnh, @Kylapaallikko, @silentoplayz, @t-rekttt, @jk-f5, @tcx4c70, @williamgateszhao, @rgaricano, @sreesdas, @Classic298, @jackthgu
🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!)
@amd, @agency-agency, @roosi-gmbh, @Unsupervisedcom, @feddersen-group, @SRKConsulting, @Poxel2, @mushmax, @rndmcnlly, @icanbwell, @blogic-cz, @Krambu-Travis, @loitragg, @GenieDev101, @PortlandKyGuy, @CubicleGangster, @GitDatamind, @TOWaB, @TheZigGroup, @Classic298, @comet-ml, @catalyst, @FominVO
🤖 Automatic "Follow Up" Suggestions: Open WebUI now intelligently generates actionable "Follow Up" suggestions automatically with each message you sen
[!TIP]
Looking for an Enterprise Plan? – Speak with Our Sales Team Today!Get enhanced capabilities, including custom theming and branding, Service Level Agreement (SLA) support, Long-Term Support (LTS) versions, and more!
👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: @aindriu80, @SadmL, @Yu-QX, @vaclcer, @Davixk, @hdnh2006, @expruc, @ayanahye, @qingchunnh, @lucyknada, @rragundez, @silentoplayz, @EntropyYue, @GewoonJaap, @SeiranMaru, @mrexodia, @ER-EPR, @PeterDaveHello, @Zyfax, @guenhter, @diwakar-s-maurya, @PVBLIC-F, @dependabot[bot], @rragundez, @ShirasawaSama, @Classic298, @RGSS3, @Bouby308, @janaki-sasidhar, @TiancongLx
🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!)
@amd, @agency-agency, @roosi-gmbh, @Unsupervisedcom, @feddersen-group, @SRKConsulting, @Poxel2, @mushmax, @rndmcnlly, @icanbwell, @blogic-cz, @Krambu-Travis, @loitragg, @GenieDev101, @PortlandKyGuy, @CubicleGangster, @GitDatamind, @TOWaB, @TheZigGroup, @Classic298, @comet-ml, @catalyst
🟦 Azure OpenAI Embedding Support: You can now select Azure OpenAI endpoints for text embeddings, unlocking seamless integration with enterprise-scale
🧩 Custom Advanced Model Parameters: You can now add your own tailor-made advanced parameters to any model, empowering you to fine-tune behavior and un
[!TIP]
Looking for an Enterprise Plan? – Speak with Our Sales Team Today!Get enhanced capabilities, including custom theming and branding, Service Level Agreement (SLA) support, Long-Term Support (LTS) versions, and more!
👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: @TiancongLx, @SadmL, @Hisma, @Zyfax, @qingchunnh, @NotYuSheng, @torisetxd, @hurxxxx
🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!)
@amd, @agency-agency, @roosi-gmbh, @Unsupervisedcom, @feddersen-group, @SRKConsulting, @mushmax, @rndmcnlly, @icanbwell, @blogic-cz, @Krambu-Travis, @GenieDev101, @PortlandKyGuy, @CubicleGangster, @GitDatamind, @TOWaB, @TheZigGroup, @Classic298, @comet-ml, @chAyubTahir
🟢 Ollama Model Status Indicator in Model Selector: Instantly see which Ollama models are currently loaded with a clear indicator in the model selector
[!TIP]
Looking for an Enterprise Plan? – Speak with Our Sales Team Today!Get enhanced capabilities, including custom theming and branding, Service Level Agreement (SLA) support, Long-Term Support (LTS) versions, and more!
👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: @Kylapaallikko, @qingchunnh, @Ithanil, @silentoplayz, @Zyfax, @diwakar-s-maurya, @hurxxxx, @fl0w1nd, @silentoplayz, @tth37, @ShrootBuck, @SadmL, @bassettb, @TiancongLx, @Classic298, @Vombit, @sreesdas, @PVBLIC-F, @williamgateszhao, @Yu-QX, @torisetxd, @U8F69, @mjmendo, @lilosti, @suleimanelkhoury
🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!)
@amd, @agency-agency, @roosi-gmbh, @Unsupervisedcom, @feddersen-group, @SRKConsulting, @mushmax, @rndmcnlly, @icanbwell, @blogic-cz, @Krambu-Travis, @GenieDev101, @PortlandKyGuy, @CubicleGangster, @GitDatamind, @TOWaB, @TheZigGroup, @Classic298, @comet-ml, @chAyubTahir
🛡️ Refined Security for Pipelines & Model Uploads: Strengthened safeguards against path traversal vulnerabilities during uploads—ensuring your platfor…
[!TIP]
Looking for an Enterprise Plan? – Speak with Our Sales Team Today!Get enhanced capabilities, including custom theming and branding, Service Level Agreement (SLA) support, Long-Term Support (LTS) versions, and more!
👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: @kiettrinhgg, @hgaiser, @Lutherwaves, @tts-yo-nagase, @tanerim, @hwzhuhao, @Classic298, @tremlin, @loitragg, @Choyeyeong, @mini-777, @Ithanil, @hary777, @Davixk, @aleixdorca, @silentoplayz, @uryukikutani, @athoik, @cableman, @phpia, @TiancongLx, @dongfangzan
🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!)
@agency-agency, @roosi-gmbh, @Unsupervisedcom, @feddersen-group, @SRKConsulting, @mushmax, @rndmcnlly, @icanbwell, @blogic-cz, @Krambu-Travis, @GenieDev101, @PortlandKyGuy, @CubicleGangster, @GitDatamind, @TOWaB, @TheZigGroup, @Classic298, @comet-ml, @chAyubTahir
📝 Edit Attached Images/Files in Messages: You can now easily edit your sent messages by removing attached files—streamlining document management, corr
🏆 External Reranker Support for Knowledge Base Search: Supercharge your Retrieval-Augmented Generation (RAG) workflows with the new External Reranker
🌐 Custom Azure TTS API URL Support Added: You can now define a custom Azure Text-to-Speech endpoint—enabling flexibility for enterprise deployments an
…even stronger resistance to security vulnerabilities and attacks.
[!TIP]
Looking for an Enterprise Plan? – Speak with Our Sales Team Today!Get enhanced capabilities, including custom theming and branding, Service Level Agreement (SLA) support, Long-Term Support (LTS) versions, and more!
👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: @agrimmAilio, @PeterDaveHello, @TESTPERSONAL, @izumi0004, @aleixdorca, @salbahra, @tth37, @therealmichaelberna, @Mister-Hope, @yak1ex, @shcodenick, @schulti, @oleguldberg, @panda44312, @stephen304, @spammenotinoz, @tarmst, @hurxxxx, @ayan4m1, @athoik, @AnapatChaiwongse, @jmtatsch, @NoMoreFood, @flefevre, @omahs, @TiancongLx, @SadmL
🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!)
@ModonHolding, @agency-agency, @roosi-gmbh, @Unsupervisedcom, @feddersen-group, @SRKConsulting, @mushmax, @rndmcnlly, @icanbwell, @blogic-cz, @Krambu-Travis, @GenieDev101, @PortlandKyGuy, @CubicleGangster, @GitDatamind, @TOWaB, @TheZigGroup, @Classic298, @comet-ml, @chAyubTahir
Nothing published for this version
🛂 Granular Voice Feature Permissions Per User Group: Admins can now separately manage access to Speech-to-Text (record voice), Text-to-Speech (read al
🛠️ RAG_TEMPLATE Display Issue Resolved: Fixed a formatting problem where the custom RAG_TEMPLATE wasn't correctly rendered in the interface—ensuring t
🧪 Auto-Artifact Detection Toggle: Automatically detects artifacts in results—but now you can disable this behavior under advanced settings for full co
🌍 Improved Global Language Support: Expanded and refined translations across multiple languages to enhance clarity and consistency for international u
🛠️ Global Tool Servers Configuration: Admins can now centrally configure global external tool servers from Admin Settings > Tools, allowing seamless s
🧾 ENABLE_AUDIT_LOGS Setting Removed: Deprecated setting “ENABLE_AUDIT_LOGS” has been fully removed—now controlled via “AUDIT_LOG_LEVEL” instead.
[!TIP]
Looking for an Enterprise Plan? – Speak with Our Sales Team Today!Get enhanced capabilities, including custom theming and branding, Service Level Agreement (SLA) support, Long-Term Support (LTS) versions, and more!
👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: @JunaidPinjari, @melroy89, @Ithanil, @mahenning, @diwakar-s-maurya, @nikes, @panda44312, @softue, @philipp-horstenkamp, @tcgumus, @yak1ex, @foraxe, @ibaldonl, @hurxxxx, @taylorwilsdon, @TiancongLx, @PeterDaveHello, @FarisHijazi, @SadmL, @genjuro214, @kaytwo, @binxn, @djismgaming, @MaxJa4, @rgaricano, @jfbloom22, @shirayu, @Espinaydelfin, @aleixdorca, @OriginalSimon, @Alluuu, @Phlogi
🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!): @ModonHolding, @agency-agency, @roosi-gmbh, @Unsupervisedcom, @feddersen-group, @SRKConsulting, @mushmax, @rndmcnlly, @icanbwell, @blogic-cz, @Krambu-Travis, @GenieDev101, @PortlandKyGuy, @sushibait, @CubicleGangster, @GitDatamind, @TOWaB, @TheZigGroup, @Classic298, @comet-ml
⚡ Toggle Code Execution On/Off: You can now enable or disable code execution, providing more control over security, ensuring a safer and more customiz
📊 Logit Bias Parameter Support: Fine-tune conversation dynamics by adjusting the Logit Bias parameter directly in chat settings, giving you more contr
🌐 Open WebUI Now Works Over LAN in Insecure Context: Resolved an issue preventing Open WebUI from functioning when accessed over a local network in an
🚀 Instant Document Upload with Bypass Embedding & Retrieval: Admins can now enable "Bypass Embedding & Retrieval" in Admin Settings > Documents, signi
🔍 Web Search Retrieval Restored: Resolved a critical issue that broke web search retrieval by reverting deduplication changes, ensuring complete and a
📄 Full Context Mode for Local Document Search (RAG): Toggle full context mode from Admin Settings > Documents to inject entire document content into c
🔧 Critical Import Error Resolved: Fixed a circular import issue preventing 'override_static' from being correctly imported in 'open_webui.config', ens
📝 Prompt Variable Update: Deprecated square bracket '[]' indicators for prompt variables; now requires double curly brackets '{{}}' for consistency an…
🛠️ Multiple Tool Calls Support for Native Function Mode: Functions now can call multiple tools within a single response, unlocking better automation a
🎤 Kokoro-JS TTS Support: A new on-device, high-quality text-to-speech engine has been integrated, vastly improving voice generation quality—everything
👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: @Mistrick, @gramakri, @s1adem4n, @TiancongLx, @seniorsimo, @XingjianXie, @SentinalMax, @manwallet, @luckyman-yan, @Seniorsimo, @rragundez, @pseudorm, @abdalrohman, @zoupingshi, @hurxxxx, @tarmst, @engineeringpatrick, @silverriver, @dependabot[bot], @mitomac, @binxn, @NachoNoCheese, @roryeckel, @yukiteruamano, @feynmanliang, @vinsdragonis, @aleixdorca, @EntropyYue
🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!): @digitalbrainowners, @ModonHolding, @agency-agency, @roosi-gmbh, @mushmax, @rndmcnlly, @icanbwell, @FabioDuo, @h14turbo, @blogic-cz, @Krambu-Travis, @GenieDev101, @PortlandKyGuy, @sushibait, @CubicleGangster, @GitDatamind, @TOWaB, @TheZigGroup
⚙️ System Prompts Now Properly Templated via API: Resolved an issue where system prompts were not being correctly processed when used through the API,
💡 "Think" Tag Display Issue: Resolved a bug where the "Think" tag was not functioning correctly, ensuring proper visualization of the model's reasonin
⚡ Deprecated Non-Web Worker Pyodide Execution: Moves entirely to browser sandboxing for better performance and security.
👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: @df-cgdm, @moblangeois, @tarmst, @Shadowfita, @roryeckel, @taylorwilsdon, @muhac, @iidx, @kostich, @0xThresh, @TiancongLx, @KarlLee830, @imJack6, @OriginalSimon, @dannyl1u, @s-sajid-ali, @le-ross, @abdalrohman, @dependabot[bot], @kokutaro, @jannikstdl, @bunnerz-king, @Mavyre, @zeroxs, @antpyykk-kone, @kyunwang, @Alex1607, @smonux, @jrespeto
🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!): @digitalbrainowners, @ModonHolding, @agency-agency, @roosi-gmbh, @mushmax, @rndmcnlly, @icanbwell, @FabioDuo, @h14turbo, @blogic-cz, @Krambu-Travis, @GenieDev101, @PortlandKyGuy, @sushibait, @CubicleGangster, @GitDatamind
🌍 Enhanced Internationalization (i18n): Refined and expanded translations for greater global accessibility and a smoother experience for international
🧠 Effortful Reasoning Control for OpenAI Models: Introduced the reasoning_effort parameter in chat controls for supported OpenAI models, enabling user
🤔 Native 'Think' Tag Support: Introduced the new 'think' tag support that visually displays how long the model is thinking, omitting the reasoning con
🔄 Clone Shared Chats: Effortlessly clone shared chats to save time and streamline collaboration, perfect for reusing insightful discussions or custom
💬 Channel Reactions with Built-In Emoji Picker: Easily express yourself in channel threads and messages with reactions, featuring an intuitive built-i
Nothing published for this version
🖊️ Typing Indicators in Channels: Know exactly who’s typing in real-time within your channels, enhancing collaboration and keeping everyone engaged.
🔕 Notification Sound Toggle: Added a new setting under Settings > Interface to disable notification sounds, giving you greater control over your works
⚠️ Legacy Functionality Clean-Up: Deprecated outdated backend systems that were non-essential or overlapped with newer implementations, allowing for a…
🎄🎅 Merry Christmas and Happy Holidays! This festive season, we're bringing you our most exciting updates yet, unlocking powerful new possibilities for your workflows. Here's to a smarter, more collaborative future with Open WebUI! 🚀
A heartfelt thank you to everyone—our users, contributors, developers, translators, and dreamers—who have made Open WebUI what it is today. Your passion, ideas, and hard work inspire us every day to push the boundaries of what’s possible. Together, we’ve built not just a platform, but a community that’s shaping the future of AI-powered collaboration and creativity.
As we look ahead to 2025, we remain ambitious—committed to empowering innovation, breaking new ground in AI workflows, and delivering tools that elevate everyone. Here’s to dreaming big, achieving more, and building the future together. Thank you for being a part of this journey. 🚀
👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: @silentoplayz, @tarmst, @devdev999, @aleixdorca, @panda44312, @Adhithya03, @gabriel-ecegi, @OriginalSimon, @matthewdtwo, @envision3d, @denispol, @short-circuit, @TiancongLx, @MooreDerek, @jk-f5
🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!): @digitalbrainowners, @ModonHolding, @roosi-gmbh, @mushmax, @rndmcnlly, @icanbwell, @fabioFrei, @GenieDev101, @PortlandKyGuy, @sushibait, @CubicleGangster, @GitDatamind
Nothing published for this version
Nothing published for this version
🔓 Bypass Model Access Control: Introduced the 'BYPASS_MODEL_ACCESS_CONTROL' environment variable. Easily bypass model access controls for user roles w
Your coding agent can read these notes before it upgrades. Set up the MCP server →