GLOBAL
ฟอร์มบิลเดอร์ที่เชื่อมต่อ API ได้: เชื่อม Walla เข้ากับเวิร์กโฟลว์ขององค์กร

Yuvin Kim
September 16, 2025
GLOBAL
ฟอร์มบิลเดอร์ที่เชื่อมต่อ API ได้: เชื่อม Walla เข้ากับเวิร์กโฟลว์ขององค์กร

Yuvin Kim
September 16, 2025


ฟอร์มออนไลน์ไม่ได้เป็นเพียงเครื่องมือเก็บข้อมูลอีกต่อไป หากสามารถ เชื่อมต่อกับ API ก็จะสามารถเชื่อมกับ CRM, ERP, แอปพลิเคชันภายใน และแดชบอร์ดวิเคราะห์ข้อมูล เพื่อทำให้การไหลของข้อมูลอัตโนมัติได้ บทความนี้จะแนะนำวิธี เริ่มต้นใช้งาน Walla API, เอ็นด์พอยต์หลัก, และ กรณีใช้งานจริง
1) เริ่มต้น: การยืนยันตัวตนด้วย API
ก่อนใช้งาน Walla API ต้องสร้าง API Key และตั้งค่าการยืนยันตัวตน
1.1 การสร้าง API Key
เข้าสู่ระบบ Walla Dashboard (app.walla.my)
ไปที่ การตั้งค่าทีม ที่ต้องการสร้าง API Key
ใน Team Settings > API สร้าง clientId / apiKey และเก็บไว้ในที่ปลอดภัย
1.2 ส่งคำขอยืนยันตัวตน
Walla API ใช้ Basic Authentication
สร้างสตริง
{clientId}:{apiKey}
(เช่นmyClientId:myApiKey
)เข้ารหัสสตริงด้วย Base64
ใส่ใน HTTP Header:
Authorization: Basic {โทเค็นที่เข้ารหัสด้วย Base64}
ตัวอย่าง cURL (Bash):
# 1. สร้างโทเค็น (macOS / Linux) TOKEN=$(echo -n "YOUR_CLIENT_ID:YOUR_API_KEY" | base64) # 2. ส่ง API Request curl -X GET "https://walla-api.datalab.workers.dev/workspace/list" \ -H "Authorization: Basic $TOKEN"
2) รายละเอียด API Endpoint
Base URL:
https://walla-api.data-lab.workers.dev
2.1 เวิร์กสเปซ (Workspaces)
GET /workspace/list
ดึงรายชื่อเวิร์กสเปซทั้งหมดในทีม
ตัวอย่าง Response (JSON):
[ { "workspaceName": "เวิร์กสเปซทีมการตลาด", "workspaceKey": "ws-key-12345", "createdAt": "2025-07-03T10:00:00Z", "creator": "user-uid-abcde", "storage": { "used": 102400 } } ]
GET /workspace/{workspaceKey}
ดึงข้อมูลเวิร์กสเปซที่ระบุGET /workspace/query/projectKey?projectKey={projectKey}
ค้นหาworkspaceKey
จากprojectKey
ตัวอย่าง Response (JSON):
{ "workspaceKey": "ws-key-12345" }
2.2 โปรเจกต์ (Projects)
GET /workspace/{workspaceKey}/project/list
ดึงรายชื่อโปรเจกต์ทั้งหมดในเวิร์กสเปซGET /workspace/{workspaceKey}/project/{projectKey}
ดึงรายละเอียดโปรเจกต์ที่ระบุ
2.3 คำตอบ (Responses)
GET /workspace/{workspaceKey}/project/{projectKey}/response/list
ดาวน์โหลดคำตอบทั้งหมดเป็นไฟล์ Parquet
Content-Type:application/octet-stream
GET /workspace/{workspaceKey}/project/{projectKey}/response/get/responseKey/{responseKey}
ดึงคำตอบเดี่ยวโดยใช้responseKey
GET /workspace/{workspaceKey}/project/{projectKey}/response/get/customerKey/{customerKey}
ดึงคำตอบเดี่ยวโดยใช้customerKey
GET /workspace/{workspaceKey}/project/{projectKey}/response/check/customerKey/{customerKey}
ตรวจสอบว่ามีคำตอบที่ใช้customerKey
หรือไม่
ตัวอย่าง Response (JSON):
{ "exists": true }
GET /workspace/{workspaceKey}/project/{projectKey}/response/query/dateRange?startDate=...&endDate=...
ดึงคำตอบตามช่วงวันGET /workspace/{workspaceKey}/project/{projectKey}/response/listCustomerKeys
ดึงรายชื่อcustomerKey
ทั้งหมดที่ไม่เป็น null
ตัวอย่าง Response (JSON):
{ "customerKeys": ["customer-001", "customer-002", "customer-003"] }
2.4 คอลัมน์ (Columns)
GET /workspace/{workspaceKey}/project/{projectKey}/columns
ดึงโครงสร้างฟิลด์และ hidden field ของโปรเจกต์
ตัวอย่าง Response (JSON):
{ "field_columns": [ { "column_name": "field_abcd", "label": "ชื่อ", "type": "TEXT" } ], "hidden_field_columns": [ { "column_name": "hf_1234", "label": "ช่องทางเข้าถึง", "type": "TEXT" } ] }
3) กรณีการใช้งาน
ตัวอย่างที่ 1: ดาวน์โหลดคำตอบทั้งหมดเพื่อนำไปวิเคราะห์
ใช้
GET /workspace/list
หรือGET /workspace/query/projectKey
เพื่อหาworkspaceKey
ใช้
GET /workspace/{workspaceKey}/project/{projectKey}/response/list
เพื่อดาวน์โหลดไฟล์ Parquetวิเคราะห์ไฟล์ด้วย Pandas (Python) หรือ R
ตัวอย่างที่ 2: เชื่อม CRM เพื่อตรวจสอบประวัติคำตอบของลูกค้า
ซิงก์ Customer ID ของ CRM กับ
customerKey
ใน Wallaเวลาดูข้อมูลลูกค้า ใช้
GET .../response/check/customerKey/{customerKey}
เพื่อตรวจสอบถ้ามีคำตอบ (
exists: true
), ใช้GET .../response/get/customerKey/{customerKey}
เพื่อดึงรายละเอียดและแสดงใน CRM
4) หมายเหตุและ FAQ
เวอร์ชัน API:
v1.0
อาจมีเวอร์ชันใหม่ในอนาคตการจัดการข้อผิดพลาด: คืนค่า HTTP Status ปกติ (400, 401, 404 เป็นต้น) พร้อมรายละเอียดเพิ่มเติม
Rate Limiting: จำกัดจำนวนการเรียกเพื่อป้องกันการใช้งานเกินกำลัง สามารถตรวจสอบได้จาก response header
หากพบปัญหา ติดต่อ Walla Help Center
สรุป
ด้วย Walla API ฟอร์มจะไม่ใช่แค่ช่องเก็บข้อมูล แต่เป็น ศูนย์กลางในการเชื่อมต่อและทำให้งานอัตโนมัติ ตั้งแต่การเก็บข้อมูล → ยืนยันตัวตน → วิเคราะห์ → เชื่อมต่อระบบ หนึ่งเครื่องมือ แต่สร้างเวิร์กโฟลว์ได้ไม่จำกัด
ฟอร์มออนไลน์ไม่ได้เป็นเพียงเครื่องมือเก็บข้อมูลอีกต่อไป หากสามารถ เชื่อมต่อกับ API ก็จะสามารถเชื่อมกับ CRM, ERP, แอปพลิเคชันภายใน และแดชบอร์ดวิเคราะห์ข้อมูล เพื่อทำให้การไหลของข้อมูลอัตโนมัติได้ บทความนี้จะแนะนำวิธี เริ่มต้นใช้งาน Walla API, เอ็นด์พอยต์หลัก, และ กรณีใช้งานจริง
1) เริ่มต้น: การยืนยันตัวตนด้วย API
ก่อนใช้งาน Walla API ต้องสร้าง API Key และตั้งค่าการยืนยันตัวตน
1.1 การสร้าง API Key
เข้าสู่ระบบ Walla Dashboard (app.walla.my)
ไปที่ การตั้งค่าทีม ที่ต้องการสร้าง API Key
ใน Team Settings > API สร้าง clientId / apiKey และเก็บไว้ในที่ปลอดภัย
1.2 ส่งคำขอยืนยันตัวตน
Walla API ใช้ Basic Authentication
สร้างสตริง
{clientId}:{apiKey}
(เช่นmyClientId:myApiKey
)เข้ารหัสสตริงด้วย Base64
ใส่ใน HTTP Header:
Authorization: Basic {โทเค็นที่เข้ารหัสด้วย Base64}
ตัวอย่าง cURL (Bash):
# 1. สร้างโทเค็น (macOS / Linux) TOKEN=$(echo -n "YOUR_CLIENT_ID:YOUR_API_KEY" | base64) # 2. ส่ง API Request curl -X GET "https://walla-api.datalab.workers.dev/workspace/list" \ -H "Authorization: Basic $TOKEN"
2) รายละเอียด API Endpoint
Base URL:
https://walla-api.data-lab.workers.dev
2.1 เวิร์กสเปซ (Workspaces)
GET /workspace/list
ดึงรายชื่อเวิร์กสเปซทั้งหมดในทีม
ตัวอย่าง Response (JSON):
[ { "workspaceName": "เวิร์กสเปซทีมการตลาด", "workspaceKey": "ws-key-12345", "createdAt": "2025-07-03T10:00:00Z", "creator": "user-uid-abcde", "storage": { "used": 102400 } } ]
GET /workspace/{workspaceKey}
ดึงข้อมูลเวิร์กสเปซที่ระบุGET /workspace/query/projectKey?projectKey={projectKey}
ค้นหาworkspaceKey
จากprojectKey
ตัวอย่าง Response (JSON):
{ "workspaceKey": "ws-key-12345" }
2.2 โปรเจกต์ (Projects)
GET /workspace/{workspaceKey}/project/list
ดึงรายชื่อโปรเจกต์ทั้งหมดในเวิร์กสเปซGET /workspace/{workspaceKey}/project/{projectKey}
ดึงรายละเอียดโปรเจกต์ที่ระบุ
2.3 คำตอบ (Responses)
GET /workspace/{workspaceKey}/project/{projectKey}/response/list
ดาวน์โหลดคำตอบทั้งหมดเป็นไฟล์ Parquet
Content-Type:application/octet-stream
GET /workspace/{workspaceKey}/project/{projectKey}/response/get/responseKey/{responseKey}
ดึงคำตอบเดี่ยวโดยใช้responseKey
GET /workspace/{workspaceKey}/project/{projectKey}/response/get/customerKey/{customerKey}
ดึงคำตอบเดี่ยวโดยใช้customerKey
GET /workspace/{workspaceKey}/project/{projectKey}/response/check/customerKey/{customerKey}
ตรวจสอบว่ามีคำตอบที่ใช้customerKey
หรือไม่
ตัวอย่าง Response (JSON):
{ "exists": true }
GET /workspace/{workspaceKey}/project/{projectKey}/response/query/dateRange?startDate=...&endDate=...
ดึงคำตอบตามช่วงวันGET /workspace/{workspaceKey}/project/{projectKey}/response/listCustomerKeys
ดึงรายชื่อcustomerKey
ทั้งหมดที่ไม่เป็น null
ตัวอย่าง Response (JSON):
{ "customerKeys": ["customer-001", "customer-002", "customer-003"] }
2.4 คอลัมน์ (Columns)
GET /workspace/{workspaceKey}/project/{projectKey}/columns
ดึงโครงสร้างฟิลด์และ hidden field ของโปรเจกต์
ตัวอย่าง Response (JSON):
{ "field_columns": [ { "column_name": "field_abcd", "label": "ชื่อ", "type": "TEXT" } ], "hidden_field_columns": [ { "column_name": "hf_1234", "label": "ช่องทางเข้าถึง", "type": "TEXT" } ] }
3) กรณีการใช้งาน
ตัวอย่างที่ 1: ดาวน์โหลดคำตอบทั้งหมดเพื่อนำไปวิเคราะห์
ใช้
GET /workspace/list
หรือGET /workspace/query/projectKey
เพื่อหาworkspaceKey
ใช้
GET /workspace/{workspaceKey}/project/{projectKey}/response/list
เพื่อดาวน์โหลดไฟล์ Parquetวิเคราะห์ไฟล์ด้วย Pandas (Python) หรือ R
ตัวอย่างที่ 2: เชื่อม CRM เพื่อตรวจสอบประวัติคำตอบของลูกค้า
ซิงก์ Customer ID ของ CRM กับ
customerKey
ใน Wallaเวลาดูข้อมูลลูกค้า ใช้
GET .../response/check/customerKey/{customerKey}
เพื่อตรวจสอบถ้ามีคำตอบ (
exists: true
), ใช้GET .../response/get/customerKey/{customerKey}
เพื่อดึงรายละเอียดและแสดงใน CRM
4) หมายเหตุและ FAQ
เวอร์ชัน API:
v1.0
อาจมีเวอร์ชันใหม่ในอนาคตการจัดการข้อผิดพลาด: คืนค่า HTTP Status ปกติ (400, 401, 404 เป็นต้น) พร้อมรายละเอียดเพิ่มเติม
Rate Limiting: จำกัดจำนวนการเรียกเพื่อป้องกันการใช้งานเกินกำลัง สามารถตรวจสอบได้จาก response header
หากพบปัญหา ติดต่อ Walla Help Center
สรุป
ด้วย Walla API ฟอร์มจะไม่ใช่แค่ช่องเก็บข้อมูล แต่เป็น ศูนย์กลางในการเชื่อมต่อและทำให้งานอัตโนมัติ ตั้งแต่การเก็บข้อมูล → ยืนยันตัวตน → วิเคราะห์ → เชื่อมต่อระบบ หนึ่งเครื่องมือ แต่สร้างเวิร์กโฟลว์ได้ไม่จำกัด
ฟอร์มออนไลน์ไม่ได้เป็นเพียงเครื่องมือเก็บข้อมูลอีกต่อไป หากสามารถ เชื่อมต่อกับ API ก็จะสามารถเชื่อมกับ CRM, ERP, แอปพลิเคชันภายใน และแดชบอร์ดวิเคราะห์ข้อมูล เพื่อทำให้การไหลของข้อมูลอัตโนมัติได้ บทความนี้จะแนะนำวิธี เริ่มต้นใช้งาน Walla API, เอ็นด์พอยต์หลัก, และ กรณีใช้งานจริง
1) เริ่มต้น: การยืนยันตัวตนด้วย API
ก่อนใช้งาน Walla API ต้องสร้าง API Key และตั้งค่าการยืนยันตัวตน
1.1 การสร้าง API Key
เข้าสู่ระบบ Walla Dashboard (app.walla.my)
ไปที่ การตั้งค่าทีม ที่ต้องการสร้าง API Key
ใน Team Settings > API สร้าง clientId / apiKey และเก็บไว้ในที่ปลอดภัย
1.2 ส่งคำขอยืนยันตัวตน
Walla API ใช้ Basic Authentication
สร้างสตริง
{clientId}:{apiKey}
(เช่นmyClientId:myApiKey
)เข้ารหัสสตริงด้วย Base64
ใส่ใน HTTP Header:
Authorization: Basic {โทเค็นที่เข้ารหัสด้วย Base64}
ตัวอย่าง cURL (Bash):
# 1. สร้างโทเค็น (macOS / Linux) TOKEN=$(echo -n "YOUR_CLIENT_ID:YOUR_API_KEY" | base64) # 2. ส่ง API Request curl -X GET "https://walla-api.datalab.workers.dev/workspace/list" \ -H "Authorization: Basic $TOKEN"
2) รายละเอียด API Endpoint
Base URL:
https://walla-api.data-lab.workers.dev
2.1 เวิร์กสเปซ (Workspaces)
GET /workspace/list
ดึงรายชื่อเวิร์กสเปซทั้งหมดในทีม
ตัวอย่าง Response (JSON):
[ { "workspaceName": "เวิร์กสเปซทีมการตลาด", "workspaceKey": "ws-key-12345", "createdAt": "2025-07-03T10:00:00Z", "creator": "user-uid-abcde", "storage": { "used": 102400 } } ]
GET /workspace/{workspaceKey}
ดึงข้อมูลเวิร์กสเปซที่ระบุGET /workspace/query/projectKey?projectKey={projectKey}
ค้นหาworkspaceKey
จากprojectKey
ตัวอย่าง Response (JSON):
{ "workspaceKey": "ws-key-12345" }
2.2 โปรเจกต์ (Projects)
GET /workspace/{workspaceKey}/project/list
ดึงรายชื่อโปรเจกต์ทั้งหมดในเวิร์กสเปซGET /workspace/{workspaceKey}/project/{projectKey}
ดึงรายละเอียดโปรเจกต์ที่ระบุ
2.3 คำตอบ (Responses)
GET /workspace/{workspaceKey}/project/{projectKey}/response/list
ดาวน์โหลดคำตอบทั้งหมดเป็นไฟล์ Parquet
Content-Type:application/octet-stream
GET /workspace/{workspaceKey}/project/{projectKey}/response/get/responseKey/{responseKey}
ดึงคำตอบเดี่ยวโดยใช้responseKey
GET /workspace/{workspaceKey}/project/{projectKey}/response/get/customerKey/{customerKey}
ดึงคำตอบเดี่ยวโดยใช้customerKey
GET /workspace/{workspaceKey}/project/{projectKey}/response/check/customerKey/{customerKey}
ตรวจสอบว่ามีคำตอบที่ใช้customerKey
หรือไม่
ตัวอย่าง Response (JSON):
{ "exists": true }
GET /workspace/{workspaceKey}/project/{projectKey}/response/query/dateRange?startDate=...&endDate=...
ดึงคำตอบตามช่วงวันGET /workspace/{workspaceKey}/project/{projectKey}/response/listCustomerKeys
ดึงรายชื่อcustomerKey
ทั้งหมดที่ไม่เป็น null
ตัวอย่าง Response (JSON):
{ "customerKeys": ["customer-001", "customer-002", "customer-003"] }
2.4 คอลัมน์ (Columns)
GET /workspace/{workspaceKey}/project/{projectKey}/columns
ดึงโครงสร้างฟิลด์และ hidden field ของโปรเจกต์
ตัวอย่าง Response (JSON):
{ "field_columns": [ { "column_name": "field_abcd", "label": "ชื่อ", "type": "TEXT" } ], "hidden_field_columns": [ { "column_name": "hf_1234", "label": "ช่องทางเข้าถึง", "type": "TEXT" } ] }
3) กรณีการใช้งาน
ตัวอย่างที่ 1: ดาวน์โหลดคำตอบทั้งหมดเพื่อนำไปวิเคราะห์
ใช้
GET /workspace/list
หรือGET /workspace/query/projectKey
เพื่อหาworkspaceKey
ใช้
GET /workspace/{workspaceKey}/project/{projectKey}/response/list
เพื่อดาวน์โหลดไฟล์ Parquetวิเคราะห์ไฟล์ด้วย Pandas (Python) หรือ R
ตัวอย่างที่ 2: เชื่อม CRM เพื่อตรวจสอบประวัติคำตอบของลูกค้า
ซิงก์ Customer ID ของ CRM กับ
customerKey
ใน Wallaเวลาดูข้อมูลลูกค้า ใช้
GET .../response/check/customerKey/{customerKey}
เพื่อตรวจสอบถ้ามีคำตอบ (
exists: true
), ใช้GET .../response/get/customerKey/{customerKey}
เพื่อดึงรายละเอียดและแสดงใน CRM
4) หมายเหตุและ FAQ
เวอร์ชัน API:
v1.0
อาจมีเวอร์ชันใหม่ในอนาคตการจัดการข้อผิดพลาด: คืนค่า HTTP Status ปกติ (400, 401, 404 เป็นต้น) พร้อมรายละเอียดเพิ่มเติม
Rate Limiting: จำกัดจำนวนการเรียกเพื่อป้องกันการใช้งานเกินกำลัง สามารถตรวจสอบได้จาก response header
หากพบปัญหา ติดต่อ Walla Help Center
สรุป
ด้วย Walla API ฟอร์มจะไม่ใช่แค่ช่องเก็บข้อมูล แต่เป็น ศูนย์กลางในการเชื่อมต่อและทำให้งานอัตโนมัติ ตั้งแต่การเก็บข้อมูล → ยืนยันตัวตน → วิเคราะห์ → เชื่อมต่อระบบ หนึ่งเครื่องมือ แต่สร้างเวิร์กโฟลว์ได้ไม่จำกัด
Continue Reading
