- Published on
N8N Credentials Setup: จัดให้ครบ จบทุกการเชื่อมต่อ
- Authors
- Name
- Somprasong Damyos
- @somprasongd
N8N Credentials Setup: จัดให้ครบ จบทุกการเชื่อมต่อ
การสร้าง Credentials คือกุญแจสำคัญที่จะเปิดประตูให้ N8N เชื่อมต่อกับโลกภายนอกได้อย่างมั่นใจ
บทความนี้จะพาคุณตั้งค่า Credentials สำหรับ Gemini API, Gmail, Google Drive และ PostgreSQL ผ่าน Supabase แบบทีละขั้นตอน ไม่ต้องเดา ไม่ต้องลองผิดลองถูกให้ปวดหัว พร้อมใช้งานได้จริงตั้งแต่ Workflow แรก
การเชื่อมต่อกับ Gmail และ Google Drive
ต้องเปิดใช้งาน API และสร้าง OAuth 2.0 Client ID ใน Google Cloud ก่อน ซึ่งมีขั้นตอน ดังนี้
Step 1: เลือก หรือสร้างโปรเจคใหม่
- ไปที่ https://console.cloud.google.com/projectselector2
- ถ้ายังไม่มี ให้เลือก Create Project เพื่อสร้างใหม่ โดยระบุ
- Project name: เช่น n8n-dev
- ถ้าเป็น Google Workspace จะมี Organization กับ Location มาให้เลือกเพิ่ม
- กดปุ่ม Create
Step 2: เปิดใช้งาน API
- ให้พิมพ์ค้นหา และเลือก Gmail API
- เปิดการใช้งาน เลือก Enable
- ให้พิมพ์ค้นหา และเลือก Google Drive API
- เปิดการใช้งาน เลือก Enable
Step 3: สร้าง OAuth consent screen
ก่อนจะสร้าง OAuth 2.0 Client ID ครั้งแรก จะต้องสร้าง OAuth consent screen ก่อน
- ไปที่ APIs & Services > OAuth consent screen
- เลือก Get started จะมีให้กรอก Project Information
- App Information
- ระบุ App name
- ระบุ Email
- กดปุ่ม Next
- Audience
- ถ้าเลือก External จะเป็น testing mode ต้องเพิ่ม Test user ด้วย ไม่งั้น login ไม่ได้
- กดปุ่ม Next
- Contact Information
- ใส่อีเมลตัวเอง
- กดปุ่ม Next
- Finish
- เลือก I agree to …
- กดปุ่ม Continue
- กดปุ่ม Create
- App Information
- กรณีเลือก Audience เป็น External ให้เพิ่มอีเมลตัวเอง เป็น Test user ก่อน
- โดยเลือกที่เมนู Audience
- กดปุ่ม Add users
- ใส่ระบุอีเมลของเรา และกดปุ่ม Save
- เมื่อเสร็จแล้วจะมีชื่ออีเมลของเราเป็น Test user
Step 4: สร้าง OAuth 2.0 Client ID
เมื่อทุกอย่างพร้อมแล้ว ก็เริ่มสร้าง OAuth 2.0 Client ID เพื่อเอาไปใช้งานได้ n8n ได้
- ไปที่ APIs & Services > Credentials
- เลือก Create credentials และเลือก OAuth client ID
- เลือก Application type เป็น Web application
- ระบุชื่อ ที่ Name: เช่น n8n-gmail
- กดปุ่ม Add URI
- โดย URI นี้ ต้องเอามาจาก n8n ตัวอย่างการจะเป็นการเพิ่ม Credential ของ Gmail มีขั้นตอนดังนี้
- Login เข้า n8n ของเรา
- เลือก + แล้วเลือก Credential
- พิมพ์ค้นหาว่า Gmail แล้วเลือก Gmail OAuth2 API
- ให้ Copy ที่ OAuth Redirect URL
- นำ URL มาใส่ที่ Authorized redirect URIs
- กดปุ่ม Create ก็จะได้ Client ID และ Client secret
- นำมาใส่ใน หน้าการเชื่อมต่อของ n8n
- กดปุ่ม Sign in with Google เพื่อทำการ sign in โดยเลือกบัญชีให้ถูกต้อง
- ⚠️ ถ้าเลือกแบบ Audience แบบ External และไม่ได้เพิ่ม Test user จะไม่สามารถ sing in ได้ แบบนี้
- หากเป็น Test mode ให้เลือก Continue (กรณี Audience เป็น Internal จะไม่มีหน้าจอนี้)
- ให้สิทธิการใช้งานทั้งหมด (กรณี Audience เป็น Internal จะเลือกไม่ได้) และกดปุ่ม Continue
- เมื่อสำเร็จจะได้แบบนี้
- ในส่วนของ Google Drive สามารถใช้ Client ID และ Client Secret เดียวกันได้ หรือจะสร้างใหม่ก็ เสร็จให้กดสร้าง Credentials ที่ n8n โดยเลือกเป็น Google Drive OAuth2 API
- และทำขั้นตอนซ้ำเหมือนการเชื่อมต่อ Gmail
การเชื่อมต่อกับ Gemini API
เพื่อเปิดใช้งาน AI Model โดยมีขั้นตอนดังนี้
Step 1: สร้าง API Key
- ไปที่ https://aistudio.google.com/u/1/apikey
- กดปุ่ม Create API Key
- เลือกไปที่โปรเจคของเรา ในบทความใช้
n8n-dev
- กดปุ่ม Create API Key in existing project
- จะได้ API key ออกมา ให้ Copy เก็บไว้ก่อน
Step 2: สร้าง n8n credentials
- กลับมาที่ n8n ให้เลือกสร้าง Credential ใหม่ โดยเลือกเป็น Google Gemini(PaLM) Api
- ใส่ API Key และกดปุ่ม Save
- ถ้าสำเร็จ จะมีข้อความบอกแบบนี้
การเชื่อมต่อกับ PostgreSQL
ในบทความนี้จะทำการเชื่อมต่อ PostgreSQL โดยจะใช้ตัวอย่างจาก PostgreSQL ใน supabase ซึ่งสามารถใช้ได้กับการติดตั้งเอง
Step 1: สร้างโปรเจคใหม่ใน Supabase
ใครมีอยู่แล้วสามารถข้ามไปขั้นตอนถัดไปได้เลย
- ไปที่ https://supabase.com/dashboard/
- กดปุ่ม New project
- ทำการตั้งชื่อโปรเจค และกำหนดรหัสผ่าน แล้วกดปุ่ม Create new project
- เสร็จแล้วก็จะได้โปรเจคใหม่ออกมา
Step 2: หาค่าเชื่อมต่อฐานข้อมูล
- ที่หน้า Project overview ให้เลือกปุ่ม Connect
- ให้เลื่อนลงมาที่ Transaction pooler
- กดที่ View parameters โดยเราจะนำค่าตรงนี้ไปใช้งาน
Step 3: สร้าง PostgreSQL Credentials
- กลับมาที่ n8n แล้วกดสร้าง Credential และเลือกเป็น Postgres
- ให้ทำการแก้ไข ดังนี้
- Host: ตามค่าของ Transaction pooler
- Database: ตามค่าของ Transaction pooler
- User: ตามค่าของ Transaction pooler
- Password: รหัสผ่านที่ระบุตอนสร้างโปรเจค
- Port: ตามค่าของ Transaction pooler
- กดปุ่ม Save
- ถ้าสำเร็จ จะมีข้อความแจ้งแบบนี้
ทดสอบการเชื่อมต่อ Credentials
ลองทดสอบว่า credentials ที่เราสร้างไปสามารถใช้งานได้ หรือไม่โดย มีขั้นตอนดังนี้
- ดาวน์โหลดไฟล์ Workflow สำหรับการทดสอบจากที่นี่ (คลิกขวา Save As)
- ไปที่ n8n สร้าง Workflow ใหม่
- เลือกที่ … แล้วเลือก Import from File และเลือกไฟล์ที่ดาวน์โหลดมา
- Workflow ที่ได้มาจะขึ้นสีแดง
- เราต้องทำการเลือก Credential ของตัวเองให้ถูกต้องก่อน โดยการ double click ที่ node แล้วเลือก credential ให้ถูกต้อง
- ทดสอบโดยกดปุ่ม Open chat
- ให้ลองพิมพ์ทดสอบ ตามนี้
- อีเมลของฉัน somprasong.damyos@gmail.com (ทดสอบ Gemini API, Postgres)
- แต่งเรื่องตลก 2 เรื่อง แล้วส่งอีเมลให้หน่อย (ทดสอบ Gmail API)
- ถ้าทุกอย่างรันได้ แสดงว่าเราถูกต้องแล้ว 🎉