API ਹਵਾਲਾ

Tenant API ਦੀ ਵਰਤੋਂ ਕਰਕੇ enuchat ਨੂੰ ਆਪਣੇ ਸਿਸਟਮਾਂ ਵਿੱਚ ਏਕੀਕ੍ਰਿਤ ਕਰੋ। ਗੱਲਬਾਤਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰੋ, ਸੰਦੇਸ਼ ਭੇਜੋ ਅਤੇ ਬਿਲਿੰਗ ਡੇਟਾ ਨੂੰ ਪ੍ਰੋਗਰਾਮਿੰਗ ਢੰਗ ਨਾਲ ਐਕਸੈਸ ਕਰੋ।

ਪ੍ਰਮਾਣਿਕਤਾ

ਸਾਰੀਆਂ API ਬੇਨਤੀਆਂ ਨੂੰ X-Api-Key ਹੈਡਰ ਵਿੱਚ ਭੇਜੀ ਇੱਕ API ਕੁੰਜੀ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪ੍ਰਮਾਣਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।

ਆਪਣੀ API ਕੁੰਜੀ ਪ੍ਰਾਪਤ ਕਰਨਾ

  1. ਆਪਣੇ ਡੈਸ਼ਬੋਰਡ ਵਿੱਚ Settings → API Keys 'ਤੇ ਜਾਓ
  2. Create API Key 'ਤੇ ਕਲਿੱਕ ਕਰੋ ਅਤੇ ਇਸਨੂੰ ਇੱਕ ਨਾਮ ਦਿਓ
  3. ਕੁੰਜੀ ਨੂੰ ਤੁਰੰਤ ਕਾਪੀ ਕਰੋ — ਇਹ ਸਿਰਫ਼ ਇੱਕ ਵਾਰ ਦਿਖਾਈ ਜਾਂਦੀ ਹੈ
  4. ਇਸਨੂੰ ਸੁਰੱਖਿਅਤ ਢੰਗ ਨਾਲ ਸਟੋਰ ਕਰੋ (ਵਾਤਾਵਰਣ ਵੇਰੀਏਬਲ, ਰਹੱਸ ਪ੍ਰਬੰਧਕ)

ਬੇਨਤੀਆਂ ਕਰਨਾ

ਹਰ ਬੇਨਤੀ ਵਿੱਚ ਕੁੰਜੀ ਸ਼ਾਮਲ ਕਰੋ:

curl -H "X-Api-Key: tak_your_key_here" \
     https://api.enuchat.com/api/v1/tenant-api/widgets

ਸਾਰੇ ਜਵਾਬ JSON ਹਨ। ਸਫਲ ਜਵਾਬਾਂ ਵਿੱਚ ਇੱਕ data ਫੀਲਡ ਹੁੰਦੀ ਹੈ। ਗਲਤੀਆਂ ਵਿੱਚ code ਅਤੇ message ਨਾਲ ਇੱਕ error ਫੀਲਡ ਹੁੰਦੀ ਹੈ।

ਸੁਰੱਖਿਆ: API ਕੁੰਜੀਆਂ ਸਾਡੇ ਡੇਟਾਬੇਸ ਵਿੱਚ ਹੈਸ਼ (SHA-256) ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। ਅਸੀਂ ਕਦੇ ਵੀ ਕੱਚੀ ਕੁੰਜੀ ਨੂੰ ਸਟੋਰ ਨਹੀਂ ਕਰਦੇ। ਆਪਣੀ ਕੁੰਜੀ ਨੂੰ ਪਾਸਵਰਡ ਵਾਂਗ ਸਮਝੋ — ਇਸਨੂੰ ਕੋਡ ਵਿੱਚ ਕਮਿਟ ਨਾ ਕਰੋ ਜਾਂ ਜਨਤਕ ਤੌਰ 'ਤੇ ਸਾਂਝਾ ਨਾ ਕਰੋ।

Base URL

