मुख्य सामग्री पर जाएं

Instances Manage करना

एक instance Wappfy से जुड़े एक single WhatsApp number को represent करता है। प्रत्येक instance एक lifecycle से गुजरता है: create, connect, QR scan, उपयोग, और अंत में disconnect या delete।

Instance Types

Wappfy दो providers को support करता है:
Typeविवरण
wahaWAHA Plus के माध्यम से Self-hosted WhatsApp Web API। Groups, labels, और contacts सहित पूर्ण feature support।
cloud_apiMeta का official WhatsApp Business Cloud API। Meta Business account आवश्यक है।

Instance Status Values

अपने lifecycle के दौरान, एक instance इन statuses से गुजरता है:
Statusविवरण
createdInstance record मौजूद है लेकिन अभी तक शुरू नहीं किया गया।
startingInstance boot हो रहा है और WhatsApp session initialize कर रहा है।
scan_qrInstance आपके phone से QR code scan करने की प्रतीक्षा कर रहा है।
connectedWhatsApp session active है और messages भेजने/प्राप्त करने के लिए तैयार है।
disconnectedSession रोक दिया गया या connection टूट गया। फिर से connect किया जा सकता है।
failedStartup या connection के दौरान instance में error आया।

Lifecycle Overview


एक Instance बनाएं

अपने account से जुड़ा एक नया WhatsApp instance बनाएं।
curl -X POST https://api.wappfy.io/api/instances \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "My WhatsApp",
    "type": "waha"
  }'
Response:
{
  "data": {
    "id": "inst_abc123",
    "name": "My WhatsApp",
    "type": "waha",
    "status": "created",
    "created_at": "2026-02-10T12:00:00Z"
  }
}

एक Instance Connect करें

WhatsApp session शुरू करें। Instance starting और फिर scan_qr status में transition करेगा।
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/connect \
  -H "X-Api-Key: YOUR_API_KEY"
Response:
{
  "data": {
    "id": "inst_abc123",
    "status": "starting"
  }
}

QR Code प्राप्त करें

जब instance scan_qr status तक पहुंच जाए, तो अपने phone से scan करने के लिए QR code प्राप्त करें।
curl https://api.wappfy.io/api/instances/inst_abc123/qr \
  -H "X-Api-Key: YOUR_API_KEY"
Response:
{
  "data": {
    "qr": "data:image/png;base64,iVBORw0KGgo..."
  }
}
QR code लगभग 60 seconds बाद expire हो जाता है। यदि scan करने से पहले यह expire हो जाए, तो नया code प्राप्त करने के लिए endpoint को फिर से call करें।
QR code image खोलें और अपने phone पर WhatsApp > Linked Devices > Link a Device से इसे scan करें। Scan होने के बाद, instance का status connected में बदल जाएगा।

Instance Status जांचें

Instance कब तैयार है यह जानने के लिए status endpoint को poll करें।
curl https://api.wappfy.io/api/instances/inst_abc123/status \
  -H "X-Api-Key: YOUR_API_KEY"
Response:
{
  "data": {
    "id": "inst_abc123",
    "status": "connected",
    "phone_number": "5511999998888"
  }
}
Polling के बजाय, real-time notifications प्राप्त करने के लिए instance.connected और instance.qr events के लिए webhook सेट अप करें।

सभी Instances की सूची

अपने account की सभी instances प्राप्त करें।
curl https://api.wappfy.io/api/instances \
  -H "X-Api-Key: YOUR_API_KEY"
Response:
{
  "data": [
    {
      "id": "inst_abc123",
      "name": "My WhatsApp",
      "type": "waha",
      "status": "connected"
    },
    {
      "id": "inst_def456",
      "name": "Support Line",
      "type": "waha",
      "status": "disconnected"
    }
  ]
}

एक Instance Disconnect करें

Instance को delete किए बिना WhatsApp session रोकें। आप बाद में फिर से connect कर सकते हैं।
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/disconnect \
  -H "X-Api-Key: YOUR_API_KEY"

एक Instance Restart करें

WhatsApp session restart करें। यह तब उपयोगी है जब instance failed state में हो या अप्रत्याशित व्यवहार कर रहा हो।
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/restart \
  -H "X-Api-Key: YOUR_API_KEY"
Restart करने से linked WhatsApp session सुरक्षित रहता है। आपको QR code फिर से scan नहीं करना होगा।

एक Instance Logout करें

WhatsApp से पूरी तरह logout करें। यह phone को session से unlink करता है। फिर से connect करने के लिए आपको QR code फिर से scan करना होगा।
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/logout \
  -H "X-Api-Key: YOUR_API_KEY"
Logout WhatsApp link को पूरी तरह हटा देता है। Disconnect के विपरीत, इस instance को फिर से उपयोग करने के लिए आपको अनिवार्य रूप से नया QR code scan करना होगा।

एक Instance Delete करें

एक instance और उससे जुड़े सभी data को स्थायी रूप से delete करें।
curl -X DELETE https://api.wappfy.io/api/instances/inst_abc123 \
  -H "X-Api-Key: YOUR_API_KEY"
यह action अपरिवर्तनीय है। इस instance से जुड़े सभी messages, webhooks, और configuration स्थायी रूप से delete हो जाएंगे।

पूर्ण Lifecycle उदाहरण

यहां एक पूर्ण उदाहरण है जो एक instance बनाता है, उसे connect करता है, और QR code के लिए poll करता है:
# 1. Instance बनाएं
INSTANCE=$(curl -s -X POST https://api.wappfy.io/api/instances \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name": "Production", "type": "waha"}')

INSTANCE_ID=$(echo $INSTANCE | jq -r '.data.id')
echo "Created instance: $INSTANCE_ID"

# 2. Instance connect करें
curl -s -X POST "https://api.wappfy.io/api/instances/$INSTANCE_ID/connect" \
  -H "X-Api-Key: YOUR_API_KEY"

# 3. कुछ समय प्रतीक्षा करें, फिर QR code fetch करें
sleep 3
QR=$(curl -s "https://api.wappfy.io/api/instances/$INSTANCE_ID/qr" \
  -H "X-Api-Key: YOUR_API_KEY")

echo $QR | jq -r '.data.qr' > qr-code.png
echo "QR code saved to qr-code.png — scan it with your phone"

# 4. Connected status के लिए poll करें
while true; do
  STATUS=$(curl -s "https://api.wappfy.io/api/instances/$INSTANCE_ID/status" \
    -H "X-Api-Key: YOUR_API_KEY" | jq -r '.data.status')
  echo "Status: $STATUS"
  if [ "$STATUS" = "connected" ]; then
    echo "Instance is connected and ready!"
    break
  fi
  sleep 2
done

Error Handling

Status Codeविवरण
404Instance नहीं मिला या आपके account से संबंधित नहीं है।
409Instance पहले से अनुरोधित state में है (जैसे, पहले से connected)।
422अमान्य request body (जैसे, name गायब है या type अमान्य है)।
429Rate limit पार हो गई। Rate Limits देखें।