Ana içeriğe atla
POST
/
v1
/
alarms
/
forecasts
/
page
Kayıtları listele (sayfalı)
curl --request POST \
  --url https://api.iklim.co/v1/alarms/forecasts/page \
  --header 'Content-Type: application/json' \
  --data '
{
  "pageNumber": 0,
  "pageSize": 20,
  "filterByRecipientIds": [
    "customer-system-001",
    "customer-system-002"
  ],
  "filterByBoundary": {
    "cityId": 6,
    "type": "ADMINISTRATIVE",
    "districtId": 557
  },
  "accountId": "2f04f1b5-1c0a-4c4e-b0a7-0ba6e9b7f2e1"
}
'
{
  "registrations": [
    {
      "registrationId": "f7587d9e-2481-4b4c-818d-c8d1946851b7",
      "recipientId": "customer-system-001",
      "boundary": {
        "cityId": 6,
        "districtId": 557
      },
      "forecastDays": 3,
      "forecastAlarmDelivery": [
        "MORNING",
        "EVENING"
      ],
      "webhook": {
        "accountId": "2f04f1b5-1c0a-4c4e-b0a7-0ba6e9b7f2e1",
        "url": "https://api.customer.com/alerts/forecast-callback",
        "httpMethod": "POST",
        "contentType": "application/json",
        "authentication": {
          "username": "alert-user",
          "password": "******"
        },
        "requestHeaders": {
          "source": "iklim.co",
          "custom-header": "value"
        },
        "deliveryPolicy": {
          "timeout": 60,
          "maxRetries": 3,
          "retryDelay": 10
        }
      },
      "filter": {
        "precipitationThreshold": "MODERATE",
        "snowFallThreshold": "LIGHT",
        "windGustThreshold": "STRONG_WIND",
        "hotTemperatureThreshold": "HOT_SNAP",
        "coldTemperatureThreshold": "COLD_SNAP"
      }
    }
  ],
  "totalRecords": 42,
  "pageNumber": 0,
  "pageSize": 20
}

Gövde

application/json

Tahmin alarmı kayıtları için sayfalandırılmış listeleme isteği.

pageNumber
integer<int32>

Sıfır tabanlı sayfa indeksi.

Gerekli aralık: x >= 0
Örnek:

0

pageSize
integer<int32>

Sayfa başına döndürülecek azami kayıt sayısı (1–100).

Gerekli aralık: 1 <= x <= 100
Örnek:

20

filterByRecipientIds
string[]

Sonuçları verilen alıcı tanımlayıcılarından birine sahip kayıtlarla sınırla.

Örnek:
[
"customer-system-001",
"customer-system-002"
]
filterByBoundary
object

Alarm kayıt sınırı

Tahmin alarm koşulları için izlenecek coğrafi kapsamı tanımlar. Somut sınır türü type ayırt edici alanıyla seçilir; yalnızca seçilen alt türe ait alanlar gönderilmelidir.

  • ADMINISTRATIVE – il (cityId) ve ilçe (districtId) sayısal kimlik değerleriyle tanımlanan idari sınır; her iki alan da zorunludur.
  • POINT – tek bir boylam/enlem koordinatı (point) ile tanımlanan coğrafi nokta sınırı. Alarm, o koordinata en yakın tahmin ızgara hücresi için değerlendirme yapar.
accountId
string<uuid>

Hedef hesap UUID’si; ADMIN veya POWER_USER rolündeki kullanıcılar diğer hesapların kayıtlarını sorgulayabilir.

Örnek:

"2f04f1b5-1c0a-4c4e-b0a7-0ba6e9b7f2e1"

Yanıt

Başarılı

Tahmin alarmı kayıtlarının sayfalandırılmış sonuç kümesi.

registrations
object[]

Mevcut sayfadaki tahmin alarmı kayıtlarının listesi.

totalRecords
integer<int32>

Tüm sayfalardaki eşleşen kayıtların toplam sayısı.

Örnek:

42

pageNumber
integer<int32>

Döndürülen sayfanın sıfır tabanlı indeksi.

Örnek:

0

pageSize
integer<int32>

İstendiği şekilde sayfa başına azami kayıt sayısı.

Örnek:

20