DEV Community

Cover image for Apidog CLI: ไคลเอ็นต์ API ที่อยู่บน Terminal
Thanawat Wongchai
Thanawat Wongchai

Posted on Originally published at apidog.com

Apidog CLI: ไคลเอ็นต์ API ที่อยู่บน Terminal

พื้นที่ทำงาน API ของคุณอยู่ใน GUI แต่การทำงานประจำวัน การทดสอบ CI และเซสชันของ AI agent อยู่ในเทอร์มินัล การสลับบริบทระหว่างสองอย่างนี้ทำให้เสียเวลาและสมาธิ Apidog CLI นำการทดสอบ endpoints, schemas, environments, Mock และเอกสารจากแพลตฟอร์ม Apidog มาไว้ใน shell ที่คุณใช้งานอยู่แล้ว

ลองใช้ Apidog วันนี้

Apidog CLI ไม่ใช่ curl อีกตัว หากต้องการส่ง GET ครั้งเดียวและดู JSON, curl หรือ HTTPie เหมาะกว่า ดูภาพรวมเครื่องมือแบบโต้ตอบได้จากบทความ Terminal และ TUI REST clients

CLI นี้ออกแบบมาสำหรับ พื้นที่ทำงาน API ของคุณ โดยตรง คุณสามารถรันสถานการณ์การทดสอบที่สร้างไว้ อ่านและอัปเดตสัญญา API รวมถึงนำเข้าส่งออกข้อมูลจำเพาะผ่านคำสั่งที่สคริปต์หรือ agent เรียกใช้งานได้

“สิ่งที่อยู่ในเทอร์มินัลของคุณ” หมายถึงอะไร

เครื่องมือ HTTP ทั่วไปทำงานกับคำขอทีละรายการ ส่วน Apidog CLI ทำงานในระดับโปรเจกต์ โดยมีคำสั่งมากกว่า 40 กลุ่ม แบ่งการใช้งานหลักได้ดังนี้:

งาน คำสั่ง
รันการทดสอบ run, test-scenario, test-suite, test-case, test-data, test-report
จัดการสัญญา endpoint, schema, folder, common-parameter, response-component, security-scheme
จัดส่งเอกสารและ Mock doc, docs-site, shared-doc, mock
กำหนดค่าและเชื่อมต่อ environment, variables, vault, database-connection, websocket, socketio
ทำงานเป็นทีม branch, merge-request, runner, scheduled-task, audit-log, import, export

คำสั่งทุกตัวรองรับ --help และคืนผลลัพธ์เป็น JSON ที่มีโครงสร้าง การตอบกลับส่วนใหญ่มี agentHints.nextSteps เพื่อแนะนำขั้นตอนถัดไป ช่วยให้ทั้งคนและ AI agent ทำงานต่อได้โดยไม่ต้องจำ workflow ทั้งหมด

ติดตั้ง CLI ด้วยคำสั่งเดียว

Apidog CLI เผยแพร่ผ่าน npm ในแพ็กเกจ apidog-cli และใช้งานได้บน macOS, Linux และ Windows โดยต้องใช้ Node.js เวอร์ชัน 16 ขึ้นไป

npm install -g apidog-cli
apidog --version
Enter fullscreen mode Exit fullscreen mode

จากนั้นสร้าง API Access Token ในแอป Apidog:

  1. คลิกรูปประจำตัว
  2. เปิดการตั้งค่าบัญชี
  3. คัดลอกโทเค็นจากส่วน API Access Token
  4. ล็อกอินผ่านเทอร์มินัล
apidog login --with-token <YOUR_TOKEN>
Enter fullscreen mode Exit fullscreen mode

CLI จะเก็บโทเค็นไว้ที่ ~/.apidog/config.toml อย่า commit ไฟล์นี้ลง repository และอย่าใส่โทเค็นไว้ใน log ของ CI

สำหรับ CI ให้ส่งโทเค็นผ่าน secret และใช้ --access-token แทนการใช้ credential ที่บันทึกไว้:

apidog run \
  --access-token "$APIDOG_ACCESS_TOKEN" \
  -t <SCENARIO_ID> \
  -e <ENVIRONMENT_ID> \
  -r junit
Enter fullscreen mode Exit fullscreen mode

