Statements of redeemable preferred stock and stockholders' equity (deficit) - USD ($) $ in Thousands | Total | Redeemable Series A Preferred Stock [Member] | Redeemable Series B Preferred Stock [Member] | Junior Convertible Preferred Stock [Member] | Redeemable Preferred Stock [Member] | Total Redeemable Preferred Stock [Member] | Common Stock [Member] | Additional Paid-in Capital [Member] | Retained Earnings [Member] |
Beginning Balance at Jan. 31, 2018 | | $ 57,022 | $ 43,962 | $ 32,746 | $ 42,561 | $ 176,291 | | | |
Beginning Balance at Jan. 31, 2018 | $ (167,683) | | | | | | $ 16 | $ 0 | $ (167,699) |
Beginning Balance, Shares at Jan. 31, 2018 | | 13,674,365 | 9,197,142 | 32,746,041 | 42,560,530 | | | | |
Beginning Balance, Shares at Jan. 31, 2018 | | | | | | | 1,638,331 | | |
Net loss | (3,224) | | | | | | | | (3,224) |
Stock-based compensation expense | 252 | | | | | | | 252 | |
Exercise of stock options | 146 | | | | | | $ 1 | 145 | |
Exercise of stock options Shares | | | | | | | 131,560 | | |
Accretion of redeemable preferred stock | | $ 1,406 | $ 1,084 | | | 2,490 | | | |
Accretion of redeemable preferred stock | (2,490) | | | | | | | (397) | (2,093) |
Ending Balance at Apr. 30, 2018 | | $ 58,428 | $ 45,046 | $ 32,746 | $ 42,561 | 178,781 | | | |
Ending Balance at Apr. 30, 2018 | (172,999) | | | | | | $ 17 | 0 | (173,016) |
Ending Balance, Shares at Apr. 30, 2018 | | 13,674,365 | 9,197,142 | 32,746,041 | 42,560,530 | | | | |
Ending Balance, Shares at Apr. 30, 2018 | | | | | | | 1,769,891 | | |
Beginning Balance at Jan. 31, 2018 | | $ 57,022 | $ 43,962 | $ 32,746 | $ 42,561 | 176,291 | | | |
Beginning Balance at Jan. 31, 2018 | (167,683) | | | | | | $ 16 | 0 | (167,699) |
Beginning Balance, Shares at Jan. 31, 2018 | | 13,674,365 | 9,197,142 | 32,746,041 | 42,560,530 | | | | |
Beginning Balance, Shares at Jan. 31, 2018 | | | | | | | 1,638,331 | | |
Net loss | (9,983) | | | | | | | | |
Cashless Exercise Of Common Stock Warrants | 0 | | | | | | | | |
Ending Balance at Oct. 31, 2018 | 197,353 | $ 72,350 | $ 49,596 | $ 32,746 | $ 42,561 | 197,253 | | | 197,372 |
Ending Balance at Oct. 31, 2018 | | | | | | | $ 19 | | |
Ending Balance, Shares at Oct. 31, 2018 | | 13,674,365 | 9,197,142 | 32,746,041 | 42,560,782 | | | | |
Ending Balance, Shares at Oct. 31, 2018 | | | | | | | 1,944,445 | | |
Beginning Balance at Apr. 30, 2018 | | $ 58,428 | $ 45,046 | $ 32,746 | $ 42,561 | 178,781 | | | |
Beginning Balance at Apr. 30, 2018 | (172,999) | | | | | | $ 17 | 0 | (173,016) |
Beginning Balance, Shares at Apr. 30, 2018 | | 13,674,365 | 9,197,142 | 32,746,041 | 42,560,530 | | | | |
Beginning Balance, Shares at Apr. 30, 2018 | | | | | | | 1,769,891 | | |
Net loss | (2,587) | | | | | | | | (2,587) |
Stock-based compensation expense | 252 | | | | | | | 252 | |
Exercise of stock options | 12 | | | | | | | 12 | |
Exercise of stock options Shares | | | | | | | 16,057 | | |
Accretion of redeemable preferred stock | | $ 6,961 | $ 2,275 | | | 9,236 | | | |
Accretion of redeemable preferred stock | (9,236) | | | | | | | (264) | (8,972) |
Ending Balance at Jul. 31, 2018 | | $ 65,389 | $ 47,321 | $ 32,746 | $ 42,561 | 188,017 | | | |
Ending Balance at Jul. 31, 2018 | (184,558) | | | | | | $ 17 | 0 | (184,575) |
Ending Balance, Shares at Jul. 31, 2018 | | 13,674,365 | 9,197,142 | 32,746,041 | 42,560,782 | | | | |
Ending Balance, Shares at Jul. 31, 2018 | | | | | | | 1,785,948 | | |
Net loss | (4,172) | | | | | | | | (4,172) |
Stock-based compensation expense | 447 | | | | | | | 447 | |
Exercise of stock options | 166 | | | | | | $ 2 | 164 | |
Exercise of stock options Shares | | | | | | | 158,497 | | |
Accretion of redeemable preferred stock | | $ 6,961 | $ 2,275 | | | 9,236 | | | |
Accretion of redeemable preferred stock | (9,236) | | | | | | | (611) | (8,625) |
Ending Balance at Oct. 31, 2018 | 197,353 | $ 72,350 | $ 49,596 | $ 32,746 | $ 42,561 | 197,253 | | | 197,372 |
Ending Balance at Oct. 31, 2018 | | | | | | | $ 19 | | |
Ending Balance, Shares at Oct. 31, 2018 | | 13,674,365 | 9,197,142 | 32,746,041 | 42,560,782 | | | | |
Ending Balance, Shares at Oct. 31, 2018 | | | | | | | 1,944,445 | | |
Beginning Balance at Jan. 31, 2019 | 206,490 | $ 79,311 | $ 51,872 | $ 32,746 | $ 42,561 | 206,490 | | | |
Beginning Balance at Jan. 31, 2019 | (210,974) | | | | | | $ 20 | 0 | (210,994) |
Beginning Balance, Shares at Jan. 31, 2019 | | 13,674,365 | 9,197,142 | 32,746,041 | 42,560,530 | | | | |
Beginning Balance, Shares at Jan. 31, 2019 | | | | | | | 1,994,721 | | |
Net loss | (6,695) | | | | | | | | (6,695) |
Stock-based compensation expense | 599 | | | | | | | 599 | |
Exercise of stock options | 37 | | | | | | $ 0 | 37 | |
Exercise of stock options Shares | | | | | | | 29,798 | | |
Issuance of common stock warrants | 833 | | | | | | | 833 | |
Accretion of redeemable preferred stock | | $ 5,196 | $ 2,667 | | | 7,863 | | | |
Accretion of redeemable preferred stock | (7,863) | | | | | | | (1,469) | (6,394) |
Ending Balance at Apr. 30, 2019 | | $ 84,507 | $ 54,539 | $ 32,746 | $ 42,561 | 214,353 | | | |
Ending Balance at Apr. 30, 2019 | (224,063) | | | | | | $ 20 | 0 | (224,082) |
Ending Balance, Shares at Apr. 30, 2019 | | 13,674,365 | 9,197,142 | 32,746,041 | 42,560,530 | | | | |
Ending Balance, Shares at Apr. 30, 2019 | | | | | | | 2,024,519 | | |
Beginning Balance at Jan. 31, 2019 | 206,490 | $ 79,311 | $ 51,872 | $ 32,746 | $ 42,561 | 206,490 | | | |
Beginning Balance at Jan. 31, 2019 | (210,974) | | | | | | $ 20 | 0 | (210,994) |
Beginning Balance, Shares at Jan. 31, 2019 | | 13,674,365 | 9,197,142 | 32,746,041 | 42,560,530 | | | | |
Beginning Balance, Shares at Jan. 31, 2019 | | | | | | | 1,994,721 | | |
Net loss | (16,625) | | | | | | | | |
Cashless Exercise Of Common Stock Warrants | 2,521 | | | | | | | | |
Ending Balance at Oct. 31, 2019 | 0 | | $ 0 | $ 0 | $ 0 | | | | |
Ending Balance at Oct. 31, 2019 | 102,493 | | | | | | $ 359 | 382,951 | (280,817) |
Ending Balance, Shares at Oct. 31, 2019 | | | 0 | 0 | 0 | | | | |
Ending Balance, Shares at Oct. 31, 2019 | | | | | | | 35,872,057 | | |
Beginning Balance at Apr. 30, 2019 | | $ 84,507 | $ 54,539 | $ 32,746 | $ 42,561 | 214,353 | | | |
Beginning Balance at Apr. 30, 2019 | (224,063) | | | | | | $ 20 | 0 | (224,082) |
Beginning Balance, Shares at Apr. 30, 2019 | | 13,674,365 | 9,197,142 | 32,746,041 | 42,560,530 | | | | |
Beginning Balance, Shares at Apr. 30, 2019 | | | | | | | 2,024,519 | | |
Net loss | (7,493) | | | | | | | | (7,493) |
Stock-based compensation expense | 1,467 | | | | | | | 1,467 | |
Exercise of stock options | 41 | | | | | | $ 0 | 41 | |
Exercise of stock options Shares | | | | | | | 22,038 | | |
Accretion of redeemable preferred stock | | $ 27,510 | $ 20,802 | | | 48,312 | | | |
Accretion of redeemable preferred stock | (48,312) | | | | | | | (1,508) | (46,804) |
Payment of preferred stock dividends | (14,955) | | | | | | | (14,955) | |
Issuance of common stock in initial public offering, net of issuance costs of $6,083,648 | 124,697 | | | | | | $ 78 | 124,619 | |
Issuance of common stock in initial public offering, net of issuance costs of $6,083,648 Shares | | | | | | | 7,812,500 | | |
Conversion of preferred stock into common stock and cancellation of redeemable preferred stock | 262,665 | $ (112,018) | $ (75,341) | $ (32,746) | $ (42,561) | (262,665) | $ 253 | 262,412 | |
Conversion of preferred stock into common stock and cancellation of redeemable preferred stock Shares | | (13,674,365) | (9,197,142) | (32,746,041) | (42,560,530) | | 25,311,535 | | |
Conversion and exercise of preferred stock warrants into common stock | 8,805 | | | | | | $ 6 | 8,799 | |
Conversion and exercise of preferred stock warrants into common stock Shares | | | | | | | 588,763 | | |
Ending Balance at Jul. 31, 2019 | | $ 0 | $ 0 | $ 0 | $ 0 | $ 0 | | | |
Ending Balance at Jul. 31, 2019 | 102,852 | | | | | | $ 357 | 380,875 | (278,380) |
Ending Balance, Shares at Jul. 31, 2019 | | 0 | 0 | 0 | 0 | | | | |
Ending Balance, Shares at Jul. 31, 2019 | | | | | | | 35,759,355 | | |
Net loss | (2,437) | | | | | | | | (2,437) |
Stock-based compensation expense | 1,766 | | | | | | | 1,766 | |
Exercise of stock options | 366 | | | | | | $ 1 | 365 | |
Exercise of stock options Shares | | | | | | | 59,679 | | |
Cashless Exercise Of Common Stock Warrants | 2 | | | | | | $ 1 | 1 | |
Cashless exercise of common stock warrants Shares | | | | | | | 53,023 | | |
Deferred offering costs | (56) | | | | | | | (56) | |
Ending Balance at Oct. 31, 2019 | 0 | | $ 0 | $ 0 | $ 0 | | | | |
Ending Balance at Oct. 31, 2019 | $ 102,493 | | | | | | $ 359 | $ 382,951 | $ (280,817) |
Ending Balance, Shares at Oct. 31, 2019 | | | 0 | 0 | 0 | | | | |
Ending Balance, Shares at Oct. 31, 2019 | | | | | | | 35,872,057 | | |