FAQ and compatibility

Compatibility

Supported
n8nTested against 2.38.3, in base-URL mode and proxy mode
Other n8n 2.x versionsExpected to work. The n8n API calls used are stable
n8n CloudBase-URL mode only. See Using it from n8n
Node.js20 or newer
DockerOnly for integration-mock up

Questions

Does it change my workflow?

No, unless you run creds swap --in-place. In base-URL mode you change a node's URL yourself. In proxy mode nothing in the workflow changes.

Does it need my n8n instance?

Not for mocking. start, packs, url, faults and log need no instance, no API key and no network. snapshot, diff and creds need an instance you add with instances add.

Why did my call get a 501?

No enabled pack has a route for that method and path. The hint in the response says what to do: record the call, or add a route to the pack in ./.integration-mock/packs/<service>/.

Does a call ever reach the real service?

Only when you ask for it.

CommandContacts
recordThe real service, while recording
verifyThe real service
packs install, packs build --fetch, packs update, packs auditThe source of the pack or OpenAPI file
snapshot, diff, credsYour n8n instance
Everything elseNothing

Do I have to restart the mock after adding a pack?

No. packs enable tells the running mock to re-read your packs.

Where are my API key and the request log stored?

Both are plain text under ~/.integration-mock/. Credential headers and token-shaped strings are redacted in the log file. See SECURITY.md.

Alternatives

AlternativeUse it instead when
Pinned data in n8nYou only need one node's output fixed while you work in the editor
Prism, WireMock or MockoonYou already maintain OpenAPI mocks for your own services
A hand-written stub endpointYou need one endpoint for one afternoon
The service's own sandbox accountThe service offers one and you have access. verify can then check the mock against it

Limitations