B2B

quotes

7 uç · /api/b2b/v1/quotes

İstek örnekleri ucun GERÇEK metodu ve yolundan üretilir. 7 ucun elle doğrulanmış gövde örneği henüz yok; o uçlarda iskelet gövdesizdir — uydurma bir alan yazmıyoruz.

GET/api/b2b/v1/admin/quotes

GET /admin/quotes?status= — tüm bayilerin teklifleri (b2b.orders.view).

Oturum
İstek
curl -X GET "https://{slug}.b2b.blesyum.app/api/b2b/v1/admin/quotes" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
POST/api/b2b/v1/admin/quotes

POST /admin/quotes — personel elle teklif oluşturur (b2b.orders.manage).

Oturum
İstek
curl -X POST "https://{slug}.b2b.blesyum.app/api/b2b/v1/admin/quotes" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/b2b/v1/admin/quotes/{id}

GET /admin/quotes/{id}.

OturumYol parametresi: id
İstek
curl -X GET "https://{slug}.b2b.blesyum.app/api/b2b/v1/admin/quotes/<id>" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
PATCH/api/b2b/v1/admin/quotes/{id}/lines

PATCH /admin/quotes/{id}/lines — teklif kalemlerini DEĞİŞTİR (b2b.orders.manage).

OturumYol parametresi: id

# Neden var Teklif detayında fiyat, KDV, geçerlilik ve not düzenlenebiliyordu ama **kalem ekleme/çıkarma ve miktar değiştirme hiçbir yerde yoktu** — ne uçta ne ekranda. Kullanıcı bunu *"teklif detayı var ama teklif düzenlenemiyor"* diye bildirdi (2026-08-20). Sipariş tarafında aynı iş zaten çalışıyordu (manual_orders::edit_lines_handler); bu onun ikizidir. # Sınır — fiyatlama kapısıyla AYNI Yalnız requested/quoted teklifin kalemleri değişir. Karar verilmiş bir teklifin (kabul/ret) içeriğini değiştirmek, bayinin gördüğü belgeyi geriye dönük tahrif etmek olurdu — quote_offer_handler'ın kapısı da tam olarak budur. # Fiyatsız kalem MEŞRUDUR unit_net NULL kalabilir (şemanın kendi sözleşmesi: "boş ≠ sıfır"). Fiyatsız satır varsa teklif quoted'a **geçmez** — gönderme hâlâ "Gönder"in (quote_offer_handler) işidir ve o, eksik fiyatlı teklifi zaten reddeder.

İstek
curl -X PATCH "https://{slug}.b2b.blesyum.app/api/b2b/v1/admin/quotes/<id>/lines" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/b2b/v1/admin/quotes/{id}/pdf

Quote pdf

OturumYol parametresi: id
İstek
curl -X GET "https://{slug}.b2b.blesyum.app/api/b2b/v1/admin/quotes/<id>/pdf" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
POST/api/b2b/v1/admin/quotes/{id}/quote

POST /admin/quotes/{id}/quote — satıcı fiyatlar (b2b.orders.manage).

OturumYol parametresi: id

TÜM satırlar fiyatlanmalıdır: eksik fiyatlı bir teklif bayiye "kabul et" düğmesi gösterir ama kabul edilemez (dosya başı sözleşmesi) — bunu gönderim anında reddetmek, kullanıcıyı kabul anında hayal kırıklığına uğratmaktan iyidir.

İstek
curl -X POST "https://{slug}.b2b.blesyum.app/api/b2b/v1/admin/quotes/<id>/quote" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
POST/api/b2b/v1/admin/quotes/{id}/reject

POST /admin/quotes/{id}/reject — satıcı teklifi reddeder (fiyat veremiyor/stok yok).

OturumYol parametresi: id
İstek
curl -X POST "https://{slug}.b2b.blesyum.app/api/b2b/v1/admin/quotes/<id>/reject" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
Bu sayfa işine yaradı mı?