📸🎥

Screenshot & Screen Recording API

URL & Ham HTML Ekran Görüntüsü ve Video Kayıt Servisi

⚡ URL veya Doğrudan HTML'den Görsel & Video Kaydı

Web & HTML Ekran Görüntüsü ve Video Kayıtlarını Anında Alın

Canlı bir web sitesinin veya doğrudan POST ettiğiniz ham HTML kodunun ekran görüntüsünü (PNG, JPEG, WEBP) veya akıcı video kaydını (MP4, WebM, GIF, Smooth Auto-scroll) yüksek performansla elde edin.

🧪 Canlı Test Alanı (Playground)
1. İşlem Türü Seçin
2. Giriş Kaynağı Seçin
⚙️ Gelişmiş Parametreler (Advanced Options)
✓ İşlem Başarıyla Tamamlandı İndir 📥
🔐 Kimlik Doğrulama (Auth)

Sunucuda API_KEY ortam değişkeni tanımlandığında isteklerinizde aşağıdaki başlıklardan birini göndermeniz gerekmektedir:

Header Yapısı
X-API-Key: YOUR_SECRET_API_KEY
# veya
Authorization: Bearer YOUR_SECRET_API_KEY
🔌 API Endpoint'leri
POST /screenshot
URL veya JSON HTML Görseli
POST /html
Doğrudan HTML Post Görseli
POST /record (veya /video)
URL & HTML Video/GIF Kaydı
POST /html/record
Doğrudan HTML Video Kaydı
GET /up (veya /health)
Health Status
GET /
Dokümantasyon & Playground
📋 İstek Parametre Referansı

İsteklerinizi application/json, application/x-www-form-urlencoded veya text/html gövdesiyle gönderebilirsiniz.

Parametre Tip Zorunlu? Varsayılan Açıklama
url string Opsiyonel* - Hedef web sitesi adresi (örn: https://tunahancaliskan.com).
html string Opsiyonel* - Doğrudan render edilecek ham HTML dizesi (CSS ve stilleri içerebilir).
duration number Hayır 5 Video kayıt süresi saniye cinsinden (1 ile 60 saniye arası).
fps number Hayır 30 Video kare hızı (1 ile 60 FPS arası).
format string Hayır png / mp4 Screenshot için: png, jpeg, webp.
Video kaydı için: mp4, webm, gif.
scroll boolean Hayır false Video kaydı sırasında sayfayı yumuşak bir şekilde aşağı kaydırmak için true verin.
element string Hayır null Spesifik bir DOM öğesini yakalamak için CSS seçicisi (örn: .hero, #card).
fullPage boolean Hayır false Screenshot için tüm sayfayı kaydırarak yakalamak için true verin.
quality number Hayır - JPEG/WEBP veya video sıkıştırma kalitesi (1 - 100 arası).
width number Hayır 1920 Tarayıcı ekran çözünürlüğü genişliği (piksel).
height number Hayır 1080 Tarayıcı ekran çözünürlüğü yüksekliği (piksel).
deviceScaleFactor number Hayır 1 Retina / HiDPI ekran ölçekleme katsayısı.
delay number Hayır 0 Çekim/kayıt öncesi bekleme süresi (milisaniye cinsinden, maks 10000ms).
waitForSelector string Hayır - DOM'da belirmesi beklenecek CSS element seçicisi.
clickSelector string Hayır - Kayıt başlamadan önce tıklanacak CSS element seçicisi.
darkMode boolean Hayır - Karanlık mod temasını simüle etmek için true / false verin.
headers object Hayır - Sayfa isteğinde gönderilecek özel HTTP başlıkları (örn: {"User-Agent": "..."}).
cookies array Hayır - Sayfa yüklenirken ayarlanacak cookie listesi.
userAgent string Hayır - Özel User-Agent dizesi tanımlamak için.

* url veya html parametrelerinden en az birinin belirtilmesi zorunludur.

💻 Entegrasyon Kod Örnekleri
cURL — Ekran Görüntüsü Alma (URL & Ham HTML)
# 1. URL'den Ekran Görüntüsü Alma
curl -X POST http://localhost:3000/screenshot \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY" \
  -d '{
    "url": "https://tunahancaliskan.com",
    "format": "webp",
    "fullPage": false
  }' \
  --output screenshot.webp

# 2. Doğrudan HTML POST ile Ekran Görüntüsü Alma
curl -X POST http://localhost:3000/screenshot \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY" \
  -d '{
    "html": "

Merhaba Dünya 🚀

", "format": "png" }' \ --output html_screenshot.png