Skip to the content.

Erori și depanare

Acest capitol grupează întrebările frecvente, validările importante și pașii de verificare pentru probleme de autentificare, publicare oferte și încărcare fișiere.

Pentru contextul operațiilor care pot produce erori, vezi Operații API.

Întrebări frecvente

Autentificare

  1. Cum pot accesa API-ul Imopedia.ro? Pentru acces sunt necesare credențiale (utilizator și parolă) furnizate de echipa tehnică Imopedia.ro. Odată primite, folosiți endpoint-ul SOAP disponibil la https://www.imopedia.ro/soap.wsdl.
  2. Cum gestionez autentificarea la API? După apelul login salvați session_id și transmiteți-l în toate cererile ulterioare. Finalizați sesiunea cu logout.
  3. Cum arată erorile de autentificare? Credențialele greșite și testLogin cu sesiune invalidă pot produce SOAP Fault. Alte operații pot întoarce răspuns normal cu _isValid = false și _errors.errorMessage = "Invalid or expired session.".

Publicare oferte

  1. Ce tipuri de imobile pot publica folosind API-ul? API-ul suportă apartamente, birouri, case/vile, spații comerciale, spații industriale și terenuri. Fiecare tip are un ID specific.
  2. Pot utiliza propriul ID de ofertă? Da, dacă ID-ul este numeric și stabil. Trimite-l în ID_LOCAL.
  3. Cum se gestionează locația unei oferte? Completați JUDET, ZONA, REPER și coordonatele GEO_LAT/GEO_LONG pentru afișarea corectă pe hartă.
  4. Ce tipuri de tranzacții pot gestiona prin API? Sunt acceptate tranzacții de vânzare (T_V_TRANZ), închiriere (T_I_TRANZ) și regim hotelier (T_H_TRANZ).
  5. Este AGENTIA obligatoriu la citire? Da. Operații precum getProperties trebuie apelate cu AGENTIA; altfel răspunsul poate indica faptul că acest câmp este obligatoriu.
  6. Ce înseamnă deleteProperty cu status OK pentru o ofertă care nu există? Răspunsul poate fi idempotent și să indice OK chiar dacă oferta nu a fost găsită anterior. Pentru confirmarea existenței folosește getProperty sau lista de oferte, nu rezultatul deleteProperty.
  7. Pot trimite un ID CRM alfanumeric în ID_LOCAL? Nu direct. ID_LOCAL este identificator numeric. Dacă CRM-ul are ID alfanumeric sau UUID, salvează separat ID-ul CRM și folosește ID_LOCAL numeric returnat de API pentru operațiile SOAP.
  8. Pot omite ID_LOCAL și să folosesc ID_LOCAL din răspuns? Da, dacă integrarea nu are un ID numeric stabil la prima publicare. După saveProperty, salvează result.ID_LOCAL numeric returnat de API și folosește-l la actualizări, media, ștergere, promovare și URL public.
  9. Cum obțin URL-ul public al unei oferte publicate? Construiește URL-ul din AGENTIA și ID_LOCAL: https://www.imopedia.ro/anunt/proprietate-{AGENTIA}RUN{ID_LOCAL}. De exemplu, pentru AGENTIA = 123 și ID_LOCAL = 67654, linkul este https://www.imopedia.ro/anunt/proprietate-123RUN67654. Nu folosi property_id pentru URL-ul public.
  10. De ce linkul public nu se deschide imediat după saveProperty? saveProperty creează sau actualizează oferta, dar afișarea publică poate depinde de procesare, validare, câmpul IMOPEDIA și indexare. Reîncearcă verificarea după un interval scurt și verifică răspunsul API dacă oferta rămâne inaccesibilă.

Multimedia

  1. Cum pot adăuga imagini la o ofertă? După publicarea unei oferte, folosiți addFile cu FILE_ID, FILE_TITLE și FILE_BODY sau FILE_URL transmise direct în options. FILE_BODY trebuie să fie Base64 brut din conținutul fișierului, fără prefix Data URI.
  2. Ce formate de fișiere video sunt acceptate? Trimiteți linkuri video în VIDEO_INFO ca string JSON serializat sau prin addFile cu FILE_TYPE = "youtube" și FILE_URL.
  3. Ce se întâmplă dacă există deja o imagine în sistem? Verificați existența cu existsFile; dacă imaginea este deja stocată, nu mai este necesară reîncărcarea.
  4. Ce înseamnă _warnings.IMAGE cu photo_id=false? Apelul SOAP a fost acceptat, dar validarea imaginii a eșuat; verificați fișierul transmis în FILE_BODY.
  5. Pot folosi existsFile ca să verific dacă oferta există? Nu. Pentru o ofertă lipsă, existsFile poate răspunde valid cu photo=false și _data.exists=false; verifică oferta separat cu getProperty.
  6. Cum tratez warning-urile la syncFiles? syncFiles poate întoarce _isValid = true și totuși _warnings.FILE_IDS, de exemplu când lista conține identificatori care nu există pe ofertă. Tratează warning-ul ca reconciliere incompletă.
  7. Ce format trebuie să aibă FILE_IDS la syncFiles? Câmpul se trimite ca string. Serverul acceptă array PHP serializat, JSON array, obiect JSON cu cheia ids sau listă text separată prin virgulă, punct și virgulă, bară verticală ori spații.

Promovări

  1. Ce identificator trimit la saveBoost? Trimite agencyId = AGENTIA și offerId = ID_LOCAL. Dacă API-ul a alocat ID_LOCAL la creare, folosește valoarea numerică salvată din răspuns. offerId nu este property_id intern returnat de saveProperty.
  2. Cum solicit promovare GOLD? Pentru o ofertă existentă sau actualizată, poți trimite GOLD = 1 în saveProperty, în limita disponibilă pentru agenție. Dacă limita este depășită, API-ul poate refuza promovarea.

Erori și depanare

  1. Ce se întâmplă dacă o ofertă nu are un agent asociat? Folosiți un AGENT_ID valid pentru agenția transmisă în AGENTIA. Dacă agentul nu există în răspunsul getAgents, creați-l sau actualizați-l prin saveAgent, apoi retrimiteți oferta prin saveProperty.
  2. Ce validări face saveAgent? CONTACT_EMAIL trebuie să fie o adresă validă. Pentru agent, trimite cel puțin AGENTIA, AGENT_ID, CONTACT_PERS, CONTACT_EMAIL și CONTACT_TEL.
  3. Ce fac dacă saveProperty răspunde cu Internal server error? Tratați răspunsul ca eșec al operației și nu continuați cu fișierele media. Verificați AGENT_ID, AGENTIA, ID_LOCAL, tipul imobilului, tranzacția activă, prețul, moneda, localizarea și tipurile numerice din payload.
  4. Ce se întâmplă dacă oferta nu este publicată corect? Răspunsul API include detalii despre eroare când validarea poate identifica un câmp anume; verificați câmpurile obligatorii și datele transmise.