डैशबोर्ड पर वापस जाएं

दस्तावेज़ीकरण

Asyntai का उपयोग करना सीखें

API संदर्भ

Asyntai REST API के साथ कस्टम इंटीग्रेशन बनाएं

API कुंजी प्राप्त करें

सशुल्क प्लान आवश्यक: API पहुँच Starter, Standard और Pro प्लान पर उपलब्ध है। मूल्य निर्धारण देखें

अवलोकन

Asyntai API आपको किसी भी एप्लिकेशन में AI-संचालित ग्राहक सहायता इंटीग्रेट करने की अनुमति देता है। संदेश भेजें और अपनी वेबसाइट सामग्री और ज्ञान आधार पर प्रशिक्षित बुद्धिमान प्रतिक्रियाएँ प्राप्त करें।

प्रमाणीकरण

सभी API अनुरोधों के लिए आपकी API कुंजी का उपयोग करके प्रमाणीकरण आवश्यक है। आप अपनी API कुंजी API सेटिंग्स पेज से प्राप्त कर सकते हैं।

इनमें से किसी एक विधि का उपयोग करके अनुरोधों में अपनी API कुंजी शामिल करें:

  • Authorization हेडर (अनुशंसित): Authorization: Bearer YOUR_API_KEY
  • X-API-Key हेडर: X-API-Key: YOUR_API_KEY

अपनी API कुंजी गोपनीय रखें। आपकी कुंजी वाला कोई भी व्यक्ति API के माध्यम से आपके खाते तक पहुँच सकता है। इसे कभी भी क्लाइंट-साइड कोड में उजागर न करें।

बेस URL

https://asyntai.com/api/v1/

एंडपॉइंट्स

POST /chat/

एक संदेश भेजें और AI-जनित प्रतिक्रिया प्राप्त करें।

अनुरोध बॉडी

{
  "message": "What are your business hours?",
  "session_id": "user_123",      // optional
  "website_id": 1                 // optional
}
पैरामीटर प्रकार आवश्यक विवरण
message string हाँ AI को भेजने के लिए उपयोगकर्ता का संदेश
session_id string नहीं वार्तालाप के लिए अद्वितीय पहचानकर्ता। वार्तालाप इतिहास बनाए रखने के लिए समान session_id का उपयोग करें।
website_id integer नहीं विशिष्ट वेबसाइट ID। यदि प्रदान नहीं किया गया है, तो आपकी प्राथमिक वेबसाइट का उपयोग करता है।

प्रतिक्रिया

{
  "success": true,
  "response": "Our business hours are Monday-Friday, 9 AM to 5 PM EST.",
  "session_id": "user_123"
}

उदाहरण (cURL)

curl -X POST https://asyntai.com/api/v1/chat/ \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"message": "What are your business hours?", "session_id": "user_123"}'

उदाहरण (Python)

import requests

response = requests.post(
    "https://asyntai.com/api/v1/chat/",
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
    },
    json={
        "message": "What are your business hours?",
        "session_id": "user_123"
    }
)

data = response.json()
print(data["response"])

उदाहरण (JavaScript)

const response = await fetch("https://asyntai.com/api/v1/chat/", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    message: "What are your business hours?",
    session_id: "user_123"
  })
});

const data = await response.json();
console.log(data.response);

GET /websites/

अपने खाते से जुड़ी सभी वेबसाइटों की सूची बनाएं।

प्रतिक्रिया

{
  "success": true,
  "websites": [
    {
      "id": 1,
      "name": "My Website",
      "domain": "example.com",
      "is_primary": true
    }
  ]
}

उदाहरण (cURL)

curl https://asyntai.com/api/v1/websites/ \
  -H "Authorization: Bearer YOUR_API_KEY"

GET /conversations/

किसी विशिष्ट सत्र के लिए वार्तालाप इतिहास प्राप्त करें।

क्वेरी पैरामीटर

पैरामीटर प्रकार आवश्यक विवरण
session_id string हाँ जिस सत्र का इतिहास प्राप्त करना है उसकी सत्र ID
limit integer नहीं लौटाने के लिए अधिकतम संदेश (डिफ़ॉल्ट: 50, अधिकतम: 100)

प्रतिक्रिया

{
  "success": true,
  "session_id": "user_123",
  "messages": [
    {
      "role": "user",
      "content": "What are your business hours?",
      "timestamp": "2024-01-15T10:30:00Z"
    },
    {
      "role": "assistant",
      "content": "Our business hours are Monday-Friday, 9 AM to 5 PM EST.",
      "timestamp": "2024-01-15T10:30:01Z"
    }
  ]
}

उदाहरण (cURL)

curl "https://asyntai.com/api/v1/conversations/?session_id=user_123&limit=20" \
  -H "Authorization: Bearer YOUR_API_KEY"

