Da, există, dar niciunul gratuit. Sursele oficiale (AIDA, RAR, eRovinieta) nu oferă API public: au captcha, limitări de trafic, iar AIDA returnează datele într-o imagine. Opțiunile reale în 2026: API-ul RAR contra cost (pe bază de contract, doar ITP) și API-ul VerificRCA (self-serve, de la 19 EUR/lună, RCA + ITP + rovinietă).
Întrebarea asta apare constant pe r/programare: „Știți cumva vreun API deschis unde se poate verifica valabilitatea RCA?”. Am răspuns personal la câteva dintre threadurile astea, așa că am scris aici răspunsul complet, cu toate opțiunile pe care le are un programator în 2026, inclusiv cele care nu sunt ale noastre.
Răspunsul scurt: nu există niciun API public și gratuit pentru verificarea RCA sau ITP în România. Sursele oficiale sunt protejate de captcha și limitări de trafic. Ai două căi reale: API-ul RAR pe bază de contract sau un API self-serve cu preț public, precum al nostru.
Mai jos trecem prin fiecare, cu limitele lor cu tot.
De ce sursele oficiale nu îți dau un API
Datele există și sunt publice. Problema e forma în care le primești.
AIDA (aida.info.ro), administrată de BAAR, e sursa oficială pentru RCA. Verificarea din browser e gratuită, dar formularul e protejat de reCAPTCHA, iar rezultatul, adică asigurătorul și data de expirare, vine randat într-o imagine, nu ca text. Dacă trimiți prea multe cereri, primești și un cooldown. Cine a încercat să automatizeze AIDA a ajuns rapid la browser headless, OCR și servicii de rezolvat captcha. Merge o săptămână, apoi se strică.
RAR (Registrul Auto Român) ține evidența ITP. Aceeași poveste: verificarea publică e gândită pentru un om cu un browser, nu pentru un sistem care face o mie de cereri pe zi.
eRovinieta (CNAIR) e ceva mai permisivă la verificări punctuale, dar tot nu publică un API documentat pentru terți, cu autentificare și limite clare.
Blocajele nu sunt întâmplătoare. Instituțiile vor să împiedice colectarea în masă, așa că orice workaround pe care îl construiești azi concurează cu următoarea rundă de protecții. De aici piața de API-uri comerciale.
Opțiunea 1: verificarea manuală, gratuită
Dacă ai de verificat câteva mașini pe lună, nu îți trebuie API. Verifici gratuit RCA-ul, ITP-ul și rovinieta după numărul de înmatriculare, în câteva secunde, fără cont.
Pentru automatizare însă, varianta manuală nu se pune. Restul articolului e despre cazul în care codul tău trebuie să facă verificarea, nu tu.
Opțiunea 2: API-ul RAR, contra cost
RAR furnizează date pe bază de contract, cu tarif per interogare. Din discuțiile din comunitate, costul pentru o verificare ITP e în jur de 1 leu per interogare, iar alte tipuri de date costă mai mult.
E varianta oficială și, pentru instituții sau companii mari care oricum lucrează cu RAR, probabil cea corectă. Dezavantajele pentru un developer obișnuit: acoperă doar zona RAR (deci nu RCA, nu rovinietă), onboardingul înseamnă contract semnat, nu un buton de signup, iar la volume mari tariful per interogare se adună repede: 10.000 de verificări pe lună ajung la circa 10.000 de lei.
Opțiunea 3: API-ul VerificRCA
Aici suntem noi, deci judecă în consecință. Am construit API-ul VerificRCA exact pentru situația din threadurile de Reddit: vrei să afli programatic dacă o mașină are RCA, ITP și rovinietă valabile și când expiră, fără captcha, fără scraping, fără emailuri cu sales.
Cum funcționează, concret:
- Îți faci cont, activezi un plan și generezi cheia API din dashboard. Fără apeluri, fără oferte personalizate.
- Trimiți un POST cu numărul de înmatriculare (sau VIN-ul, pentru ITP) și un
callbackUrl. - Dacă rezultatul e deja disponibil, îl primești pe loc. Dacă nu, primești
202 processing, iar rezultatul vine prin webhook în 5-30 de secunde, cu retry automat dacă serverul tău nu răspunde. Există și polling, dacă preferi.
Un request arată așa:
curl -X POST https://www.verificrca.ro/api/public/v1/verificare \
-H "Authorization: Bearer <api-key>" \
-H "Content-Type: application/json" \
-d '{"tip":"rca","query":"B123ABC","callbackUrl":"https://exemplu.ro/webhook"}'
Răspunsul e JSON simplu: status (valid, warning, expired sau not_found), expiresAt în format ISO 8601 și momentul verificării. Datele vin din aceleași surse oficiale pe care le-am descris mai sus: AIDA pentru RCA, RAR pentru ITP, CNAIR pentru rovinietă. Noi ne batem cu captcha-urile, tu primești JSON.
Prețurile sunt publice: Starter la 19 EUR/lună (50 de requesturi pe zi), Pro la 49 EUR/lună (100/zi) și Business la 129 EUR/lună (300/zi, 10.000/lună), toate cu limite afișate în headerele fiecărui răspuns.
Ca să fim cinstiți și cu limitele noastre: returnăm statusul și data expirării, nu fișa tehnică a vehiculului. Dacă îți trebuie „e valabil sau nu, și până când”, ăsta e exact cazul nostru, iar răspunsul vine gata de folosit în alerte, validări de anunțuri sau fluxuri de flotă.
Tabel comparativ
| Site-uri oficiale | API RAR | VerificRCA API | |
|---|---|---|---|
| Acces | browser, captcha | contract semnat | self-serve, cont + cheie |
| Preț | gratuit | tarif per interogare | public, de la 19 EUR/lună |
| Acoperire | RCA, ITP, rovinietă (manual) | doar date RAR (ITP) | RCA, ITP, rovinietă |
| Format | HTML + imagine | conform contractului | JSON + webhook |
| Timp până la primul request | instant, manual | săptămâni | minute |
Cum alegi
Regulile sunt simple:
- Câteva verificări pe lună, fără cod: rămâi la verificarea manuală, e gratuită.
- Ești instituție sau corporație și vrei contract direct cu sursa: API-ul RAR.
- Vrei status și dată de expirare pentru RCA, ITP și rovinietă, cu integrare făcută azi: API-ul VerificRCA.
Iar dacă problema ta e de fapt „am 40 de mașini și vreau să știu când le expiră actele”, nu îți trebuie deloc API: exact pentru asta există monitorizarea de flote, fără nicio linie de cod.
Întrebări frecvente
Următorul pas, dacă te-ai decis pe varianta noastră: documentația completă și prețurile sunt pe o singură pagină, cu exemple de cod în curl, PHP, Python și Node.js. De la cont nou la primul răspuns JSON durează cam cinci minute, cu tot cu cafea.
