# Migration v35

Contains no breaking changes, but is step 2 out of [2](./migration-v32.md) to seamlessly transfer to use Gateway for the User services.

## What do you need to do?

1. Make sure you followed the migration instructions of [v32](./migration-v32.md), which consist of the guide on using both gateway and non-gateway API user service
2. In the membership config file in the consumer app

 > a) Update the membership config to read `userCreationGatewayApiKey: process.env.USER_CREATION_GATEWAY_KEY_{ENV}` (you are changing the value of `userCreationGatewayApiKey` to be that of the new key's reference).
PS: your vault value might be whatever you named it but let it be replace on the above.

> b) Remove the non-gateway line `userApiKey: process.env.ENV_VARIABLE_NAME` from the membership config.

3. If your CI uses the env vars, you will need to apply changes a) and b) in step 2 to the relevant file (`cypress/plugins/setup.js in` next-retention).

4. Delete the non-gateway user service secrets from Vault if it's not used by any of the service in making request on the consumer app.

## Changes

`src/user.ts` - two methods - `createProfile` and `updateProfile` that will make the call thorough the gateway and this change does not support backward compatibility for a non-gateway api.
