> ## 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.

# अपने नंबर लाएँ (VoIP, API)

> Twilio या Telnyx — या किसी भी SIP ट्रंक — को कनेक्ट करें और अपने मौजूदा अकाउंट से फोन नंबर इंपोर्ट करें।

प्रोटोटाइपिंग के लिए डेमो नंबर ठीक हैं, लेकिन प्रोडक्शन ट्रैफ़िक में आपके अपने VoIP प्रदाता के माध्यम से आपके स्वामित्व वाले नंबरों का उपयोग होना चाहिए। यह गाइड आपको तीन-स्टेप की प्रक्रिया से ले जाती है: **क्रेडेंशियल्स टेस्ट करें → कनेक्शन बनाएं → नंबर इंपोर्ट करें → सत्यापित करें**।

<Note>
  डैशबोर्ड में इस पूरी प्रक्रिया का एक निर्देशित संस्करण
  **Connections → VoIP** (`/dashboard/voip-connections`) के अंतर्गत उपलब्ध है: अकाउंट
  बनाने और API keys के लिए Telnyx निर्देशित सेटअप, मौजूदा अकाउंट को
  कनेक्ट करने का विकल्प, और AI सेटअप-गाइड जनरेटर के साथ एक मैन्युअल SIP
  फ़ॉर्म।
</Note>

## समर्थित प्रदाता

| प्रदाता    | `provider` id | नोट्स                                                                |
| ---------- | ------------- | -------------------------------------------------------------------- |
| Twilio     | `twilio`      | API key + सीक्रेट                                                    |
| Telnyx     | `telnyx`      | API key; निर्देशित ऑनबोर्डिंग उपलब्ध (`setup_method: guided_telnyx`) |
| SignalWire | `signalwire`  | **शीघ्र उपलब्ध** — आज ही Manual SIP के माध्यम से कनेक्ट करें         |
| Vonage     | `vonage`      | **शीघ्र उपलब्ध** — आज ही Manual SIP के माध्यम से कनेक्ट करें         |
| Manual SIP | `manual`      | कोई भी SIP ट्रंक — अपना कॉन्फ़िगरेशन लाएं                            |

## 1. क्रेडेंशियल्स टेस्ट करें

स्थायी VoIP कनेक्शन बनाने से पहले, प्रदाता के
क्रेडेंशियल्स की जांच करें ताकि पुष्टि हो सके कि वे काम कर रहे हैं। इससे एक
`verification_evidence_id` मिलता है, जिसे आप बनाने के चरण में पास करते हैं ताकि
टेस्टिंग के लिए क्रेडेंशियल्स से दो बार शुल्क न लिया जाए।

```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
  }
}
```

अगर कोई जांच विफल होती है, तो रिस्पॉन्स `status` `fail` होगा और `checks`
बताएगा कि कौन-सा चरण विफल हुआ। प्रदाता-पक्ष का कॉन्फ़िगरेशन (ट्रंक
असाइनमेंट, IP allowlist, आउटबाउंड ऑथराइज़ेशन) ठीक करें और फिर से प्रयास करें।

## 2. कनेक्शन बनाएं

अभी प्राप्त किया गया `verification_evidence_id` पास करें:

```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..."
  }'
```

रिस्पॉन्स `status="connected"` में एक [VoipConnection ऑब्जेक्ट](/api-reference/voip-connections#connection-object)
होता है। क्रेडेंशियल्स सर्वर-साइड स्टोर किए जाते हैं और बाद के GET अनुरोधों में
कभी भी प्लेन टेक्स्ट में वापस नहीं किए जाते — रोटेट करने के लिए, नया
`test` चलाएं और नए एविडेंस के साथ PATCH करें।

## 3. नंबर सूचीबद्ध करें और इंपोर्ट करें

अपने क्रेडेंशियल्स को दिखाई देने वाले उन नंबरों की जांच करें जो पहले से
किसी ThunderPhone संगठन में नहीं हैं:

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

फिर जिन नंबरों की आवश्यकता हो, उन्हें इंपोर्ट करें:

```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"]}'
```

हर इंपोर्ट आपके संगठन में `source="voip"` और `status="provisioning"` के साथ एक [फोन नंबर रिसोर्स](/api-reference/phone-numbers)
बन जाता है।

## 4. हर इंपोर्ट किए गए नंबर को वेरिफ़ाई करें

इंपोर्ट करने से नंबर *उपलब्ध* के रूप में रजिस्टर होता है; वास्तव में उसके
ज़रिए कॉल रूट करने के लिए राउंड-ट्रिप वेरिफ़िकेशन (इनबाउंड डायल-इन जाँच +
आउटबाउंड ऑथराइज़ेशन प्रोब) की आवश्यकता होती है।

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

सफल होने पर, `voip_verification_status` बदलकर `verified` हो जाता है और
नंबर `status="active"` में प्रवेश करता है। विफल होने पर, रिस्पॉन्स में स्पष्ट होता है
कि क्या विफल हुआ — उसे ठीक करें (अक्सर प्रोवाइडर डैशबोर्ड में ट्रंक असाइनमेंट
नहीं होता है) और फिर से कॉल करें।

## 5. एजेंट असाइन करें और कॉल लें

नंबर वेरिफ़ाई हो जाने के बाद, आप इनबाउंड / आउटबाउंड एजेंट को
डेमो नंबर की तरह ही असाइन करते हैं। देखें
[इनबाउंड कॉल हैंडल करें](/hi/guides/handle-inbound-calls) और
[आउटबाउंड कॉल करें](/hi/guides/place-outbound-calls)।

## क्रेडेंशियल रोटेट करना

जब प्रोवाइडर की रोटेट होती है, तो टेस्ट-फिर-अपडेट फ़्लो दोबारा चलाएँ:

```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"
  }'
```

कनेक्शन अपनी जगह बना रहता है — नंबर फिर से इंपोर्ट करने की आवश्यकता नहीं है।

***

## अगले चरण

<CardGroup cols={2}>
  <Card title="VoIP कनेक्शन रेफरेंस" icon="phone-volume" href="/api-reference/voip-connections">
    कनेक्शन, एविडेंस और इंपोर्ट रिस्पॉन्स के हर फ़ील्ड की जानकारी।
  </Card>

  <Card title="फ़ोन नंबर रेफरेंस" icon="phone" href="/api-reference/phone-numbers">
    एजेंट असाइन करें, संगठनों के बीच ट्रांसफ़र करें, नंबर रिलीज़ करें।
  </Card>

  <Card title="आउटबाउंड कॉल करें" icon="arrow-up-right" href="/hi/guides/place-outbound-calls">
    अब जब नंबर आपका है, तो आउटबाउंड कॉल करना शुरू करें।
  </Card>
</CardGroup>
