v3.26.1
Stock-based compensation - Schedule of Stock Option Activity (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended 12 Months Ended
Apr. 30, 2026
Jan. 31, 2026
Number of options    
Outstanding, beginning balance (in shares) 133  
Exercised (in shares) (15)  
Outstanding, ending balance (in shares) 118 133
Vested and expected to vest (in shares) 118  
Exercisable (in shares) 118  
Range of exercise prices    
Beginning balance, minimum (in usd per share) $ 24.36  
Beginning balance, maximum (in usd per share) 73.61  
Exercised, minimum (in usd per share) 24.36  
Exercised, maximum (in usd per share) 44.53  
Ending balance, minimum (in usd per share) 25.06 $ 24.36
Ending balance, maximum (in usd per share) 73.61 73.61
Weighted- average exercise price    
Opening balance (in usd per share) 47.50  
Exercised (in usd per share) 27.84  
Ending balance (in usd per share) 50.01 $ 47.50
Vested and expected to vest, weighted-average exercise price (in usd per share) 50.01  
Exercisable, weighted-average exercise price (in usd per share) $ 50.01  
Outstanding stock options, weighted-average contractual term (in years) 1 year 6 months 1 year 7 months 6 days
Vested and expected to vest, weighted-average contractual term (in years) 1 year 6 months  
Exercisable, weighted-average contractual term (in years) 1 year 6 months  
Aggregate intrinsic value $ 3,781 $ 5,081
Vested and expected to vest, aggregate intrinsic value 3,781  
Exercisable, aggregate intrinsic value $ 3,781