Opportunities

Get an opportunity

The full opportunity: stage, value, probability, health, checklist steps, BANT, stage-gate problems (gate_problems), visits, trials, offers, orders, tasks, stage history, notes and e-mail threads.

GET/api/v1/opportunities/{id}

Authorization

Authorizationheaderrequired
Bearer token: API key (sk_…), OAuth access token (mcp_…) or mobile session (xk_…).
Module: OpportunitiesScope: crm.read

Path parameters

idintegerrequired
Opportunity id.

Errors

HTTPerrorMeaning
404not_foundRecord not found.
Request
curl https://ornek.solk.app/api/v1/opportunities/31 \
  -H "Authorization: Bearer $SOLK_API_KEY"
Response
{
  "ok": true,
  "opp": {
    "bant": 3,
    "bant_a": true,
    "bant_b": true,
    "bant_n": false,
    "bant_t": true,
    "base_currency": "EUR",
    "can_edit": true,
    "can_revive": false,
    "close_category": "",
    "close_date": "2027-02-06",
    "close_reason": "",
    "closed_at": null,
    "competitor": "Distribütör ürünü",
    "cur_sym": "€",
    "currency": "EUR",
    "customer": "Alize Paketleme San. ve Tic. A.Ş.",
    "customer_city": "İstanbul",
    "customer_id": 1,
    "days_in_stage": 2,
    "demos": [],
    "detail_status": "",
    "fc": "Pipeline",
    "gate_ok": false,
    "gate_problems": [
      "BANT kriterleri 4/4 sağlanmalı (Budget · Authority · Need · Time)"
    ],
    "guide": "BANT 4/4",
    "health": {
      "grade": "success",
      "label": "sağlıklı",
      "score": 92
    },
    "health_color": "g",
    "health_manual": true,
    "health_note": "",
    "health_why": [
      [
        "−8"
      ]
    ],
    "id": 31,
    "initials": "AP",
    "is_account": false,
    "is_open": true,
    "last_update": "2026-09-20",
    "lifetime_left": 178,
    "line": "",
    "logs": [
      {
        "date": "2026-09-30T08:00:00",
        "from": null,
        "note": "Proje açıldı",
        "to": "Qualify",
        "user": "Deniz Aksoy"
      }
    ],
    "name": "Mevcut Müşteri — Yenileme · 2026",
    "next_stage": "Viable",
    "next_step": "İhtiyaç, hat ve aylık miktar potansiyelini netleştir (Need)",
    "note": "",
    "notes": [],
    "offer_price": null,
    "offers": [],
    "orders": [],
    "owner": {
      "full_name": "Deniz Aksoy",
      "id": 1,
      "role": "admin",
      "role_label": "Yönetici",
      "username": "admin"
    },
    "payment_days": null,
    "potential_kg": 8000.0,
    "prob": 0.1,
    "probability": null,
    "product": "",
    "product_id": null,
    "pu": "€/kg",
    "rid": "006YV7xczE9DnY2",
    "sla_days": 30,
    "sla_left": 28,
    "source": "Bayi / distribütör",
    "stage": "Qualify",
    "stage_label": "Qualify",
    "start_date": "2026-09-30",
    "steps": [
      {
        "assignee": {
          "full_name": "Deniz Aksoy",
          "id": 1,
          "role": "admin",
          "role_label": "Yönetici",
          "username": "admin"
        },
        "auto": true,
        "done": true,
        "due_date": null,
        "id": 376,
        "note": "otomatik: BANT kutusu",
        "stage": "Qualify",
        "state": "done",
        "title": "Karar verici / yetkili kişiyi belirle (Authority)"
      }
    ],
    "tags": [],
    "tasks": [],
    "threads": [
      {
        "customer": "Alize Paketleme San. ve Tic. A.Ş.",
        "customer_id": 1,
        "id": 1,
        "last_at": "2026-10-01T15:06:59",
        "last_dir": "out",
        "n": 2,
        "opp": "Mevcut Müşteri — Yenileme · 2026",
        "opp_how": "single",
        "opp_id": 31,
        "opp_note": "firmanın tek açık projesi",
        "peer": "selin.dogan@alizepaketleme.example",
        "subject": "Numune ve fiyat teklifi",
        "suggested": false,
        "waiting": false
      }
    ],
    "threads_n": 1,
    "trend": "up",
    "trend_label": "Yeşil",
    "type": "Mevcut Müşteri — Yenileme",
    "unit": "kg",
    "unit_code": "kg",
    "value": 403000.0,
    "value_base": 403000.0,
    "value_short": "403K",
    "visits": [
      {
        "action_date": "2026-09-30",
        "action_done": false,
        "action_state": "overdue",
        "contact": "Selin Doğan",
        "customer": "Alize Paketleme San. ve Tic. A.Ş.",
        "customer_id": 1,
        "date": "2026-09-30",
        "id": 74,
        "line": "",
        "next_action": "Ziyaret Planla",
        "note": "Hat 2'de tünelleşme sorunu konuşuldu; solventsiz sisteme geçiş planlıyorlar.",
        "opp": "Mevcut Müşteri — Yenileme · 2026",
        "opp_id": 31,
        "product": "",
        "result": "Teklif istendi",
        "rid": "00U2wBTaDRg4JXL",
        "topic": "Tanışma",
        "type": "Call",
        "user": "Deniz Aksoy"
      }
    ],
    "weighted": 40300.0
  }
}

Example responses were captured from a v22 installation running sample data; lists are shortened to two items.