Skip to content

Message Template


Otantikasyon

Bu başlığı her istekte gönderiniz.

json
{
  "Authorization": "Bearer ${token}"
}

🔒 WhatsApp Telefon Durumu

Mesaj Şablonlarının gönderimi WhatsApp Phone Number durumuna bağlıdır.

GET

/api/v1/message-templates/waba-status?channel_id=<channel_id>

Response

json
{
  "success": true,
  "message": "",
  "status_code": 200,
  "trace_id": "b287aef6-d09a-4ac3-8168-2193008179fb",
  "errors": [],
  "data": {
    "status": "<phone_status>",
    "id": "<phone_number_id>",
    "quality_rating": "<quality_rating>",
    "verified_name": "<phone_display_name>",
    "display_phone_number": "<phone_number>",
    "messaging_limit_tier": "<tier_limit>"
  }
}

Parameter Explanations

İsimAçıklama
idMesaj şablonunu oluştururken, listesini alırken ve gönderirken kullanacağınız Channel Id
statusTelefon numarasının durumu. Durum listeini ve detaylarını buradan da inceleyebilirsiniz Meta Dökümantasyon Sayfası
  • CONNECTED: Bağlı. Mesaj Şablonu gödnermeye hazır.
  • FLAGGED: İşaretli. Kalite değerlendirmesi düşük olduğu durumlarda bu durum gerçekleşir..
  • RESTRICTED: Artık Mesaj Şablonu gönderemezsiniz. Kalite değerlendirmeniz düşük seyrettiği için bu durum gerçekleşir. Tekrar gönderebilmeniz için bir süre beklemeniz gerekmektedir.
quality_rating7 Gün içerisindeki kalite durumu. Bu kalite durumu müşterilerin geri bildirimi üzerinden değerlendirilmektedir. Kalite değerlendirme durumları aşağıda belirtilmiştir. Resmi Meta Dökümantasoynu
  • GREEN: Yüksek kalite
  • YELLOW: Orta kalite
  • RED: Düşük kalite
messaging_limit_tier24 saat içerisidne gönderilebilecek business-initiated konuşma sayısı.
  • TIER_50
  • TIER_250
  • TIER_1K
  • TIER_10K
  • TIER_100K
  • TIER_UNLIMITED

BİLGİ

TIER_50 olduğunda 50 business-initiated olabilir demek. UNLIMITED ise sınırsız demek

BİLGİ

Business-Initiated: Sizin ( Şirket ) tarafınızdan başlatılmış konuşmalaar demektir. Müşteri yazmadan sizin başlatmış olduğunuz konuşmalardır.

Siz mesaj şablonu göndermiş olsanızda 24 saatlik ücretsiz çerçeve müşteri mesaj atmadan başlamaz.

ÖNEMLİ

status -> Bu değer eğer FLAGGED olursa mesaj gönderemezsiniz.

ÖNEMLİ

quality_rating -> Bu değer eğer RED olursa yine aynı şekilde mesaj gönderemezsiniz.

UYARI

Eğer ki durmunuz ( status ) FLAGGED olursa dikkatli olmalısınız. Bu şekilde seyretmesi ve müşterilerinizin geribildirimleri olumsuz yönde olmaya devam ederse telefon numaranız kullanıma kapatıabilir. Bu durumda aşağıdaki durumları gözden geçirmeniz önerilir.

  • Kişi listesini kontrol edin. Mesaj göndermek için onayını aldığınız kişilere göndermeye çalışın.
  • Mesaj şablonunuzu kontrol edin. İçeriğin spam benzeri veya ilgi çekici olmadığı yerleri tespit edip değiştirin.

Eğer müşterileriniz göndermiş olduğunuz Mesaj Şablonlarını spam olarak işaretlemeye devam ederse; İlk olarak Kalite Değerlendirme'niz düşecektir. Sonrasında ise telefon numaranızın durumu RESTRICTED (Kısıtlanmış) olacaktır. Artık mesaj gönderemez duruma geleceksiniz ve devamında TIER'iniz düşecektir. Bu duruma bağlı olarak da 24 saat içerisinde gönderebileceğiniz Bussiness-initiated mesaj sayısı düşecektir.

