หน้าจอไม่มีปุ่ม “API Key” เพราะคีย์ซ่อนอยู่ในลิงก์ดาวน์โหลดของ Create-a-Feed
คุณต้องการดึง product feed ของ Awin แบบอัตโนมัติ จึงรันสคริปต์ตั้งค่า
สคริปต์ถามหา API key ของฟีดสินค้า
โอเค เข้า Awin ไปที่ Toolbox แล้วเปิด Create-a-Feed
แต่ไม่มี API key ที่เห็นชัด ๆ
ไม่มีปุ่ม “API Key” ใหญ่ ๆ ไม่มีช่อง “Credentials” ไม่มีช่อง “Secret”
มีแค่จำนวนสินค้า หมวดหมู่ Advertisers, Brands และ “Feed List Download”
ปฏิกิริยาปกติคือ:
ใครจะไปรู้ได้จากหน้าจอนี้
ยิ่งกว่านั้น คู่มือของสคริปต์บอกว่า “ให้คัดลอกค่าหลัง /apikey/ ใน URL ดาวน์โหลด”
แต่ URL ที่แสดงในหน้าจอปัจจุบันกลับไม่มี /apikey/
จากนั้นการประชุมฉุกเฉินในหัวก็เริ่มขึ้น:
“เข้าผิดหน้าหรือเปล่า?” “สิทธิ์ไม่พอ?” “เป็นอีก API หนึ่ง?” “URL ยาวนี่คืออะไร?” “ทำไม Node.js ยังเตือนอีก?” “พังหมดแล้วหรือ?”
คำตอบคือไม่
data feed API key สำหรับ product feed ของ Awin แยกจาก Partner API token ปกติ เอกสารทางการของ Awin ระบุว่าสามารถรับ key สำหรับ feed ได้จากการดาวน์โหลดมาตรฐานที่สร้างผ่าน Create-a-Feed และในรูปแบบ UI หนึ่งที่ตรวจพบจริงในเดือนตุลาคม 2026 คีย์นั้นไม่ได้มีป้ายว่า “API Key” แต่ถูกฝังเป็นส่วนหนึ่งของ path ใน URL ของ Feed List Download
ล่าขุมทรัพย์ แต่ขุมทรัพย์คือรหัสเข้าใช้งาน
0. สรุป 30 วินาที
จำหกข้อก็พอ
- Awin มีรหัสสำหรับ Partner API และ data feed API key สำหรับ product feed แยกกัน
- สองอย่างนี้ไม่ใช่ค่าเดียวกัน
- เอกสารทางการระบุว่า key สำหรับ feed ได้มาจาก standard feed download ใน Create-a-Feed
- ตัวอย่างทางการใช้รูปแบบ /apikey/KEY
- แต่ UI ที่สังเกตในเดือนตุลาคม 2026 ใช้โครงสร้าง URL อีกแบบ โดย key อยู่หลัง publisher ID
- DEP0190 ของ Node.js เป็นคำเตือนอีกเรื่อง ไม่ได้แปลว่า Awin key ใช้ไม่ได้
ดังนั้น key อาจไม่ได้หาย
มันแค่ไม่มีป้ายบอก
1. เกิดอะไรขึ้นจริง
สคริปต์ตั้งค่าจะแสดงเฉพาะชื่อของค่าลับที่บันทึกไว้แล้ว โดยไม่แสดงค่า และถามเฉพาะค่าที่ยังขาด
Awin API token ปกติมีอยู่แล้ว
จากนั้นสคริปต์ขอ product feed key
คำแนะนำเดิมคือ:
“Toolbox → Create-a-Feed → ดู URL ดาวน์โหลด → คัดลอกส่วนหลัง /apikey/”
คำแนะนำนี้มีที่มา
เอกสาร Product Feed List Download ของ Awin ที่อัปเดตวันที่ 31 สิงหาคม 2026 แสดงตัวอย่าง /apikey/KEY และระบุว่า download API key สามารถได้จาก standard feed download ที่สร้างด้วย Create-a-Feed
เอกสารเดียวกันยังบอกชัดว่า key นี้ต่างจาก key สำหรับ Partner API
แนวคิดถูกต้อง
แต่รูปแบบ URL จริงใน UI ทำให้สับสน
2. คู่มือบอกให้หา /apikey/ แต่ใน URL ไม่มี
หลังลบข้อมูลส่วนตัวและ key จริงทั้งหมด โครงสร้างที่ตรวจพบมีลักษณะประมาณนี้:
https://ui.awin.com/productdata-darwin-download/publisher///1/feedList
จุดสำคัญคือ:
ไม่มี /apikey/
คู่มือ: “อยู่หลัง /apikey/”
ของจริง: “วันนี้ /apikey/ ลางาน”
ในกรณีที่ตรวจพบ ลำดับคือ:
publisher/ → publisher ID → data feed API key → 1/feedList
ควรมองว่านี่เป็นรูปแบบที่พบจริงในเดือนตุลาคม 2026 ไม่ใช่การรับประกันว่า Awin จะใช้ URL แบบนี้ตลอดไป
3. สาเหตุใหญ่ของความงง: มีรหัสเข้าใช้งานสองชุด
รหัสของ Partner API
ใช้สำหรับการยืนยันตัวตนกับ Partner API ทั่วไปของ Awin
Product feed data key
ใช้สำหรับดาวน์โหลด product feed และ feed list
Awin แยกสองอย่างนี้อย่างชัดเจนในเอกสาร
ดังนั้นถ้าคิดว่า “ตั้ง token ของ Awin API แล้ว ทำไมต้องมีอีก key?” นั่นเป็นคำถามที่สมเหตุสมผลมาก
เพราะมันเป็นคนละ key จริง ๆ
ถ้าตั้งชื่อให้ต่างกันกว่านี้อีกนิด มนุษย์คงเสียเวลาน้อยลงมาก
4. ใน UI ปัจจุบันควรดูตรงไหน
สำหรับรูปแบบที่พบในเดือนตุลาคม 2026:
- ล็อกอิน Awin
- เปิด Toolbox → Create-a-Feed
- หา Feed List Download
- ตรวจสอบว่าลิงก์เป็นโดเมนทางการของ Awin จริง
- อย่าวาง URL ทั้งเส้นลงในแชตสาธารณะ บทความ Issue หรือ log
- ถ้าโครงสร้างเหมือนกรณีที่พบ ส่วนถัดจาก publisher// คือ data feed key
- นำเฉพาะค่าลับที่จำเป็นไปใส่ในช่องลับของสคริปต์
- ถ้าพิมพ์แล้วไม่เห็นตัวอักษร อาจเป็นเรื่องปกติของช่องกรอกค่าลับ ให้กด Enter ต่อได้
ข้อห้าสำคัญที่สุด
URL ยาว ๆ ก็มีรหัสเข้าใช้งานซ่อนอยู่ได้
ความลับไม่ได้หมดความเป็นความลับ เพียงเพราะไปซ่อนอยู่ระหว่างเครื่องหมาย / หลายตัว
5. แล้ว DEP0190 ที่โผล่มาคืออะไร
เทอร์มินัลอาจแสดง:
DEP0190: Passing args to a child process with shell option true...
มันโผล่มาในจังหวะเดียวกับที่กำลังตั้งค่า API key จึงดูเหมือนเกี่ยวกัน
แต่เอกสาร Node.js ระบุว่า DEP0190 เป็นคำเตือน deprecation เกี่ยวกับการใช้ execFile หรือ spawn พร้อม array ของ arguments และ shell:true เพราะ arguments ไม่ถูก escape อย่างปลอดภัยและอาจเสี่ยงต่อ shell injection
ดังนั้น:
มันไม่ใช่ข้อผิดพลาดการยืนยันตัวตนของ Awin
อย่างไรก็ตาม ควรแก้ในสคริปต์แยกต่างหาก โดยตรวจว่า shell:true จำเป็นหรือไม่ และมี input จากผู้ใช้ไหลเข้า shell arguments หรือเปล่า
แค่ไม่ควรรวมเป็นปัญหาเดียวกัน
6. สิ่งที่ควรแก้คือคำแนะนำ ไม่ใช่มนุษย์
“คราวหน้าดู URL ให้ละเอียดกว่านี้” ไม่ใช่การออกแบบที่ทนทาน
ตัวช่วยตั้งค่าควร:
- รองรับรูปแบบ /apikey/ ที่อยู่ในเอกสาร
- รองรับรูปแบบที่พบในปัจจุบัน productdata-darwin-download/publisher///...
- ไม่แสดง key ที่ดึงออกมาอีกครั้ง
- ไม่บันทึก URL เต็มที่มีรหัสเข้าใช้งาน
- ถ้าเจอรูปแบบที่ไม่รู้จักให้หยุดแทนการเดา
- อธิบายตั้งแต่แรกว่า Product Feed key ต่างจาก Partner API token
นี่คือวิธีลดความสับสนจากระบบ ไม่ใช่เพิ่มภาระให้ผู้ใช้
7. สรุป
สาเหตุที่ครั้งแรกหาไม่เจอมีอยู่จริงหลายข้อ:
- Awin มีรหัสเข้าใช้งานสองแบบที่ชื่อคล้ายกัน
- ไม่มีช่อง product feed key ที่เด่นชัด
- ตัวอย่าง URL ในเอกสารอาจไม่ตรงกับรูปแบบ URL ใน UI ปัจจุบัน
- ค่าลับซ่อนอยู่ใน URL ที่ยาว
- Node.js ยังแสดงคำเตือนอีกเรื่องในจังหวะที่แย่มาก
ดังนั้นงงครั้งแรกเป็นเรื่องปกติ
ครั้งหน้าให้จำแค่นี้:
Product Feed key ไม่ใช่ Partner API token ให้ดู URL ดาวน์โหลดใน Create-a-Feed และอย่ายึดติดกับรูปแบบ URL แบบเดียวตลอดไป
และอย่าเผยแพร่ URL จริงหลังจากหา key เจอแล้ว
นั่นแหละบอสตัวสุดท้าย
Sources
- [1] Awin Help — Product Feed List Download, 2026-08-31: https://help.awin.com/developers/docs/product-feed-list-download
- [2] Awin Help — Downloading feeds using Create-a-Feed, 2026-08-31: https://help.awin.com/developers/docs/downloading-feeds-using-create-a-feed
- [3] Awin Help — Product Feed Publisher Guide Overview: https://help.awin.com/developers/docs/product-feed-publisher-guide-intro
- [4] Node.js documentation — DEP0190: https://nodejs.org/download/release/latest-jod/docs/api/deprecations.html
เอกสารอ้างอิง (4 รายการ)
- Awin Help — Product Feed List Download, 2026-08-31 help.awin.com
- Awin Help — Downloading feeds using Create-a-Feed, 2026-08-31 help.awin.com
- Awin Help — Product Feed Publisher Guide Overview help.awin.com
- Node.js documentation — DEP0190 nodejs.org

