# Düzenleme yazılımının API’si

* [Proje ayarlarında belirtilen Webhook URL’sine mesajlar nasıl alınır](#how-to-get-messages-on-webhook-url-that-is-specified-in-the-projects-settings)&#x20;
* [Evrensel bir webhook nasıl kullanılır](#how-to-use-a-universal-webhook)&#x20;
* [Bot nasıl başlatılır](#how-to-launch-the-bot)&#x20;
* [Mesajlarla nasıl çalışılır](#how-to-work-with-messages)&#x20;
* [Müşteriler nasıl dağıtılır](#how-to-distribute-the-clients)&#x20;
* [Değişkenlerle nasıl çalışılır](#how-to-work-with-variables)&#x20;
* [client\_id nasıl alınır](#how-to-get-client_id)&#x20;
* [Başka hangi imkanlar var](#what-other-possibilities-there-are)

İstekler yöntemle gerçekleştirilir **POST** şu URL’de yani **<https://chatter.mavibot.ai/api/{api\\_key}/{action}>**

Nerede bulunduğu: **api\_key** proje ayarlarında elde edilen API’ye erişim anahtarıdır:

![](https://lh4.googleusercontent.com/NMHfsMXf9aqYBwcLqud8V-NoFMxqqxkcSdhxjckgEtowma_UmtxTmDqHFIsQwrpjc7kR8afwlpnC5FGMjLxYHtNwhnkR6xF0iwlUPjXTlkqRlYtoHfWrhp_dce8r5I5R-pPgDMzV)

{% hint style="success" %}
**#{api\_key} değişkenini kullanarak erişim anahtarını alabilirsiniz.** İlgili oluşturulmuş anahtarı tutar. Kullanmadan önce bir tane oluşturmayı unutmayın.
{% endhint %}

{% hint style="danger" %}
Bu sayfadaki sorgu URL’si kopyalanırken içine bir boşluk eklenir; çağırırken bu boşluğun silinmesi gerekir&#x20;

Bağlantıyı yanlış şekilde kopyalamaya örnek: <https://chatter.mavibot.ai/api/callback&#x20>;

.pro’dan sonraki boşluğu fark etmek kolay değildir, ancak bırakılırsa sorgu çalışmaz
{% endhint %}

{% hint style="warning" %}
**İsteği GET yöntemiyle gönderirken yasaklı kelimeleri kullanmayın.** GET isteklerinin doğru biçimlendirilmesine bakın
{% endhint %}

## Proje ayarlarında belirtilen Webhook URL’sine mesajlar nasıl alınır

![Projenin ayarları](https://lh5.googleusercontent.com/042KfsD4dxlKvcCDd-bReA7zTmfMHDr2LoX5jD1maPuo5OIwkyQ4qEXwFpwX41YA1Sx7SHES2TwLQD6Trs_TmwO57Pso2ogV4w8lJdmwhtIi7JdSwJvoePaXSYxO8NKLVm6kooPc)

Gelen veya giden her mesaj aşağıdaki json POST istekleriyle gelir:

```
{
    'id': sistemdeki mesajın tanımlayıcısı,
    'client': {
        'id': sistemdeki müşterinin tanımlayıcısı,
        'recepient': mesajlaşma uygulamasındaki müşterinin tanımlayıcısı,
        'client_type': mesajlaşma uygulamasının türü,
        'name': müşterinin adı,
        'avatar': müşterinin avatarı,
        'created_at': müşterinin oluşturulduğu tarih,
        'tag': abonelik anahtarı,
        'group': müşterinin bağlı olduğu bot,
    },
    'message': mesaj metni,
    'attachments': dosyalara giden bağlantı dizisi,
    'message_id': mesajın gönderildiği blokun id’si,
    'project_id': projenin id’si,
    'is_input': mesaj müşteriden geldiyse 1, bot’tan geldiyse 0,
    'delivered': mesaj başarıyla gönderildiyse 1, hata varsa 0,,
    'error_message': hatayı açıklayan mesaj
}
```

İstek bir hata ile dönerse tekrar gönderilmez. Ancak sunucu hata dönerse buna rağmen bildirimler iletilir.

## Evrensel bir webhook nasıl kullanılır

Bu yöntemler artık hem POST hem de GET isteğiyle başlatılabilir.

* [callback ](#the-bots-launch)
* [whatsapp\_callback](#launching-the-bot-through-the-number-on-whatsapp)&#x20;
* [message ](#sending-the-message-to-the-client)
* [whatsapp\_message](#sending-messages-in-whatsapp)

Daha önce, müşterilerin yöntemlerinin başlatıldığı parametreler, yani **client\_id**yöntemlerimizde çok sıkı bir şekilde yazılıydı ve bunları üçüncü taraf hizmetlerle kullanırken bazı kısıtlamalar getiriyordu.

Şimdi Mavibot’un istek içinde kullanıcının tanımlayıcısını hangi parametrede arayacağını belirtebilirsiniz: bunun için ön eki olan bir parametre **value\_** kullanılır, örneğin **value\_user\_id** ve **value\_group\_id**.

Ayrıca callback gönderme yöntemi **callback** bir e-posta (**client\_email**) ve müşterinin telefon numarası (**client\_phone**).

{% hint style="success" %}
Yöntemler **callback** ve **whatsapp\_callback** ) aktararak başlatılabilir; bunlar parametre adlarına bağlı değildir. Hangi parametrenin müşterinin telefon numarasını, e-postasını ve id’sini tutacağını belirtebilirsiniz.
{% endhint %}

Webhook alımını başka bir site üzerinden kurarken kullanışlıdır.

**client\_id’nin hangi değişkende tutulduğunu belirtmek için** şunu aktarmanız gerekir **value\_client\_id** ve bu değeri içeren parametrenin adını belirtin

**telefonun hangi değişkende tutulduğunu belirtmek için** şunu aktarmanız gerekir **value\_phone** ve bu değeri içeren parametrenin adını belirtin

**e-postanın hangi değişkende tutulduğunu belirtmek için** şunu aktarmanız gerekir **value\_email** ve bu değeri içeren parametrenin adını belirtin

**user\_id’nin hangi değişkende tutulduğunu belirtmek için** şunu aktarmanız gerekir **value\_user\_id** ve bu değeri içeren parametrenin adını belirtin

**group\_id’nin hangi değişkende tutulduğunu belirtmek için** şunu aktarmanız gerekir **value\_group\_id** ve bu değeri içeren parametrenin adını belirtin

Örnek:

Adres alanına value\_client\_id = my\_client yazın

`https://chatter.mavibot.ai/api/d3f31dabef80ddeb73d43938b4ef8bb0/callback?value_client_id=my_client`\
`{"my_client":49177759, "message":"Hello world"}`

Sorgu aşağıdaki sorgunun eşdeğeri olacaktır:

`https://chatter.mavibot.ai/api/d3f31dabef80ddeb73d43938b4ef8bb0/callback`\
`{"client_id":49177759, "message":"Merhaba dünya"}`

{% hint style="info" %}
Gördüğünüz gibi, adı tutan parametrenin adı şu ön ek ile ayırt edilir **value\_**
{% endhint %}

## Bot nasıl başlatılır

## Botun başlatılması

<mark style="color:yeşil;">`POST`</mark> `https://chatter.mavibot.ai/api/<api_key>/callback`

Yöntem, müşteri için iş akışını başlatmak veya üçüncü taraf bir hizmetteki eylemi onaylamak için kullanılabilir. Bu mesaj müşteriye görünmez. \
**Ek olarak aktarılan parametreler değişkenlerde saklanır.** \
Callback gönderme yöntemi artık bir e-posta (client\_email) veya müşterinin telefon numarası (client\_phone) paylaşarak etkinleştirilebilir

#### Yol Parametreleri

| Name     | Tür    | Açıklama         |
| -------- | ------ | ---------------- |
| api\_key | string | erişim belirteci |

#### İstek Gövdesi

| Name          | Tür    | Açıklama                              |
| ------------- | ------ | ------------------------------------- |
| client\_phone | string | müşterinin bulunduğu telefon numarası |
| client\_email | string | müşterinin bulunduğu e-posta          |
| client\_id    | string | düzenleyicide müşterinin id’si        |
| message       | string | mesaj metni                           |

{% tabs %}
{% tab title="200: OK " %}

```javascript
import requests
import json
 
params = {"message": "some_text", "client_id": "25554"}
token = 'b551e18c8b8e86bea6f14f38de3f5cc3c31ba1edb4d8'
url = f'https://chatter.mavibot.ai/api/{token}/callback'
requests.post(url, json=params)
```

{% endtab %}
{% endtabs %}

## WhatsApp’taki numara üzerinden botu başlatma

<mark style="color:yeşil;">`POST`</mark> `https://chatter.mavibot.ai/api/<api_key>/whatsapp_callback`

Bu yöntem, müşteri site üzerinden kayıt olduktan sonra veya telefon numarasıyla bir talep bıraktıktan sonra botu WhatsApp’ta başlatır \
**Ek olarak aktarılan parametreler değişkenlere kaydedilir**

#### Yol Parametreleri

| Name     | Tür    | Açıklama         |
| -------- | ------ | ---------------- |
| api\_key | string | erişim belirteci |

#### İstek Gövdesi

| Name    | Tür    | Açıklama                    |
| ------- | ------ | --------------------------- |
| name    | string | müşterinin adı              |
| message | string | mesaj metni                 |
| phone   | string | müşterinin telefon numarası |
| bot\_id | string | botun id’si                 |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    // Yanıt
}
```

{% endtab %}
{% endtabs %}

## Telegram id üzerinden bot başlatma

<mark style="color:yeşil;">`POST`</mark> `https://chatter.mavibot.ai/api/<api_key>/tg_callback`

Yöntem, iş akışını başlatmak veya üçüncü taraf bir sitedeki eylemleri onaylamak için kullanılabilir. Bu mesaj müşteriye görünmeyecektir.&#x20;

**Ek olarak aktarılan parametreler değişkenlere kaydedilir**

#### Yol Parametreleri

| Name     | Tür    | Açıklama         |
| -------- | ------ | ---------------- |
| api\_key | string | erişim belirteci |

#### İstek Gövdesi

| Name      | Tür    | Açıklama                               |
| --------- | ------ | -------------------------------------- |
| message   | string | mesaj metni                            |
| user\_id  | string | Telegram’daki kullanıcının id’si       |
| group\_id | string | botun adı (şununla bitmelidir **bot**) |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    // Yanıt
}
```

{% endtab %}
{% endtabs %}

## Mesajlarla nasıl çalışılır

**Mesaj göndermek için parametreler**

**attachment\_type** şu değerleri alabilir: **resim, video, bağlantı, dosya, ses** \
Ek gönderirken parametre **message** zorunlu değildir

**buttons** mesaja eklenecek butonları belirler. Butonların formatı, gelişmiş buton ayarlarıyla karşılaştırılabilir. Butonların iletilmesinin iki türü mümkündür: biri butonsuz mesajlaşma uygulamalarında ipucu ile, diğeri ise ipucu olmadan

İşte buttons parametresine bir örnek:

```
"buttons": {"hint": "Bu metin Whatsapp'ta gösterilecek",
 "buttons": [
    {"type": "reply", 
     "text": "Hangi hizmetleri sunabiliriz", 
     "line": 0, "index_in_line": 0}, 
       
    {"type": "reply", 
     "text": "Ödeme bilgileri", 
     "line": 0, 
     "index_in_line": 1}, 
        
    {"type": "reply", 
     "text": "İletişim bilgilerimiz", 
     "line": 1, "index_in_line": 0}, 
        
    {"type": "reply", 
     "text": "Başvuru bırak", 
     "line": 1, "index_in_line": 1}
   ] 
}
```

## Mesajı müşteriye gönderme

<mark style="color:yeşil;">`POST`</mark> `https://chatter.mavibot.ai/api/<api_key>/message`

Bu yöntem, bildirim içeren mesajlar göndermek için kullanılabilir. Parametre **message** bir dosya göndermiyorsanız zorunludur. Gönderiyorsanız, metin gerekli değildir

#### Yol Parametreleri

| Name     | Tür    | Açıklama        |
| -------- | ------ | --------------- |
| api\_key | string | erişim anahtarı |

#### İstek Gövdesi

| Name             | Tür    | Açıklama                         |
| ---------------- | ------ | -------------------------------- |
| message\_id      | string | gönderme bloğunun numarası       |
| message          | string | mesaj metni                      |
| client\_id       | string | düzenleyicideki müşterinin id’si |
| attachment\_type | string | dosya gösterim türü              |
| attachment\_url  | string | dosyanın URL’si                  |
| buttons          | nesne  | buttons                          |

{% tabs %}
{% tab title="200: OK " %}

```javascript
import requests
import json

params = {"message": "some_text", "client_id": "25554"}
token = 'b551e18c8b8e86bea6f14f38de3f5cc3c31ba1edb4d8'
url = f'https://chatter.mavibot.ai/api/{token}/message'
requests.post(url, json=params)
```

{% endtab %}
{% endtabs %}

## WhatsApp’ta mesaj gönderme

<mark style="color:yeşil;">`POST`</mark> `https://chatter.mavibot.ai/api/<api_key>/whatsapp_message`

Bağlı botun adıyla belirtilen numaraya mesaj göndermeyi sağlar **whatsapp\_bot\_id** “Messengerlar ve sohbetler” bölümünden alınmalıdır. Bağlanan her WhatsApp sayfası benzersiz bir kimlik alır

#### Yol Parametreleri

| Name     | Tür    | Açıklama        |
| -------- | ------ | --------------- |
| api\_key | string | erişim anahtarı |

#### İstek Gövdesi

| Name              | Tür    | Açıklama                      |
| ----------------- | ------ | ----------------------------- |
| message\_id       | string | gönderme bloğunun numarası    |
| whatsapp\_bot\_id | numara | mesajı gönderen WhatsApp botu |
| attachment\_url   | string | dosyanın url’si               |
| attachment\_type  | string | dosya gösterim türü           |
| message           | string | mesaj metni                   |
| phone             | string | alıcının telefon numarası     |

{% tabs %}
{% tab title="200: OK " %}

```javascript
import requests
import json

params = {"message": "some_text", "phone": "79875146788"}
token = 'b551e18c8b8e86bea6f14f38de3f5cc3c31ba1edb4d8'
url = f'https://chatter.mavibot.ai/api/{token}/whatsapp_message'
requests.post(url, json=params)
```

{% endtab %}
{% endtabs %}

## Toplu mesaj gönderme

<mark style="color:yeşil;">`POST`</mark> `https://chatter.mavibot.ai/api/<api_key>/broadcast`

Yöntem mesaj dağıtımına izin verir. Eğer parametre **clients** belirtilmezse, yayın tüm kullanıcılara gönderilir. Bir dosya veya bir metin göndermek gereklidir

#### Yol Parametreleri

| Name     | Tür    | Açıklama        |
| -------- | ------ | --------------- |
| api\_key | string | erişim anahtarı |

#### İstek Gövdesi

| Name             | Tür    | Açıklama                                                  |
| ---------------- | ------ | --------------------------------------------------------- |
| message\_id      | string | gönderme bloğunun numarası                                |
| list             | string | alıcı numaralarının listesi                               |
| shift            | string | mesajlar arasındaki saniye miktarı. Varsayılan olarak 0.2 |
| message          | string | mesaj metni                                               |
| clients          | dizi   | alıcıların id’leri                                        |
| attachment\_type | string | dosya gösterim türü                                       |
| attachment\_url  | string | dosyanın URL’si                                           |
| buttons          | string | buttons                                                   |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{import requests
import json

params = {"message": "some_text", "clients": ["5", "58", "110"]}
token = 'b551e18c8b8e86bea6f14f38de3f5cc3c31ba1edb4d8'
url = f'https://chatter.mavibot.ai/api/{token}/broadcast'
requests.post(url, json=params)
```

{% endtab %}
{% endtabs %}

## Mesaj geçmişini alma

<mark style="color:mavi;">`GET`</mark> `https://chatter.mavibot.ai/api/<api_key>/get_history?client_id=`

Mesaj geçmişini alma. Şu değeri alabilirsiniz **client\_id** param [BURADA](#how-to-get-client_id)

#### Yol Parametreleri

| Name     | Tür    | Açıklama        |
| -------- | ------ | --------------- |
| api\_key | string | erişim anahtarı |

#### Sorgu Parametreleri

| Name       | Tür    | Açıklama         |
| ---------- | ------ | ---------------- |
| client\_id | string | müşterinin id’si |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
  "status": "success",
  "result": [
    {
      "id": 104500,
      "answered": true,
      "client_replica": false,
      "message_id": 390,
      "message_from_outside": 0,
      "created_at": 1587895014,
      "text": "CouCou",
      "attachments": {
        
      },
      "delivered": true,
      "error_message": "true"
    },
  ]
}
```

{% endtab %}
{% endtabs %}

## Mesaj geçmişini temizleme

<mark style="color:mavi;">`GET`</mark> `https://chatter.mavibot.ai/api/<api_key>/clear_history?client_id=`

#### Yol Parametreleri

| Name     | Tür    | Açıklama        |
| -------- | ------ | --------------- |
| api\_key | string | erişim anahtarı |

#### Sorgu Parametreleri

| Name       | Tür    | Açıklama         |
| ---------- | ------ | ---------------- |
| client\_id | string | müşterinin id’si |

{% tabs %}
{% tab title="200: OK " %}

```javascript
import requests
import json


token = 'b551e18c8b8e86bea6f14f38de3f5cc3c31ba1edb4d8'
url = f'https://chatter.mavibot.ai/api/{token}/clear_history?client_id=85856'
requests.get(url)
```

{% endtab %}
{% endtabs %}

## Müşteriler nasıl dağıtılır

## Bir müşteriyi bir çalışana atama

<mark style="color:mavi;">`GET`</mark> `https://chatter.mavibot.ai/api/<api_key>/assign_to_user`

Yöntem, bir müşteriyi bir çalışana atamaya olanak sağlar. E-posta parametresi isteğe bağlıdır. E-posta sağlanmazsa, sistemin algoritmasıyla dağıtılacaktır

#### Yol Parametreleri

| Name     | Tür    | Açıklama        |
| -------- | ------ | --------------- |
| api\_key | string | erişim anahtarı |

#### Sorgu Parametreleri

| Name       | Tür  | Açıklama                           |
| ---------- | ---- | ---------------------------------- |
| client\_id | Dize | müşterinin id’si                   |
| e-posta    | Dize | çalışanın e-postası (isteğe bağlı) |

{% tabs %}
{% tab title="200: OK " %}

```javascript
import requests
import json

params = {"message": "some_text", "clients": ["5", "58", "110"]}
token = 'b551e18c8b8e86bea6f14f38de3f5cc3c31ba1edb4d8'
url = f'https://chatter.mavibot.ai/api/{token}/broadcast'
requests.post(url, json=params)
```

{% endtab %}
{% endtabs %}

## Müşterileri sisteme yükleme

<mark style="color:mavi;">`GET`</mark> `https://chatter.mavibot.ai/api/<api_key>/load_clients`

Yöntem, müşterileri sisteme yüklemeye olanak sağlar. WhatsApp müşterilerini yüklerken numarayı @s.whatsapp.net ile birlikte sona ekleyerek ya da eklemeden serbestçe aktarabilirsiniz.&#x20;

grup id’sini alabilirsiniz (**group\_id**) [burada ](#what-other-possibilities-there-are)/api/\<api\_key>/connected\_channels üzerinden&#x20;

(eğer client\_type=13 (telefoni) ise group\_id=””)\
&#x20;

Müşterinin hangi mesajlaşma uygulamasından geldiği türünü görebilirsiniz (**client\_type**)&#x20;

Örn.: \[{"platform\_id":"79875555555","group\_id":34810,"client\_type":6}]

#### Yol Parametreleri

| Name     | Tür    | Açıklama        |
| -------- | ------ | --------------- |
| api\_key | string | erişim anahtarı |

#### İstek Gövdesi

| Name         | Tür  | Açıklama                                         |
| ------------ | ---- | ------------------------------------------------ |
| platform\_id | Dize | telefon numarası                                 |
| group\_id    | Dize | grup id’si                                       |
| client\_type | Dize | müşterinin geldiği mesajlaşma uygulamasının türü |

{% tabs %}
{% tab title="200: OK " %}

```javascript
import requests
import json


token = 'b551e18c8b8e86bea6f14f38de3f5cc3c31ba1edb4d8'
url = f'https://chatter.mavibot.ai/api/{token}/load_clients'

params = [{ "platform_id": 274827917, "group_id": 169166236, "client_type":0},
{"platform_id":"79538550785@s.whatsapp.net", "group_id": "1hwF7lwEjv4SKYIGFhQnBw==", "client_type": 6}]
requests.post(url, json=params)
# başarılı olması durumunda işlev, her elemana kendi id’sini ve ek durumunu döndürür
# cevap örneği
# {"status":"success","items":[{"platform_id":"700000000@s.whatsapp.net","group_id":"5kqchxwyvdvFZOsp80q2qw==","client_type":6,"status":"success","id":1469409}]}
```

{% endtab %}
{% endtabs %}

## Müşterileri listeye ekleme

<mark style="color:yeşil;">`POST`</mark> `https://chatter.mavibot.ai/api/<api_key>/add_to_list`

#### Yol Parametreleri

| Name     | Tür    | Açıklama        |
| -------- | ------ | --------------- |
| api\_key | string | erişim anahtarı |

#### İstek Gövdesi

| Name     | Tür             | Açıklama                          |
| -------- | --------------- | --------------------------------- |
| list\_id | bir tam sayıdır | listenin numarası                 |
| clients  | dizi            | müşterilerin numaralarının dizisi |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    // Yanıt
}
```

{% endtab %}
{% endtabs %}

## Müşterileri listeden kaldırma

<mark style="color:yeşil;">`POST`</mark> `https://chatter.mavibot.ai/api/<api_key>/remove_from_list`

#### Yol Parametreleri

| Name     | Tür    | Açıklama        |
| -------- | ------ | --------------- |
| api\_key | string | erişim anahtarı |

#### İstek Gövdesi

| Name     | Tür             | Açıklama                          |
| -------- | --------------- | --------------------------------- |
| list\_id | bir tam sayıdır | listenin numarası                 |
| clients  | dizi            | müşterilerin numaralarının dizisi |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    // Yanıt
}
```

{% endtab %}
{% endtabs %}

## Müşteri listesini alma

<mark style="color:yeşil;">`POST`</mark> `https://chatter.mavibot.ai/api/<api_key>/get_clients`

#### Yol Parametreleri

| Name     | Tür    | Açıklama        |
| -------- | ------ | --------------- |
| api\_key | string | erişim anahtarı |

#### Sorgu Parametreleri

| Name   | Tür             | Açıklama                                           |
| ------ | --------------- | -------------------------------------------------- |
| offset | string          | ilk elemandan itibaren kaydırma                    |
| limit  | bir tam sayıdır | cevaptaki öğe sayısı. Varsayılan 500, en fazla 500 |
| list   | string          | listenin numarası                                  |

{% tabs %}
{% tab title="200: OK Öğelerin durumunu ve diziyi döndürür" %}

```javascript
{
"status":"success",
"clients":[{
    "id":44483,
    "platform_id":"146467928",
    "client_type":0,
    "name":null,
    "avatar":null,
    "message_id":null,
    "project_id":1,
    "created_at":1588248599,
    "updated_at":1588248599,
    "custom_answer":null,
    "tag":null,
    "group":"143414131",
    "operator_start_dialog":null
    }
]
}
```

{% endtab %}
{% endtabs %}

## Herhangi bir mesajlaşma uygulamasındaki abonelerin listesini alma

<mark style="color:yeşil;">`POST`</mark> `https://chatter.mavibot.ai/api/<api_key>/subscribers`

Seçilen mesajlaşma uygulamasındaki müşteriler hakkında bilgi alma

#### Yol Parametreleri

| Name     | Tür    | Açıklama        |
| -------- | ------ | --------------- |
| api\_key | string | erişim anahtarı |

#### Sorgu Parametreleri

| Name         | Tür             | Açıklama                                                                                                        |
| ------------ | --------------- | --------------------------------------------------------------------------------------------------------------- |
| page         | bir tam sayıdır |                                                                                                                 |
| tag          | string          | t abonelik sayfasında belirtilen etiket                                                                         |
| group        | bir tam sayıdır | abonelerin bağlı olduğu grubun id’si                                                                            |
| date\_from   | bir tam sayıdır | abone oldukları tarihten sonraki zaman damgası                                                                  |
| date\_to     | bir tam sayıdır | abone oldukları tarihe kadar olan zaman damgası                                                                 |
| client\_type | bir tam sayıdır | aboneleri listelemeniz gereken mesajlaşma uygulamasının id’si. Hiçbir şey değiştirmezseniz tüm müşteriler gelir |

{% tabs %}
{% tab title="200: OK " %}

```javascript
[
  {
    "id": 44886,
    "tag": null,
    "created_at": 1609867984,
    "name": "John Smith",
    "tg_id": "146467928",
    "group": "155824294",
    "variables": null
  },
  {
    "id": 44889,
    "tag": null,
    "created_at": 1609867984,
    "name": "Jane Austen",
    "tg_id": "1609867984",
    "group": "155824294",
    "variables": {
      "utm_source": "some_value"
    }
  }
]
```

{% endtab %}
{% endtabs %}

### Müşterileri silme izni

<mark style="color:yeşil;">**`POST`**</mark>` ``https://chatter.mavibot.ai/api/<api_key>/get_clients`

Anahtar oluştururken erişim izni: “Müşterileri silme izni”

Parametreler

Yol\
api key\* — erişim belirteci

Gövde\
client\_ids — silinecek müşteri ID’lerinin listesi. Maksimum 500. Örnek: \[199571, 199707, 1935722]

## Değişkenlerle nasıl çalışılır

## Değişkenleri ilişkilendirme

<mark style="color:yeşil;">`POST`</mark> `https://chatter.mavibot.ai/api/<api_key>/save_variables`

Uygulamada ve müşteride değişkenleri kaydetmeye olanak sağlar. \
Değişkenleri ilişkilendirme isteği varsayılan olarak işlem değişkenlerine ekler. \
Değişkenleri profilde değiştirmek istiyorsanız ön ekini eklemeniz gerekir **client**. \
Örn. mobil için: client.phone&#x20;

Parametre **clients** değişkenlerin toplu olarak ilişkilendirilmesine olanak sağlar&#x20;

Örn.: {"client\_id":49177759, "variables":\
{"client.phone":"1234567890"}}

#### Yol Parametreleri

| Name     | Tür    | Açıklama        |
| -------- | ------ | --------------- |
| api\_key | string | erişim anahtarı |

#### İstek Gövdesi

| Name        | Tür    | Açıklama                                    |
| ----------- | ------ | ------------------------------------------- |
| clients     | dizi   | değişken atamak için müşterilerin id dizisi |
| client\_id  | string | müşterinin id’si                            |
| değişkenler | nesne  | değişken karması (anahtar-değer)            |

{% tabs %}
{% tab title="200: OK " %}

```javascript
import requests
import json

params = {"client_id": "25554", "variables": {"var_name": "var_value"}}
token = 'b551e18c8b8e86bea6f14f38de3f5cc3c31ba1edb4d8'
url = f'https://chatter.mavibot.ai/api/{token}/save_variables'
requests.post(url, json=params)
```

{% endtab %}
{% endtabs %}

## Değişkenleri alma

<mark style="color:mavi;">`GET`</mark> `https://chatter.mavibot.ai/api/<api_key>/get_variables?client_id=`

#### Yol Parametreleri

| Name     | Tür    | Açıklama         |
| -------- | ------ | ---------------- |
| api\_key | string | erişim belirteci |

#### Sorgu Parametreleri

| Name       | Tür    | Açıklama      |
| ---------- | ------ | ------------- |
| client\_id | string | müşteri id’si |

{% tabs %}
{% tab title="200: OK " %}

```javascript
import requests
import json


token = 'b551e18c8b8e86bea6f14f38de3f5cc3c31ba1edb4d8'
url = f'https://chatter.mavibot.ai/api/{token}/get_variables?client_id=85856'
requests.get(url)
```

{% endtab %}
{% endtabs %}

## **client\_id nasıl alınır**

## platform\_id değeriyle client\_id alma

<mark style="color:yeşil;">`POST`</mark> `https://chatter.mavibot.ai/api/<api_key>/find_client_id_by_platform_id`

Yöntem, API’ye istekleri gerçekleştirmek için müşteri id’sini döndürür

Parametre örneği: {"platform\_ids": \["571830542", "256865200"]}

#### Yol Parametreleri

| Name | Tür    | Açıklama        |
| ---- | ------ | --------------- |
|      | string | erişim anahtarı |

#### İstek Gövdesi

| Name          | Tür    | Açıklama                             |
| ------------- | ------ | ------------------------------------ |
| platform\_ids | string | mesajlaşma uygulamasındaki id dizisi |

{% tabs %}
{% tab title="200: OK " %}

```javascript
[{
"id":15099119,
"tag":null,
"created_at":1618815253,
"name":"Oscar Wilde",
"avatar":"https:\\/\\/files.salebot.pro\\/uploads\\/avatars\\/256865200.jpg",
"platform_id":"2568652",
"group":"Salebotpro_bot",
"variables":{"tg_username":"@wildeo"}},

{"id":21087377,
"tag":null,
"created_at":1626275893,
"name":"Freddie Mercury",
"avatar":"https:\\/\\/files.salebot.pro\\/uploads\\/avatars\\/571830542.jpg",
"platform_id":"571830542",
"group":"Salebotpro_bot",
"variables":{"tg_username":"@freddieisqueen"}
}]
```

{% endtab %}
{% endtabs %}

## Online sohbet üzerinde client id nasıl alınır

<mark style="color:mavi;">`GET`</mark> `https://chatter.mavibot.ai/api/<api_key>/online_chat_client_id?recipient=`

Bu yöntem, site ve chatbot’u entegre etmeye olanak sağlar; yani bir kişi özel teklif sayfasına girdiyse, sohbet içinde teklif hakkında anında bir mesaj gönderebilirsiniz

#### Yol Parametreleri

| Name     | Tür    | Açıklama         |
| -------- | ------ | ---------------- |
| api\_key | string | erişim belirteci |

#### Sorgu Parametreleri

| Name  | Tür    | Açıklama               |
| ----- | ------ | ---------------------- |
| tag   | string | müşteri etiketi        |
| name  | string | müşterinin adı         |
| alıcı | string | sitedeki diyalog id’si |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{ "client_id": 36553 }
```

{% endtab %}
{% endtabs %}

Alıcıyı nereden alırsınız? Online sohbet “Mavibot.ai” taşıyan sitede, JS yardımıyla SaleBotPro.recipient\_id özelliğini almanız gerekir.

![](https://lh4.googleusercontent.com/kTHJGnkdMXxirfxHrmgHcg3n9nRn35lHIiWbQ6LZyaQZ4IbO8TnOtgihTt4MdAqFa1bWujmpYDOId9ALFfmud8n-XD2AJlxep2luxjL4nCl2YgDTpdemE4wJVsgFuPw1h382oUL5)

## WhatsApp numarasıyla client id nasıl alınır

<mark style="color:mavi;">`GET`</mark> `https://chatter.mavibot.ai/api/<api_key>/whatsapp_client_id?phone=`

Bu yöntem, müşterinin WhatsApp telefon numarasını biliyorsanız, API’ye istekler için client id’yi geri verir. \
Bu numarayla böyle bir müşteri yoksa 404 alırsınız.

#### Yol Parametreleri

| Name     | Tür    | Açıklama         |
| -------- | ------ | ---------------- |
| api\_key | string | erişim belirteci |

#### Sorgu Parametreleri

| Name  | Tür    | Açıklama         |
| ----- | ------ | ---------------- |
| phone | string | telefon numarası |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    // Yanıt
}
```

{% endtab %}
{% endtabs %}

## Telefon numarasıyla client id alma

<mark style="color:mavi;">`GET`</mark> `https://chatter.mavibot.ai/api/<api_key>/find_client_id_by_phone?phone=`

Yöntem, API’ye istekler için client id’yi geri verir. \
Arama hem WhatsApp müşterileri hem de değişkenler üzerinden yapılır.

#### Yol Parametreleri

| Name     | Tür    | Açıklama         |
| -------- | ------ | ---------------- |
| api\_key | string | erişim belirteci |

#### Sorgu Parametreleri

| Name  | Tür    | Açıklama         |
| ----- | ------ | ---------------- |
| phone | string | telefon numarası |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    // Yanıt
}
```

{% endtab %}
{% endtabs %}

## E-posta ile client id alma

<mark style="color:mavi;">`GET`</mark> `https://chatter.mavibot.ai/api/<api_key>/find_client_id_by_email?email=`

Yöntem, API’ye istekler için client id’yi geri verir. Arama değişkenler üzerinden yapılır.

#### Yol Parametreleri

| Name     | Tür    | Açıklama         |
| -------- | ------ | ---------------- |
| api\_key | string | erişim belirteci |

#### Sorgu Parametreleri

| Name  | Tür    | Açıklama           |
| ----- | ------ | ------------------ |
| email | string | arama için e-posta |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    // Yanıt
}
```

{% endtab %}
{% endtabs %}

## değişken değeriyle client id alma

<mark style="color:mavi;">`GET`</mark> `https://chatter.mavibot.ai/api/<api_key>/find_client_id_by_var?var=&val=`

Yöntem, API’ye istekler için client id’yi geri verir

#### Yol Parametreleri

| Name     | Tür    | Açıklama         |
| -------- | ------ | ---------------- |
| api\_key | string | erişim belirteci |

#### Sorgu Parametreleri

| Name | Tür    | Açıklama                       |
| ---- | ------ | ------------------------------ |
| var  | string | arama yapılacak değişkenin adı |
| val  | string | değişken değeri                |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    // Yanıt
}
```

{% endtab %}
{% endtabs %}

## **Başka hangi imkanlar var**

## İşlemi MavibotCRM durumuna taşıma

<mark style="color:yeşil;">`POST`</mark> `https://chatter.mavibot.ai/api/<api_key>/set_order_state`

İşlem numarası, MavibotCRM iş akışının düzenleme penceresinde alınabilir.

#### Yol Parametreleri

| Name     | Tür    | Açıklama        |
| -------- | ------ | --------------- |
| api\_key | string | erişim anahtarı |

#### İstek Gövdesi

| Name       | Tür    | Açıklama                                         |
| ---------- | ------ | ------------------------------------------------ |
| client\_id | string | müşterinin id’si                                 |
| state\_id  | string | müşterinin işleminin aktarılacağı durum numarası |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    // Yanıt
}
```

{% endtab %}
{% endtabs %}

## Kişinin Instagram hesabını takip edip etmediğini kontrol etme&#x20;

<mark style="color:mavi;">`GET`</mark> `https://chatter.mavibot.ai/api/<api_key>/check_insta_subscription`

Hem POST yöntemi hem de GET yöntemiyle çağrılabilir

#### Yol Parametreleri

| Name     | Tür    | Açıklama        |
| -------- | ------ | --------------- |
| api\_key | string | erişim anahtarı |

#### İstek Gövdesi

| Name       | Tür    | Açıklama                                           |
| ---------- | ------ | -------------------------------------------------- |
| user\_name | string | kontrol etmek istediğiniz müşterinin kullanıcı adı |
| login      | string | kontrol edilen botun giriş adı                     |

{% tabs %}
{% tab title="200: OK is\_follower alanı, kişinin takip edip etmediği bilgisini tutar" %}

```javascript
{
"username": "beyonce",
"account_id": "1463220603",
"avatar": "https://instagram.fhel6-1.fna.fbcdn.net/v/t51.2885-19/1060168..",
"real_name": "Beyonce",
"is_follower": true,
"status": 200
}
```

{% endtab %}
{% endtabs %}

## Telefon numarasının WhatsApp kullanıp kullanmadığını kontrol etme

<mark style="color:mavi;">`GET`</mark> `https://chatter.mavibot.ai/api/<api_key>/check_whatsapp`

**Yöntemi kullanmak için WhatsApp ve Mavibot’u BAĞLAMIŞ olmanız gerekir**

Hem POST yöntemi hem de GET yöntemiyle çağrılabilir \
Telefon numarası herhangi bir formatta aktarılabilir

#### Yol Parametreleri

| Name     | Tür    | Açıklama         |
| -------- | ------ | ---------------- |
| api\_key | string | erişim belirteci |

#### İstek Gövdesi

| Name  | Tür    | Açıklama         |
| ----- | ------ | ---------------- |
| phone | string | telefon numarası |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    // Yanıt
}
```

{% endtab %}
{% endtabs %}

## Projeye bağlı mesajlaşma uygulamaları listesini alma (group\_id dahil)

<mark style="color:mavi;">`GET`</mark> `https://chatter.mavibot.ai/api/<api_key>/connected_channels`

İşlev, parametreyi döndürür **group\_id** her mesajlaşma uygulaması için ve müşterileri yüklerken aktarılması gereken budur&#x20;

Alan **status** WhatsApp için de döndürür ve şu değeri taşır: \
**NOT\_STARTED = 0** \
**STARTED = 1** \
**ASLEEP = 2** \
**STOPPED = 3**

#### Yol Parametreleri

| Name     | Tür    | Açıklama         |
| -------- | ------ | ---------------- |
| api\_key | string | erişim belirteci |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{'project_id': 1, 
'viber': [{
        'id': 14, 
        'uri': 'salebotstage', 
        'name': 'salebotstage', 
        'enabled': true,
        'group_id': 11}], 
'facebook': [], 
'telegram': [{
        'id': 23, 
        'short_name': 'bulls_vs_bears_bot', 
        'name': 'bulls_vs_bears_bot', 
        'enabled': true,
        'group_id': 'bulls_vs_bears_bot'}], 
'whatsapp': [] 
}
```

{% endtab %}
{% endtabs %}

## Botun şemasındaki blokların listesini alma

<mark style="color:mavi;">`GET`</mark> `https://chatter.mavibot.ai/api/<api_key>/get_messages`

#### Yol Parametreleri

| Name     | Tür    | Açıklama         |
| -------- | ------ | ---------------- |
| api\_key | string | erişim belirteci |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    // Yanıt
}
```

{% endtab %}
{% endtabs %}

{% hint style="success" %}
Ek yöntemlere ihtiyacınız varsa, lütfen müşteri desteği ile iletişime geçin&#x20;
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mavibot.ai/doc/tr/integrations/api/settings.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
