Pārvaldi sludinājumus programmatiski
Izveido, rediģē un pārvaldi savus īpašumu sludinājumus, fotoattēlus un interesentus no sava koda — ar REST API, komandrindas rīku @bezbaseina/cli vai AI asistentu (ChatGPT, Claude, Codex, Antigravity) caur MCP. Publiskos sludinājumus var lasīt bez konta; sava konta pārvaldībai vajadzīgs Pro plāns.
Autentifikācija
Divi veidi, abi ar vienādām tiesībām:
Personīgais tokens (bbk_…)
curl https://bezbaseina.lv/api/v1/me \
-H "Authorization: Bearer bbk_xxxxxxxx_yyyy…"Neapstrādāto tokenu parāda tikai vienreiz; glabājam tikai sha256. Atsaukšana ir tūlītēja.
Ierīces pieslēgšanās (CLI / asistenti)
Termināls sāk pieprasījumu, tu to apstiprini pārlūkā (/savienot), un tiek izsniegts tokens — bez paroles terminālī. To dara bezbaseina login.
Galapunkti
ID ir necaurspīdīgi: ad_…, prop_…, lead_…, photo_…. Publiskie sludinājumi izmanto savu slug. Iekšējos datubāzes ID nekad neatklājam.
Publiski (bez konta)
| Method | Path | What it does |
|---|---|---|
| GET | /listings | Browse published BezBaseina listings with filters. No account needed. |
| GET | /listings/{id} | Fetch one published listing by its public slug. |
| GET | /market/summary | Aggregate market stats for a city or novads (medians, transaction counts). |
| GET | /capabilities | This machine-readable list of every API capability. |
Ar autentifikāciju
| Method | Path | What it does | Scope |
|---|---|---|---|
| GET | /me | The authenticated owner, plan, entitlements and remaining quota. | — |
| GET | /ads | Every listing you own across all your properties, with status and lead counts. | ads:read |
| GET | /ads/{id} | Full detail for one owned listing. | ads:read |
| POST | /ads/{id}/analyseai_analyse | AI quality score + prioritized improvement checklist + missing facts. | ai:assist |
| POST | /ads/{id}/improve-textai_text | Latvian rewrite + title variants; keeps your facts, invents nothing. | ai:assist |
| POST | /ads/{id}/suggest-priceai_text | Price range + point + confidence + why-not-higher/lower, grounded in comparables. Never changes the price. | ai:assist |
| POST | /ads/{id}/publishapstiprina | Make a paused or draft ad live. Returns a confirmation to apply. | ads:publish |
| POST | /ads/{id}/pauseapstiprina | Take a live ad offline. Returns a confirmation to apply. | ads:publish |
| POST | /ads/{id}/priceapstiprina | Update the price. Returns a confirmation to apply. | ads:write |
| POST | /photos/upload | Attach a photo to one of your properties. Multipart form (file + property_id). | photos:write |
| POST | /photos/{id}/enhanceai_image | Queue an AI enhancement (brightness/crop/compress). Originals are never overwritten; you choose the result. Pro+. | photos:write |
| GET | /leads | Inquiries across your properties. | leads:read |
| PATCH | /leads/{id} | Move a lead through new → seen → replied → closed. | leads:write |
| POST | /leads/{id}/draft-replyai_text | AI-drafts a Latvian reply. Draft only — it never sends on its own. | ai:assist leads:read |
| POST | /confirmations/{id} | Apply a previously proposed risky action (publish/pause/price/lead). | — |
Trūkstoša tiesība → 403 forbidden_scope. Tiesības:
ads:read— Skatīt tavus sludinājumus un īpašumusads:write— Rediģēt sludinājumu tekstu un cenasads:publish— Publicēt vai apturēt sludinājumus (ar apstiprinājumu)photos:write— Augšupielādēt un uzlabot fotoattēlusai:assist— Lietot AI palīgu (teksts, cena, analīze)leads:read— Skatīt interesentu pieprasījumusleads:write— Atzīmēt un atbildēt interesentiem (ar apstiprinājumu)billing:read— Skatīt plāna un limitu stāvokli
Apstiprinājumi (riskantas darbības)
Publicēšana, apturēšana un cenas maiņa ir divpakāpju, lai automatizēts rīks nekad neizmainītu tavus sludinājumus nejauši:
# 1. Piedāvā — atgriež 409 ar apstiprinājuma objektu (izmaiņu diff)
curl -X POST https://bezbaseina.lv/api/v1/ads/ad_123/publish -H "Authorization: Bearer $TOKEN"
# → 409 { "error": { "code": "confirmation_required",
# "confirmation": { "id": "cnf_…", "diff": {…} } } }
# 2. Piemēro
curl -X POST https://bezbaseina.lv/api/v1/confirmations/cnf_… -H "Authorization: Bearer $TOKEN"
# → { "applied": true }Apstiprinājumi ir idempotenti un beidzas pēc 30 min. Automatizācijai: sākotnējā pieprasījumā nosūti { "confirm": true } (CLI --yes), lai piedāvātu un piemērotu vienā solī.
Komandrindas rīks
npm install -g @bezbaseina/cli
bezbaseina login
bezbaseina ads list
bezbaseina ads analyse ad_123
bezbaseina ads suggest-price ad_123
bezbaseina ads publish ad_123 # parāda diff, prasa apstiprinājumu
bezbaseina photos upload prop_123 ./virtuve.jpg
bezbaseina leads draft-reply lead_123--json jebkurai komandai → neapstrādāts JSON skriptiem/aģentiem. --yes piemēro uzreiz. Kļūdas → ne-nulles izejas kods.
AI asistenti (MCP)
bezbaseina mcp startPalaiž MCP serveri (stdio) ar lasīšanas + AI palīdzības rīkiem. Piemērs Claude Code:
{ "mcpServers": { "bezbaseina": {
"command": "npx", "args": ["@bezbaseina/cli", "mcp", "start"] } } }Mutācijas (publicēt/apturēt/cena) ar nolūku nav pieejamas MCP — tās paliek aiz CLI/REST apstiprinājuma. Asistents var ieteikt un sagatavot, bet nevar pats mainīt tavus sludinājumus.
Plāni un limiti
| Plāns | API/CLI/MCP | AI teksts/mēn | AI analīzes/mēn | Foto uzlabošana | Foto/īpašums |
|---|---|---|---|---|---|
| Free | – | 10 | 3 | – | 8 |
| Plus | – | 200 | 50 | – | 16 |
| Pro | ✓ | 1 000 | 300 | ✓ | 30 |
| Agency | ✓ | neierobežots | neierobežots | ✓ | 60 |
Patēriņu var redzēt GET /me. Norēķini top; pašlaik plānu iestata BezBaseina komanda.
Drošība un principi
- ✓Publiskais API neatklāj īpašnieka e-pastu/tālruni, precīzu adresi, iekšējos ID, interesentus, tokenus vai nepublicētus datus.
- ✓Piederība tiek pārbaudīta serverī — vari lasīt/mainīt tikai savus datus.
- ✓Riskantas darbības prasa skaidru, idempotentu apstiprinājumu.
- ✓AI neizdomā faktus, telpas vai ērtības un nekad pats nemaina cenu.
- ✓Foto uzlabošana nekad nepārraksta oriģinālu — tā veido jaunu attēlu, ko izvēlies pats.
- ✓Katra API/CLI/MCP darbība tiek ierakstīta tavā aktivitāšu žurnālā.
Jautājumi: hello@bezbaseina.lv