แฟล็กส่วนกลางที่ใช้บ่อยมีดังนี้:

  • --project เลือกโปรเจกต์
  • --branch เลือกสาขา
  • --access-token เขียนทับ credential ที่ล็อกอินไว้
  • --api-base-url ระบุ Apidog แบบโฮสต์เอง

ดูรายละเอียดการใช้ token ใน CI ได้จาก คู่มือการรับรองความถูกต้องของ Apidog CLI

รันการทดสอบที่สร้างไว้ใน Apidog

สร้างสถานการณ์การทดสอบในตัวแก้ไขภาพของ Apidog ก่อน โดยสถานการณ์หนึ่งสามารถประกอบด้วย:

  • คำขอหลายรายการที่เชื่อมโยงกัน
  • ตัวแปรที่ดึงจาก response ก่อนหน้า
  • การตรวจสอบ HTTP status
  • การตรวจสอบเนื้อหา response
  • ข้อมูลทดสอบจากไฟล์ CSV หรือ JSON

เมื่อพร้อมรัน ให้คัดลอกคำสั่งและ ID จากแท็บ CI/CD ของสถานการณ์:

apidog run -t <SCENARIO_ID> -e <ENVIRONMENT_ID> -r cli
Enter fullscreen mode Exit fullscreen mode

คำสั่งจะคืนค่า exit code เป็น 0 เมื่อทุก assertion ผ่าน และคืนค่า non-zero เมื่อมีการทดสอบล้มเหลว ทำให้ใช้ควบคุม pipeline ได้โดยตรง:

if apidog run -t "$SCENARIO_ID" -e "$ENVIRONMENT_ID" -r cli; then
  echo "API tests passed"
else
  echo "API tests failed"
  exit 1
fi
Enter fullscreen mode Exit fullscreen mode

เปลี่ยนค่า -e เพื่อรันสถานการณ์เดียวกันกับ dev, staging หรือ production และส่งไฟล์ข้อมูลเพื่อทำ data-driven testing:

apidog run \
  -t <SCENARIO_ID> \
  -e <ENVIRONMENT_ID> \
  --data ./test-data.json \
  -r cli,junit
Enter fullscreen mode Exit fullscreen mode

ดูแนวทางเพิ่มเติมได้จาก การทดสอบที่ขับเคลื่อนด้วยข้อมูล และ คำแนะนำการทดสอบ REST API จาก command line

รูปแบบรายงาน

Apidog CLI รองรับรายงานสี่รูปแบบ:

  • cli แสดงผลทีละขั้นตอนในเทอร์มินัล
  • html สร้างรายงาน HTML
  • json สร้างผลลัพธ์ JSON
  • junit สร้างรายงานสำหรับระบบ CI

รายงานไฟล์จะถูกเก็บไว้ใน apidog-reports/ และสามารถใช้หลายรูปแบบพร้อมกันได้:

apidog run \
  -t <SCENARIO_ID> \
  -e <ENVIRONMENT_ID> \
  -r cli,junit
Enter fullscreen mode Exit fullscreen mode

ดูตัวอย่างแต่ละรูปแบบจาก คู่มือรายงานการทดสอบ

หากไม่ต้องการพึ่งพาแล็ปท็อป ให้ใช้คำสั่ง runner และ scheduled-task สำหรับจัดการ self-hosted runner และการรันตามกำหนดเวลา ซึ่งเป็นกลไกเดียวกับ การทดสอบ API ตามกำหนดเวลาใน Apidog

จัดการสัญญา API จากเทอร์มินัล

นอกจากการรันทดสอบแล้ว CLI ยังอ่านและแก้ไขทรัพยากร API ในโปรเจกต์ได้:

apidog endpoint list --project <PROJECT_ID>
apidog schema get <SCHEMA_ID>
apidog environment list
apidog mock list
Enter fullscreen mode Exit fullscreen mode

ทรัพยากรที่สามารถสอบถามหรือแก้ไขได้ ได้แก่:

  • endpoints
  • data schemas
  • folders
  • environments และ variables
  • security schemes
  • reusable response components
  • Mock configurations
  • WebSocket และ Socket.IO endpoints
  • database connections ที่ใช้ในสถานการณ์ทดสอบ

