---
title: "Endpoints de la API REST | Tajo"
description: "Documentación de los endpoints de la API REST"
url: https://tajo.io/es/docs/endpoints/rest-api/
markdown: https://tajo.io/es/docs/endpoints/rest-api.md
lang: es-ES
author: "Set Noa"
author_url: https://tajo.io/es/set-noa/
robots: noindex
---

Solicita acceso anticipado

Escribe tu nombre y dirección de correo de trabajo. Te enviaremos un enlace para confirmar tu solicitud de acceso a Tajo.

# Endpoints de la API REST

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

Caution

**Página de demostración** - Esta es una página de demostración que muestra la función de documentación con varias pestañas. Su contenido es solo ilustrativo.

Nuestra API REST ofrece endpoints para consultar y modificar datos. Todos los endpoints devuelven los datos en formato JSON.

## URL base

Envía todas las peticiones de la API a esta URL base:

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

## Endpoints de usuarios

### Obtener todos los usuarios

```http
GET /users
```

Devuelve la lista de todos los usuarios. Admite parámetros de paginación.

**Parámetros de consulta:**

| Parámetro | Tipo | Descripción |
| --- | --- | --- |
| page | integer | Número de página (por defecto: 1) |
| limit | integer | Número de registros por página (por defecto: 50, máx.: 100) |
| sort | string | Campo por el que se ordena (por ejemplo, “name”, “created\_at”) |

**Respuesta:**

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

### Obtener un usuario por ID

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

Devuelve un único usuario a partir de su ID.

**Respuesta:**

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

## Endpoints de productos

### Obtener todos los productos

```http
GET /products
```

Devuelve la lista de todos los productos. Admite filtros y paginación.

**Parámetros de consulta:**

| Parámetro | Tipo | Descripción |
| --- | --- | --- |
| category | string | Filtrar por categoría |
| min\_price | number | Filtrar por precio mínimo |
| max\_price | number | Filtrar por precio máximo |
| page | integer | Número de página (por defecto: 1) |
| limit | integer | Número de registros por página (por defecto: 50, máx.: 100) |

**Respuesta:**

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

## Gestión de errores

Todos los endpoints siguen los códigos de estado HTTP estándar e incluyen mensajes de error detallados cuando corresponde:

| Código de estado | Descripción |
| --- | --- |
| 200 | OK - La petición se completó correctamente |
| 400 | Bad Request - Parámetros no válidos |
| 401 | Unauthorized - Se requiere autenticación |
| 403 | Forbidden - Permisos insuficientes |
| 404 | Not Found - El recurso no existe |
| 429 | Too Many Requests - Se superó el límite de peticiones |
| 500 | Internal Server Error - Se produjo un error en el servidor |

Las respuestas de error incluyen un mensaje que explica qué ha fallado:

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