விரைவுத் தொடக்கம் (API)

இந்த வழிகாட்டி, உங்கள் முதல் தொலைபேசி அழைப்புக்கு AI ஏஜென்ட் பதிலளிக்கத் தேவையான நான்கு REST அழைப்புகள் வழியாக உங்களை அழைத்துச் செல்கிறது.

படி 1: API விசையைப் பெறுங்கள்

  1. உள்நுழையுங்கள்

    app.thunderphone.com திறக்கவும்.

  2. விசைகளுக்குச் செல்லுங்கள்

    டாஷ்போர்டில் நிறுவனம் → விசைகள் என்பதற்குச் செல்லுங்கள்.

  3. விசையை உருவாக்குங்கள்

    விசையை உருவாக்கு என்பதைக் கிளிக் செய்து, அதற்குப் பெயரிட்டு, sk_live_... மதிப்பை நகலெடுக்கவும். மூல விசை ஒருமுறை மட்டுமே காட்டப்படும் — அதை உடனடியாக உங்கள் ரகசிய மேலாளரில் சேமிக்கவும்.

இந்த வழிகாட்டி முழுவதும், நீங்கள் இப்போது நகலெடுத்த மதிப்புடன் sk_live_YOUR_API_KEY ஐ மாற்றுங்கள். விசை உங்கள் நிறுவனத்தைத் தானாகவே அடையாளம் காண்பதால், URL-களில் நீங்கள் ஒருபோதும் நிறுவன ID ஐச் சேர்க்க வேண்டியதில்லை.

படி 2: ஒரு ஏஜென்டை உருவாக்குங்கள்

AI உரையாடல்களை எவ்வாறு கையாளுகிறது என்பதை ஒரு ஏஜென்ட் வரையறுக்கிறது — prompt, குரல், தயாரிப்பு நிலை, கருவிகள் மற்றும் widget பயன்படுத்துவதற்கான தகுதி.

curl -X POST https://api.thunderphone.com/v1/agents \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name":   "Customer Support",
    "prompt": "You are a friendly support agent for Acme Corp. Help with orders, returns, and product info. Be concise and helpful.",
    "voice":  "john",
    "product": "spark"
  }'
import os, requests

agent = requests.post(
    "https://api.thunderphone.com/v1/agents",
    headers={"Authorization": f"Bearer {os.environ['THUNDERPHONE_API_KEY']}"},
    json={
        "name":   "Customer Support",
        "prompt": "You are a friendly support agent for Acme Corp. Help with orders, returns, and product info. Be concise and helpful.",
        "voice":  "john",
        "product": "spark",
    },
).json()
print("Agent id:", agent["id"])
const agent = await fetch("https://api.thunderphone.com/v1/agents", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.THUNDERPHONE_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    name:    "Customer Support",
    prompt:  "You are a friendly support agent for Acme Corp. Help with orders, returns, and product info. Be concise and helpful.",
    voice:   "john",
    product: "spark",
  }),
}).then((r) => r.json());
console.log("Agent id:", agent.id);

படி 3: ஒரு தொலைபேசி எண்ணை ஒதுக்கவும்

இந்த அழைப்பு ThunderPhone-இன் டெமோ குளத்திடம் ஒரு எண்ணைக் கோரி, உங்கள் புதிய ஏஜென்ட்டை உள்வரும் அழைப்புக் கையாளராக ஒதுக்குகிறது. (VoIP வழங்குநரிடமிருந்து உங்கள் சொந்த எண்ணைக் கொண்டு வர, அதற்குப் பதிலாக VoIP இணைப்புகளை பார்க்கவும்.)

# First provision
curl -X POST https://api.thunderphone.com/v1/phone-numbers \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"area_code": "415"}'

# Then assign the agent you created in Step 2
curl -X PATCH https://api.thunderphone.com/v1/phone-numbers/<id-from-previous> \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"inbound_agent_id": 12}'
number = requests.post(
    "https://api.thunderphone.com/v1/phone-numbers",
    headers={"Authorization": f"Bearer {os.environ['THUNDERPHONE_API_KEY']}"},
    json={"area_code": "415"},
).json()
requests.patch(
    f"https://api.thunderphone.com/v1/phone-numbers/{number['id']}",
    headers={"Authorization": f"Bearer {os.environ['THUNDERPHONE_API_KEY']}"},
    json={"inbound_agent_id": agent["id"]},
)
print("Your ThunderPhone number:", number["number"])

உங்கள் புதிய எண் முதலில் status="provisioning" நிலையில் இருக்கும்; சில விநாடிகளில் active நிலைக்கு மாறும். நீங்கள் உலாவியை மூடும் நேரத்திற்குள் அந்த எண் அழைப்புகளை ஏற்கத் தயாராகிவிடும்.

படி 4 (விருப்பத்தேர்வு): ஒரு வெப்ஹுக்கை அமைக்கவும்

நிகழ்நேர நிகழ்வுகளுக்கு (மாறும் அழைப்பு வழிமாற்றம், அழைப்புக்குப் பிந்தைய செயலாக்கம்) ஒரு வெப்ஹுக் எண்ட்பாயிண்ட்டைச் சேர்க்கவும். உங்களுக்குத் தேவையான நிகழ்வுகளுக்கு மட்டும் சந்தா பெறவும்.

curl -X POST https://api.thunderphone.com/v1/developer/webhook-endpoints \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "label":  "Prod webhook",
    "url":    "https://your-server.com/thunderphone-webhook",
    "events": ["telephony.incoming", "telephony.complete"]
  }'

பதிலில் ஒருமுறை மட்டுமே வழங்கப்படும் secret உள்ளது — அதை உங்கள் ரகசிய மேலாளருக்கு நகலெடுக்கவும். உள்வரும் கோரிக்கைகளில் உள்ள X-ThunderPhone-Signature தலைப்பைச் சரிபார்க்க அந்த ரகசியத்தைப் பயன்படுத்தவும் (வெப்ஹுக்குகள் கண்ணோட்டத்தை பார்க்கவும்).

படி 5: உங்கள் ஏஜென்ட்டைச் சோதிக்கவும்

நீங்கள் இப்போது ஒதுக்கிய எண்ணுக்கு அழைக்கவும். ஏஜென்ட் அழைப்பை ஏற்று, தன்னை அறிமுகப்படுத்தி, உங்கள் prompt-ஐப் பின்பற்றும்.

அழைப்பு முடிந்ததும் அதை ஆய்வு செய்யவும்:

curl https://api.thunderphone.com/v1/calls \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"

உரைநகல் மற்றும் பதிவு URL-ஐப் பெற, ஒரு குறிப்பிட்ட அழைப்பின் விவரங்களுக்குச் செல்லவும்:

curl https://api.thunderphone.com/v1/calls/{call_id}/transcript \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"
curl https://api.thunderphone.com/v1/calls/{call_id}/audio \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"

அடுத்த படிகள்