คำสั่ง doc และ docs-site ใช้จัดการเอกสารที่เผยแพร่ ส่วน mock ใช้จัดการคู่ request-response ที่ Mock server ส่งคืน

นำเข้าและส่งออกข้อมูลจำเพาะ

CLI รองรับ OpenAPI 3.x, Swagger 2.0 และ Postman collections จึงเหมาะกับสคริปต์ย้ายข้อมูลหรือ workflow ที่ต้อง sync API definition ระหว่างระบบ:

apidog import openapi.json --project <PROJECT_ID>
apidog export --format openapi
Enter fullscreen mode Exit fullscreen mode

รูปแบบที่ใช้เป็นมาตรฐานได้จาก ข้อมูลจำเพาะ Swagger

ออกแบบมาสำหรับ AI agents

การเปิดตัว CLI ในปี 2026 เน้นให้ AI coding agent จัดการพื้นที่ทำงาน API ได้อย่างเป็นระบบ โดยมีองค์ประกอบสำคัญสี่ส่วน

1. ผลลัพธ์แบบมีโครงสร้าง

ทุกคำสั่งคืนค่า JSON ที่ agent แยกวิเคราะห์ได้ และ agentHints.nextSteps จะให้คำแนะนำเกี่ยวกับขั้นตอนถัดไปหรือวิธีแก้ไขข้อผิดพลาด

2. ตรวจสอบ input schema ก่อนเขียน

ใช้คำสั่งต่อไปนี้เพื่อดูและตรวจสอบ schema ของคำสั่ง:

apidog cli-schema list
apidog cli-schema get <SCHEMA_NAME>
apidog cli-schema validate <PAYLOAD>
Enter fullscreen mode Exit fullscreen mode

แนวทางการเขียนที่ปลอดภัยคือ:

  1. ดึง schema
  2. สร้าง JSON payload
  3. ตรวจสอบด้วย cli-schema validate
  4. เรียก create หรือ update

วิธีนี้ช่วยดักจับ payload ที่มีรูปแบบไม่ถูกต้องก่อนแก้ไขโปรเจกต์

3. โหลดความรู้ผ่าน skill

คำสั่ง skill จัดส่งความรู้การใช้งาน CLI ในรูปแบบที่ agent โหลดได้โดยตรง ดูเหตุผลและแนวทางจาก บทความเกี่ยวกับ Apidog CLI skill

จากการวัดผลที่เผยแพร่ agent ที่ทำงานผ่าน CLI schema ใช้ tool calls น้อยลงประมาณ 30% และใช้โทเค็นน้อยลง 25% เมื่อเทียบกับ agent ที่คาดเดา payload รายละเอียดอยู่ใน การวิเคราะห์นี้

4. ควบคุมสิทธิ์การเขียน

โดยค่าเริ่มต้น การเขียนจาก AI ไปยัง branch จะถูกบล็อกจนกว่าจะเปิดใช้งาน External AI Edit Permissions ใน Apidog client เวอร์ชัน 2.8.32 ขึ้นไป:

Project Settings → Feature Settings → AI Feature Settings

อีกทางเลือกคือใช้ AI branch:

  1. สร้าง branch แยกให้ agent
  2. ให้ agent แก้ไขทรัพยากรใน branch นั้น
  3. ส่งผลลัพธ์กลับมาเป็น merge request
  4. ให้มนุษย์ตรวจสอบก่อน merge

AI branch ที่ไม่มีการแก้ไขจะถูกเก็บถาวรโดยอัตโนมัติหลัง 24 ชั่วโมง ช่วยไม่ให้ branch จากการทดลองสะสมในโปรเจกต์

Apidog CLI ไม่ใช่อะไร

การรู้ข้อจำกัดช่วยให้เลือกเครื่องมือได้ตรงกับงาน

Apidog CLI

ไม่ใช่ไคลเอนต์ request แบบโต้ตอบ

CLI ไม่มีคำสั่งสำหรับพิมพ์ POST แบบเฉพาะกิจและจัดรูปแบบผลลัพธ์ให้สวยงาม งานนี้เหมาะกับ curl, HTTPie หรือ TUI clients มากกว่า

ไม่ใช่โอเพนซอร์ส

