API v1 · kararlı

Dolaşıyo API

Rotalar, şehir fiyat profilleri, döviz ve uçtan uca seyahat maliyeti hesaplama. Kendi uygulamana, botuna ya da tablona saniyeler içinde bağla.

curl "https://dolasiyo.com/api/v1/prices?lat=38.64&lon=34.83&name=Göreme" \
  -H "Authorization: Bearer dlsy_…"

# → otel/gece, lokanta, pazar, taksi, müze, hediyelik
#   fiyatları TRY cinsinden

Tek istekte plan

Rota, duraklar, fiyatlar ve maliyet aralığı

Canlı ilerleme

NDJSON akışıyla adım adım sonuç

Cömert sınırlar

Anahtarla 5× hız, günlük 5.000 istek

Tutarlı hatalar

Tek biçim, requestId ile takip

Genel bakış

Temel adres https://dolasiyo.com/api/v1. Tüm yanıtlar JSON'dur: başarıda { "data": … }, hatada { "error": { code, message, details, requestId } }. Tutarlar istenen para biriminde (TRY, EUR, USD) tam sayı olarak döner; tahminler alt–üst aralıkla verilir.

Her yanıtta API-Version, X-Request-Id ve RateLimit-* başlıkları bulunur. Destek isterken X-Request-Id değerini paylaş.

Hızlı başlangıç

  1. Aşağıdan ücretsiz bir API anahtarı oluştur (doğrulanmış hesap gerekir).
  2. Anahtarı ortam değişkeni olarak sakla: export DOLASIYO_API_KEY=dlsy_…. Tarayıcıda ya da herkese açık depoda paylaşma.
  3. İlk isteğini at:
curl -X POST "https://dolasiyo.com/api/v1/plans" \
  -H "Authorization: Bearer $DOLASIYO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "input": { "origin": { "name": "Ankara", "lat": 39.9334, "lon": 32.8597, "country": "TR" }, "destination": { "name": "Göreme", "lat": 38.6431, "lon": 34.8289, "country": "TR" }, "nights": 3, "travelers": 2, "tier": "mid", "transport": "car", "roundTrip": true, "currency": "TRY" }, "save": false }'

API anahtarların

Anahtarlar dlsy_ ile başlar ve sadece oluşturulduğu anda gösterilir. Biz yalnızca özetini (SHA-256) saklarız. Sızdığını düşündüğün anahtarı iptal edip yenisini oluştur.

Kimlik doğrulama

Anahtarı iki biçimde gönderebilirsin:

Authorization: Bearer dlsy_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Anahtar bir istemciyi tanımlar, bir kullanıcı oturumu açmaz. Kişisel veriye dokunan uç noktalar (kaydetme, profil, e-posta) yalnızca web sitesindeki oturumla çalışır. Geçersiz ya da iptal edilmiş anahtar 401 unauthorized döner.

Hız sınırları ve kota

Sınırlar kayan pencereyle uygulanır. Anahtarlı istekler aşağıdaki değerlerin 5 katını alır ve günlük kotaya tabidir (varsayılan 5.000). Anahtarsız, sitemiz dışından gelen istekler IP başına günde 500 ile sınırlıdır.

PolitikaAnahtarsızAnahtarlaPencere
read · Okuma12060060 sn
search · Arama6030060 sn
plan · Planlama105060 sn
write · Yazma3015060 sn
email · E-posta5251 saat
research · Canlı araştırma5251 saat
upload · 10501 saat
photo · 603001 saat

Yanıt başlıkları: RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset (saniye), anahtarla ayrıca X-Quota-Limit ve X-Quota-Remaining. Sınır aşılırsa 429 ve Retry-After döner; o süre kadar bekleyip üstel geri çekilmeyle (exponential backoff) tekrar dene.

Hatalar

HTTP/1.1 422 Unprocessable Entity