https://api.enuchat.com/api/v1/tenant-api

ਹੇਠਾਂ ਸਾਰੇ ਐਂਡਪੁਆਇੰਟ ਇਸ base URL ਦੇ ਅਨੁਸਾਰੀ ਹਨ।

ਐਂਡਪੁਆਇੰਟ

GET /widgets

ਆਪਣੇ ਖਾਤੇ ਲਈ ਸਾਰੇ ਵਿਜੇਟਾਂ ਨੂੰ ਸੂਚੀਬੱਧ ਕਰੋ।

ਜਵਾਬ

{'{'}
  "data": [
{'{'}
      "id": "019d19c6-7e0b-...",
      "name": "Main Website Chat",
      "isActive": true,
      "aiEnabled": true,
      "translationEnabled": true,
      "primaryColor": "#2563eb",
      "position": "bottom-right"
    }
  ]
}

GET /conversations

ਗੱਲਬਾਤਾਂ ਦੀ ਸੂਚੀ ਬਣਾਓ, ਸਭ ਤੋਂ ਤਾਜ਼ਾ ਸੰਦੇਸ਼ ਦੁਆਰਾ ਆਰਡਰ ਕੀਤੀਆਂ ਗਈਆਂ।

Query Parameters

ਪੈਰਾਮੀਟਰਕਿਸਮਵਰਣਨ
statusstringਸਥਿਤੀ ਦੁਆਰਾ ਫਿਲਟਰ ਕਰੋ: open, pending, closed
widgetIdstringਵਿਜੇਟ UUID ਦੁਆਰਾ ਫਿਲਟਰ ਕਰੋ
limitintegerਵੱਧ ਤੋਂ ਵੱਧ ਨਤੀਜੇ (ਡਿਫਾਲਟ 20, ਅਧਿਕਤਮ 100)
offsetintegerN ਨਤੀਜੇ ਛੱਡੋ

ਉਦਾਹਰਣ

curl -H "X-Api-Key: tak_..." \
     "https://api.enuchat.com/api/v1/tenant-api/conversations?status=open&limit=10"

ਜਵਾਬ

{'{'}
  "data": [
{'{'}
      "id": "019d6724-000e-...",
      "widgetId": "019d19c6-7e0b-...",
      "visitorId": "v-abc123",
      "visitorName": "John",
      "visitorEmail": "john{'@'}example.com",
      "visitorLanguage": "en",
      "status": "open",
      "assignedTo": null,
      "lastMessageAt": "2026-04-11T14:30:00+00:00",
      "startedAt": "2026-04-11T14:25:00+00:00"
    }
  ]
}

GET /conversations/{'{'}id}

ਸਾਰੇ ਸੰਦੇਸ਼ਾਂ ਨਾਲ ਇੱਕ ਗੱਲਬਾਤ ਪ੍ਰਾਪਤ ਕਰੋ।

Query Parameters

ਪੈਰਾਮੀਟਰਕਿਸਮਵਰਣਨ
limitintegerਵੱਧ ਤੋਂ ਵੱਧ ਸੰਦੇਸ਼ (ਡਿਫਾਲਟ 50, ਅਧਿਕਤਮ 200)

ਜਵਾਬ

{'{'}
  "data": {'{'}
    "id": "019d6724-000e-...",
    "visitorLanguage": "en",
    "status": "open",
    "messages": [
{'{'}
        "id": "019d6724-1234-...",
        "role": "visitor",
        "content": "Hello, how much does it cost?",
        "contentLanguage": "en",
        "translatedContent": "Cześć, ile to kosztuje?",
        "translatedLanguage": "pl",
        "isAutoReply": false,
        "createdAt": "2026-04-11T14:25:30+00:00"
      },
{'{'}
        "id": "019d6724-5678-...",
        "role": "ai",
        "content": "Our plans start at €19/month...",
        "isAutoReply": true,
        "createdAt": "2026-04-11T14:25:32+00:00"
      }
    ]
  }
}

