BlogTank LabVề tôiLiên hệĐặt lịch
Hợp tác với tôi
Thông báo

Từ nay mình sẽ sử dụng tên miền mới thetanklog.com thay vì tankbaclass.com.

Điều hướng
  • Blog
  • Tank Lab
  • Về tôi
  • Liên hệ

© 2026 The Tank Log. All rights reserved.

Tất cả bài viết/Kỹ thuật & Hệ thống

API - Khái niệm cơ bản

TM
Tank
Product builder · Mentor BA
|
2 tháng 3, 2025
|
5 phút đọc
|
259 lượt đọc

API là cầu nối cho các ứng dụng và tầng dịch vụ giao tiếp với nhau. Bài này giải thích API là gì, các khái niệm cơ bản và ví dụ dễ hiểu — nền tảng kỹ thuật tối thiểu một BA nên nắm để làm việc với dev.

Trong bài viết này mình sẽ giới thiệu về định nghĩa và các khái niệm cơ bản liên quan tới API cho các bạn nào đang tìm hiểu về API.

1. API là gì?

API là viết tắt của Application Programming Interface, có nghĩa là Giao diện lập trình ứng dụng. API là một tập hợp các định nghĩa và giao thức cho phép các ứng dụng khác nhau hoặc các tầng dịch vụ (service) trong cùng 1 hệ thống giao tiếp với nhau.

Ví dụ:

  • Bạn sử dụng ứng dụng thời tiết để xem dự báo thời tiết. Ứng dụng thời tiết này sử dụng API để truy cập dữ liệu thời tiết từ một nguồn khác, chẳng hạn như trang web của Cơ quan Khí tượng Quốc gia.
  • Bạn mua sắm trực tuyến và thanh toán bằng VNpay. VNPay sử dụng API để giao tiếp với ngân hàng của bạn để xử lý thanh toán.

Lấy ví dụ khác dễ hiểu hơn thì API giống như phiên dịch viên giúp 2 người nói 2 ngôn ngữ khác nhau có thể giao tiếp được với nhau.

2. API hoạt động như thế nào?

API hoạt động dựa trên các yêu cầu (request) và phản hồi (response)

  • Request: Khi một ứng dụng muốn truy cập dữ liệu hoặc chức năng từ một ứng dụng khác, nó sẽ gửi một yêu cầu đến API của ứng dụng đó.
  • Response: API sẽ xử lý yêu cầu và gửi lại phản hồi cho ứng dụng. Phản hồi thường bao gồm dữ liệu hoặc kết quả của chức năng được yêu cầu.