{
  "error": {
    "code": "validation_failed",
    "message": "Geçersiz sorgu",
    "details": [{ "path": "q", "message": "Too small: expected string to have >=2 characters" }],
    "requestId": "b2Xk9wQ1mZ7a"
  }
}
400bad_requestBozuk JSON, çok büyük gövde (64 KB üstü), geçersiz yol parametresi
401unauthorizedGeçersiz/iptal edilmiş anahtar ya da oturum gerekli
403forbiddenİzin verilmeyen kaynak (Origin) ya da doğrulanmamış hesap
404not_foundKayıt yok ya da gizli
409conflictÇakışma (ör. anahtar sınırı)
422validation_failedParametre/gövde doğrulaması; ayrıntı details dizisinde
429rate_limitedHız sınırı ya da günlük kota; Retry-After'a uy
502upstream_failedHarita/rota sağlayıcısı geçici olarak yanıt vermedi
500internalBeklenmeyen hata; requestId ile bize yaz

Sayfalama ve sürüm

Listeler imleçle sayfalanır: yanıttaki nextCursor değerini bir sonraki istekte cursor olarak gönder; null gelince liste bitmiştir. İmleçlerin içeriğine güvenme, opak kabul et.

Sürüm adreste yer alır (/api/v1). Geriye uyumsuz değişiklikler yeni sürümle gelir. Kaldırılacak uç noktalar en az 6 ay önce Deprecation ve Sunset başlıklarıyla duyurulur.

Keşif

GET/destinationsOkuma · 120/dk

Rota akışı

Editörlerin seçtiği ya da kişiselleştirilmiş sırada rotalar. Her kart 2 kişi, önerilen gece sayısı için konaklama + yeme-içme + gezi dahil tahmini maliyet içerir. İmleç (cursor) ile sayfalanır.

Parametreler

  • limitsorgu · integer

    Sayfa boyutu (1–50, varsayılan 24)

  • cursorsorgu · string

    Önceki yanıttaki `nextCursor`

  • categorysorgu · string

    Kategori: Deniz, Doğa, Tarih, Kültür, Gastronomi, Kış, Hafta sonu, Yurt dışı

  • qsorgu · string

    Serbest metin arama (en fazla 80 karakter)

  • currencysorgu · string

    Fiyat para birimi (varsayılan TRY) (TRY | EUR | USD)

  • sortsorgu · string

    Sıralama (varsayılan editorial) (editorial | for-you)

  • includesorgu · string

    Virgülle ek veri: `categories` (kategori sayıları), `community` (ilk sayfada onaylı topluluk planları)

curl "https://dolasiyo.com/api/v1/destinations?limit=1&category=Do%C4%9Fa" \
  -H "Authorization: Bearer $DOLASIYO_API_KEY"

Örnek yanıt

{
  "data": {
    "items": [{
      "id": "_M2BuuVStH",
      "slug": "kapadokya-balon-ve-vadiler",
      "title": "Kapadokya: Balonlar ve Vadiler",
      "summary": "Gün doğumunda balon turu, peri bacaları arasında yürüyüş ve yeraltı şehirleri.",
      "category": "Doğa",
      "lat": 38.6431, "lon": 34.8289,
      "suggestedNights": 3,
      "image": { "url": "https://…/500px-Göreme.JPG", "largeUrl": "https://…/960px-Göreme.JPG", "width": 500, "height": 333, "credit": "Wikipedia · …" },
      "tags": ["balon", "yürüyüş", "peri bacası"],
      "highlights": ["Güvercinlik Vadisi", "Derinkuyu Yeraltı Şehri"],
      "city": { "slug": "nevsehir-goreme", "name": "Göreme", "country": "TR" },
      "estimate": { "total": 48210, "perPerson": 24105, "perNight": 16070, "currency": "TRY", "travelers": 2 }
    }],
    "nextCursor": "o1"
  }
}
GET/destinations/{slug}Okuma · 120/dk