แพ็กเกจเป็น proprietary npm package และ npm เป็นช่องทางติดตั้งหลัก การใช้งานนอกเหนือจาก --help ต้องมีบัญชี Apidog ระดับฟรีครอบคลุม workflow ที่อธิบายไว้ แต่หากองค์กรต้องการซอฟต์แวร์ที่ตรวจสอบ license ได้ ควรพิจารณา open-source runner

ไม่ใช่ CLI แบบสแตนด์อโลน

สถานการณ์, endpoints และ environments อยู่ในโปรเจกต์ Apidog ไม่ใช่ไฟล์โลคัล นี่เป็นข้อแลกเปลี่ยนที่ทำให้การออกแบบ การทดสอบ Mock และเอกสารใช้แหล่งข้อมูลเดียวกัน

ตำแหน่งในชุดเครื่องมือเทอร์มินัล

เครื่องมือแต่ละตัวเหมาะกับ workflow ต่างกัน:

  • Newman และ Postman CLI รัน collections ที่สร้างใน Postman
  • Hurl และ Bruno รันการทดสอบที่เก็บเป็นไฟล์ข้อความ
  • Apidog CLI รันสถานการณ์จากตัวแก้ไขภาพ พร้อมเข้าถึงสัญญา Mock และเอกสารของโปรเจกต์

ดูการเปรียบเทียบกับ Newman ได้จาก Apidog CLI กับ Newman และดูรายการเครื่องมือเพิ่มเติมจาก เครื่องมือทดสอบ API แบบเทอร์มินัลยอดนิยม

การตั้งค่าที่เหมาะกับทีมส่วนใหญ่คือ:

  • ใช้ curl หรือ xh สำหรับการทดสอบเล็กๆ น้อยๆ
  • ใช้ apidog run สำหรับชุดทดสอบใน CI
  • ใช้รายงาน junit หรือ json เป็น CI artifact

ดูตัวอย่าง pipeline แบบคัดลอกไปใช้ได้จาก คำแนะนำ GitHub Actions

คำถามที่พบบ่อย (FAQ)

Apidog CLI ใช้งานฟรีหรือไม่?

แพ็กเกจติดตั้งได้ฟรีจาก npm และระดับฟรีของ Apidog รองรับการสร้างสถานการณ์และการรันผ่าน CLI แผนแบบชำระเงินเพิ่มฟีเจอร์ระดับทีม ไม่ใช่การเข้าถึง CLI ขั้นพื้นฐาน

Apidog CLI แทนที่ curl หรือ HTTPie ได้หรือไม่?

ไม่ได้ เครื่องมือเหล่านั้นเหมาะกับการส่งคำขอเฉพาะกิจ ส่วน Apidog CLI เหมาะกับการรันสถานการณ์ที่บันทึกไว้และจัดการทรัพยากรในโปรเจกต์ จึงสามารถใช้ร่วมกันได้

รันแบบ headless ใน CI ได้หรือไม่?

ได้ ใช้ --access-token กับ CI secret ระบุ scenario ID และ environment ID จากนั้นควบคุม pipeline ด้วย exit code ของ apidog run โดยไม่ต้องติดตั้งแอปเดสก์ท็อปบน runner

นำเข้าและส่งออกรูปแบบใดได้บ้าง?

รองรับ OpenAPI 3.x, Swagger 2.0 และ Postman collections ทั้งขาเข้าและขาออก

AI agents ใช้งานอย่างปลอดภัยได้อย่างไร?

ใช้ workflow แบบ schema-validate-write โดยตรวจสอบ payload ผ่าน cli-schema validate ก่อน และแยกการแก้ไขของ agent ไว้ใน AI branch จนกว่ามนุษย์จะตรวจสอบและ merge ดูตัวอย่างการใช้งานใน Apidog CLI ใน Claude Code

เทอร์มินัลคือที่ที่การทดสอบและ AI agent ของคุณทำงานอยู่แล้ว การนำ workflow ของ API มาไว้ที่เดียวกันจึงช่วยลดการสลับบริบทได้ทันที เริ่มจาก ดาวน์โหลด Apidog ติดตั้ง CLI ผ่าน npm และรันสถานการณ์หนึ่งให้สำเร็จ จากนั้นดู reference คำสั่งเพิ่มเติมได้ที่ หน้า Apidog CLI

Top comments (0)