ดู Recipient ใน Campaign
GET
https://api.voice-agent.gowajee.ai/api/campaign/:id/recipientsดึง recipient ของ campaign page ละ 100 คน เรียงจากใหม่ไปเก่า แต่ละคนบอกจำนวนครั้งที่โทรไปแล้ว และ status ของ call ล่าสุด
Parameters
หัวข้อที่มีชื่อว่า “Parameters”| ชื่อ | ส่งผ่าน | Type | Default | คำอธิบาย |
|---|---|---|---|---|
id |
path | string | ID ของ campaign | |
page |
query | integer | 1 |
เลข page เริ่มที่ 1 |
ขนาด page คงที่ที่ 100 ถ้าส่ง limit มา ระบบจะไม่ใช้ค่านี้
Request
หัวข้อที่มีชื่อว่า “Request”curl "https://api.voice-agent.gowajee.ai/api/campaign/eac2489c-672c-455e-ab8c-4e0ecd18d7dc/recipients?page=1" \ -H "X-API-Key: $GOWAJEE_API_KEY"// Read every pageconst all = [];for (let page = 1; ; page++) { const res = await fetch( `https://api.voice-agent.gowajee.ai/api/campaign/${campaignId}/recipients?page=${page}`, { headers: { 'X-API-Key': process.env.GOWAJEE_API_KEY } }, ); const { data } = await res.json(); all.push(...data.recipients); if (page >= data.totalPages) break;}recipients, page = [], 1while True: data = requests.get( f"https://api.voice-agent.gowajee.ai/api/campaign/{campaign_id}/recipients", params={"page": page}, headers={"X-API-Key": os.environ["GOWAJEE_API_KEY"]}, timeout=30, ).json()["data"] recipients += data["recipients"] if page >= data["totalPages"]: break page += 1Response
หัวข้อที่มีชื่อว่า “Response”{ "success": true, "message": "Get Campaign recipients successfully", "data": { "totalRecipients": 1200, "totalPages": 12, "page": 1, "recipients": [ { "id": "5b1f0c9e-2d4a-4f6b-9a61-3c7e8d2f1a04", "customerName": "Somchai", "tel": "0812345678", "callAttempt": 2, "latestCallStatus": "COMPLETED", "agentParams": { "customer_name": "Somchai", "amount_due": 1500 }, "campaignId": "eac2489c-672c-455e-ab8c-4e0ecd18d7dc", "createdAt": "2026-09-30T08:12:44.120Z", "updatedAt": "2026-10-01T03:20:11.004Z", "personalDataMasked": false } ] }}{ "success": false, "statusCode": 404, "code": "CAMPAIGN_NOT_FOUND", "message": "Campaign not found", "errors": ["Campaign not found"]}{ "success": false, "statusCode": 400, "code": "VALIDATION_FAILED", "message": "page must be an integer of 1 or more", "errors": ["page must be an integer of 1 or more"]}| Field | Type | คำอธิบาย |
|---|---|---|
totalRecipients |
integer | จำนวน recipient ใน campaign |
totalPages |
integer | จำนวน page ทั้งหมด (page ละ 100) |
recipients[].id |
string (UUID) | ID ของ recipient ใช้กับ ดูข้อมูล Recipient |
recipients[].customerName |
string หรือ null |
เป็น null ถ้าไม่ได้ส่งชื่อมา |
recipients[].callAttempt |
integer | จำนวน call ของ recipient คนนี้ที่จบไปแล้ว ไม่นับ call ที่รอคิวนานจนหมดเวลา |
recipients[].latestCallStatus |
string หรือ null |
status ของ call ล่าสุด พอเริ่ม campaign แล้วทุกคนจะมี call เสมอ คนที่ยังไม่ได้โทรหาจึงแสดงเป็น SCHEDULED ค่านี้เป็น null เฉพาะก่อนเริ่ม campaign ดู status ของ call |
recipients[].agentParams |
object | ข้อมูลที่อัปโหลดไว้ |
recipients[].personalDataMasked |
boolean | เป็น true เมื่อระบบลบข้อมูลของคนนี้ตาม retention policy แล้ว ในกรณีนี้ tel จะแสดงแบบ mask (08xxxxxx78) และ customerName เป็น "" ส่วน agentParams ยังมีทุก key แต่ทุกค่าจะเป็น null ยกเว้น key ที่ขึ้นต้นด้วย metadata__ ซึ่งยังเก็บค่าไว้ |
body ใช้รูปแบบ error ปกติ
| Status | code |
message |
สาเหตุ |
|---|---|---|---|
400 |
INVALID_ID |
id must be a valid UUID |
id ใน path ไม่ใช่ UUID |
400 |
VALIDATION_FAILED |
page must be an integer of 1 or more |
page เป็น 0 ติดลบ ทศนิยม ว่าง หรือไม่ใช่ตัวเลข ถ้าไม่ส่ง page มาจะได้ page 1 |
404 |
CAMPAIGN_NOT_FOUND |
Campaign not found |
id ผิด หรือ campaign นี้เป็นขององค์กรอื่น |