Rota detayı

Tek bir rotanın kartı ve maliyet tahmini.

Parametreler

  • slugyol · stringzorunlu

    Rota kısa adı

  • currencysorgu · string

    Para birimi (TRY | EUR | USD)

curl "https://dolasiyo.com/api/v1/destinations/kapadokya-balon-ve-vadiler" \
  -H "Authorization: Bearer $DOLASIYO_API_KEY"

Örnek yanıt

{ "data": { "id": "_M2BuuVStH", "slug": "kapadokya-balon-ve-vadiler", "title": "Kapadokya: Balonlar ve Vadiler", "…": "…" } }
GET/community-plansOkuma · 120/dk

Topluluk planları

Kullanıcıların kendi planlarından hazırlayıp paylaştığı, editörlerin onayladığı tatil planları. Yazar yalnızca herkese açık kullanıcı adıyla görünür. En yeni onaylar önce gelir.

Parametreler

  • limitsorgu · integer

    Sayfa boyutu (1–50, varsayılan 24)

  • offsetsorgu · integer

    Atlanacak kayıt (en fazla 500)

  • categorysorgu · string

    Kategori: Deniz, Doğa, Tarih, Kültür, Gastronomi, Kış, Hafta sonu, Yurt dışı

  • qsorgu · string

    Başlık ve hikâyede arama (en fazla 80 karakter)

curl "https://dolasiyo.com/api/v1/community-plans?limit=1" \
  -H "Authorization: Bearer $DOLASIYO_API_KEY"

Örnek yanıt

{
  "data": {
    "items": [{
      "kind": "community", "id": "Xy12AbCd34", "slug": "karadeniz-yaylalari-xy12ab",
      "title": "Karadeniz yaylaları: 4 gecede Ayder ve Uzungöl",
      "excerpt": "Sisli sabahlar, muhlama ve yayla yolları…",
      "category": "Doğa", "cover": "https://upload.wikimedia.org/…/500px-Ayder.jpg",
      "nights": 4, "travelers": 2, "stops": 4, "destination": "Ayder",
      "total": 38400, "perPerson": 19200, "currency": "TRY",
      "author": { "username": "gezgin.ayse", "linkable": true }
    }]
  }
}
GET/destinations/{slug}/staysArama · 60/dk

Konaklama bağlantıları ve yakındaki oteller

Booking.com, Airbnb, Google Oteller, Etstur ve trivago için tarih ve kişi sayısı doldurulmuş arama bağlantıları; OpenStreetMap'ten bölgedeki konaklama yerleri. Tarih verilmezse bir sonraki cumartesi ve önerilen gece sayısı kullanılır.

Parametreler

  • slugyol · stringzorunlu

    Rota kısa adı

  • checkinsorgu · string

    Giriş tarihi (YYYY-MM-DD)

  • checkoutsorgu · string

    Çıkış tarihi (YYYY-MM-DD)

  • adultssorgu · integer

    Yetişkin sayısı (1–12, varsayılan 2)

curl "https://dolasiyo.com/api/v1/destinations/alacati-cesme-ruzgar/stays?adults=2" \
  -H "Authorization: Bearer $DOLASIYO_API_KEY"

Örnek yanıt

{
  "data": {
    "checkin": "2026-10-03", "checkout": "2026-10-06", "adults": 2,
    "links": [{ "key": "booking", "label": "Booking.com", "href": "https://www.booking.com/searchresults.tr.html?ss=Ala%C3%A7at%C4%B1&…" }],
    "stays": [{ "id": "node/123", "name": "Taş Otel", "kind": "hotel", "stars": 4, "lat": 38.28, "lon": 26.37, "distanceKm": 0.4 }]
  }
}

Yer ve fiyat

GET/placesArama · 60/dk

Yer arama (otomatik tamamlama)

Şehir, ilçe, otel ya da gezilecek yer arar. Sonuçlar planlama isteğindeki `origin`/`destination` alanlarına doğrudan verilebilir.