POST /conversations/{'{'}id}/messages

ਇੱਕ ਗੱਲਬਾਤ ਨੂੰ ਇੱਕ ਸੰਦੇਸ਼ ਭੇਜੋ। ਸੰਦੇਸ਼ ਚੈਟ ਵਿਜੇਟ ਰਾਹੀਂ ਰੀਅਲ-ਟਾਈਮ ਵਿੱਚ ਵਿਜ਼ਟਰ ਨੂੰ ਪਹੁੰਚਾਇਆ ਜਾਵੇਗਾ।

Request Body

{'{'}
  "content": "Thanks for reaching out! We'll process your request.",
  "role": "system"
}
ਫੀਲਡਕਿਸਮਵਰਣਨ
contentstringਲੋੜੀਂਦਾ। ਸੰਦੇਸ਼ ਟੈਕਸਟ।
rolestringsystem (ਡਿਫਾਲਟ) ਜਾਂ operator

ਜਵਾਬ (201 Created)

{'{'}
  "data": {'{'}
    "id": "019d6725-abcd-...",
    "role": "system",
    "content": "Thanks for reaching out!",
    "createdAt": "2026-04-11T14:35:00+00:00"
  }
}

PATCH /conversations/{'{'}id}

ਇੱਕ ਗੱਲਬਾਤ ਦੀ ਸਥਿਤੀ ਜਾਂ ਅਸਾਈਨਮੈਂਟ ਨੂੰ ਅਪਡੇਟ ਕਰੋ।

Request Body

{'{'}
  "status": "closed"
}
ਫੀਲਡਕਿਸਮਵਰਣਨ
statusstringopen, pending, ਜਾਂ closed
assignedTostring|nullਨਿਯੁਕਤ ਕਰਨ ਲਈ ਓਪਰੇਟਰ UUID, ਜਾਂ ਅਣ-ਨਿਯੁਕਤ ਕਰਨ ਲਈ null

GET /billing/balance

ਆਪਣੀ ਮੌਜੂਦਾ ਯੋਜਨਾ ਅਤੇ ਕ੍ਰੈਡਿਟ ਬੈਲੰਸ ਪ੍ਰਾਪਤ ਕਰੋ।

ਜਵਾਬ

{'{'}
  "data": {'{'}
    "plan": "pro",
    "creditBalance": 4500000,
    "totalCreditsAdded": 10000000
  }
}

ਗਲਤੀ ਹੈਂਡਲਿੰਗ

ਗਲਤੀਆਂ JSON ਬਾਡੀ ਦੇ ਨਾਲ ਇੱਕ ਨਾਨ-2xx ਸਟੇਟਸ ਕੋਡ ਵਾਪਸ ਕਰਦੀਆਂ ਹਨ:

{'{'}
  "error": {'{'}
    "code": "NOT_FOUND",
    "message": "Conversation not found."
  }
}
HTTP ਸਟੇਟਸਅਰਥ
401ਅਵੈਧ, ਮਿਆਦ ਪੁੱਗ ਚੁੱਕੀ ਜਾਂ ਗੁੰਮ API ਕੁੰਜੀ
400ਅਵੈਧ ਬੇਨਤੀ ਬਾਡੀ ਜਾਂ ਪੈਰਾਮੀਟਰ
404ਸਰੋਤ ਨਹੀਂ ਮਿਲਿਆ (ਜਾਂ ਇੱਕ ਵੱਖਰੇ ਕਿਰਾਏਦਾਰ ਨਾਲ ਸੰਬੰਧਿਤ ਹੈ)
500ਸਰਵਰ ਗਲਤੀ

ਆਮ ਵਰਤੋਂ ਦੇ ਕੇਸ

CRM ਏਕੀਕਰਣ

