> ## Documentation Index
> Fetch the complete documentation index at: https://docs.thunderphone.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Kendi numaralarınızı kullanın (VoIP, API)

> Twilio veya Telnyx'i ya da herhangi bir SIP trunk'ını bağlayın ve mevcut hesabınızdaki telefon numaralarını içe aktarın.

Prototipleme için demo numaraları uygundur, ancak üretim trafiğinde kendi VoIP sağlayıcınız üzerinden sahip olduğunuz numaraları kullanmalısınız. Bu kılavuz, üç adımlı akışı açıklar: **kimlik bilgilerini test et → bağlantı oluştur → numaraları içe aktar → doğrula**.

<Note>
  Pano, bu akışın tamamının rehberli bir sürümünü **Bağlantılar → VoIP** (`/dashboard/voip-connections`) altında sunar: hesap oluşturma ve API anahtarlarında yol gösteren bir Telnyx rehberli kurulumu, mevcut hesabı bağlama akışı ve yapay zeka kurulum kılavuzu oluşturucusuna sahip manuel SIP formu.
</Note>

## Desteklenen sağlayıcılar

| Sağlayıcı  | `provider` kimliği | Notlar                                                                            |
| ---------- | ------------------ | --------------------------------------------------------------------------------- |
| Twilio     | `twilio`           | API anahtarı + gizli anahtar                                                      |
| Telnyx     | `telnyx`           | API anahtarı; rehberli ilk kurulum kullanılabilir (`setup_method: guided_telnyx`) |
| SignalWire | `signalwire`       | **Yakında** — bugün Manuel SIP ile bağlanın                                       |
| Vonage     | `vonage`           | **Yakında** — bugün Manuel SIP ile bağlanın                                       |
| Manuel SIP | `manual`           | Herhangi bir SIP trunk'ı — kendi yapılandırmanızı getirin                         |

## 1. Kimlik bilgilerini test edin

Kalıcı bir VoIP bağlantısı oluşturmadan önce, çalıştıklarını doğrulamak için sağlayıcı kimlik bilgilerini yoklayın. Bu işlem, oluşturma adımına ileteceğiniz bir `verification_evidence_id` döndürür; böylece kimlik bilgileri test için iki kez ücretlendirilmez.

```bash theme={null}
curl -X POST https://api.thunderphone.com/v1/voip-connections/test \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "provider":    "telnyx",
    "credentials": { "apiKey": "KEY...", "connectionId": "123456" },
    "sip_config":  { "domain": "acme.sip.telnyx.com" }
  }'
```

```json Response theme={null}
{
  "status": "pass",
  "verification_evidence_id": "b9a2...",
  "suggested_connection_name": "Telnyx: Acme Main (+15550001234)",
  "checks": {
    "credentials_valid": true,
    "inbound_reachable": true,
    "outbound_authorized": true
  }
}
```

Herhangi bir denetim başarısız olursa, yanıt `status` değeri `fail` olur ve `checks`, hangi adımın başarısız olduğunu gösterir. Sağlayıcı tarafındaki yapılandırmayı (trunk ataması, IP izin listesi, giden arama yetkilendirmesi) düzeltin ve yeniden deneyin.

## 2. Bağlantıyı oluşturun

Az önce aldığınız `verification_evidence_id` değerini iletin:

```bash theme={null}
curl -X POST https://api.thunderphone.com/v1/voip-connections \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name":         "Acme Telnyx Main",
    "provider":     "telnyx",
    "setup_method": "api_key",
    "credentials":  { "apiKey": "KEY...", "connectionId": "123456" },
    "sip_config":   { "domain": "acme.sip.telnyx.com" },
    "verification_evidence_id": "b9a2..."
  }'
```

Yanıt, `status="connected"` durumunda bir [VoipConnection nesnesidir](/api-reference/voip-connections#connection-object). Kimlik bilgileri sunucu tarafında depolanır ve sonraki GET isteklerinde asla düz metin olarak döndürülmez — değiştirmek için yeni bir `test` çalıştırın ve yeni kanıtla PATCH isteği gönderin.

## 3. Numaraları listeleyin ve içe aktarın

Kimlik bilgilerinizle görülebilen ve henüz bir ThunderPhone kuruluşunda bulunmayan numaraları inceleyin:

```bash theme={null}
curl https://api.thunderphone.com/v1/voip-connections/5/available-numbers \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"
```

Ardından istediğiniz numaraları içe aktarın:

```bash theme={null}
curl -X POST https://api.thunderphone.com/v1/voip-connections/5/import-numbers \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"numbers": ["+15550001234", "+15550009999"]}'
```

Her içe aktarma, kuruluşunuzda `source="voip"` ve `status="provisioning"` değerlerine sahip bir [telefon numarası kaynağına](/api-reference/phone-numbers) dönüşür.

## 4. İçe aktarılan her numarayı doğrulayın

İçe aktarma, numarayı *kullanılabilir* olarak kaydeder; çağrıları gerçekten
bu numara üzerinden yönlendirmek için çift yönlü doğrulama (gelen arama kontrolü +
giden arama yetkilendirme yoklaması) gerekir.

```bash theme={null}
curl -X POST https://api.thunderphone.com/v1/phone-numbers/{id}/verify-voip \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"
```

Başarılı olduğunda, `voip_verification_status` değeri `verified` olur ve
numara `status="active"` durumuna geçer. Başarısız olduğunda yanıt, neyin
başarısız olduğunu açıkça belirtir — sorunu giderin (genellikle sağlayıcı
panosunda eksik bir trunk atamasıdır) ve çağrıyı yeniden yapın.

## 5. Ajanları atayın ve çağrı alın

Numara doğrulandıktan sonra, gelen / giden ajanları demo numarasıyla
aynı şekilde atayabilirsiniz. Bkz.
[Gelen çağrıları yönetin](/tr/guides/handle-inbound-calls) ve
[Giden aramalar yapın](/tr/guides/place-outbound-calls).

## Kimlik bilgilerini yenileme

Bir sağlayıcı anahtarı yenilendiğinde, önce test edip ardından güncelleme akışını yeniden çalıştırın:

```bash theme={null}
# 1. Test the new credentials
curl -X POST https://api.thunderphone.com/v1/voip-connections/test ...

# 2. PATCH the connection with the new evidence
curl -X PATCH https://api.thunderphone.com/v1/voip-connections/{id} \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "credentials": { "apiKey": "NEW_KEY..." },
    "verification_evidence_id": "fresh-evidence-id"
  }'
```

Bağlantı yerinde kalır — numaraları yeniden içe aktarmanız gerekmez.

***

## Sonraki adımlar

<CardGroup cols={2}>
  <Card title="VoIP bağlantıları referansı" icon="phone-volume" href="/api-reference/voip-connections">
    Bağlantı, kanıt ve içe aktarma yanıtlarındaki tüm alanlar.
  </Card>

  <Card title="Telefon numaraları referansı" icon="phone" href="/api-reference/phone-numbers">
    Ajan atayın, kuruluşlar arasında aktarın, numaraları serbest bırakın.
  </Card>

  <Card title="Giden aramalar yapın" icon="arrow-up-right" href="/tr/guides/place-outbound-calls">
    Numara artık size ait olduğuna göre, giden aramalar yapmaya başlayın.
  </Card>
</CardGroup>
