TT Self
TT Self / Developers
Developer documentation

LINE otomasyonunu kendi uygulamana bağla.

QR/PIN oturumu oluştur, kullanıcıyı doğrula, mesaj ve medya gönder, SYNC4 olaylarını al ve özel Flex içeriklerini tek API üzerinden yönet.

Base URLhttps://ttcoreweb.com/line-api/v1

Hızlı başlangıç

Her kullanıcı kendi izole oturumunu oluşturur. İlk yanıttaki session_id URL'de, session_token ise Authorization başlığında kullanılır.

1Oturum oluşturPOST isteğiyle QR girişini başlat.
2QR'ı gösterqr_url adresini kullanıcıya aç.
3Durumu izleready olana kadar status isteği yap.
4API'yi kullanToken ile mesaj, medya ve Flex gönder.
cURL · tam giriş akışı
# 1. Oturum oluştur
curl -X POST https://ttcoreweb.com/line-api/v1/sessions

# 2. Yanıttaki değerleri sakla
SESSION_ID="yanittaki_session_id"
TOKEN="yanittaki_session_token"

# 3. QR / PIN durumunu kontrol et
curl -H "Authorization: Bearer $TOKEN" \
  "https://ttcoreweb.com/line-api/v1/sessions/$SESSION_ID"

# 4. QR görselini indir
curl -H "Authorization: Bearer $TOKEN" \
  "https://ttcoreweb.com/line-api/v1/sessions/$SESSION_ID/qr.svg" \
  -o line-qr.svg
/line-api/ web arayüzündeki QR düğmesi özellikle bot_enabled:true gönderir ve hesabı API'nin hazır SelfBot'una bağlar. Dokümantasyondan veya harici koddan oluşturulan oturumlar varsayılan olarak bot_enabled:false kullanır; böylece Hüso.py ya da kendi botunuz SYNC olaylarını tüketebilir. LINE erişim tokeni istemciye verilmez; yalnızca kapsamı bu oturumla sınırlı API tokeni kullanılır.
Önemli: session_token yalnızca oluşturulurken gösterilir. Tarayıcıya açık JavaScript'e, loglara veya Git deposuna yazmayın; sunucu tarafında şifreli saklayın.

Kimlik doğrulama

Oturum oluşturma dışındaki oturum endpointleri Bearer token ister. Web arayüzü aynı bilgiyi güvenli, HttpOnly oturum çereziyle kullanır.

Authorization: Bearer <session_token>
Her token yalnızca kendi session_id değeriyle çalışır. Başka bir oturum kimliğiyle kullanılırsa API 401 invalid_session döndürür.

Oturum ve QR

Kullanıcının LINE hesabını bağlayan giriş yaşam döngüsü.

POST/sessions

Yeni QR/PIN oturumu oluşturur

Auth gerekmez201 CreatedRate limitProxy auto
Harici istemci gövdesi
{"bot_enabled": false, "proxy_mode": "auto"}

proxy_mode: auto her LINE oturumuna sunucu tarafında farklı ve sabit bir proxy tahsis eder. Proxy adresi, kullanıcı adı ve parolası API yanıtlarında gösterilmez.

Yanıt
{
  "session_id": "...",
  "session_token": "...",
  "status_url": "/line-api/v1/sessions/...",
  "qr_url": "/line-api/v1/sessions/.../qr.svg",
  "qr_png_url": "/line-api/v1/sessions/.../qr.png",
  "expires_at": 1786230000
}
GET/sessions/{session_id}

QR, PIN ve bağlantı durumunu döndürür

status değeri starting, qr, pin, ready veya hata durumu olabilir.

Bearer gerekli200 OK
GET/sessions/{session_id}/qr.svg

Güncel QR görselini döndürür

Bearer gerekliimage/svg+xml409 QR hazır değil
GET/proxies/status

Proxy havuzunun güvenli özetini döndürür

Toplam, sağlıklı, boşta, atanmış ve sorunlu proxy sayılarını gösterir. Bağlantı bilgileri açıklanmaz.