GET /sessions/

अपने हाल के चैट सत्रों की सूची बनाएं। सत्र ID खोजने के लिए इसका उपयोग करें, जिन्हें आप पूर्ण संदेश इतिहास प्राप्त करने के लिए /conversations/ को पास कर सकते हैं।

क्वेरी पैरामीटर

पैरामीटर प्रकार आवश्यक विवरण
limit integer नहीं लौटाने के लिए हाल के सत्रों की संख्या (डिफ़ॉल्ट: 20, अधिकतम: 100)
website_id string नहीं किसी विशिष्ट वेबसाइट ID द्वारा सत्र फ़िल्टर करें
source string नहीं सत्र स्रोत द्वारा फ़िल्टर करें: widget, api, whatsapp, instagram, messenger, gorgias, freshchat, zapier

प्रतिक्रिया

{
  "success": true,
  "sessions": [
    {
      "session_id": "session_abc123def",
      "source": "widget",
      "message_count": 5,
      "first_message": "What are your business hours?",
      "first_message_at": "2024-01-15T10:30:00Z",
      "last_message_at": "2024-01-15T10:35:00Z",
      "website_domain": "example.com"
    }
  ]
}

उदाहरण (cURL)

curl "https://asyntai.com/api/v1/sessions/?limit=10" \
  -H "Authorization: Bearer YOUR_API_KEY"

GET /leads/

एकत्रित लीड प्राप्त करें — चैट वार्तालाप के दौरान आगंतुकों द्वारा सबमिट किए गए ईमेल पते और फ़ोन नंबर।

क्वेरी पैरामीटर

पैरामीटर प्रकार आवश्यक विवरण
limit integer नहीं लौटाने के लिए लीड की संख्या (डिफ़ॉल्ट: 50, अधिकतम: 100)
website_id string नहीं एक विशिष्ट वेबसाइट आईडी द्वारा लीड फ़िल्टर करें

प्रतिक्रिया

{
  "success": true,
  "leads": [
    {
      "session_id": "session_abc123def",
      "email": "visitor@example.com",
      "phone": "+1234567890",
      "page_url": "https://example.com/pricing",
      "started_at": "2024-01-15T10:30:00Z"
    }
  ]
}
फ़ील्ड प्रकार विवरण
session_id string चैट सत्र आईडी। पूर्ण चैट इतिहास देखने के लिए इसे /conversations/ को पास करें।
email स्ट्रिंग या null आगंतुक द्वारा प्रदान किया गया ईमेल पता, या null अगर एकत्रित नहीं किया गया
phone स्ट्रिंग या null आगंतुक द्वारा प्रदान किया गया फ़ोन नंबर, या null अगर एकत्रित नहीं किया गया
page_url स्ट्रिंग या null पृष्ठ URL जहां आगंतुक चैट कर रहा था
started_at string चैट सत्र शुरू होने का ISO 8601 टाइमस्टैम्प

उदाहरण (cURL)

curl "https://asyntai.com/api/v1/leads/?limit=20" \
  -H "Authorization: Bearer YOUR_API_KEY"

उदाहरण (Python)

import requests

response = requests.get(
    "https://asyntai.com/api/v1/leads/",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
    params={"limit": 20}
)

leads = response.json()["leads"]
for lead in leads:
    print(f"{lead['email'] or ''} | {lead['phone'] or ''}")

GET /account/

अपनी खाता जानकारी और उपयोग आंकड़े प्राप्त करें।

प्रतिक्रिया

{
  "success": true,
  "account": {
    "email": "you@example.com",
    "plan": "starter",
    "messages_used": 150,
    "messages_limit": 2500
  }
}

उदाहरण (cURL)

curl https://asyntai.com/api/v1/account/ \
  -H "Authorization: Bearer YOUR_API_KEY"

कई वेबसाइटें? ज्ञान आधार एंडपॉइंट्स डिफ़ॉल्ट रूप से आपकी प्राथमिक वेबसाइट पर सेट होते हैं। यदि आपके पास कई वेबसाइटें हैं, तो पास करें website_id किसी विशिष्ट को लक्षित करने के लिए। आप अपनी वेबसाइट ID इसका उपयोग करके खोज सकते हैं GET /websites/.

दैनिक अपलोड सीमाएँ: ज्ञान आधार अपलोड (टेक्स्ट, URL, स्प्रेडशीट) आपके Free, Starter, Standard या Pro प्लान के आधार पर दैनिक वर्ण सीमा के अधीन हैं। यह प्रति दिन सभी ज्ञान आधार एंडपॉइंट्स पर अपलोड की गई कुल सामग्री पर लागू होता है।