BİLGİ

Eğer ki Kalite Değerlendirmeniz GREEN olarak kalmaya devam ederse TIER'iniz artacaktır. Buna bağlı olarak da 24 saat içerisinde gönderebileceğiniz Bussiness-initiated mesaj sayısı artacaktır.

🔒 Mesaj Şablonu İsim Kontrolü

Mesaj Şablonu oluşturmadan önce isim kontrolü yapmak için kullanılmaktadır.

UYARI

Mesaj şablonu oluşturmadan önce var bu endpointi kullanmazsanız facebook tarafından hata gelecektir.

POST

/api/v1/message-templates/check-name

Body

json
{
  "channel_id": "",
  "name": ""
}

Response

json
{
  "success": true,
  "message": "",
  "status_code": 200,
  "trace_id": "04818782-39ee-4144-9f9b-fceccf51a38f",
  "errors": []
}

Parametre Açıklaması

İsimAçıklama
nameKontrol edilecek Mesaj Şablonunun ismi
channel_idMesaj Şablonunn bağlı olacağı Channel Id. Channel Id'nizi buradan temin edebilirsiniz.

🔒 Mesaj Şablonu oluşturma

Mesaj Şablonu oluşturmak için kullanılır.

UYARI

Eğer oluşturacağınız Mesaj Şablonunda resim,video veya döküman koyacaksınız; öncelikle buraya upload etmeniz gerekmektedir.

POST

/api/v1/message-templates

Schema

json
{
  "name": "<template_name>",
  "category": "<template_category>",
  "components": [
      // <components>
  ],
  "allow_category_change": true,
  "language": "tr",
  "channel_id": "<channel_id>",
  "file_handle": "<file_hadle>"
}

Parametre Açıklaması

İsimZorunluAçıklama
nameEvetOluşturmak istediğiniz Mesaj Şablonu ismi
categoryEvetOluşturmak istediğiniz Mesaj Şablonunun kategorisi. Şuan için sadece 1 kategori desteklenmektedir.
  • MARKETING: Reklam, Pazarlama, İndirim, Ürün Mesajı vb.
componentsEvetMesaj Şablonunun compoenent ( bileşen )'leri. Mesja Şablonun compoenentlerini Meta Dökümantasyonu'dan inceleyebilirsiniz. Şiddetle HeloRobo panelinden oluşturmanızı tavsiye ediyoruz.
allow_category_changeEvetMesaj Şablonun kategorisinin Meta tarafından değiştirilmesine izin verilip verilmeyeceği. Bu kısmı ellemeyin.
file_handleHayır ( Eğer Resim, Video veya Döküman olurulacaksa Evet)Resim, Video veya Döküman içeren Mesaj Şablonu olutşurulurken göndeirlmesi gereken Media Id diyeibliriz. Bu Id'yi Media Upload kısmından temin edebilirsiniz.
channel_idEvetMesaj Şablonunn bağlı olacağı Channel Id. Channel Id'nizi buradan temin edebilirsiniz
languageEvetMesaj Şablonun dili. Bu parametreyi buradan

Response

json
{
  "success": true,
  "message": "",
  "status_code": 200,
  "trace_id": "aedebbe4-1abb-43a7-ac99-c569e375ecf1",
  "errors": [],
  "data": {
    "id": ""
  }
}

Örnekler


Basit Örnek

Bu örnekte ne var ?

  • Body component
json
{
  "name": "helorobo_demo",
  "category": "MARKETING",
  "components": [
    {
        "type": "BODY",
        "text": "Hello \n\nSize nasıl yardımcı olabiliriz ?"
    }
  ],
  "allow_category_change": true,
  "language": "tr",
  "channel_id": "<channel_id>"
}
Karışık Örnek

Bu örnekte ne var ?

  • 1 parametreli ( max 4 ) Body Compoenent.
  • Footer Component
  • 1 parametreli ( max 1 ) URL Button
  • Header Compoenent
