---
title: "Endpoint REST API | Tajo"
description: "Tài liệu về các endpoint REST API"
url: https://tajo.io/vi/docs/endpoints/rest-api/
markdown: https://tajo.io/vi/docs/endpoints/rest-api.md
lang: vi-VN
author: "Set Noa"
author_url: https://tajo.io/vi/set-noa/
robots: noindex
---

Đăng ký quyền truy cập sớm

Nhập tên và địa chỉ email công việc của bạn. Chúng tôi sẽ gửi liên kết để xác nhận yêu cầu truy cập Tajo.

# Endpoint REST API

[Set Noa](https://tajo.io/vi/set-noa/)

Caution

**Trang demo** - Đây là trang demo nhằm giới thiệu tính năng tài liệu nhiều tab. Nội dung này chỉ mang tính minh họa.

REST API của chúng tôi cung cấp các endpoint để truy cập và thao tác dữ liệu. Mọi endpoint đều trả về dữ liệu ở định dạng JSON.

## URL cơ sở

Mọi yêu cầu API đều gửi tới URL cơ sở sau:

```
https://api.example.com/v1
```

## Endpoint người dùng

### Lấy tất cả người dùng

```http
GET /users
```

Trả về danh sách tất cả người dùng. Hỗ trợ tham số phân trang.

**Tham số truy vấn:**

| Tham số | Kiểu | Mô tả |
| --- | --- | --- |
| page | integer | Số trang (mặc định: 1) |
| limit | integer | Số bản ghi trên mỗi trang (mặc định: 50, tối đa: 100) |
| sort | string | Trường dùng để sắp xếp (ví dụ: “name”, “created\_at”) |

**Phản hồi:**

```json
{
  "data": [
    {
      "id": "user_123",
      "name": "John Doe",
      "email": "john@example.com",
      "created_at": "2023-01-15T08:30:00Z"
    },
    // More users...
  ],
  "meta": {
    "total": 250,
    "page": 1,
    "limit": 50
  }
}
```

### Lấy người dùng theo ID

```http
GET /users/{id}
```

Trả về một người dùng theo ID.

**Phản hồi:**

```json
{
  "data": {
    "id": "user_123",
    "name": "John Doe",
    "email": "john@example.com",
    "created_at": "2023-01-15T08:30:00Z",
    "profile": {
      "bio": "Software developer",
      "location": "New York",
      "avatar_url": "https://example.com/avatars/john.jpg"
    }
  }
}
```

## Endpoint sản phẩm

### Lấy tất cả sản phẩm

```http
GET /products
```

Trả về danh sách tất cả sản phẩm. Hỗ trợ lọc và phân trang.

**Tham số truy vấn:**

| Tham số | Kiểu | Mô tả |
| --- | --- | --- |
| category | string | Lọc theo danh mục |
| min\_price | number | Lọc theo giá tối thiểu |
| max\_price | number | Lọc theo giá tối đa |
| page | integer | Số trang (mặc định: 1) |
| limit | integer | Số bản ghi trên mỗi trang (mặc định: 50, tối đa: 100) |

**Phản hồi:**

```json
{
  "data": [
    {
      "id": "prod_123",
      "name": "Example Product",
      "description": "This is an example product",
      "price": 49.99,
      "category": "electronics"
    },
    // More products...
  ],
  "meta": {
    "total": 350,
    "page": 1,
    "limit": 50
  }
}
```

## Xử lý lỗi

Mọi endpoint đều tuân theo mã trạng thái HTTP chuẩn và kèm thông báo lỗi chi tiết khi cần:

| Mã trạng thái | Mô tả |
| --- | --- |
| 200 | OK, yêu cầu thành công |
| 400 | Bad Request, tham số không hợp lệ |
| 401 | Unauthorized, cần xác thực |
| 403 | Forbidden, không đủ quyền |
| 404 | Not Found, tài nguyên không tồn tại |
| 429 | Too Many Requests, đã vượt giới hạn tần suất |
| 500 | Internal Server Error, lỗi phía máy chủ |

Phản hồi lỗi kèm theo thông báo giải thích điều gì đã xảy ra:

```json
{
  "error": {
    "code": "invalid_parameter",
    "message": "The parameter 'email' is not a valid email address",
    "request_id": "req_abc123"
  }
}
```
