API Dokümantasyonu
WebToolSolutions REST API'si — Pro ve Sınırsız planlar için.
Kimlik Doğrulama
Her isteğe API anahtarınızı header olarak ekleyin:
X-API-Key: wts_live_xxxxxxxxxxxxxxxxxxxxAnahtar oluşturmak için: /dashboard/api-keys
Base URL
https://api.webtoolsolutions.org/v1Modülleri Listele
GET /v1/modules
curl -H "X-API-Key: wts_live_..." \
https://api.webtoolsolutions.org/v1/modulesİşlem Başlat (Dosya Yükleme)
POST /v1/modules/{moduleId}/process
curl -H "X-API-Key: wts_live_..." \
-F "file=@document.pdf" \
-F "preserve_formatting=true" \
https://api.webtoolsolutions.org/v1/modules/pdf-to-word/process
# Response:
{
"success": true,
"data": {
"jobId": "job_01HXYZ...",
"status": "PENDING",
"pollUrl": "/v1/jobs/job_01HXYZ..."
}
}İşlem Durumu Sorgula
GET /v1/jobs/{jobId}
curl -H "X-API-Key: wts_live_..." \
https://api.webtoolsolutions.org/v1/jobs/job_01HXYZ...
# When completed:
{
"success": true,
"data": {
"jobId": "...",
"status": "COMPLETED",
"progress": 100,
"result": {
"downloadUrl": "https://cdn.webtoolsolutions.org/...",
"filename": "document.docx",
"fileSizeBytes": 245760,
"expiresAt": "..."
}
}
}WebSocket ile Canlı İlerleme
ws://api.webtoolsolutions.org/v1/ws?jobId=job_01HXYZ...
// Message types:
{ "type": "progress", "percent": 65, "message": "Converting pages..." }
{ "type": "completed", "result": {...} }
{ "type": "failed", "error": {...} }Webhook'lar
İşlem tamamlandığında ya da başarısız olduğunda kayıtlı URL'inize POST atılır.
POST {your_webhook_url}
X-WTS-Signature: sha256=...
X-WTS-Event: job.completed
{
"event": "job.completed",
"jobId": "...",
"result": {...},
"timestamp": "..."
}Hesabım → Webhook'lar sayfasından yönetin.
Hata Kodları
- 401 AUTH_REQUIRED
- 402 PLAN_REQUIRED
- 413 FILE_TOO_LARGE
- 415 FILE_TYPE_INVALID
- 422 VALIDATION_ERROR
- 429 QUOTA_EXCEEDED / RATE_LIMIT_EXCEEDED
Rate Limit
- Pro: 600 req/min · 200 jobs/day
- Unlimited: 1200 req/min · unlimited jobs