[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"package:cask:mockoon:en":3,"releases:stats:cask:mockoon:en":397,"releases:cask:mockoon:1:false:false:en":398,"releases-count:cask:mockoon:true:en":456},{"accentColor":4,"artifacts":5,"autoUpdates":30,"categories":31,"conflictsWith":38,"dependsOn":41,"deprecated":34,"description":52,"descriptionEn":53,"developer":54,"disabled":34,"displayName":54,"downloadSha256":55,"downloadSize":56,"downloadUrl":57,"editorChoice":34,"formulaeUrl":58,"homepage":59,"iconUrl":60,"installCommand":61,"installs":62,"installs30d":63,"isFont":34,"isLibrary":34,"kegOnly":34,"kind":66,"latestRelease":67,"machineTranslated":34,"minMacos":51,"name":54,"names":86,"platforms":88,"primaryCategory":365,"rank30d":366,"releaseCount":367,"releaseStats":368,"repoUrl":375,"screenshots":376,"sourceLocale":80,"sourceUrl":384,"summary":385,"summaryTranslation":386,"supports":387,"tags":389,"tap":395,"token":87,"version":85,"versionChangedAt":396},"#1F232B",{"apps":6,"binaries":8,"entries":9,"pkgs":29},[7],"Mockoon.app",[],[10,17],{"declaration":11,"phase":14,"sources":15,"target":13,"type":16},{"app":12,"target":13},[7],"\u002FApplications\u002FMockoon.app","install",[7],"app",{"declaration":18,"phase":26,"sources":27,"type":28},{"zap":19},[20],{"trash":21},[22,23,24,25],"~\u002FLibrary\u002FApplication Support\u002Fmockoon","~\u002FLibrary\u002FLogs\u002FMockoon","~\u002FLibrary\u002FPreferences\u002Fcom.mockoon.app.plist","~\u002FLibrary\u002FSaved Application State\u002Fcom.mockoon.app.savedState","cleanup",[],"zap",[],true,[32],{"icon":33,"machineTranslated":34,"name":35,"slug":36,"sourceLocale":37},"lucide:code-xml",false,"Developer Tools","developer-tools","zh-CN",{"casks":39,"formulae":40},[],[],{"arch":42,"casks":45,"formulae":46,"macos":47,"requirements":48},[43,44],"arm64","x86_64",[],[],">= 13",{"macos":49},{">=":50},[51],"13","Mockoon is an open-source desktop application for designing and running mock APIs locally. The desktop workflow needs neither an account nor remote deployment. It helps development and testing proceed without depending on a real service's availability, cost or rate limits.\n\n## Mock servers and responses\nCreate multiple local servers and routes, choose HTTP methods and status codes, set custom headers, serve files and generate JSON with templating helpers. Response rules support realistic scenarios and error cases. HTTPS, proxy forwarding and incoming\u002Fforwarded request logs help inspect integrations. OpenAPI import connects the mock design to an API specification.\n\n## Editing and testing\nMockoon 9.6 introduced OpenAPI re-import for adding routes and responses to existing mocks. Most configuration edits apply immediately; TLS settings and hostname\u002Fport changes still require a restart. Its routing migration has compatibility caveats for some older regular-expression paths. Version 9.6.1 fixes the broken macOS builds in 9.6.0.\n\n## Desktop versus deployment services\nThis Homebrew cask installs Mockoon.app, not the separate npm CLI. The official CLI and Docker image run mocks in headless or CI environments. Mockoon Cloud is a separate subscription service with collaboration, synchronization and deployments; cloud functionality should not be confused with the free local desktop workflow. The legacy @mockoon\u002Fserverless library is deprecated.\n\n## macOS distribution and security\nThe recorded 9.9.0 cask provides an Apple-silicon arm64 DMG and a separate Intel build, requiring macOS 13 or later. Install using `brew install --cask mockoon`. The 9.9.0 release fixes a multipart form-data prototype-pollution vulnerability (GHSA-cmwm-hp2w-h3cx); upstream recommends updating when mocks process untrusted requests or are publicly exposed.\n\n## Sources\n- [Official repository and README](https:\u002F\u002Fgithub.com\u002Fmockoon\u002Fmockoon)\n- [Official documentation](https:\u002F\u002Fmockoon.com\u002Fdocs\u002Flatest\u002Fabout\u002F)\n- [Official 9.9.0 changelog](https:\u002F\u002Fmockoon.com\u002Freleases\u002F9.9.0\u002F)\n- [Homebrew cask](https:\u002F\u002Fgithub.com\u002FHomebrew\u002Fhomebrew-cask\u002Fblob\u002FHEAD\u002FCasks\u002Fm\u002Fmockoon.rb)\n","Create mock APIs in seconds","Mockoon","d1bd3440620694fa2ac433a1c0723bbfc79b3ba5d8884de3a82eee419b54a826",139913325,"https:\u002F\u002Fgithub.com\u002Fmockoon\u002Fmockoon\u002Freleases\u002Fdownload\u002Fv9.9.0\u002Fmockoon.setup.9.9.0.arm64.dmg","https:\u002F\u002Fformulae.brew.sh\u002Fcask\u002Fmockoon","https:\u002F\u002Fmockoon.com\u002F","https:\u002F\u002Fcdn.opennavo.com\u002Ficons\u002Fuploads\u002F47bc851c994d\u002F1ba0cf40177c-256.png","brew install --cask mockoon",{"d30":63,"d365":64,"d90":65},192,5673,906,"cask",{"bodyMarkdown":68,"hasNotes":30,"id":69,"isLatest":30,"isPrerelease":34,"machineTranslated":34,"publishedAt":70,"sections":71,"source":79,"sourceLocale":80,"summary":81,"title":82,"translation":83,"version":85},"Welcome to this new release of Mockoon. It brings support for connecting to a self-hosted API in the future, WebSocket support in Mockoon Cloud, a smarter CRUD auto-generated ID strategy, Content-Type charset override, and several bug fixes and improvements.\nRead on to learn more about this release.\n\n\n Support us!\n\nMockoon is proudly independent and open-source, maintained without external funding. We rely on both sponsorships and Mockoon Cloud subscriptions to keep improving the project and building new features. A big thank you to the companies below for supporting our work and helping us grow (and all the sponsors who helped this project over time!):\n\n      \n        \n      \n    \n      \n        \n      \n    \n      \n        \n      \n    \n\nIf you'd like to support Mockoon as well, you can become a sponsor or subscribe to Mockoon Cloud. Every contribution helps keep the project alive and evolving. Thank you!\n\n      \n        \n      \n    \n      \n        \n      \n    \n\n WebSocket support in Mockoon Cloud\n\nAs part of the work on the self-hosted backend (see below), Mockoon Cloud now supports WebSocket endpoints. They work similarly to their local counterparts, allowing real-time communication between clients and the server.\n\nHead over to the WebSocket documentation to learn more about how to set up and use WebSocket endpoints in Mockoon.\n\n(PR #2354)\n\n Deprecation of the @mockoon\u002Fserverless library\n\nThe @mockoon\u002Fserverless package is now formally deprecated and will no longer receive new feature updates.\n\nWe recommend using the official Mockoon CLI Docker image instead when running mocks on serverless platforms such as AWS Lambda or Google Cloud Run. We plan to remove the @mockoon\u002Fserverless package entirely in a future major release.\n\n(Issue #2079)\n\n Preparation for self-hosted API\n\nThe desktop and web applications have been updated to support connecting to a self-hosted Mockoon backend.\n\nWe announced earlier this year that self-hosting would be our focus for the rest of 2026.\n\nNothing to see yet, but a self-hosted backend supporting Mockoon Cloud features will soon be available as a paid product. Stay tuned for more updates as development progresses.\n\n(PR #2354)\n\n Improvements\n\n\n\n\nMockoon now respects explicit Content-Type header definitions on your responses without automatically forcing a charset=utf-8 suffix, giving you full control over response headers and non-UTF-8 payload encodings. More details can be found in the response headers documentation. (Issue #539)\n\n\n\n\nWhen opening an environment via custom protocol (mockoon:\u002F\u002F), the application now prompts for the destination save path before fetching the remote file, making remote imports clearer and providing smoother cancellation handling. (PR #2341)\n\n\n\n\nThe Logs tab search has been enhanced to include request and response bodies as well as headers, alongside the URL path, HTTP method, and status code. This makes debugging much easier when working with identical URLs (such as GraphQL endpoints) or searching for specific headers and payload properties without having to manually inspect every logged transaction. (Issue #1881)\n\n\n\n\nWhen importing an OpenAPI specification that contains remote $ref references, Mockoon will now warn you before dereferencing and fetching external URLs, listing the target endpoints for greater visibility and security. In addition, a new CLI flag has been added to disable remote URL dereferencing during automated OpenAPI imports: --disable-external-refs. (Issue #2339)\n\n\n\n\nCRUD routes now detect the format and templating helpers used for existing item IDs in your data bucket (such as UUIDs, auto-incrementing numbers, or helpers like {{faker 'database.mongodbObjectId'}}) and automatically reuse that strategy when auto-generating new record IDs upon POST requests. Read more in the CRUD routes documentation. (Issue #1547)\n\n\n\n Fixes\n\n\nFixed an issue where templated file paths in responses were erroneously blocked by path traversal checks. (Issue #2319)\n\nFixed an issue where non-TLS HTTP\u002F2 requests with upgrade headers failed with an Invalid WebSocket upgrade request error when WebSocket routes were defined. (Issue #1908)\n\nFixed an issue where the Secure cookie flag was not removed when proxying HTTPS services over plain HTTP. (Issue #611)\n\nRemoved the append-field dependency and improved multipart form-data parsing with nested\u002Findexed fields handling and prototype pollution protection. A prototype pollution vulnerability was fixed where specially crafted multipart form-data field names could modify Object prototype properties on the server runtime. We recommend updating to this version as soon as possible if your mocks process untrusted requests or are exposed publicly. This vulnerability was disclosed in GHSA-cmwm-hp2w-h3cx. Read our security update. (PR #2355)\n\n\n Chores\n\n\nMigrated automated end-to-end desktop test mocking to WDIO Electron mocks. (PR #2258)\n\nUpdated application and library dependencies to their latest versions. (PR #2356)\n\nGitHub release notice:\n[Full changelog](https:\u002F\u002Fmockoon.com\u002Freleases\u002F9.9.0\u002F)\n\nSource: https:\u002F\u002Fmockoon.com\u002Freleases\u002F9.9.0\u002F\nOfficial release: https:\u002F\u002Fgithub.com\u002Fmockoon\u002Fmockoon\u002Freleases\u002Ftag\u002Fv9.9.0",1475,"2026-09-16T08:00:31Z",[72],{"area":73,"items":74},"Changes",[75,76,77,78],"Fixes multipart form-data prototype pollution (GHSA-cmwm-hp2w-h3cx).","Searches request and response bodies and headers in Logs.","Reuses existing CRUD ID strategies and respects explicit Content-Type.","Warns before fetching remote OpenAPI references.","editorial","en-US","Fixes multipart prototype pollution, improves log search and CRUD ID generation, respects Content-Type charsets, and adds OpenAPI remote-reference warnings.","Mockoon 9.9.0",{"locale":80,"machineTranslated":34,"sourceLocale":80,"status":84},"source","9.9.0",[54,87],"mockoon",[89,119,146,174,201,229,256,284,311,338],{"arch":44,"artifacts":90,"conflictsWith":105,"dependsOn":108,"downloadSha256":115,"downloadUrl":116,"macos":117,"minMacos":51,"requiresRosetta":34,"tag":118,"version":85},{"apps":91,"binaries":92,"entries":93,"pkgs":104},[7],[],[94,98],{"declaration":95,"phase":14,"sources":97,"target":13,"type":16},{"app":96,"target":13},[7],[7],{"declaration":99,"phase":26,"sources":103,"type":28},{"zap":100},[101],{"trash":102},[22,23,24,25],[],[],{"casks":106,"formulae":107},[],[],{"arch":109,"casks":110,"formulae":111,"macos":47,"requirements":112},[44],[],[],{"macos":113},{">=":114},[51],"cd0c048a932cd5f3f22ba914e52e7c87471f0fbb48c3e9f06cde8e7e616b53a2","https:\u002F\u002Fgithub.com\u002Fmockoon\u002Fmockoon\u002Freleases\u002Fdownload\u002Fv9.9.0\u002Fmockoon.setup.9.9.0.x64.dmg","27","golden_gate",{"arch":43,"artifacts":120,"conflictsWith":135,"dependsOn":138,"downloadSha256":55,"downloadUrl":57,"macos":117,"minMacos":51,"requiresRosetta":34,"tag":145,"version":85},{"apps":121,"binaries":122,"entries":123,"pkgs":134},[7],[],[124,128],{"declaration":125,"phase":14,"sources":127,"target":13,"type":16},{"app":126,"target":13},[7],[7],{"declaration":129,"phase":26,"sources":133,"type":28},{"zap":130},[131],{"trash":132},[22,23,24,25],[],[],{"casks":136,"formulae":137},[],[],{"arch":139,"casks":140,"formulae":141,"macos":47,"requirements":142},[43],[],[],{"macos":143},{">=":144},[51],"arm64_golden_gate",{"arch":44,"artifacts":147,"conflictsWith":162,"dependsOn":165,"downloadSha256":115,"downloadUrl":116,"macos":172,"minMacos":51,"requiresRosetta":34,"tag":173,"version":85},{"apps":148,"binaries":149,"entries":150,"pkgs":161},[7],[],[151,155],{"declaration":152,"phase":14,"sources":154,"target":13,"type":16},{"app":153,"target":13},[7],[7],{"declaration":156,"phase":26,"sources":160,"type":28},{"zap":157},[158],{"trash":159},[22,23,24,25],[],[],{"casks":163,"formulae":164},[],[],{"arch":166,"casks":167,"formulae":168,"macos":47,"requirements":169},[44],[],[],{"macos":170},{">=":171},[51],"26","tahoe",{"arch":43,"artifacts":175,"conflictsWith":190,"dependsOn":193,"downloadSha256":55,"downloadUrl":57,"macos":172,"minMacos":51,"requiresRosetta":34,"tag":200,"version":85},{"apps":176,"binaries":177,"entries":178,"pkgs":189},[7],[],[179,183],{"declaration":180,"phase":14,"sources":182,"target":13,"type":16},{"app":181,"target":13},[7],[7],{"declaration":184,"phase":26,"sources":188,"type":28},{"zap":185},[186],{"trash":187},[22,23,24,25],[],[],{"casks":191,"formulae":192},[],[],{"arch":194,"casks":195,"formulae":196,"macos":47,"requirements":197},[43],[],[],{"macos":198},{">=":199},[51],"arm64_tahoe",{"arch":44,"artifacts":202,"conflictsWith":217,"dependsOn":220,"downloadSha256":115,"downloadUrl":116,"macos":227,"minMacos":51,"requiresRosetta":34,"tag":228,"version":85},{"apps":203,"binaries":204,"entries":205,"pkgs":216},[7],[],[206,210],{"declaration":207,"phase":14,"sources":209,"target":13,"type":16},{"app":208,"target":13},[7],[7],{"declaration":211,"phase":26,"sources":215,"type":28},{"zap":212},[213],{"trash":214},[22,23,24,25],[],[],{"casks":218,"formulae":219},[],[],{"arch":221,"casks":222,"formulae":223,"macos":47,"requirements":224},[44],[],[],{"macos":225},{">=":226},[51],"15","sequoia",{"arch":43,"artifacts":230,"conflictsWith":245,"dependsOn":248,"downloadSha256":55,"downloadUrl":57,"macos":227,"minMacos":51,"requiresRosetta":34,"tag":255,"version":85},{"apps":231,"binaries":232,"entries":233,"pkgs":244},[7],[],[234,238],{"declaration":235,"phase":14,"sources":237,"target":13,"type":16},{"app":236,"target":13},[7],[7],{"declaration":239,"phase":26,"sources":243,"type":28},{"zap":240},[241],{"trash":242},[22,23,24,25],[],[],{"casks":246,"formulae":247},[],[],{"arch":249,"casks":250,"formulae":251,"macos":47,"requirements":252},[43],[],[],{"macos":253},{">=":254},[51],"arm64_sequoia",{"arch":44,"artifacts":257,"conflictsWith":272,"dependsOn":275,"downloadSha256":115,"downloadUrl":116,"macos":282,"minMacos":51,"requiresRosetta":34,"tag":283,"version":85},{"apps":258,"binaries":259,"entries":260,"pkgs":271},[7],[],[261,265],{"declaration":262,"phase":14,"sources":264,"target":13,"type":16},{"app":263,"target":13},[7],[7],{"declaration":266,"phase":26,"sources":270,"type":28},{"zap":267},[268],{"trash":269},[22,23,24,25],[],[],{"casks":273,"formulae":274},[],[],{"arch":276,"casks":277,"formulae":278,"macos":47,"requirements":279},[44],[],[],{"macos":280},{">=":281},[51],"14","sonoma",{"arch":43,"artifacts":285,"conflictsWith":300,"dependsOn":303,"downloadSha256":55,"downloadUrl":57,"macos":282,"minMacos":51,"requiresRosetta":34,"tag":310,"version":85},{"apps":286,"binaries":287,"entries":288,"pkgs":299},[7],[],[289,293],{"declaration":290,"phase":14,"sources":292,"target":13,"type":16},{"app":291,"target":13},[7],[7],{"declaration":294,"phase":26,"sources":298,"type":28},{"zap":295},[296],{"trash":297},[22,23,24,25],[],[],{"casks":301,"formulae":302},[],[],{"arch":304,"casks":305,"formulae":306,"macos":47,"requirements":307},[43],[],[],{"macos":308},{">=":309},[51],"arm64_sonoma",{"arch":44,"artifacts":312,"conflictsWith":327,"dependsOn":330,"downloadSha256":115,"downloadUrl":116,"macos":51,"minMacos":51,"requiresRosetta":34,"tag":337,"version":85},{"apps":313,"binaries":314,"entries":315,"pkgs":326},[7],[],[316,320],{"declaration":317,"phase":14,"sources":319,"target":13,"type":16},{"app":318,"target":13},[7],[7],{"declaration":321,"phase":26,"sources":325,"type":28},{"zap":322},[323],{"trash":324},[22,23,24,25],[],[],{"casks":328,"formulae":329},[],[],{"arch":331,"casks":332,"formulae":333,"macos":47,"requirements":334},[44],[],[],{"macos":335},{">=":336},[51],"ventura",{"arch":43,"artifacts":339,"conflictsWith":354,"dependsOn":357,"downloadSha256":55,"downloadUrl":57,"macos":51,"minMacos":51,"requiresRosetta":34,"tag":364,"version":85},{"apps":340,"binaries":341,"entries":342,"pkgs":353},[7],[],[343,347],{"declaration":344,"phase":14,"sources":346,"target":13,"type":16},{"app":345,"target":13},[7],[7],{"declaration":348,"phase":26,"sources":352,"type":28},{"zap":349},[350],{"trash":351},[22,23,24,25],[],[],{"casks":355,"formulae":356},[],[],{"arch":358,"casks":359,"formulae":360,"macos":47,"requirements":361},[43],[],[],{"macos":362},{">=":363},[51],"arm64_ventura",{"icon":33,"machineTranslated":34,"name":35,"slug":36,"sourceLocale":37},507,6,{"brewLag":369,"cadence":373,"count30d":374},{"compared":370,"earlierCount":371,"medianMinutes":372},2,0,763,"irregular",1,"https:\u002F\u002Fgithub.com\u002Fmockoon\u002Fmockoon",[377],{"caption":378,"height":379,"machineTranslated":34,"sourceLocale":80,"theme":380,"thumbUrl":381,"url":382,"width":383},"Official Mockoon desktop interface showing response rules and JSON templating.",835,"dark","https:\u002F\u002Fcdn.opennavo.com\u002Fscreenshots\u002Fuploads\u002Fscreenshot\u002F18bc2f18d2e6\u002F020dc783dd31-640.png","https:\u002F\u002Fcdn.opennavo.com\u002Fscreenshots\u002Fuploads\u002Fscreenshot\u002F18bc2f18d2e6\u002F020dc783dd31-1280.png",1280,"https:\u002F\u002Fgithub.com\u002Fhomebrew\u002Fhomebrew-cask\u002Fblob\u002FHEAD\u002FCasks\u002Fm\u002Fmockoon.rb","Design and run local mock APIs with configurable routes, realistic JSON responses, OpenAPI import, request logs, proxy forwarding and HTTPS.",{"locale":80,"machineTranslated":34,"sourceLocale":80,"status":84},{"arm64":30,"requiresRosetta":34,"status":388,"x86_64":30},"known",[390,391,392,393,394,35],"API Mocking","OpenAPI","REST","Testing","Proxy","homebrew\u002Fcask","2026-10-07T09:38:38.931734Z",null,{"current":374,"records":399,"size":453,"stats":454,"total":367},[400,405,418,436,443,448],{"bodyMarkdown":68,"hasNotes":30,"id":69,"isLatest":30,"isPrerelease":34,"machineTranslated":34,"publishedAt":70,"sections":401,"source":79,"sourceLocale":80,"summary":81,"title":82,"translation":404,"version":85},[402],{"area":73,"items":403},[75,76,77,78],{"locale":80,"machineTranslated":34,"sourceLocale":80,"status":84},{"bodyMarkdown":406,"brewCommittedAt":407,"hasNotes":30,"id":408,"isLatest":34,"isPrerelease":34,"machineTranslated":34,"publishedAt":409,"sections":410,"source":79,"sourceLocale":80,"summary":414,"title":415,"translation":416,"version":417},"Patch 9.6.1 fixes the following issues\n\n\nFixed an issue breaking the macOS builds since v9.6.0. (Issue #2151)\n\n\n\n v9.6.0 release notes\n\nWelcome to this new release of Mockoon. It brings many improvements, including OpenAPI re-import, no more server restarts, and live updates for cloud mocks.\nRead on to learn more about this release.\n\n\n Support us!\n\nMockoon is proudly independent and open-source, maintained without external funding. We rely on both sponsorships and Mockoon Cloud subscriptions to keep improving the project and building new features. A big thank you to the companies below for supporting our work and helping us grow (and all the sponsors who helped this project over time!):\n\n      \n        \n      \n    \n      \n        \n      \n    \n      \n        \n      \n    \n      \n        \n      \n    \n\nIf you'd like to support Mockoon as well, you can become a sponsor or subscribe to Mockoon Cloud. Every contribution helps keep the project alive and evolving. Thank you!\n\n      \n        \n      \n    \n      \n        \n      \n    \n\n OpenAPI re-import\n\nYou can now re-import an OpenAPI specification in an existing mock to update it with the new specification content:\n\n\n\nThe option is available in each mock's dropdown menu and will show a summary of the changes that will be applied to the mock before confirming the re-import.\n\nCurrently, the following changes can be applied when re-importing an OpenAPI specification:\n\n\nnew routes, based on the path and method.\n\nnew responses, based on the status codes present in each route.\n\n\nLearn more about OpenAPI re-import\n\n(Issue #765)\n\n Goodbye server restarts!\n\nStarting with this release, mock servers no longer need to be restarted when you make changes to most of the mock configuration.\n\n\nIn the past, part of the changes made to the mock configuration were applied immediately (responses, callbacks, headers, rules, etc.) while other changes like adding or removing a route, or changing a route path and method, required a server restart to be applied.\n\nAll changes are now applied immediately without the need to restart the server, which should make the development experience smoother and faster. This includes modifications made to data buckets, adding, removing, reordering, or modifying a route (e.g. updating the path or method), changing the server prefix or latency, enabling\u002Fdisabling the proxy, etc. The only changes that still require a server restart are related to TLS configuration and the hostname\u002Fport of the server.\n\nThis behavior is always enabled in the desktop application. When self-hosting with the CLI or Docker image, the running mock can be updated in the same way using the admin API endpoints.\nFor our Cloud users, the running mock is automatically updated when the live update option is enabled (see below).\n\n[⚠️ potential breaking change] To achieve this, we reimplemented route matching using the path-to-regexp library instead of relying on Express.js routing. We decided to use the latest version, which includes some breaking changes (also part of Express 5), notably wildcards requiring a name: \u002F* → \u002F*wildcard. We ensured backward compatibility by automatically converting old syntaxes to the new ones allowing you to use the one you prefer (Express 4 or Express 5 style). However, some regex syntaxes are no longer supported, especially the one using brackets, \u002F[discussion|page], which should be replaced by a parameter, a wildcard, or a rule.\nYou will find more details about the supported route path syntaxes in our updated routing documentation.\n\n(Issue #2078)\n\n Cloud live updates\n\nUntil now, updating a Cloud mock from the desktop application or the web application did not produce the same result: the desktop application always required a manual redeploy to apply changes, while the web application propagated changes immediately without redeploying. With this release, we are aligning the behavior of both applications by introducing a new live update option in the deployment dialog:\n\n\n\nWhen enabled, the live update option allows you to apply changes to your Cloud mock immediately without needing to redeploy it. This means that any changes made to the mock configuration are propagated to the running mock in real time, including changes that previously required a redeploy (e.g. adding a route, changing a route path, or changing a route method, see above). When disabled, the behavior remains the same as before, and you need to redeploy the mock manually to apply changes.\n\n(Issue #2135)\n\n Command palette - Recently used commands\n\nThe command palette now shows a list of recently used commands, allowing you to quickly access and execute them again:\n\n\n\n(Issue #2036)\n\n Improvements\n\n\n\"Header\" rules now support auto-completion for header names and values. (Issue #2038)\n\nTwo new helpers were added to encode\u002Fdecode to and from URL safe base64: {{base64url}} and {{base64urlDecode}}. (Issue #2058)\n\nTwo new helpers were added to replace one or all occurrences of a string: {{replace}} and {{replaceAll}}. (Issue #2059)\n\nSupport was added for number enums when importing OpenAPI specifications. (Issue #2113)\n\nThe oneOf template helper now supports a simplified syntax: {{oneOf 'value1' 'value2' 'value3'}}. The old syntax {{oneOf array}} (where array is an array of values coming from another helper or variable) is still supported. Newly imported OpenAPI specifications will use the simplified syntax. (Issue #2109)\n\n\n Fixes\n\n\nstringify template helper compatibility with other helpers was improved. (Issue #2060)\n\nThe request Content-Type check, on which JSON parsing depends, is now case-insensitive. (Issue #2093)\n\n(Partially) fixed an issue where the Mockoon Snap version was unable to start correctly since v9.4.0. (Issue #1909)\n\nFixed desktop application installation failing on some Linux distributions due to conflicting files. (Issue #2064)\n\nLogs now contain a UUID field to uniquely identify and deduplicate them. (Issue #2037)\n\nSwitching between \"CERT\" and \"PFX\" settings in the TLS configuration now correctly uses the self-signed certificate even when PFX settings are filled. (Issue #2118)\n\n\n Chores\n\n\nWe updated the libraries and application dependencies to their latest versions to fix several vulnerabilities.\n\nWe updated the application to Angular 21 which allowed us to remove some dependencies. (Issue #2127)\n\n\n Thank you\n\nA big thank you to the following people who helped to make Mockoon better:\n\n\n@rohanakode490: Command palette's recently used commands, header rules auto-completion, URL safe base64 helpers, string replace helpers, stringify helper improvements.\n\nGitHub release notice:\n[Full changelog](https:\u002F\u002Fmockoon.com\u002Freleases\u002F9.6.1\u002F)\r\n\n\nSource: https:\u002F\u002Fmockoon.com\u002Freleases\u002F9.6.1\u002F\nOfficial release: https:\u002F\u002Fgithub.com\u002Fmockoon\u002Fmockoon\u002Freleases\u002Ftag\u002Fv9.6.1","2026-04-02T10:25:13Z",1477,"2026-04-02T07:48:33Z",[411],{"area":73,"items":412},[413],"Fixes broken macOS builds introduced by 9.6.0.","Fixes macOS builds broken in 9.6.0. The official page also reproduces the preceding 9.6.0 feature notes.","Mockoon 9.6.1",{"locale":80,"machineTranslated":34,"sourceLocale":80,"status":84},"9.6.1",{"bodyMarkdown":419,"brewCommittedAt":420,"hasNotes":30,"id":421,"isLatest":34,"isPrerelease":34,"machineTranslated":34,"publishedAt":422,"sections":423,"source":79,"sourceLocale":80,"summary":432,"title":433,"translation":434,"version":435},"Welcome to this new release of Mockoon. It brings many improvements, including OpenAPI re-import, no more server restarts, and live updates for cloud mocks.\nRead on to learn more about this release.\n\n\n Support us!\n\nMockoon is proudly independent and open-source, maintained without external funding. We rely on both sponsorships and Mockoon Cloud subscriptions to keep improving the project and building new features. A big thank you to the companies below for supporting our work and helping us grow (and all the sponsors who helped this project over time!):\n\n      \n        \n      \n    \n      \n        \n      \n    \n      \n        \n      \n    \n      \n        \n      \n    \n\nIf you'd like to support Mockoon as well, you can become a sponsor or subscribe to Mockoon Cloud. Every contribution helps keep the project alive and evolving. Thank you!\n\n      \n        \n      \n    \n      \n        \n      \n    \n\n OpenAPI re-import\n\nYou can now re-import an OpenAPI specification in an existing mock to update it with the new specification content:\n\n\n\nThe option is available in each mock's dropdown menu and will show a summary of the changes that will be applied to the mock before confirming the re-import.\n\nCurrently, the following changes can be applied when re-importing an OpenAPI specification:\n\n\nnew routes, based on the path and method.\n\nnew responses, based on the status codes present in each route.\n\n\nLearn more about OpenAPI re-import\n\n(Issue #765)\n\n Goodbye server restarts!\n\nStarting with this release, mock servers no longer need to be restarted when you make changes to most of the mock configuration.\n\n\nIn the past, part of the changes made to the mock configuration were applied immediately (responses, callbacks, headers, rules, etc.) while other changes like adding or removing a route, or changing a route path and method, required a server restart to be applied.\n\nAll changes are now applied immediately without the need to restart the server, which should make the development experience smoother and faster. This includes modifications made to data buckets, adding, removing, reordering, or modifying a route (e.g. updating the path or method), changing the server prefix or latency, enabling\u002Fdisabling the proxy, etc. The only changes that still require a server restart are related to TLS configuration and the hostname\u002Fport of the server.\n\nThis behavior is always enabled in the desktop application. When self-hosting with the CLI or Docker image, the running mock can be updated in the same way using the admin API endpoints.\nFor our Cloud users, the running mock is automatically updated when the live update option is enabled (see below).\n\n[⚠️ potential breaking change] To achieve this, we reimplemented route matching using the path-to-regexp library instead of relying on Express.js routing. We decided to use the latest version, which includes some breaking changes (also part of Express 5), notably wildcards requiring a name: \u002F* → \u002F*wildcard. We ensured backward compatibility by automatically converting old syntaxes to the new ones allowing you to use the one you prefer (Express 4 or Express 5 style). However, some regex syntaxes are no longer supported, especially the one using brackets, \u002F[discussion|page], which should be replaced by a parameter, a wildcard, or a rule.\nYou will find more details about the supported route path syntaxes in our updated routing documentation.\n\n(Issue #2078)\n\n Cloud live updates\n\nUntil now, updating a Cloud mock from the desktop application or the web application did not produce the same result: the desktop application always required a manual redeploy to apply changes, while the web application propagated changes immediately without redeploying. With this release, we are aligning the behavior of both applications by introducing a new live update option in the deployment dialog:\n\n\n\nWhen enabled, the live update option allows you to apply changes to your Cloud mock immediately without needing to redeploy it. This means that any changes made to the mock configuration are propagated to the running mock in real time, including changes that previously required a redeploy (e.g. adding a route, changing a route path, or changing a route method, see above). When disabled, the behavior remains the same as before, and you need to redeploy the mock manually to apply changes.\n\n(Issue #2135)\n\n Command palette - Recently used commands\n\nThe command palette now shows a list of recently used commands, allowing you to quickly access and execute them again:\n\n\n\n(Issue #2036)\n\n Improvements\n\n\n\"Header\" rules now support auto-completion for header names and values. (Issue #2038)\n\nTwo new helpers were added to encode\u002Fdecode to and from URL safe base64: {{base64url}} and {{base64urlDecode}}. (Issue #2058)\n\nTwo new helpers were added to replace one or all occurrences of a string: {{replace}} and {{replaceAll}}. (Issue #2059)\n\nSupport was added for number enums when importing OpenAPI specifications. (Issue #2113)\n\nThe oneOf template helper now supports a simplified syntax: {{oneOf 'value1' 'value2' 'value3'}}. The old syntax {{oneOf array}} (where array is an array of values coming from another helper or variable) is still supported. Newly imported OpenAPI specifications will use the simplified syntax. (Issue #2109)\n\n\n Fixes\n\n\nstringify template helper compatibility with other helpers was improved. (Issue #2060)\n\nThe request Content-Type check, on which JSON parsing depends, is now case-insensitive. (Issue #2093)\n\n(Partially) fixed an issue where the Mockoon Snap version was unable to start correctly since v9.4.0. (Issue #1909)\n\nFixed desktop application installation failing on some Linux distributions due to conflicting files. (Issue #2064)\n\nLogs now contain a UUID field to uniquely identify and deduplicate them. (Issue #2037)\n\nSwitching between \"CERT\" and \"PFX\" settings in the TLS configuration now correctly uses the self-signed certificate even when PFX settings are filled. (Issue #2118)\n\n\n Chores\n\n\nWe updated the libraries and application dependencies to their latest versions to fix several vulnerabilities.\n\nWe updated the application to Angular 21 which allowed us to remove some dependencies. (Issue #2127)\n\n\n Thank you\n\nA big thank you to the following people who helped to make Mockoon better:\n\n\n@rohanakode490: Command palette's recently used commands, header rules auto-completion, URL safe base64 helpers, string replace helpers, stringify helper improvements.\n\nGitHub release notice:\n[Full changelog](https:\u002F\u002Fmockoon.com\u002Freleases\u002F9.6.0\u002F)\r\n\r\n⚠️ macOS builds are broken (see #2151). Use [v9.6.1](https:\u002F\u002Fgithub.com\u002Fmockoon\u002Fmockoon\u002Freleases\u002Fv9.6.1).\n\nSource: https:\u002F\u002Fmockoon.com\u002Freleases\u002F9.6.0\u002F\nOfficial release: https:\u002F\u002Fgithub.com\u002Fmockoon\u002Fmockoon\u002Freleases\u002Ftag\u002Fv9.6.0","2026-04-01T10:33:22Z",1479,"2026-03-31T11:43:59Z",[424],{"area":73,"items":425},[426,427,428,429,430,431],"Adds OpenAPI re-import for new routes and responses.","Applies most mock configuration changes without a restart.","Adds optional Cloud live updates and recent command-palette commands.","Migrates route matching; some old regex path forms are unsupported.","Adds URL-safe base64 and string-replacement helpers.","Warning: macOS builds are broken; upstream recommends 9.6.1.","Adds OpenAPI re-import, live mock-configuration updates and Cloud live updates. Changes route matching and adds templating helpers; macOS builds are broken.","Mockoon 9.6.0",{"locale":80,"machineTranslated":34,"sourceLocale":80,"status":84},"9.6.0",{"brewCommittedAt":437,"hasNotes":34,"isLatest":34,"isPrerelease":34,"sections":438,"source":439,"translation":440,"version":442},"2024-12-05T18:53:12Z",[],"homebrew",{"status":441},"none","9.1.0",{"brewCommittedAt":444,"hasNotes":34,"isLatest":34,"isPrerelease":34,"sections":445,"source":439,"translation":446,"version":447},"2024-10-26T09:19:58Z",[],{"status":441},"9.0.0",{"brewCommittedAt":449,"hasNotes":34,"isLatest":34,"isPrerelease":34,"sections":450,"source":439,"translation":451,"version":452},"2024-04-02T13:42:50Z",[],{"status":441},"8.0.0",20,{"brewLag":455,"cadence":373,"count30d":374},{"compared":370,"earlierCount":371,"medianMinutes":372},{"current":374,"records":457,"size":374,"stats":463,"total":367},[458],{"bodyMarkdown":68,"hasNotes":30,"id":69,"isLatest":30,"isPrerelease":34,"machineTranslated":34,"publishedAt":70,"sections":459,"source":79,"sourceLocale":80,"summary":81,"title":82,"translation":462,"version":85},[460],{"area":73,"items":461},[75,76,77,78],{"locale":80,"machineTranslated":34,"sourceLocale":80,"status":84},{"brewLag":464,"cadence":373,"count30d":374},{"compared":370,"earlierCount":371,"medianMinutes":372}]