3. Lợi ích của việc sử dụng API

  • Tái sử dụng chức năng:
    • API cho phép các nhà phát triển tái sử dụng chức năng đã có sẵn thay vì viết lại từ đầu.
    • Ví dụ: Giả sử bạn đang xây dựng một ứng dụng bán hàng trực tuyến. Thay vì tự viết chức năng thanh toán bằng thẻ tín dụng, bạn có thể sử dụng API thanh toán của một nhà cung cấp dịch vụ thanh toán như Napas. API này cung cấp cho bạn tất cả các chức năng cần thiết để xử lý thanh toán an toàn và hiệu quả, giúp bạn tiết kiệm thời gian và công sức.
  • Kết nối các ứng dụng:
    • API cho phép kết nối các ứng dụng khác nhau để tạo ra các hệ thống tích hợp.
    • Ví dụ: Giả sử bạn đang xây dựng một ứng dụng quản lý lịch trình. Bạn có thể sử dụng API lịch của Google để cho phép người dùng đồng bộ hóa lịch của họ với ứng dụng của bạn. Điều này giúp người dùng dễ dàng quản lý lịch trình của họ từ một nơi và cải thiện trải nghiệm người dùng tổng thể.
  • Mở rộng chức năng:
    • API cho phép mở rộng chức năng của một ứng dụng bằng cách thêm các dịch vụ mới.
    • Ví dụ: Giả sử bạn đang xây dựng một ứng dụng bản đồ. Bạn có thể sử dụng API bản đồ của Google để thêm các tính năng như tìm kiếm địa điểm, chỉ đường và xem ảnh vệ tinh vào ứng dụng của bạn. Điều này làm cho ứng dụng của bạn trở nên hữu ích và hấp dẫn hơn cho người dùng.
  • Tiếp cận dữ liệu:
    • API cho phép truy cập dữ liệu từ một ứng dụng khác.
    • Ví dụ: Giả sử bạn đang xây dựng một ứng dụng phân tích thị trường chứng khoán. Bạn có thể sử dụng API của các bên cung cấp dữ liệu chứng khoán như polygon, isdb... để có thể lấy dữ liệu về giá cổ phiếu.
  • Tạo ra các dịch vụ mới:
    • API có thể được sử dụng để tạo ra các dịch vụ mới có thể được sử dụng bởi các ứng dụng khác.
    • Ví dụ: Giả sử bạn đang xây dựng một ứng dụng dịch thuật. Bạn có thể sử dụng API dịch thuật của Google để cung cấp dịch vụ dịch thuật cho người dùng của bạn. Điều này cho phép bạn tạo ra một dịch vụ mới có giá trị cho người dùng và kiếm tiền từ nó.
  • Ngoài ra, API còn mang lại nhiều lợi ích khác như:
    • Tăng tốc độ phát triển: API giúp các nhà phát triển xây dựng ứng dụng nhanh hơn và dễ dàng hơn.
    • Giảm chi phí phát triển: API giúp các nhà phát triển tiết kiệm chi phí phát triển ứng dụng.
    • Cải thiện trải nghiệm người dùng: API giúp tạo ra các ứng dụng thân thiện và dễ sử dụng hơn.
    • Thúc đẩy đổi mới: API giúp thúc đẩy đổi mới trong ngành công nghiệp phần mềm.

4. Các loại API phổ biến

  • API REST: Loại API phổ biến nhất, sử dụng các phương thức HTTP (GET, POST, PUT, DELETE) để truy cập dữ liệu.
  • API SOAP: Loại API truyền thống hơn, sử dụng XML để định nghĩa các yêu cầu và phản hồi.
  • API GraphQL: Loại API mới hơn, cho phép truy cập dữ liệu một cách linh hoạt hơn.

4.1 REST API:

  • Đặc điểm:
    • Dựa trên kiến trúc REST (Representational State Transfer) - Kiến trúc phần mềm không trạng thái, sử dụng các nguồn tài nguyên và phương thức HTTP để truy cập dữ liệu.
    • Dễ dàng sử dụng, học hỏi và triển khai.
    • Linh hoạt và có thể mở rộng.
    • Không trạng thái, giúp giảm tải cho máy chủ.
    • Sử dụng định dạng dữ liệu JSON hoặc XML.
  • Ví dụ:
    • Lấy danh sách sản phẩm: GET /products
    • Thêm sản phẩm mới: POST /products
    • Cập nhật sản phẩm: PUT /products/{id}
    • Xóa sản phẩm: DELETE /products/{id}
  • Ưu điểm:
    • Dễ sử dụng và học tập.
    • Linh hoạt và có thể mở rộng.
    • Không trạng thái, giúp giảm tải cho máy chủ.
    • Được hỗ trợ bởi nhiều công cụ và thư viện.
  • Nhược điểm:
    • Có thể khó khăn khi truy cập dữ liệu phức tạp.
    • Ít kiểm soát hơn so với các loại API khác.
  • Playground: bạn có thể sử dụng bộ API sample của swagger để tìm hiểu, thử nghiệm https://petstore.swagger.io/

