---
title: "Endpoint REST API | Tajo"
description: "Dokumentasi untuk endpoint REST API"
url: https://tajo.io/in/docs/endpoints/rest-api/
markdown: https://tajo.io/in/docs/endpoints/rest-api.md
lang: id-ID
author: "Set Noa"
author_url: https://tajo.io/in/set-noa/
robots: noindex
---

Ajukan akses awal

Masukkan nama depan dan alamat email kerja Anda. Kami akan mengirim tautan untuk mengonfirmasi permintaan akses Tajo.

# Endpoint REST API

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

Caution

**Halaman demo** - Ini adalah halaman demo untuk memperlihatkan fitur dokumentasi multi-tab. Konten ini hanya untuk ilustrasi.

REST API kami menyediakan endpoint untuk mengakses dan mengelola data. Semua endpoint mengembalikan data dalam format JSON.

## Base URL

Semua permintaan API harus dikirim ke base URL berikut:

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

## Endpoint pengguna

### Ambil semua pengguna

```http
GET /users
```

Mengembalikan daftar seluruh pengguna. Mendukung parameter paginasi.

**Parameter kueri:**

| Parameter | Tipe | Deskripsi |
| --- | --- | --- |
| page | integer | Nomor halaman (default: 1) |
| limit | integer | Jumlah record per halaman (default: 50, maks: 100) |
| sort | string | Field untuk pengurutan (misalnya, “name”, “created\_at”) |

**Respons:**

```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
  }
}
```

### Ambil pengguna berdasarkan ID

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

Mengembalikan satu pengguna berdasarkan ID.

**Respons:**

```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 produk

### Ambil semua produk

```http
GET /products
```

Mengembalikan daftar seluruh produk. Mendukung pemfilteran dan paginasi.

**Parameter kueri:**

| Parameter | Tipe | Deskripsi |
| --- | --- | --- |
| category | string | Filter berdasarkan kategori |
| min\_price | number | Filter berdasarkan harga minimum |
| max\_price | number | Filter berdasarkan harga maksimum |
| page | integer | Nomor halaman (default: 1) |
| limit | integer | Jumlah record per halaman (default: 50, maks: 100) |

**Respons:**

```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
  }
}
```

## Penanganan kesalahan

Semua endpoint mengikuti kode status HTTP standar dan menyertakan pesan kesalahan yang rinci bila diperlukan:

| Kode status | Deskripsi |
| --- | --- |
| 200 | OK - Permintaan berhasil |
| 400 | Bad Request - Parameter tidak valid |
| 401 | Unauthorized - Autentikasi diperlukan |
| 403 | Forbidden - Izin tidak mencukupi |
| 404 | Not Found - Sumber daya tidak ada |
| 429 | Too Many Requests - Batas laju terlampaui |
| 500 | Internal Server Error - Terjadi kesalahan server |

Respons kesalahan menyertakan pesan yang menjelaskan penyebabnya:

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