json
{
  "name": "helorobo_demo",
  "category": "MARKETING",
  "components": [
    {
      "type": "BODY",
      "text": "Hello {{1}} \n\nSize nasıl yardım edebiliriz ??"
    },
    {
      "type": "FOOTER",
      "text": "HeloRobo"
    },
    {
      "type": "BUTTONS",
      "buttons": [
        {
          "type": "URL",
          "text": "Git",
          "url": "https://helorobo.com/add-to-calendar?user_id={{1}}"
        }
      ]
    },
    {
      "type": "HEADER",
      "format": "IMAGE"
    }
  ],
  "allow_category_change": true,
  "language": "tr",
  "channel_id": "",
  "file_handle": "" // optional
}

🔒 Mesaj Şablonlarını Listele

Mesaj Şablonlarını listemek için kullanılır.

GET

/api/v1/message-templates?channel_id=<channel_id>

Response

json
{
  "success": true,
  "message": "",
  "status_code": 200,
  "trace_id": "aedebbe4-1abb-43a7-ac99-c569e375ecf1",
  "errors": [],
  "items": [
    {
      "name": "helorobo_demo",
      "components": [
        {
          "type": "HEADER",
          "format": "IMAGE",
          "example": {
            "header_handle": [
              "<image_url>"
            ]
          }
        },
        {
          "type": "BODY",
          "text": "Hello, Dear {{1}}. {{2}} How are you?",
          "example": {
            "body_text": [["example_param_1", "example_param_2"]]
          }
        }
      ],
      "language": "tr",
      "status": "<message_template_status>",
      "category": "<message_template_category>",
      "id": "<messsage_template_id>"
    }
  ]
}

🔒 Mesaj Şablonu Detayı

Oluşturmuş olduğunuz Mesaj Şablonun Id'si verilenin detayını dönderir.

GET

/api/v1/message-templates/<message_template_id>?channel_id=<channel_id>

Response

json
{
  "success": true,
  "message": "",
  "status_code": 200,
  "trace_id": "73b323b6-32bc-4746-b97e-6f67a6504dfa",
  "errors": [],
  "data": {
    "message_template": {
      "name": "helorobo_demo",
      "components": [
        {
          "type": "HEADER",
          "format": "IMAGE",
          "example": {
            "header_handle": [
              "<image_url>"
            ]
          }
        },
        {
          "type": "BODY",
          "text": "Hello, Dear {{1}}",
          "example": {
            "body_text": [["example_param_1"]]
          }
        }
      ],
      "language": "tr",
      "status": "<message_template_status>",
      "category": "<message_template_category>",
      "id": "<messsage_template_id>"
  }
}

🔒 Mesaj Şablonu Silme

ID'si verilen mesaj şablonunu silmek için kullanılır.

DELETE

/api/v1/message-templates/<message_template_id>

Response

json
{
    "success": true,
    "message": "",
    "status_code": 200,
    "trace_id": "8e2a0464-0873-40a3-a206-a2bf2d8bdf6d",
    "errors": []
}

🔒 Diller

Mesaj Şablonun destekliği dilleri listeler. Mesaj şablonunu oluştururken buradaki value key'inin değerini kullanacağız.

GET

/api/v1/message-templates/languages

Response

json
{
  "success": true,
  "message": "",
  "status_code": 200,
  "trace_id": "e6e95c31-64ff-489b-8a68-eb8c1142df39",
  "errors": [],
  "data": {
    "languages": [
      {
        "value": "tr",
        "title": "Turkish"
      },
      {
        "value": "en",
        "title": "English"
      },
      {
        "value": "ar",
        "title": "عربي"
      },
      {
        "value": "ru",
        "title": "Russian"
      }
    ]
  }
}

🔒 Kategoriler

Mesaj Şablonun desteklediği kategorileri listeler. Şuan için sadece 1 tanesini desteklemektedir.

GET

/api/v1/message-templates/categories

Response

json
{
  "success": true,
  "message": "",
  "status_code": 200,
  "trace_id": "53316e7b-0183-4bb8-8696-e01e2bb84659",
  "errors": [],
  "data": {
    "categories": [
      {
        "icon": "marketing",
        "value": "MARKETING",
        "title": "Pazarlama"
      }
    ]
  }
}