प्लान वर्ण/दिन
Starter1,00,000
Standard5,00,000
Pro20,00,000

GET /knowledge/

अपनी ज्ञान आधार प्रविष्टियों की सूची बनाएं। ये वे सामग्री स्रोत हैं जिनका उपयोग आपका AI चैटबॉट प्रश्नों का उत्तर देने के लिए करता है।

क्वेरी पैरामीटर

पैरामीटर प्रकार आवश्यक विवरण
limit integer नहीं लौटाने के लिए प्रविष्टियों की संख्या (डिफ़ॉल्ट: 50, अधिकतम: 100)
website_id string नहीं वेबसाइट ID द्वारा फ़िल्टर करें (डिफ़ॉल्ट रूप से आपकी प्राथमिक वेबसाइट)

प्रतिक्रिया

{
  "success": true,
  "entries": [
    {
      "id": "abc-123-def",
      "type": "text",
      "title": "Business Hours",
      "description": "Manual text content (150 words)",
      "created_at": "2024-01-15T10:30:00Z"
    },
    {
      "id": "ghi-456-jkl",
      "type": "url",
      "title": "About Us - Example",
      "description": "Content from https://example.com/about",
      "created_at": "2024-01-14T09:00:00Z"
    }
  ]
}

उदाहरण (cURL)

curl "https://asyntai.com/api/v1/knowledge/?limit=10" \
  -H "Authorization: Bearer YOUR_API_KEY"

POST /knowledge/text/

अपने ज्ञान आधार में कस्टम टेक्स्ट सामग्री जोड़ें। AI इसका उपयोग विज़िटर प्रश्नों का उत्तर देने के लिए करेगा।

अनुरोध बॉडी

{
  "title": "Return Policy",
  "content": "We offer a 30-day return policy on all items. Items must be unused and in original packaging. Refunds are processed within 5-7 business days.",
  "website_id": "123"
}
पैरामीटर प्रकार आवश्यक विवरण
title string हाँ इस ज्ञान प्रविष्टि के लिए एक शीर्षक
content string हाँ टेक्स्ट सामग्री (न्यूनतम 10 वर्ण)
website_id string नहीं लक्ष्य वेबसाइट (डिफ़ॉल्ट रूप से आपकी प्राथमिक वेबसाइट)

प्रतिक्रिया

{
  "success": true,
  "id": "abc-123-def",
  "title": "Return Policy",
  "chunks_created": 1
}

उदाहरण (cURL)

curl -X POST "https://asyntai.com/api/v1/knowledge/text/" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title": "Return Policy", "content": "We offer a 30-day return policy..."}'

POST /knowledge/url/

अपने ज्ञान आधार में एक वेबपेज जोड़ें। सामग्री स्वचालित रूप से प्राप्त और निकाली जाएगी।

अनुरोध बॉडी

{
  "url": "https://example.com/faq",
  "website_id": "123"
}
पैरामीटर प्रकार आवश्यक विवरण
url string हाँ जहां से सामग्री प्राप्त करनी है वह URL
website_id string नहीं लक्ष्य वेबसाइट (डिफ़ॉल्ट रूप से आपकी प्राथमिक वेबसाइट)

प्रतिक्रिया

{
  "success": true,
  "id": "abc-123-def",
  "title": "FAQ - Example",
  "url": "https://example.com/faq",
  "chunks_created": 5
}

उदाहरण (cURL)

curl -X POST "https://asyntai.com/api/v1/knowledge/url/" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com/faq"}'

POST /knowledge/spreadsheet/

अपने ज्ञान आधार में CSV या Excel (.xlsx) स्प्रेडशीट अपलोड करें। प्रत्येक पंक्ति एक अलग ज्ञान प्रविष्टि बन जाती है, जो उत्पाद कैटलॉग, FAQ सूचियों, मूल्य तालिकाओं और निर्देशिकाओं के लिए आदर्श है।

अनुरोध

multipart/form-data (फ़ाइल अपलोड) के रूप में भेजें, JSON नहीं।

पैरामीटर प्रकार आवश्यक विवरण
file फ़ाइल हाँ एक .csv या .xlsx फ़ाइल। पहली पंक्ति कॉलम हेडर होनी चाहिए। प्रति अपलोड अधिकतम पंक्तियाँ: Starter 500, Standard 2,000, Pro 10,000. अतिरिक्त पंक्तियाँ काट दी जाती हैं।
website_id string नहीं लक्ष्य वेबसाइट (डिफ़ॉल्ट रूप से आपकी प्राथमिक वेबसाइट)

प्रतिक्रिया

{
  "success": true,
  "id": "abc-123-def",
  "title": "products.csv",
  "rows_processed": 15,
  "chunks_created": 15
}

उदाहरण (cURL)

