Saltar al contenido principal

Clientes

Un cliente representa a una persona que realiza compras en la tienda. Las cuentas de cliente almacenan información de contacto, lo que facilita futuras compras sin necesidad de volver a ingresar sus datos.


Propiedades

PropiedadDescripción
idIdentificador único del cliente
nameNombre del cliente
last_nameApellido del cliente
emailCorreo electrónico
phoneNúmero de teléfono
identificationNúmero de identificación (DNI, CPF, CNPJ, etc.)
identification_typeTipo de identificación
created_atFecha de creación (ISO 8601)
updated_atFecha de última actualización (ISO 8601)
noteNotas internas sobre el cliente
total_spentMonto total gastado en la tienda
orders_countCantidad total de pedidos
last_order_idID del último pedido
last_order_dateFecha del último pedido
accepts_marketingIndica si acepta comunicaciones de marketing (true o false)
addressDirección principal del cliente

Endpoints

GET /customers

Obtiene una lista de clientes.

Parámetros de query

ParámetroDescripción
created_at_minFiltrar clientes creados después de esta fecha (ISO 8601)
created_at_maxFiltrar clientes creados antes de esta fecha (ISO 8601)
updated_at_minFiltrar clientes actualizados después de esta fecha (ISO 8601)
updated_at_maxFiltrar clientes actualizados antes de esta fecha (ISO 8601)
qBuscar por nombre, email o identificación
pageNúmero de página
per_pageCantidad de resultados por página
since_idRetorna registros posteriores al ID indicado
idsLista de IDs separados por coma

Ejemplo

GET /customers

HTTP/1.1 200 OK

{
"pagination": {
"total": 120,
"page": 1,
"per_page": 50,
"next_page": "https://developers.tiendanegocio.com/v1/customers?page=2&per_page=50"
},
"results": [
{
"id": 25,
"name": "Juan",
"last_name": "Pérez",
"email": "juan@example.com",
"phone": "541112345678",
"identification": "12345678",
"identification_type": "DNI",
"created_at": "2023-01-01T00:00:00.000Z",
"updated_at": "2023-01-02T00:00:00.000Z",
"note": "Cliente VIP",
"total_spent": "0.00",
"orders_count": 0,
"last_order_id": 1,
"last_order_date": "2023-01-01T00:00:00.000Z",
"accepts_marketing": false,
"address": {}
}
]
}

GET /customers/{id}

Obtiene un cliente por ID.

Ejemplo

GET /customers/25

HTTP/1.1 200 OK

{
"id": 25,
"name": "Juan",
"last_name": "Pérez",
"email": "juan@example.com",
"phone": "541112345678",
"identification": "12345678",
"identification_type": "DNI",
"created_at": "2023-01-01T00:00:00.000Z",
"updated_at": "2023-01-02T00:00:00.000Z",
"note": "Cliente VIP",
"total_spent": "0.00",
"orders_count": 0,
"last_order_id": 1,
"last_order_date": "2023-01-01T00:00:00.000Z",
"accepts_marketing": false,
"address": {}
}

POST /customers

Crea un nuevo cliente.

Ejemplo de request

{
"name": "Juan",
"last_name": "Pérez",
"email": "juan@example.com",
"phone": "541112345678",
"password": "123456",
"identification": "12345678",
"identification_type": "DNI",
"note": "Cliente VIP",
"company": "Acme Inc"
}

Respuesta

HTTP/1.1 201 Created

{
"id": 26,
"name": "Juan",
"last_name": "Pérez",
"email": "juan@example.com",
"phone": "541112345678",
"identification": "12345678",
"identification_type": "DNI",
"created_at": "2023-01-01T00:00:00.000Z",
"updated_at": "2023-01-02T00:00:00.000Z",
"note": "Cliente VIP",
"total_spent": "0.00",
"orders_count": 0,
"last_order_id": 1,
"last_order_date": "2023-01-01T00:00:00.000Z",
"accepts_marketing": false,
"address": null
}

PUT /customers/{id}

Actualiza un cliente existente.

Ejemplo

PUT /customers/26

{
"name": "Juan",
"last_name": "Pérez",
"email": "juan@example.com",
"phone": "541112345678",
"password": "123456",
"identification": "12345678",
"identification_type": "DNI",
"note": "Cliente VIP",
"company": "Acme Inc"
}

Respuesta

HTTP/1.1 200 OK

{
"id": 26,
"name": "Juan",
"last_name": "Pérez",
"email": "juan@example.com",
"phone": "541112345678",
"identification": "12345678",
"identification_type": "DNI",
"created_at": "2023-01-01T00:00:00.000Z",
"updated_at": "2023-01-02T00:00:00.000Z",
"note": "Cliente VIP",
"total_spent": "0.00",
"orders_count": 0,
"last_order_id": 1,
"last_order_date": "2023-01-01T00:00:00.000Z",
"accepts_marketing": false,
"address": {}
}

DELETE /customers/{id}

Elimina un cliente.

Ejemplo

DELETE /customers/1