# Upgrading the Nuts node

The steps for upgrading a Nuts node from v5 to v6 are in the Nuts node documentation: [Migrating from v5 to v6](https://nuts-node.readthedocs.io/en/stable/pages/deployment/migration.html). It covers:

- SQL storage
- the container user and Docker image tags
- HTTP interfaces and TLS termination
- configuration changes
- rolling back
- mixing the VDR v1 and v2 APIs
- enabling `did:web`

## Not covered there

- **Before upgrading**, check the diagnostics of your v5 node: `vdr.conflicted_did_documents.owned_count` should be `0`. If not, see [conflicted DID documents](https://nuts-node.readthedocs.io/en/v5.4/pages/deployment/monitoring.html#conflicted-did-documents).
- **Without the new features** (`didmethods: [nuts]`), keep using the VDR v1 API for DID document updates and the auth v1 API for access token requests.
- **New public paths:** v6 exposes these extra paths on the public interface: `/iam`, `/oauth2`, `/.well-known`, `/statuslist` and `/discovery`. They are only used by the new features. If you don't use them, block them in your reverse proxy.

For changes to the design of a use case, see [Use case migration](https://wiki.nuts.nl/books/v5-v6-migration-guide/page/use-case-migration).