Оба варианта верны.
Тысяча первый – составное порядковое числительное. В таких числительных склоняется только последнее слово. Правильно: в тысяча первый раз.
В составных порядковых числительных изменяется по падежам только последнее слово. Правильно: две тысячи сто первый год, две тысячи сто первого года, в две тысячи сто первом году.