Parametreler

  • qsorgu · stringzorunlu

    Arama metni (en az 2 karakter)

  • limitsorgu · integer

    Sonuç sayısı (1–10, varsayılan 6)

curl "https://dolasiyo.com/api/v1/places?q=kapadokya&limit=1" \
  -H "Authorization: Bearer $DOLASIYO_API_KEY"

Örnek yanıt

{ "data": { "items": [{ "name": "Kapadokya (Lykia) Lodge Otel", "label": "Kapadokya (Lykia) Lodge Otel, Uçhisar, Nevşehir, Turkey", "lat": 38.6292, "lon": 34.7695, "country": "TR", "type": "hotel" }] } }
GET/pricesOkuma · 120/dk

Bir yerin fiyat profili

Otel (gecelik, çift kişilik oda), lokanta, kahve, market/pazar, şehir içi ulaşım, taksi, müze ve hediyelik fiyatları. Kaynak sırası: canlı araştırma → aylık fiyat gözlemleri (`hermes`, `ranges` = en uygun–üst aralık) → şehir veri seti → ülke ortalaması (`source` alanı).

Parametreler

  • latsorgu · numberzorunlu

    Enlem

  • lonsorgu · numberzorunlu

    Boylam

  • namesorgu · string

    Yer adı (eşleştirme için)

  • countrysorgu · string

    ISO ülke kodu (TR, GR, …)

  • tiersorgu · string

    Bütçe seviyesi (varsayılan mid) (budget | mid | luxury)

  • currencysorgu · string

    Para birimi (TRY | EUR | USD)

curl "https://dolasiyo.com/api/v1/prices?lat=38.64&lon=34.83&name=G%C3%B6reme&country=TR" \
  -H "Authorization: Bearer $DOLASIYO_API_KEY"

Örnek yanıt

{
  "data": {
    "currency": "TRY", "fxDate": "2026-09-25",
    "summary": {
      "hotelPerNight": 6249, "mealCheap": 491, "mealMid": 1116, "coffee": 195,
      "marketDaily": 458, "localTransportDaily": 246, "attractionAvg": 1116,
      "taxiStart": 65, "taxiPerKm": 55, "souvenirAvg": 200,
      "specialty": { "name": "Lokum (1 kg)", "price": 558 },
      "source": "dataset", "matchedPlace": "Göreme"
    },
    "detail": { "hotel": { "budget": 3404, "mid": 6249, "luxury": 17241 }, "meal": { "cheap": 491, "mid": 1116, "fine": 2901 } },
    "distanceKm": 0
  }
}
GET/prices/historyOkuma · 120/dk

Aylık fiyat geçmişi

Dolaşıyo'nun her ay topladığı fiyat gözlemleri: il (`tr:07`), ilçe (`tr:48:bodrum`), şehir (`intl:rs:belgrade`), ülke (`country:gr`, yakıt) ve uçuş kalkış noktası (`air:IST`, `dims.route`). Her nokta tipik değer, en uygun–üst aralık (low/high), gözlendiği para birimi ve EUR karşılığı, güven skoru ile döner.

Parametreler

  • placesorgu · stringzorunlu

    Yer anahtarı

  • metricsorgu · string

    Tek bir metrik (hotel_mid, meal_cheap, taxi_start, fuel_diesel, flight_oneway …); boşsa hepsi

curl "https://dolasiyo.com/api/v1/prices/history?place=tr:07&metric=hotel_mid" \
  -H "Authorization: Bearer $DOLASIYO_API_KEY"

Örnek yanıt

