TL;DR / Hızlı Cevap
Sent.dm API'si, SMS ve WhatsApp üzerinden iş mesajlaşması için tek bir entegrasyon noktası sunar. Sent'i Apidog ile entegre ederek kimlik bilgilerinizi ortamlarda yönetebilir, betik yazmadan istekleri test edebilir, webhook yüklerini doğrulayabilir ve mesajlaşma iş akışınızı tek noktada belgeleyebilirsiniz.
Giriş
Çoğu mesajlaşma projesinde yavaşlama noktası API'nin karmaşıklığından değil, operasyonel detayların birikmesinden kaynaklanır. API anahtarları, gönderen kimliği, şablon kimlikleri, webhook güvenliği ve kanal kuralları gibi unsurların yanı sıra, gerçek mesajları göndermeden önce test edilebilecek temiz bir yol gereklidir.
Sent.dm, SMS ve WhatsApp gibi kanallar için birleşik bir mesajlaşma API'si sunar. Yönlendirme ve teslimat mantığı tek bir geliştirici arayüzüyle yönetilir. Platform; hesap doğrulaması, kanal kurulumu, şablon tabanlı gönderim, kişiler, webhook olayları ve test için bir gösterge paneli içerir.
💡 Daha az sorunla kurulum yapmak için Apidog kullanabilirsiniz. Sent API referansını içe aktarın, x-api-key ve x-sender-id için ortamlar oluşturun, mesaj oluşturma ve webhook işlemleri için test senaryoları geliştirin, koleksiyonları ekibinizle paylaşın.
Sent.dm API'si Ne Çözüyor?
Sent.dm ile ayrı entegrasyonlar yönetmek zorunda kalmadan birden fazla mesajlaşma kanalında kullanıcılarınıza ulaşabilirsiniz. SMS API'leri, WhatsApp katılımı, kanal tabanlı yükler ve teslimat takibini tek platformda konsolide eder.
Resmi belgelere göre öne çıkanlar:
- Mesajlaşma iş akışları için tek bir API temel URL'si
-
x-api-keyile başlık tabanlı kimlik doğrulama -
x-sender-idiçeren gönderen kimliği modeli - Şablon tabanlı mesaj gönderimi
- Kişi ve hedef kitle yönetimi
- Teslimat/şablon olayları için webhook'lar
- Akıllı yönlendirme ve hata durumunda yedekleme
Bu kombinasyon, mesajlaşma sistemlerinin sadece "mesaj gönder"den ibaret olmadığını gösterir. Ayrıca:
- Tutarlı payload yapısı,
- Şablonları güvenli şekilde tekrar kullanma,
- Teslimat/başarısızlık/kuyruklanma olaylarının takibi,
- Sırların ön uçtan izole edildiği test iş akışı,
- Geliştiriciler ve QA için gerçek belgeler
gerekir.
Birçok parçanın farklı araçlarda olması hata ayıklamayı zorlaştırır. Tüm akışı baştan itibaren Apidog gibi bir API platformunda modellemek bu riski azaltır.
Sent.dm API'si Nasıl Çalışır?
Sent, uygulamanız ile mesajlaşma kanalları arasında akıllı bir ara katman olarak çalışır. Uygulamanız bir istek gönderir, Sent en uygun teslimat yolunu seçer.
Geliştirici için kritik noktalar:
1. Hesap ve Uyumluluk Kurulumu
İlk adımda hesap açılır, KYC doğrulaması yapılır ve işletme kurulumu tamamlanır. Mesajlaşma ürünlerinde uyumluluk ve gönderen itibarı kritik olduğundan bu adımlar zorunludur.
2. Kanal Kurulumu
Telefon numarası seçme ve WhatsApp Business bağlama işlemleri yapılır. Belgeler, marka tutarlılığı için aynı numaranın kullanılmasını önerir.
3. Şablonlar
Şablonlar zorunludur; ilk API isteğinden önce şablon oluşturmalısınız.
4. API Kimlik Bilgileri
Gerekli başlıklar:
x-sender-id: YOUR_SENDER_ID
x-api-key: YOUR_API_KEY
v3 API'de x-api-key zorunludur, örneklerde ayrıca x-sender-id de geçer. Uç noktaların sürümünü ve başlık gereksinimlerini Sent panelinden doğrulayın.
5. Mesaj İsteği
Başlangıç için örnek:
POST https://api.sent.dm/v2/messages/phone
JSON yükü:
{
"phoneNumber": "RECIPIENT_PHONE_NUMBER",
"templateId": "TEMPLATE_ID"
}
İlk hedef; şablon tabanlı gönderimi kurmak, sonra istek/teslimat davranışını gözlemleyerek iş akışını genişletmektir.
İlk Sent.dm API İsteğinizi Gönderin
İşte temel örnekler:
cURL
curl -X POST "https://api.sent.dm/v2/messages/phone" \
-H "x-sender-id: YOUR_SENDER_ID" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"phoneNumber": "RECIPIENT_PHONE_NUMBER",
"templateId": "TEMPLATE_ID"
}'
JavaScript
const response = await fetch("https://api.sent.dm/v2/messages/phone", {
method: "POST",
headers: {
"x-sender-id": process.env.SENT_SENDER_ID,
"x-api-key": process.env.SENT_API_KEY,
"Content-Type": "application/json"
},
body: JSON.stringify({
phoneNumber: process.env.TEST_PHONE_NUMBER,
templateId: process.env.SENT_TEMPLATE_ID
})
});
if (!response.ok) {
throw new Error(`Sent request failed: ${response.status}`);
}
const data = await response.json();
console.log(data);
Python
import os
import requests
response = requests.post(
"https://api.sent.dm/v2/messages/phone",
headers={
"x-sender-id": os.environ["SENT_SENDER_ID"],
"x-api-key": os.environ["SENT_API_KEY"],
"Content-Type": "application/json",
},
json={
"phoneNumber": os.environ["TEST_PHONE_NUMBER"],
"templateId": os.environ["SENT_TEMPLATE_ID"],
},
timeout=30,
)
response.raise_for_status()
print(response.json())
Başarılı bir yanıt HTTP 200 ve bir messageId döndürür. Bu messageId; Apidog testleri, uygulama logları ve webhook eşleştirmede kullanılmalıdır.
Sent.dm API'sini Apidog'da Test Edin
Apidog, mesajlaşma API'leri için sadece istek gönderici değil; değişkenler, test iddiaları, dokümantasyon ve ekip devri imkanı sunar.
Adım 1: Sent Ortamı Oluşturun
Apidog'da ortam değişkenleri oluşturun:
base_url = https://api.sent.dm
sender_id = YOUR_SENDER_ID
api_key = YOUR_API_KEY
template_id = YOUR_TEMPLATE_ID
test_phone = RECIPIENT_PHONE_NUMBER
Böylece:
- Üretim sırlarını kodda sabit tutmazsınız.
- Farklı ortamlar arası hızla geçiş yaparsınız.
- Ekip arkadaşlarınız koleksiyonu kendi değerleriyle kullanabilir.
Adım 2: İsteği Oluşturun
Yeni bir istek:
- Metot:
POST - URL:
{{base_url}}/v2/messages/phone - Headerlar:
x-sender-id: {{sender_id}}x-api-key: {{api_key}}Content-Type: application/json
- Gövde:
{
"phoneNumber": "{{test_phone}}",
"templateId": "{{template_id}}"
}
Bu yapı, tek seferlik terminal testlerinden daha sürdürülebilirdir.
Adım 3: İddialar Ekleyin
Başarı kontrolü için örnekler:
pm.test("Status is 200", function () {
pm.response.to.have.status(200);
});
pm.test("Response contains a messageId", function () {
const json = pm.response.json();
pm.expect(json.messageId).to.exist;
});
API'de bir değişiklik veya kimlik bilgisi hatası sonrası anında sonuç alırsınız.
Adım 4: Senaryo Oluşturun
Çok adımlı iş akışı:
- Mesaj gönderin
- Dönen
messageId'yi saklayın - Alt akış durumunu sorgulayın (mümkünse)
- Webhook olaylarını karşılaştırın
Yalnızca POST'un başarılı olması yeterli değildir; teslimat, onay, olay tutarlılığı da izlenmelidir.
Adım 5: Webhook Örneklerini Ekleyin
Webhook olayları için Apidog koleksiyonunuza örnek yükler ekleyin:
{
"field": "message.status",
"messageId": "msg_123",
"status": "delivered",
"channel": "whatsapp"
}
Bu, giden ve gelen iş akışlarını tek yerde toplar.
Adım 6: Dahili Belgeleri Yayınlayın
Arka uç, QA, destek ve ürün ekipleri için belge paylaşımı:
- Gerekli başlıklar
- Örnek yükler
- Hata yanıtları
- Webhook örnekleri
- Ortam notları
Bu, sadece kod parçacığı paylaşmaktan çok daha verimlidir.
Şablonları, Kişileri ve Webhook'ları Doğru Yönetin
Şablonlar
- Şablon kimliklerini ortam/yapılandırmada saklayın
- Amaç, yerel ayar ve onay durumuna göre etiketleyin
- Test ve canlı şablonları ayırın
- Hangi şablonun hangi yolculuğa ait olduğunu belgeleyin
Apidog'da her şablon için örnek istekler oluşturun.
Kişiler
Kişiler, hedef kitle işlemleri ve iletişim geçmişi için gereklidir. Senkronizasyon mantığını net kurun:
- Doğruluk kaynağı hangi sistem?
- Telefonlar nasıl normalize ediliyor?
- Onay durumu nerede tutuluyor?
- Kişi kanal değiştirince ne oluyor?
Bu noktalar, teslimat ve uyumluluğu baştan etkiler.
Webhook'lar
Sent'in webhook'ları HMAC-SHA256 imzası ile doğrulanır:
x-webhook-signaturex-webhook-idx-webhook-timestamp
İmza formatı: v1,{base64_signature}, tekrar oynatma koruması için beş dakikalık zaman damgası.
Express.js ile örnek doğrulama:
import crypto from "crypto";
import express from "express";
const app = express();
app.post("/webhooks/sent", express.raw({ type: "*/*" }), (req, res) => {
const signature = req.header("x-webhook-signature");
const webhookId = req.header("x-webhook-id");
const timestamp = req.header("x-webhook-timestamp");
const secret = process.env.SENT_WEBHOOK_SECRET;
const rawBody = req.body.toString("utf8");
const signedContent = `${webhookId}.${timestamp}.${rawBody}`;
const expected = crypto
.createHmac("sha256", Buffer.from(secret.replace(/^whsec_/, ""), "base64"))
.update(signedContent)
.digest("base64");
if (signature !== `v1,${expected}`) {
return res.status(401).send("Unauthorized");
}
const event = JSON.parse(rawBody);
console.log("Received webhook event:", event.field);
return res.sendStatus(200);
});
Webhook yüklerini Apidog ile depolayın ve dokümante edin.
Apidog Bu İş Akışına Neden Uyar?
Sent.dm mesajlaşma katmanını sunarken, Apidog iş akışı katmanını tamamlar.
| Görev | Sent.dm | Apidog |
|---|---|---|
| SMS ve WhatsApp mesajı gönderme | Evet | Hayır, ama API'yi test eder |
| Şablon ve gönderen yönetimi | Evet | Belge ve doğrulama |
| Kimliği doğrulanmış istek testi | Sınırlı | Ortamlar, iddialar, senaryolar ile güçlü |
| API belgelerini ekiple paylaşma | Platform doküm. | Ekip koleksiyonları, jenerik belgeler |
| İstek/yanıt hata ayıklama | Kısmi | Tekrarlanabilir ve işbirliğine açık |
| Uçtan uca test senaryoları | Mesajlaşma odak | Çok adımlı API iş akışı testi |
Ekibinizde birden fazla geliştirici varsa, QA'nın özel betik yazmadan test yapmasını istiyorsanız veya sürüm/şablon değişikliklerini denemek istiyorsanız Apidog işbirliği ve otomasyon için avantaj sağlar.
Gelişmiş İpuçları ve Sık Yapılan Hatalar
En İyi Uygulamalar
- Kimlik bilgilerini yalnızca sunucu tarafında tutun.
- Uygulama loglarında
messageIdizleyin. - Hazırlık ve canlı şablonları ayırın.
- Her webhook'u işlemeden önce doğrulayın.
- Apidog ortamları ile canlı/test kimlik bilgilerini ayırın.
Kaçınılması Gereken Yaygın Hatalar
-
200cevabını nihai teslimat olarak değerlendirmek - Şablon kimliklerini farklı sistemlerde sabit kodlamak
- Gönderen kimliği kurulumunu ertelemek
- Telefon numarası normalizasyonunu atlamak
- Geçici betiklerde gerçek kimlik bilgileriyle test yapmak
Sorun Giderme İpuçları
Bir istek başarısızsa şunları kontrol edin:
-
x-api-keygeçerli ve aktif mi? - Kullandığınız uç nokta, Sent panelinizdeki sürümle uyuşuyor mu?
-
x-sender-idbu yol için gerekli mi? - Şablon onaylı ve doğru kanal için mi?
- Telefon numarası doğru formatta mı?
Apidog ile hatalı ve başarılı istekleri saniyeler içinde karşılaştırabilirsiniz.
Sent.dm Alternatifleri ve Karşılaştırmaları
Sent.dm dışında doğrudan sağlayıcılar, geniş iletişim platformları veya Postman gibi araçlar da seçeneklerinizdir. Temel fark; kontrol ile sadelik arasındadır. Test ve işbirliği katmanı, teslimat katmanı kadar önemlidir.
| Seçenek | Güçlü Yön | Dezavantaj |
|---|---|---|
| Doğrudan SMS + WhatsApp | İnce ayar kontrol | Fazla entegrasyon ve bakım |
| Twilio tarzı iletişim yığını | Geniş ekosistem | Çok kanallı orkestrasyonda daha fazla hareketli parça |
| Sent.dm | Kanal soyutlamalı birleşik iş akışı | Platform kurallarına/benzersiz belgelere bağlılık |
| Sent.dm + Postman | Tanıdık istek testi akışı | Dokümantasyon ve iş akışı daha parçalı |
| Sent.dm + Apidog | Güçlü API testi, dokümantasyon ve işbirliği | Bir yerine iki araç kullanımı |
En iyi çözüm; teslimat platformunu güçlü API işbirliği katmanıyla tamamlamaktır. Apidog'un avantajı; ortamlar, belgeler, iddialar, taklit planlama ve ekip devrini tek yerde toplamasıdır.
Sonuç
Sent.dm, SMS ve WhatsApp için birleşik mesajlaşma API'si isteyen ekipler için uygundur. En büyük avantajı, yalnızca mesaj göndermekle kalmayıp; şablon, gönderen kimliği, kişi ve webhook iş akışlarını yapılandırılmış şekilde test ve geliştirmeye olanak sağlamasıdır.
Daha hızlı ilerlemek için Apidog'da ilk Sent isteğinizi oluşturun, messageId için iddialar ekleyin, webhook sözleşmelerinizi aynı çalışma alanında belgeleyin. Böylece, dağınık betiklere bağımlılık olmadan prototipten üretime geçişinizi optimize edebilirsiniz.
SSS
Sent.dm API'si ne için kullanılır?
Sent.dm API'si; SMS ve WhatsApp gibi kanallar arasında tek entegrasyonla iş mesajlaşmasını yönetmek için kullanılır. Gönderen kurulumu, şablonlar, kişiler ve webhook tabanlı olay işleme desteklenir.
Sent.dm, WhatsApp ve SMS'i tek bir API'de destekliyor mu?
Evet. Sent, kanal bazlı karmaşıklığı tek entegrasyonun arkasında soyutlar. Aynı telefon numarasıyla SMS ve WhatsApp kullanımını önerir.
Sent.dm API istekleri için hangi başlıklara ihtiyacım var?
x-api-key zorunludur, örneklerde ayrıca x-sender-id yer alır. Üretime geçmeden önce Sent hesabınızdan uç nokta sürümünü teyit edin.
Sent.dm ile mesaj göndermeden önce şablonlara ihtiyacım var mı?
Evet, ilk mesaj için şablon oluşturmalı ve templateId ile göndermelisiniz.
Sent.dm API'sini özel betikler yazmadan nasıl test ederim?
Apidog ile kimlik bilgilerinizi ortam değişkeni olarak saklayabilir, mesaj isteklerini kaydedebilir, iddialar ekleyebilir, senaryolar oluşturabilir, webhook yüklerini belgeleyebilir ve ekibiniz için dahili API dokümantasyonu yayınlayabilirsiniz.
Sent.dm webhook'larını nasıl güvenli hale getirmeliyim?
HMAC imzasını doğrulayın, zaman damgasını kontrol edin ve olayları değişmez olarak işleyin. Gerekli başlıklar: x-webhook-signature, x-webhook-id, x-webhook-timestamp.
Sent.dm, ekip API iş akışları için tek başına yeterli mi?
Mesajlaşma platformunu kapsar, ancak çoğu ekip test, dokümantasyon ve tekrarlı doğrulama için işbirliğine açık bir API platformuna ihtiyaç duyar. Apidog burada devreye girer.


Top comments (0)