GET/sessions/{session_id}/proxy

Oturuma atanmış proxy durumunu döndürür

Bearer gerekliKimlik bilgileri gizli
DELETE/sessions/{session_id}

Oturumu ve saklanan erişimi siler

Bearer gerekli200 OK

Hesap, sohbetler ve SYNC4

GET/sessions/{session_id}/profile

Bağlı LINE profilini getirir

MID, görünen ad ve durum mesajını döndürür.

GET/sessions/{session_id}/chats

Grup ve sohbet listesini getirir

Her öğede MID, ad, sohbet türü, üyeler, davetliler, kurucu ve bilet durumu bulunur.

GET/sessions/{session_id}/sync

Bir SYNC4 olay grubunu alır

En fazla 100 operasyon ve güncel revision değeri döner. Sürekli dinleme için kontrollü aralıklarla çağırın.

Mesaj gönderme

Metin, reply ve mention aynı endpoint üzerinden gönderilir.

POST/sessions/{session_id}/messages

Metin mesajı gönderir

Bearer gerekliapplication/json1–5000 karakter
cURL · reply ve mention
curl -X POST \
  "https://ttcoreweb.com/line-api/v1/sessions/$SESSION_ID/messages" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "c_grup_mid",
    "text": "Merhaba @Turan",
    "reply_to": "opsiyonel_mesaj_id",
    "mentions": [{"mid": "u_kullanici_mid", "start": 8, "end": 14}]
  }'

start ve end, metindeki mention bölümünün karakter konumlarıdır. reply_to verilmezse normal mesaj gönderilir.

Gelişmiş işlemler

Mesaj tepkileri, grup düzenleme, gelişmiş okuyucu aralıkları, eski tip odalar ve grup arama bağlantıları.

POST/sessions/{session_id}/reactions

Mesaj tepkisi ekler veya kaldırır

{"message_id":"123", "reaction":"love"}
{"message_id":"123", "cancel":true}
POST/sessions/{session_id}/messages/silent-unsend

Sahibine ait mesajı sessiz geri alır

{"message_id":"123"}
POST/sessions/{session_id}/chats

Grup oluşturur

{"name":"Yeni grup", "member_mids":["u..."]}
POST/sessions/{session_id}/chats/{chat_mid}

Grup adı veya LINE picture_path değerini değiştirir

{"name":"Yeni ad"}
POST/sessions/{session_id}/read-ranges

Seçili sohbetlerin gelişmiş okuma aralıklarını getirir

{"chat_ids":["c..."]}
POST/sessions/{session_id}/rooms

Eski tip oda oluşturur

GET /rooms/{room_mid}, POST /rooms/{room_mid}/invite ve DELETE /rooms/{room_mid} işlemleri de desteklenir.

GET/sessions/{session_id}/call-urls

Grup arama bağlantılarını listeler

Aynı yol üzerinde oluşturma; /{url_id} ile bilgi, güncelleme ve silme; /{url_id}/join ile katılım yapılır.

GET/sessions/{session_id}/active-call/{chat_mid}

Aktif grup araması bilgisini getirir

Arama durumu, başlatan kişi, katılımcılar, başlangıç zamanı, medya türü ve kapasite bilgisini döner.

POST/sessions/{session_id}/active-call/{chat_mid}/kick

Aktif grup aramasından kullanıcı çıkarır

JSON gövdesinde member_mids dizisi gönderilir.

POST/sessions/{session_id}/reports

Kötüye kullanım raporu gönderir

{"message_id":"123", "sender_mid":"u...", "reason":"reklam"}

Yalnızca doğrulayabildiğiniz gerçek kötüye kullanım olaylarında kullanın.

Medya

Yerel dosya, herkese açık HTTPS adresi veya YouTube videosu gönderebilirsiniz.

POST/sessions/{session_id}/media

İkili dosyayı doğrudan gönderir