4.2 SOAP API:

  • Đặc điểm:
    • Dựa trên giao thức SOAP - Giao thức truyền thông dựa trên XML để trao đổi dữ liệu và chức năng giữa các ứng dụng.
    • Cấu trúc phức tạp, đòi hỏi nhiều kiến thức để sử dụng.
    • Thường được sử dụng cho các hệ thống phức tạp, đòi hỏi tính bảo mật cao.
    • Sử dụng định dạng dữ liệu XML.
  • Ví dụ:
    • Xác thực người dùng: AuthenticateUser(username, password)
    • Lấy thông tin sản phẩm: GetProductDetails(productId)
    • Cập nhật đơn hàng: UpdateOrder(orderId, items)
  • Ưu điểm:
    • Cấu trúc rõ ràng, dễ dàng xác định các thành phần.
    • Bảo mật cao, hỗ trợ nhiều tính năng bảo mật nâng cao.
    • Tương thích tốt với các hệ thống doanh nghiệp.
  • Nhược điểm:
    • Phức tạp và khó sử dụng.
    • Hiệu suất chậm hơn so với các loại API khác.
    • Ít linh hoạt và khó mở rộng.
  • Playground: https://www.postman.com/cs-demo/workspace/public-soap-apis/collection/8854915-43f6a9be-0c65-4486-bfdf-36b6548161dd

4.3 GraphQL API

  • Đặc điểm:
    • Loại API mới, sử dụng truy vấn GraphQL - Ngôn ngữ truy vấn cho phép truy cập dữ liệu linh hoạt và hiệu quả.
    • Cho phép truy cập dữ liệu theo nhu cầu, giảm thiểu dữ liệu tải xuống không cần thiết.
    • Cấu trúc linh hoạt, dễ dàng thay đổi mà không ảnh hưởng đến các ứng dụng khác.
    • Sử dụng định dạng dữ liệu JSON.
  • Ví dụ:
    • Lấy thông tin sản phẩm và danh sách đánh giá:
    • { product(id: 123) { name, price, reviews { author, content } } }
    • Lấy danh sách sản phẩm theo danh mục và mức giá: { products(category: "electronics", priceRange: { min: 100, max: 500 }) { id, name, price } }
  • Ưu điểm:
    • Truy cập dữ liệu linh hoạt và hiệu quả.
    • Cấu trúc linh hoạt, dễ dàng thay đổi.
    • Giảm thiểu dữ liệu tải xuống không cần thiết.
    • Được hỗ trợ bởi cộng đồng phát triển mạnh mẽ.
  • Nhược điểm:
    • Công nghệ mới, đòi hỏi thời gian để học tập và triển khai.
    • Ít công cụ và thư viện hỗ trợ so với các loại API khác.
  • Playground: https://www.apollographql.com/docs/apollo-server/v2/testing/graphql-playground/
Chủ đề:
Chia sẻ bài viết này
Lan tỏa kiến thức thực tế đến cộng đồng BA
Thấy bài này giúp được việc?
Mời mình ly cà phê, rảnh mình viết tiếp ☕
MỤC LỤC
7
1. API là gì?2. API hoạt động như thế nào?3. Lợi ích của việc sử dụng API4. Các loại API phổ biến4.1 REST API:4.2 SOAP API:4.3 GraphQL API
CHỦ ĐỀ & THẺ
5
Kỹ thuật & Hệ thống#API#Tích hợp hệ thống#Backend#Giao thức kết nối
0%

Bài viết liên quan

Kỹ thuật & Hệ thống
#API
#Tích hợp hệ thống
#Backend
#Giao thức kết nối
Bài tiếp theo
Phần mềm là gì? Dự án phát triển phần mềm hoạt động như nào?
"BA level-up" - Số 02: Kỹ năng Technical cho BA - hiểu về hệ thống để cộng tác hiệu quả với Team Dev
Kỹ thuật & Hệ thống

"BA level-up" - Số 02: Kỹ năng Technical cho BA - hiểu về hệ thống để cộng tác hiệu quả với Team Dev

21 thg 1, 2026
ERD: Bí kíp “đọc vị” cơ sở dữ liệu cho BA
Kỹ thuật & Hệ thống

ERD: Bí kíp “đọc vị” cơ sở dữ liệu cho BA

10 thg 3, 2025
Phần mềm là gì? Dự án phát triển phần mềm hoạt động như nào?
Kỹ thuật & Hệ thống

Phần mềm là gì? Dự án phát triển phần mềm hoạt động như nào?

3 thg 3, 2025