ਨਵੀਆਂ ਗੱਲਬਾਤਾਂ ਲਈ ਪੋਲ ਕਰੋ ਅਤੇ ਵਿਜ਼ਟਰ ਡੇਟਾ (ਨਾਮ, ਈਮੇਲ, ਭਾਸ਼ਾ) ਨੂੰ ਆਪਣੇ CRM ਨਾਲ ਸਿੰਕ ਕਰੋ। ਬਾਹਰੀ ਹਵਾਲੇ ਵਜੋਂ ਗੱਲਬਾਤ ID ਦੀ ਵਰਤੋਂ ਕਰੋ।

ਆਟੋਮੈਟਿਕ ਫਾਲੋ-ਅੱਪ

ਗੱਲਬਾਤ ਬੰਦ ਹੋਣ ਤੋਂ ਬਾਅਦ, API ਰਾਹੀਂ ਇੱਕ ਫਾਲੋ-ਅੱਪ ਸੰਦੇਸ਼ ਭੇਜੋ: "Thanks for chatting! Is there anything else we can help with?"

ਵੈੱਬਹੁੱਕ ਵਿਕਲਪ

ਜਦੋਂ ਤੱਕ ਆਊਟਗੋਇੰਗ ਵੈੱਬਹੁੱਕ ਉਪਲਬਧ ਨਹੀਂ ਹੁੰਦੇ, ਨਵੇਂ ਸੰਦੇਸ਼ਾਂ ਜਾਂ ਸਥਿਤੀ ਤਬਦੀਲੀਆਂ ਦੀ ਪਛਾਣ ਕਰਨ ਲਈ ਸਮੇਂ-ਸਮੇਂ 'ਤੇ ਗੱਲਬਾਤ ਐਂਡਪੁਆਇੰਟ ਨੂੰ ਪੋਲ ਕਰੋ।

ਬਲਕ ਓਪਰੇਸ਼ਨ

7 ਦਿਨਾਂ ਤੋਂ ਪੁਰਾਣੀਆਂ ਸਾਰੀਆਂ ਗੱਲਬਾਤਾਂ ਬੰਦ ਕਰੋ, ਬਾਹਰੀ ਤਰਕ ਦੇ ਆਧਾਰ 'ਤੇ ਗੱਲਬਾਤਾਂ ਨੂੰ ਓਪਰੇਟਰਾਂ ਨੂੰ ਨਿਯੁਕਤ ਕਰੋ, ਜਾਂ ਵਿਸ਼ਲੇਸ਼ਣ ਲਈ ਗੱਲਬਾਤ ਇਤਿਹਾਸ ਨੂੰ ਨਿਰਯਾਤ ਕਰੋ।

ਦਰ ਸੀਮਾਵਾਂ

API ਪ੍ਰਤੀ API ਕੁੰਜੀ 60 ਬੇਨਤੀਆਂ ਪ੍ਰਤੀ ਮਿੰਟ ਤੱਕ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। ਜੇਕਰ ਤੁਸੀਂ ਇਸ ਸੀਮਾ ਤੋਂ ਵੱਧ ਜਾਂਦੇ ਹੋ, ਤੁਹਾਨੂੰ ਇੱਕ 429 Too Many Requests ਜਵਾਬ ਮਿਲੇਗਾ। ਰੁਕੋ ਅਤੇ ਘਾਤਾਂਕੀ ਬੈਕਆਫ਼ ਨਾਲ ਮੁੜ ਕੋਸ਼ਿਸ਼ ਕਰੋ।

ਏਕੀਕ੍ਰਿਤ ਕਰਨ ਲਈ ਤਿਆਰ?

ਆਪਣਾ ਮੁਫ਼ਤ ਖਾਤਾ ਬਣਾਓ ਅਤੇ ਕੁਝ ਮਿੰਟਾਂ ਵਿੱਚ ਇੱਕ API ਕੁੰਜੀ ਤਿਆਰ ਕਰੋ।

ਮੁਫ਼ਤ ਸ਼ੁਰੂ ਕਰੋ