GET historical-odds

Uç nokta

GET /v4/historical-odds

İstek Parametreleri

  • fixtureId* (string) Geçmiş oranları getirilecek fikstür ID’si.
  • bookmakers* (string) Sonuçları filtrelemek için virgülle ayrılmış bahis sitesi slug’ları listesi (maksimum 3). Örneğin: pinnacle,bet365
  • id (number) (İsteğe bağlı) Sonuçları filtrelemek için kullanılan belirli bir geçmiş oran kaydının benzersiz ID’si.
  • playerId (number) (İsteğe bağlı) Sonuçları daraltmak için kullanılan ilgili playerId.
  • outcomeId (number) (İsteğe bağlı) Belirli bir sonuç için oranları filtrelemek üzere kullanılan outcomeId.
  • active (boolean) (İsteğe bağlı) Oran kaydının şu anda aktif olup olmadığına göre filtreleme yapar.

İstek Başlıkları

  • If-None-Match (string) (İsteğe bağlı) Koşullu bir istek yapmak için önceki bir yanıttaki ETag değerini geri gönderin. Yanıt aynı olacaksa, sunucu yükü yeniden göndermek yerine boş gövdeyle 304 Not Modified döndürür. Yalnızca tamamlanmış veya iptal edilmiş fixture'lar için geçerlidir (aşağıdaki "Koşullu istekler" bölümüne bakın).

Örnek İstek

GET /v4/historical-odds?fixtureId=id1000000758265379

Örnek Yanıt

{
  "fixtureId": "id1000000758265379",
  "bookmakers": {
    "pinnacle": {
      "markets": {
        "101": {
          "outcomes": {
            "101": {
              "players": {
                "0": [
                  {
                    "createdAt": "2025-04-16T21:12:10.506331+00:00",
                    "price": 9.11,
                    "limit": 1191.25,
                    "active": false,
                    "exchangeMeta": null
                  },
                  {
                    "createdAt": "2025-04-16T20:50:58.321847+00:00",
                    "price": 9.11,
                    "limit": 1191.25,
                    "active": true,
                    "exchangeMeta": null
                  }
                ]
              }
            }
          }
        },
        "10168": {
          "outcomes": {
            "10168": {
              "players": {
                "0": [
                  {
                    "createdAt": "2025-04-16T20:16:45.057806+00:00",
                    "price": 1.729,
                    "limit": 13072.7023319616,
                    "active": false,
                    "exchangeMeta": null
                  },
                  {
                    "createdAt": "2025-04-16T20:16:18.597131+00:00",
                    "price": 1.729,
                    "limit": 13072.7023319616,
                    "active": true,
                    "exchangeMeta": null
                  },
                  {
                    "createdAt": "2025-04-16T20:15:51.441377+00:00",
                    "price": 1.699,
                    "limit": 13633.7625178827,
                    "active": true,
                    "exchangeMeta": null
                  }
                ]
              }
            }
          }
        }
      }
    }
  }
}

Yanıt (200 OK)

Başarılı bir istek üzerine sunucu şu durum koduyla yanıt verir 200 ve fixtureId’den iç içe geçmiş bahis sitesi oran geçmişine bir eşleme döner..

  • bookmakers (object) Bahis sitesi slug’ına göre gruplanmış oranlar
    • markets (object) Her fikstür, sonuçları içeren market nesneleri içerir.
    • outcomes (object) Oyuncu verilerini içeren sonuç ID’leri.
    • players (object) Aşağıdakileri içeren oran verileriyle birlikte oyuncular::
      • id (number) Geçmiş oran kaydının benzersiz tanımlayıcısı.
      • createdAt (string) Geçmiş oran kaydının oluşturulduğu zaman damgası.
      • price (number) Sunulan oran (fiyat).
      • limit (number) Oran için izin verilen maksimum bahis.
      • active (boolean) Oranların şu anda aktif olup olmadığı.
      • exchangeMeta (object|null) Geçerliyse, borsalara ait back ve lay fiyatlarını içeren meta veriler.

Yanıt Başlıkları (yalnızca tamamlanmış/iptal edilmiş fixture'lar)

  • ETagMevcut yanıt gövdesini tanımlayan kısa opak bir dize. Örnek: "a1b2c3d4e5f6a7b8".
  • Cache-Control private, max-age=259200 (3 gün).

Yanıt (304 Not Modified)

İstek, bu fixture ve filtre kombinasyonu için mevcut ETag değeriyle eşleşen bir If-None-Match başlığı içerdiğinde döndürülür. Yanıtın gövdesi boştur; istemci önceden önbelleğe alınmış yükü yeniden kullanmalıdır.

Koşullu istekler

Tamamlanmış veya iptal edilmiş fixture'lar için yanıt belirleyicidir; bu nedenle her 200 yanıtı bir ETag başlığı içerir. Aynı fixture'ı defalarca sorgulayan istemciler gövdeyi yerel olarak önbelleğe alabilir ve değişmemiş bir yükü yeniden aktarmamak ve yeniden ayrıştırmamak için sonraki isteklerde If-None-Match: <etag> gönderebilir:

GET /v4/historical-odds?fixtureId=id1000000758265379&bookmakers=pinnacle
→ 200 OK
  ETag: "a1b2c3d4e5f6a7b8"
  Cache-Control: private, max-age=259200
  { "fixtureId": "...", "bookmakers": { ... } }

GET /v4/historical-odds?fixtureId=id1000000758265379&bookmakers=pinnacle
If-None-Match: "a1b2c3d4e5f6a7b8"
→ 304 Not Modified
  ETag: "a1b2c3d4e5f6a7b8"

ETag tam olarak o yanıta bağlıdır; dolayısıyla sorgu parametreleri (bookmaker, filtreler) değiştiğinde değişir. Canlı ve yaklaşan fixture'lar ETag yayınlamaz çünkü oran geçmişleri hâlâ büyümektedir; bu fixture'lara yönelik koşullu istekler tam gövde ile normal bir 200 olarak karşılanır.

Notlar

  • Endpoint bekleme süresi (rate limit): 5000ms (304 yanıtı da bu limite sayılır).
  • Ocak 2026'dan itibaren tüm geçmiş oran verileri mevcuttur.
Sonraki sayfaGET settlements
Bir sorun bildir
OddsPapi | Dokümanlar GET historical odds