curl -X POST "https://asyntai.com/api/v1/knowledge/spreadsheet/" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@products.csv"

DELETE /knowledge/{id}/

ज्ञान आधार प्रविष्टि हटाएं। id GET /knowledge/ प्रतिक्रिया से प्राप्त की जा सकती है।

प्रतिक्रिया

{
  "success": true,
  "message": "Knowledge base entry deleted"
}

उदाहरण (cURL)

curl -X DELETE "https://asyntai.com/api/v1/knowledge/abc-123-def/" \
  -H "Authorization: Bearer YOUR_API_KEY"

सुझाव: आप वेबहुक्स को यहां से भी प्रबंधित कर सकते हैं API सेटिंग्स पेज से बिना कोई कोड लिखे।

GET /webhooks/

अपने पंजीकृत वेबहुक्स की सूची बनाएं।

प्रतिक्रिया

{
  "success": true,
  "webhooks": [
    {
      "id": "abc-123-def",
      "url": "https://example.com/webhook",
      "events": ["message.received", "escalation.requested"],
      "is_active": true,
      "created_at": "2024-01-15T10:30:00Z"
    }
  ]
}

उदाहरण (cURL)

curl "https://asyntai.com/api/v1/webhooks/" \
  -H "Authorization: Bearer YOUR_API_KEY"

POST /webhooks/

रियल-टाइम इवेंट सूचनाएँ प्राप्त करने के लिए एक नया वेबहुक पंजीकृत करें।

उपलब्ध इवेंट्स

इवेंट विवरण
message.received एक विज़िटर ने संदेश भेजा और प्रतिक्रिया प्राप्त की
conversation.started एक नया चैट सत्र शुरू हुआ
escalation.requested AI ने मानव एजेंट तक एस्केलेशन ट्रिगर किया
takeover.started एक मानव एजेंट ने चैट सत्र अपने हाथ में लिया

अनुरोध बॉडी

{
  "url": "https://example.com/webhook",
  "events": ["message.received", "escalation.requested"],
  "website_id": "123"
}
पैरामीटर प्रकार आवश्यक विवरण
url string हाँ वेबहुक POST अनुरोध प्राप्त करने के लिए HTTPS URL
events array हाँ सदस्यता लेने के लिए इवेंट्स की सूची (ऊपर तालिका देखें)
website_id string नहीं लक्ष्य वेबसाइट (डिफ़ॉल्ट रूप से आपकी प्राथमिक वेबसाइट)

प्रतिक्रिया

{
  "success": true,
  "webhook": {
    "id": "abc-123-def",
    "url": "https://example.com/webhook",
    "events": ["message.received", "escalation.requested"],
    "secret": "whsec_abc123...",
    "created_at": "2024-01-15T10:30:00Z"
  }
}

वेबहुक्स सत्यापित करना: प्रत्येक वेबहुक में एक secret (केवल निर्माण पर दिखाया जाता है)। आपके URL पर हर POST में एक शामिल होता है X-Webhook-Signature header — आपके secret से साइन किया गया request body का HMAC-SHA256।

उदाहरण (cURL)

curl -X POST "https://asyntai.com/api/v1/webhooks/" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com/webhook", "events": ["message.received"]}'

DELETE /webhooks/{id}/

एक वेबहुक हटाएं। id GET /webhooks/ प्रतिक्रिया से प्राप्त की जा सकती है।

प्रतिक्रिया

{
  "success": true,
  "message": "Webhook deleted"
}

उदाहरण (cURL)

curl -X DELETE "https://asyntai.com/api/v1/webhooks/abc-123-def/" \
  -H "Authorization: Bearer YOUR_API_KEY"

त्रुटि प्रतिक्रियाएँ

सभी त्रुटि प्रतिक्रियाएँ इस प्रारूप का पालन करती हैं:

{
  "success": false,
  "error": "Error message describing what went wrong"
}
स्थिति कोड विवरण
400 Bad Request - अमान्य पैरामीटर या आवश्यक फ़ील्ड गायब हैं
401 अनधिकृत - अमान्य या अनुपस्थित API कुंजी
429 Too Many Requests - आपकी plan के लिए संदेश सीमा पूरी हो गई
503 सेवा अनुपलब्ध - AI सेवा अस्थायी रूप से अनुपलब्ध

दर सीमाएँ

API उपयोग आपके subscription plan द्वारा सीमित है:

  • Free: 100 संदेश/माह
  • Starter ($39/माह): 2,500 संदेश/माह
  • Standard ($139/माह): 15,000 संदेश/माह
  • Pro ($449/माह): 50,000 संदेश/माह

मदद चाहिए?

यदि आपके कोई प्रश्न हैं या कोई समस्या आती है, तो हमसे hello@asyntai.com पर संपर्क करें।