{
  "data": {
    "place": { "key": "tr:07", "name": "Antalya", "level": "il", "country": "TR" },
    "series": [{
      "metric": "hotel_mid", "label": "Otel, orta (çift kişilik oda / gece)", "unit": "room-night", "dims": {},
      "points": [
        { "period": "2026-09", "label": "Eylül 2026", "value": 4200, "low": 3100, "high": 5600, "currency": "TRY", "valueEur": 75.4, "confidence": 0.85, "source": "hermes" },
        { "period": "2026-10", "label": "Ekim 2026", "value": 3900, "low": 2900, "high": 5200, "currency": "TRY", "valueEur": 69.1, "confidence": 0.85, "source": "hermes" }
      ]
    }]
  }
}
GET/fxOkuma · 120/dk

Döviz kurları

EUR bazlı güncel kurlar (Avrupa Merkez Bankası referans kurları, günlük).

curl "https://dolasiyo.com/api/v1/fx" \
  -H "Authorization: Bearer $DOLASIYO_API_KEY"

Örnek yanıt

{ "data": { "base": "EUR", "date": "2026-09-25", "rates": { "TRY": 55.7975, "USD": 1.1403, "EUR": 1 } } }

Planlama

POST/plansPlanlama · 10/dk

Seyahat planı hesapla

Karayolu/otobüs/tren/uçak için rota, mola ve konaklama durakları, durak başına fiyatlar ve kalem kalem maliyet dökümü (alt–üst aralıkla). `save: true` ile paylaşılabilir bir plan kimliği döner. Aynı girdi 15 dakika önbelleklenir.

İstek gövdesi

{
  "input": {
    "origin": { "name": "Ankara", "lat": 39.9334, "lon": 32.8597, "country": "TR" },
    "destination": { "name": "Göreme", "lat": 38.6431, "lon": 34.8289, "country": "TR" },
    "nights": 3,
    "travelers": 2,
    "tier": "mid",
    "transport": "car",
    "roundTrip": true,
    "currency": "TRY"
  },
  "save": false
}

Tüm alanlar ve varsayılanlar için OpenAPI şemasına bak (ulaşım: car, bus, train, flight; bütçe: budget, mid, luxury; en fazla 8 ara durak).

curl -X POST "https://dolasiyo.com/api/v1/plans" \
  -H "Authorization: Bearer $DOLASIYO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "input": { "origin": { "name": "Ankara", "lat": 39.9334, "lon": 32.8597, "country": "TR" }, "destination": { "name": "Göreme", "lat": 38.6431, "lon": 34.8289, "country": "TR" }, "nights": 3, "travelers": 2, "tier": "mid", "transport": "car", "roundTrip": true, "currency": "TRY" }, "save": false }'

Örnek yanıt

{
  "data": {
    "id": null,
    "result": {
      "currency": "TRY",
      "route": { "mode": "car", "distanceKm": 297, "durationHours": 3.6, "drivingDays": 1, "geometry": [[39.93, 32.86], "…"] },
      "stops": [{ "kind": "destination", "name": "Göreme", "nights": 3, "prices": { "hotelPerNight": 6249, "…": "…" }, "cost": { "lodging": 18747, "food": 9376, "total": 36120 }, "attractions": ["…"] }],
      "lines": [{ "key": "fuel", "label": "Yakıt", "money": { "amount": 3480, "low": 3062, "high": 4002 } }],
      "total": { "amount": 45210, "low": 36168, "high": 56513 },
      "perPerson": { "amount": 22605, "low": 18084, "high": 28256 },
      "assumptions": ["Araç tüketimi 100 km'de 7 L, günlük en fazla 6 saat sürüş."]
    }
  }
}
POST/plans/streamPlanlama · 10/dkNDJSON akışı

Plan hesapla (canlı ilerleme, NDJSON)

`POST /plans` ile aynı gövde; yanıt `application/x-ndjson` akışıdır. Her satır bir JSON nesnesi: `progress` olayları (rota, yolda konaklama, molalar, fiyatlar, kur, toplam), ardından `done` (sonuç) ya da `error`. Aynı `event.id` ile gelen olay öncekini günceller (run → done).

İstek gövdesi

