Puri begann seine Karriere beim unterklassigen Verein Premium Tartu, von wo er dann zur Saison 2005/06 zum FC Levadia Tallinn wechselte. Dort wurde er Stammspieler und in der Saison 2007 zum Tulevik Viljandi ausgeliehen. In der Saison 2009/10 wechselte er zum griechischen Erstligisten AE Larisa, bei dem Puri für fünf Jahre unterschrieb.[1] In der Rückrunde 2010/11 wurde Puri bis Saisonende an den polnischen Erstligisten Korona Kielce verliehen.[2] Für den Verein aus der Provinz Heiligkreuz debütierte dieser gegen Zagłębie Lubin am 16. Spieltag.[3] Seinen einzigen Treffer im Trikot von Kielce markierte Puri im Heimspiel gegen Polonia Bytom, als er zum zwischenzeitlichen Ausgleich traf.[4] Im Sommer 2011 unterschrieb Puri einen Leihvertrag bei Lombard Pápa aus Ungarn.[5] Dort spielte er bis Jahresende, ehe Puri zum Kuopion PS aus der finnischen Veikkausliiga wechselte.[6] Nach Saisonende wechselte Puri zum FC St. Mirren, wo er für sechs Monate unter Vertrag stand.[7] Im Juni 2013 unterschrieb er einen Vertrag bei York City aus der vierthöchsten englischen Spielklasse.
Anfang Februar 2015 wechselte er für das laufende Kalenderjahr in die irische Liga zu den Sligo Rovers. Anfang 2016 schloss er sich MFK Karviná in der zweiten tschechischen Liga an. Nach dem Aufstieg 2016 verließ er den Klub Mitte 2016 wieder und kehrte zum FC Nõmme Kalju in sein Heimatland zurück. Seit Anfang 2017 spielte Puri für den irischen Klub Waterford FC. Im Jahr 2019 kehrte er nach Estland zurück, wo er 2023 seine Karriere beendete.
Für die Nationalmannschaft Estlands bestritt er zwischen 2008 und 2022 insgesamt 89 Länderspiele, wobei er vier Tore erzielte. Er konnte sich in dieser Zeit für keine EM- oder WM-Endrunde qualifizieren.