Salt la conținutul principal
Pe Housera, fiecare anunț nou e verificat de un om înainte să apară în căutare. Prin API nu există o scurtătură: anunțul pe care îl creezi intră în moderare, exact ca unul adăugat din formular.

Stările

Câmpul status al unui anunț are una din valorile de mai jos.

Ce se moderează

Un anunț nou. POST /listings și PUT /listings/ref/{ref} cu un id nou creează anunțul cu starea pending. După aprobare devine active; dacă e respins, devine rejected. O editare pe un anunț publicat. Când editezi un anunț active (sau paused, unconfirmed), versiunea publică rămâne neschimbată, iar editarea ta așteaptă aprobarea:
  • primești 202 Accepted în loc de 200;
  • moderation.edit_pending devine true;
  • după aprobare, editarea se aplică pe anunț și edit_pending revine la false;
  • dacă editarea e respinsă, anunțul rămâne cu versiunea veche, edit_pending revine la false, iar motivul apare în moderation.rejection_reason.
Pozele trimise pentru un anunț publicat urmează același drum: se alătură editării care așteaptă moderarea. Ce nu se moderează. Un anunț încă nepublicat (pending) se modifică direct și rămâne în coada de moderare. Pauza, reactivarea și marcarea ca vândut nu trec prin moderare.

Tranzițiile prin API

Câteva reguli de reținut:
  • Starea greșită înseamnă 404. De exemplu, POST /listings/{code}/resume pe un anunț active sau DELETE pe un anunț active. Un anunț activ îl pui întâi pe pauză, apoi îl ștergi.
  • Un refuz cu motiv înseamnă 409 listing_action_refused. De exemplu, un anunț cu raportări deschise nu se poate șterge până când raportările sunt închise. Motivul e în detail.
  • Un anunț hidden sau sold nu se mai editează.
  • O retrimitere fără nicio schimbare e refuzată (422): un anunț respins, trimis înapoi identic, ar fi respins din nou pentru același motiv.
  • Marcarea ca vândut renunță la editarea care aștepta moderarea, dacă exista una.

Respingerea

Un anunț respins are în moderation:
rejection_reason e textul pentru oameni. rejection_codes sunt coduri stabile, pe care le poți folosi în sistemul tău: Lista poate fi goală când moderatorul a scris doar un motiv liber. Ca să retrimiți anunțul, îl corectezi cu PATCH /listings/{code}: anunțul revine în pending.

Cum afli rezultatul

Ai trei căi, de la cea mai bună la cea mai simplă:

Webhook-uri

Primești pe loc listing.published, listing.rejected și celelalte evenimente.

Evenimente

GET /events?after= îți dă tot ce s-a întâmplat din ultimele 35 de zile.

Citire directă

GET /account/listings/{code} îți arată status și moderation în orice moment.
Evenimentele care corespund schimbărilor de stare:
Rezultatul moderării unei editări pe un anunț deja publicat nu schimbă starea anunțului, deci nu produce un eveniment de stare. Îl afli citind anunțul: moderation.edit_pending redevine false, iar o respingere apare în moderation.rejection_reason. Un CRM care trimite editări pe anunțuri active verifică periodic anunțurile cu edit_pending: true.