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 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 | Publish a new listing you own. Contact defaults to your account; add photos with photos.upload or pass photo_urls[]. Goes live immediately (Pro). | ads:write |
| PATCH | /ads/{id} | Update fields on a listing you own (title, description, price, rooms, amenities, address, …). Only the fields you send change. | ads:write |
| DELETE | /ads/{id}apstiprina | Take a listing off the public site (archived). Reversible with ads.publish. Returns a confirmation to apply. | ads:write |
| 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 |
| DELETE | /photos/{id} | Remove one photo from a property you own. | photos:write |
| POST | /ads/{id}/photos-order | Set the photo order for a listing you own (first = hero). Send the full ordered list of photo handles. | 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, cenas maiņa un dzēšana 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
# vai bez instalēšanas:
npx -y bezbaseina@latest login
bezbaseina login
bezbaseina ads list
bezbaseina ads create --title "…" --city riga --deal rent --price 375 # jauns sludinājums
bezbaseina ads update ad_123 --price 400 --title "…" # rediģē laukus
bezbaseina ads delete ad_123 # noņem (apstiprina)
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 photos reorder ad_123 photo_b photo_a # pirmais = hero
bezbaseina photos delete photo_123
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. Soli-pa-solim ceļvedis: /developers/guide.
AI asistenti (MCP)
Attālais serveris (ieteicams): https://bezbaseina.lv/mcp — Streamable HTTP, der claude.ai pielāgotajiem savienotājiem (custom connectors), ChatGPT aplikācijām, Claude Code un Codex. Bez konta pieejami publiskie lasīšanas rīki (sludinājumu meklēšana, viens sludinājums, tirgus statistika); pilnais īpašnieka komplekts: https://bezbaseina.lv/mcp/owner (OAuth 2.1 + PKCE, bez tokenu kopēšanas) vai Authorization: Bearer bbk_… galvene.
- 1Atver claude.ai → Settings → Connectors → “Add custom connector”.
- 2Nosaukums: BezBaseina. URL: https://bezbaseina.lv/mcp/owner — pilnais īpašnieka komplekts. (Tikai publiskai meklēšanai bez konta: https://bezbaseina.lv/mcp.) OAuth laukus atstāj tukšus un spied “Add”.
- 3Pirmajā reizē Claude atvērs bezbaseina.lv pieteikšanos un piekrišanas logu — ieej savā kontā un nospied “Atļaut”.
- 4Sarunā ieslēdz BezBaseina savienotāju (rīku ikona zem ievades lauka) un raksti latviski: “parādi manus sludinājumus”, “iesaki cenu manam dzīvoklim”, “izveido sludinājumu…”.
Tas pats darbojas ChatGPT: Settings → Connectors (ja sadaļas nav, ieslēdz Developer mode zem Advanced) → pievieno to pašu URL. Piekļuvi jebkurā brīdī vari atsaukt Pārvaldē → API, un riskantās darbības vienmēr prasa tavu apstiprinājumu.
Lietotājiem draudzīgā pamācība ar ekrāna soļiem: /ai. OAuth metadati: https://bezbaseina.lv/.well-known/oauth-authorization-server.
Lokālais serveris (stdio) — tas pats rīku komplekts caur CLI:
bezbaseina mcp startPiemērs Claude Code:
{ "mcpServers": { "bezbaseina": {
"command": "npx", "args": ["-y", "bezbaseina@latest", "mcp", "start"],
"env": { "BEZBASEINA_TOKEN": "bbk_…" } } } }Asistents (ChatGPT/Claude/Codex) var izveidot, rediģēt, dzēst, kārtot foto, publicēt un mainīt cenu — bet riskantās darbības ir divpakāpju: rīks atgriež apstiprinājumu ar izmaiņu diff, un aģents to piemēro tikai ar confirm_action. Tā pati aizsardzība kā CLI/REST — tu (vai aģents) redzi izmaiņu, pirms tā notiek.
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