Skip to main content
POST
/
api
/
autenticacion
/
registrar
Registrar Usuario
curl --request POST \
  --url https://api.example.com/api/autenticacion/registrar \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "email": "<string>",
  "password": "<string>",
  "password_confirmation": "<string>"
}
'
{
  "201": {},
  "422": {},
  "estado": "<string>",
  "mensaje": "<string>",
  "data": {
    "usuario": "<string>",
    "email": "<string>"
  }
}

Endpoint

POST /api/autenticacion/registrar
Este endpoint permite registrar un nuevo usuario en el sistema GIMA. El usuario registrado puede posteriormente autenticarse usando el endpoint de inicio de sesión.

Request Body

name
string
required
Nombre completo del usuario.Validación: required|string|max:255
email
string
required
Dirección de correo electrónico del usuario. Debe ser única en el sistema.Validación: required|email|unique:users,email
password
string
required
Contraseña del usuario. Debe tener al menos 8 caracteres.Validación: required|string|min:8|confirmed
password_confirmation
string
required
Confirmación de la contraseña. Debe coincidir exactamente con el campo password.Validación: Requerido para la validación confirmed del campo password

Response

estado
string
Estado de la operación. Valor: "exito"
mensaje
string
Mensaje descriptivo del resultado de la operación
data
object
Objeto que contiene la información del usuario registrado
usuario
string
Nombre del usuario registrado
email
string
Dirección de correo electrónico del usuario registrado

Status Codes

201
Created
Usuario registrado correctamente. El nuevo usuario ha sido creado en el sistema.
422
Validation Error
Error de validación. Los datos proporcionados no cumplen con los requisitos (ej: email duplicado, contraseña muy corta, contraseñas no coinciden).

Examples

Successful Registration

cURL
curl -X POST http://127.0.0.1:8000/api/autenticacion/registrar \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "name": "Usuario Prueba",
    "email": "[email protected]",
    "password": "secret123",
    "password_confirmation": "secret123"
  }'
Response (201 Created)
{
  "estado": "exito",
  "mensaje": "Usuario registrado correctamente",
  "data": {
    "usuario": "Usuario Prueba",
    "email": "[email protected]"
  }
}

Validation Error - Email Already Exists

cURL
curl -X POST http://127.0.0.1:8000/api/autenticacion/registrar \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "name": "Usuario Duplicado",
    "email": "[email protected]",
    "password": "secret123",
    "password_confirmation": "secret123"
  }'
Response (422 Validation Error)
{
  "message": "The email has already been taken.",
  "errors": {
    "email": [
      "The email has already been taken."
    ]
  }
}

Validation Error - Password Too Short

cURL
curl -X POST http://127.0.0.1:8000/api/autenticacion/registrar \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "name": "Usuario Prueba",
    "email": "[email protected]",
    "password": "123",
    "password_confirmation": "123"
  }'
Response (422 Validation Error)
{
  "message": "The password field must be at least 8 characters.",
  "errors": {
    "password": [
      "The password field must be at least 8 characters."
    ]
  }
}

Validation Error - Passwords Don’t Match

cURL
curl -X POST http://127.0.0.1:8000/api/autenticacion/registrar \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "name": "Usuario Prueba",
    "email": "[email protected]",
    "password": "secret123",
    "password_confirmation": "secret456"
  }'
Response (422 Validation Error)
{
  "message": "The password field confirmation does not match.",
  "errors": {
    "password": [
      "The password field confirmation does not match."
    ]
  }
}

Notes

  • El usuario registrado no tiene roles asignados por defecto. Los roles deben ser asignados posteriormente por un administrador.
  • La contraseña es encriptada usando bcrypt antes de ser almacenada en la base de datos.
  • Después del registro exitoso, el usuario debe usar el endpoint /api/autenticacion/iniciar-sesion para obtener un token de acceso.

Build docs developers (and LLMs) love