{ "input": { "origin": { "name": "İzmir", "lat": 38.42, "lon": 27.14 }, "destination": { "name": "Kars", "lat": 40.60, "lon": 43.10 }, "nights": 5, "travelers": 2 } }

Tüm alanlar ve varsayılanlar için OpenAPI şemasına bak (ulaşım: car, bus, train, flight; bütçe: budget, mid, luxury; en fazla 8 ara durak).

curl -N -X POST "https://dolasiyo.com/api/v1/plans/stream" \
  -H "Authorization: Bearer $DOLASIYO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "input": { "origin": { "name": "İzmir", "lat": 38.42, "lon": 27.14 }, "destination": { "name": "Kars", "lat": 40.60, "lon": 43.10 }, "nights": 5, "travelers": 2 } }'

Örnek yanıt

{"type":"progress","event":{"id":"route","icon":"route","title":"Rota hazır","detail":"1.786 km · 19 sa 52 dk sürüş","status":"done"}}
{"type":"progress","event":{"id":"night-1","icon":"moon","title":"Yolda konaklama: Bolu","status":"done"}}
{"type":"progress","event":{"id":"price-10","icon":"hotel","title":"Kars: fiyatlar hazır","detail":"Otel ~3.348 TRY/gece","status":"done"}}
{"type":"progress","event":{"id":"total","icon":"sum","title":"Toplam: 78.123 TRY","status":"done"}}
{"type":"done","id":null,"result":{ "…": "…" }}
GET/plans/{id}Okuma · 120/dk

Kayıtlı plan

Paylaşılan bir planın girdisi ve sonucu. Gizli planlar yalnızca sahibine döner.

Parametreler

  • idyol · stringzorunlu

    Plan kimliği

curl "https://dolasiyo.com/api/v1/plans/Ab3dE6gH9k" \
  -H "Authorization: Bearer $DOLASIYO_API_KEY"

Örnek yanıt

{ "data": { "id": "Ab3dE6gH9k", "title": "Ankara → Göreme · 3 gece", "input": { "…": "…" }, "result": { "…": "…" }, "createdAt": "2026-09-26T10:00:00.000Z" } }
GET/plans/{id}/insightsOkuma · 120/dk

Gün gün program, hava ve kalabalık

Planın seyahat tarihleri için gün gün aktiviteler, hava tahmini (15 gün içindeyse gerçek tahmin, değilse geçen yılın aynı günleri) ve tatil/bayram kaynaklı kalabalık seviyesi.

Parametreler

  • idyol · stringzorunlu

    Plan kimliği

curl "https://dolasiyo.com/api/v1/plans/Ab3dE6gH9k/insights" \
  -H "Authorization: Bearer $DOLASIYO_API_KEY"

Örnek yanıt

{ "data": { "startDate": "2026-10-03", "endDate": "2026-10-06", "assumedDates": false, "days": [{ "day": 1, "date": "2026-10-03", "weekday": "Cumartesi", "kind": "travel", "title": "Ankara → Göreme", "activities": ["…"], "tips": ["…"], "weather": { "label": "Az bulutlu", "emoji": "🌤️", "tMax": 21, "tMin": 9, "rain": 10, "rainUnit": "%", "source": "forecast" }, "crowd": { "level": 3, "label": "Orta", "reasons": ["Hafta sonu"] } }] } }

Sistem

GET/healthOkuma · 120/dk

Servis durumu

Uptime izlemesi için. `status` alanı `ok` ya da `degraded` olur.

curl "https://dolasiyo.com/api/v1/health" \
  -H "Authorization: Bearer $DOLASIYO_API_KEY"

Örnek yanıt

{ "data": { "status": "ok", "version": "1" } }

Oturum gerektiren uç noktalar

