Client
Representa a un Cliente o comprador de una Company
{warning} Los atributos name
, email
y phone
son protegidos, y sólo los admins pueden ver
esos atributos, con excepción de los Providers cuando acceden a un Client a través de una
Orden o OrderProvider
Modelo Client
{
"id": 39,
"name": "Jose Manuel Salazar",
"display_name": "user_183",
"email": "joses@manzanares.com.ve",
"phone": "+584121179751",
"avatar_url": "http://127.0.0.1:8000/storage/static/default/avatar_client.png",
"rating_e2": 450,
"rating_sum": 27,
"rating_count": 6,
"created_at": "2020-04-23 18:28:29",
"updated_at": "2024-10-27 10:11:12",
"deleted_at": null,
"account_id": 183,
"last_name": null,
"phone_prefix": "+58",
"phone_suffix": "4121179751",
"dni": null,
"uuid": "CQUQM6Z"
}
Atributo |
Tipo |
Descripción |
id |
int |
- |
name |
string |
- |
display_name |
string |
- |
email |
string |
- |
phone |
string |
- |
avatar_url |
string\|null |
- |
rating_e2 |
int |
- |
rating_sum |
int |
- |
rating_count |
int |
- |
created_at |
datetime\|null |
- |
updated_at |
datetime\|null |
- |
account_id |
int |
- |
phone_prefix |
string\|null |
- |
phone_suffix |
string\|null |
- |
uuid |
string |
- |
Insertar Client
Método |
URI |
Cabeceras |
POST |
/companies/{companyId}/clients |
N/A |
{
"name": "required|max:64|person_name",
"last_name": "string|max:64|person_name",
"phone": "string|min:9",
"password": "string",
"email": {
"required": true,
"email": "rfc,filter",
"email_check": true
},
"receive_code_via": "string|in:email,phone"
}
Insertar Client de PriceList
Método |
URI |
Cabeceras |
PUT |
/companies/{companyId}/price-lists/{priceListId}/clients/{clientId} |
Authorization |
Listar Client
{info} Soporta:
Paginación
Filters
Carga dinámica
Método |
URI |
Cabeceras |
GET |
/companies/{companyId}/clients |
Authorization |
Listar Client de Admin
Método |
URI |
Cabeceras |
GET |
/companies/{companyId}/admins/{adminId}/clients |
Authorization |
{info} Soporta:
Paginación
Filters
Carga dinámica
Método |
URI |
Cabeceras |
GET |
/companies/{companyId}/price-lists/{priceListId}/clients |
Authorization |
Listar Setting
Método |
URI |
Cabeceras |
GET |
/companies/{companyId}/clients/{clientId}/settings |
Authorization |
Mostrar Client
{info} Soporta:
Carga dinámica
Método |
URI |
Cabeceras |
GET |
/companies/{companyId}/clients/{clientId} |
Authorization |
Actualizar Client
{info} Soporta:
Carga dinámica
Método |
URI |
Cabeceras |
PATCH |
/companies/{companyId}/clients/{clientId} |
Authorization |
{
"name": "max:64|person_name",
"last_name": "max:64|person_name",
"phone": "",
"latitude_e6": "integer|between:-90000000,90000000",
"longitude_e6": "integer|between:-180000000,180000000"
}
Actualizar Setting
Método |
URI |
Cabeceras |
PATCH |
/companies/{companyId}/clients/{clientId}/settings |
Authorization |
{
"dni": "string",
"born_at": "date",
"selected_address_id": "integer|exists:client_addresses,id",
"payout_accounts": [
{
"type": "required|string|in:national_bank_account,mobile_payment",
"document": "required_if:type,national_bank_account|required_if:type,mobile_payment|string|regex:/^[VEJGP].{7,15}$/",
"name": "required_if:type,national_bank_account|string",
"account": "required_if:type,national_bank_account|string|min:20",
"bank_name": "required_if:type,national_bank_account|string|min:3|max:64",
"bank_code": "required_if:type,mobile_payment|string|size:4",
"phone": "required_if:type,mobile_payment|string|max:32",
"email": "nullable|email:rfc,filter"
}
],
"gender": "string|in:male,female,other",
"lang": "string|in:en,es",
"referral_id": {
"string": true,
"min": "7",
"max": "10"
}
}
Vincular Client
Vincular Client de Admin
Método |
URI |
Cabeceras |
PUT |
/companies/{companyId}/admins/{adminId}/clients/{clientId} |
Authorization |
Desvincular Client
Desvincular Client de Admin
Método |
URI |
Cabeceras |
DELETE |
/companies/{companyId}/admins/{adminId}/clients/{clientId} |
Authorization |
Sincronizar Client
Sincronizar Client de Admin
Método |
URI |
Cabeceras |
PUT |
/companies/{companyId}/admins/{adminId}/clients |
Authorization |
[
"integer"
]
Eliminar Client
Eliminar Client de PriceList
Método |
URI |
Cabeceras |
DELETE |
/companies/{companyId}/price-lists/{priceListId}/clients/{clientId} |
Authorization |
Acciones de Client
Show Me
{info} Soporta:
Carga dinámica
Método |
URI |
Cabeceras |
GET |
/companies/{companyId}/clients/me |
Authorization |
Upload Avatar
Método |
URI |
Cabeceras |
POST |
/companies/{companyId}/clients/{clientId}/upload-avatar |
Authorization |
{
"avatar": "required|image|mimes:jpeg,png,bmp|max:2048|dimensions:ratio=1/1"
}
Store By Admin
Método |
URI |
Cabeceras |
POST |
/companies/{companyId}/admins/{adminId}/clients |
Authorization |
{
"name": "required|max:64",
"phone": "string",
"email": "email:rfc,filter"
}
Index Allowed
Método |
URI |
Cabeceras |
GET |
/companies/{companyId}/clients/{clientId}/allowed-settings |
Authorization |
Index For Branch
{info} Soporta:
Paginación
Filters
Carga dinámica
Método |
URI |
Cabeceras |
GET |
/companies/{companyId}/branches/{branchId}/clients |
Authorization |
Enlaces de Client