Step 1 Add the users via CSV upload and ensure the users get created. The user's will have the status ' RESET_REQUIRED '. But in order to use these users, we need the status to be ' CONFIRMED '. This can be done by setting the password for the user as an admin Step 2 Set the user's passwords as an Admin, use the aws CLI V2: $ aws cognito-idp admin-set-user-password --user-pool-id <MY_POOL_OD> --username <A_USERNAME> --password <A_PASSWORD> --permanent Step 3 Check the status of the user in the cognito console. Step 4 ??? Step 5 Profit!
Postgres timestamps are up to microseconds resolution. This can be seen here in the Postgres V13 docs . This means that if you are trying to save a ZonedDateTime type into to the DB, you should cut-off the Nano-seconds portion of the time. Otherwise, if you save a time with Nano secs, and you read that time back from the DB, you will have different times. This is because the time from the DB is missing the nano-secs. So how does one go about doing this? Rounding Nanoseconds Essentially do to this, first need to get the nano secs of the second via: Integer nanoSecs = zonedDateTime .get( ChronoField . NANO_OF_SECOND ) ; This amount now has to be converted to micro-secs by dividing by 1000. This removes the nano-seconds the amount. Don't forget that the nano-secs that we just removed by dividing may be more then 500. In which case you should add 1 to the microseconds. Then we need to multiply by 1000 to get the amount back in nano-secs. By doing this we turn all the nano-secs to ZERO