Bunlar web sitesinin kendisi içindir; tarayıcı oturumu (çerez) ve aynı kaynak (Origin) ister, API anahtarıyla çalışmaz.

  • GET/me/plansKullanıcının planları
  • GET/community-plans/{slug}Topluluk planı: yol, maliyet ve yazarın notları
  • GET/auth-configHangi giriş yöntemleri açık (kodla giriş, şifre sıfırlama, `social`: Apple / Google ve Google istemci kimlikleri)
  • GET/POST/me/adventuresSerüvenleri listele / plandan serüven başlat (`checklist` ile plan sayfasındaki işaretler taşınır)
  • GET/PATCH/DELETE/me/adventures/{id}Serüven: adım işaretle, başlat, bitir, sil
  • POST/me/adventures/{id}/memoriesSerüvene anı ekle (`{ text?, place?, day?, mood?, photoIds? }`; metin ya da en az bir fotoğraf)
  • PATCH/DELETE/me/adventures/{id}/memories/{memoryId}Anıyı düzenle (`photoIds` sıralı listenin tamamı; çıkarılan fotoğraflar silinir) / anıyı fotoğrafları ve paylaşımıyla sil
  • POST/me/adventures/{id}/memories/photosAnı fotoğrafı yükle: istek başına tek dosya (multipart `file` ya da ham image/*, en fazla 10 MB; saatte 60, hesap başına 500). WebP 1080 + 320, EXIF/GPS silinir
  • DELETE/me/adventures/{id}/memories/photos/{photoId}Yüklenen anı fotoğrafını sil (dosyalar da silinir)
  • POST/DELETE/me/memories/{id}/shareAnıyı gönderi olarak paylaş / kitlesini değiştir (`{ visibility: public|followers|private, caption? }`) / paylaşımı kaldır
  • GET/posts/{id}Gönderi (görme izni yoksa 404)
  • GET/PUT/DELETE/posts/{id}/likeGönderi beğenisi: durum / beğen / geri al
  • GET/POST/posts/{id}/commentsGönderi yorumları (`?cursor=`) / yorum ya da yanıt yaz (`{ body, parentId? }`, saatte 20)
  • PATCH/DELETE/posts/{id}/comments/{commentId}Kendi yorumunu düzenle (ilk 15 dk) / sil (yorum ya da gönderi sahibi)
  • POST/posts/{id}/comments/{commentId}/reportGönderi yorumunu bildir (`{ reason }`)
  • POST/posts/{id}/reportGönderiyi bildir (`{ reason }`)
  • GET/feed/followingAkış: takip ettiklerinin (ve kendi) paylaşımları, `?cursor=`
  • GET/users/{username}Profil: ad, bio, fotoğraf, gizlilik, sayılar (takipçi/takip/anı/yer/rozet), ilişki (self|blocked|following|pending|none), canView
  • GET/users/{username}/postsProfil gönderi ızgarası (`?cursor=`); gizli hesapta takip etmeyene `locked: true`
  • GET/users/{username}/visitsProfilin gezdiği yerler (görünürlük ayarına göre, yoksa 403)
  • GET/users/{username}/badgesProfilin rozet rafı (görünürlük ayarına göre, yoksa 403)
  • GET/users/{username}/boardsProfilin panoları (görebildiklerin)
  • GET/users/{username}/followers, /followingTakipçiler / takip edilenler (gizli hesapta yalnızca takipçilere)
  • GET/plans/{id}/adventurePlanın serüven listesi (girişsiz kısmi önizleme)
  • GET/PATCH/plans/{id}/checklistRezervasyon ve hazırlık listesi (bilet seçenekleri, konaklama, hazırlık); plan sahibi `{ stepId, done?, selected? }` ile işaretler
  • GET/plans/{id}/insights/liveGün gün programın güncel yer önerileriyle zenginleşmiş hâli (`status`: ready / pending / off)
  • PUT/DELETE/destinations/{slug}/saveRotayı kaydet / çıkar
  • POST/plans/{id}/emailPlanı kendi e-postana gönder
  • POST/prices/researchCanlı fiyat araştırması (doğrulanmış hesap)
  • GET/PATCH/me/profileProfil ve gizlilik ayarları (GET ayrıca `hasPassword` ve bağlı giriş yöntemleri `signInMethods`)
  • POST/me/apple-authorizationUygulama: Apple `authorizationCode`'unu (`{ code }`) sunucuda takasla; hesap silinince Apple erişimi iptal edilir
  • POST/DELETE/me/avatarProfil fotoğrafı yükle (multipart `file` ya da ham image/*, en fazla 5 MB; saatte 10) / kaldır
  • GET/PUT/me/newsletterHaftalık bülten tercihi
  • GET/POST/me/api-keysAPI anahtarlarını listele / oluştur
  • DELETE/me/api-keys/{id}API anahtarını iptal et
  • POST/newsletterBülten aboneliği (çift onay)
  • GET/POST/me/shared-plansTopluluk planlarım / kendi planını paylaş (taslak ya da incelemeye gönder)
  • PATCH/DELETE/me/shared-plans/{id}Topluluk planını düzenle (yayındaysa yeniden incelemeye girer) / sil
  • PUT/DELETE/me/shared-plans/{id}/publishTopluluk planını incelemeye gönder / yayından kaldır
  • POST/community-plans/{slug}/saveTopluluk planının kopyasını planlarına kaydet
  • GET/PUT/DELETE/community-plans/{slug}/likeTopluluk planı beğenisi: durum / beğen / beğeniyi geri al
  • GET/POST/community-plans/{slug}/commentsYorumlar (`?cursor=`, herkese açık) / yorum ya da yanıt yaz (`{ body, parentId? }`, saatte 20)
  • PATCH/DELETE/comments/{id}Kendi yorumunu düzenle (ilk 15 dk) / sil (yorum sahibi ya da plan sahibi)
  • POST/comments/{id}/reportYorumu editörlere bildir (`{ reason }`, yorum başına bir kez)
  • GET/admin/shared-plansYönetim: topluluk planı inceleme kuyruğu (doğrulanmış yönetici)
  • POST/admin/shared-plans/{id}Yönetim: topluluk planını onayla / reddet
  • POST/admin/comments/{id}Yönetim: yorumu gizle / sil / geri al, bildirimleri kapat
  • POST/admin/posts/{id}Yönetim: anı gönderisini gizle / geri al / sil, bildirimleri kapat
  • POST/admin/post-comments/{id}Yönetim: gönderi yorumunu gizle / sil / geri al, bildirimleri kapat

Kullanım koşulları

  • Verileri gösterdiğin yerde “Kaynak: dolasiyo.com” bağlantısı ver. Fotoğrafların lisansları (Wikipedia/Wikimedia) ve harita verisi (© OpenStreetMap katkıcıları) kendi atıflarını gerektirir; credit alanını göster.
  • Fiyatlar tahmindir; kullanıcılarına “tahmini” olarak sun, rezervasyon ya da ödeme vaadi gibi gösterme.
  • Toplu veri çekmek, veri setini yeniden satmak ya da rakip bir veri tabanı kurmak yasaktır. Yanıtları en fazla 24 saat önbellekle.
  • Sınırları aşmak için birden çok anahtar ya da hesap kullanmak anahtarların iptaline yol açar.
  • Kişisel veriler (kullanıcı planları, profiller) yalnızca sahibinin izniyle ve KVKK kapsamında işlenebilir.
  • Hizmet “olduğu gibi” sunulur; kesintisiz çalışma garantisi verilmez. Koşullar bu sayfada güncellenir.

Daha yüksek kota, özel entegrasyon ya da iş birliği için: [email protected] · WhatsApp +90 543 313 35 26

Dolaşıyo Bülteni

Yeni rotalar, sezon fiyatları ve bütçe dostu seyahat fikirleri haftada bir e-posta kutunda.