X-Line-ToX-Media-TypeX-FilenameBinary body
cURL · resim yükleme
curl -X POST \
  "https://ttcoreweb.com/line-api/v1/sessions/$SESSION_ID/media" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/octet-stream" \
  -H "X-Line-To: c_grup_mid" \
  -H "X-Media-Type: image" \
  -H "X-Filename: fotograf.jpg" \
  --data-binary "@fotograf.jpg"

Limitler: resim/GIF 15 MB, ses 50 MB, dosya 100 MB, video 200 MB.

POST/sessions/{session_id}/media-url

HTTPS adresindeki medyayı gönderir

JSON body
{"to":"c_grup_mid", "media_type":"image", "url":"https://example.com/a.jpg"}
POST/sessions/{session_id}/youtube

Tek bir YouTube videosunu gönderir

JSON body
{"to":"c_grup_mid", "url":"https://youtu.be/..."}

Oynatma listeleri desteklenmez.

GET/sessions/{session_id}/media/{message_id}

Mesaja bağlı medyayı indirir

Yanıt JSON değil, dosyanın gerçek binary içeriğidir.

Profil ve kişiler

POST/sessions/{session_id}/profile-image

Profil fotoğrafını günceller

Binary bodyX-FilenameEn fazla 15 MB
POST/sessions/{session_id}/profile-cover

Profil kapak görselini günceller

Binary bodyX-FilenameEn fazla 15 MB
GET/sessions/{session_id}/contacts/{mid}

Kişi bilgilerini getirir

MID, görünen ad, durum mesajı ve profil bilgileri döner.

POST/sessions/{session_id}/contacts/add

Uygun LINE kullanıcısını arkadaş ekler

Hedef kişi aynı grupta bulunmalı veya LINE arkadaş önerilerinde görünmelidir. LINE protokol ayrıntıları sunucuda tutulur; istemci yalnızca aşağıdaki güvenli API sözleşmesini kullanır.

JSON body · ortak grup
{
  "mid": "u_kullanici_mid",
  "source": "group",
  "chat_mid": "c_grup_mid"
}
JSON body · arkadaş önerisi
{
  "mid": "u_kullanici_mid",
  "source": "recommendation"
}

Sunucu hedefin seçilen kaynak için uygunluğunu doğrular. Uygun değilse yanıt kodu: 422 invalid_friend_source.

Flex mesajları

Hazır TT Self şablonlarını veya kendi geçerli LINE Flex bubble/carousel JSON'unuzu gönderin.

POST/sessions/{session_id}/flex

Flex mesajı gönderir

Hazır şablon
curl -X POST \
  "https://ttcoreweb.com/line-api/v1/sessions/$SESSION_ID/flex" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "c_grup_mid",
    "template": "profile",
    "data": {"title": "TT Self"},
    "alt_text": "Profil kartı"
  }'
Özel Flex
{
  "to": "c_grup_mid",
  "alt_text": "Bildirim",
  "contents": {"type": "bubble", "...": "..."}
}
GET/sessions/{session_id}/flex/templates

Kullanılabilir hazır şablonları listeler

Menü, profil, grup ve API kartlarının kullanılabilir adlarını döndürür.

SelfBot kontrolü

POST/sessions/{session_id}/bot

Kalıcı SelfBot'u başlatır veya durdurur

JSON body
{"enabled": true}

Oturum henüz ready değilse 409 session_not_ready döner.

Yanıt ve hata kodları

Başarısız yanıtlar {"error": {...}} biçiminde JSON döndürür.

200 / 201İstek başarıyla tamamlandı.
400 / 422JSON, alan veya dosya geçersiz.
401Token ya da oturum geçersiz.
409LINE veya QR henüz hazır değil.
429İstek sınırına ulaşıldı.
502 / 503LINE yanıtı veya medya kapasitesi sorunu.
API'yi yalnızca sahibi olduğunuz veya yönetme izniniz bulunan LINE hesapları ve sohbetlerde kullanın.