Skip to main content

Registration

New accounts are created at /security/register. The form submits to POST /api/auth/register and requires all fields listed below.
1

Open the registration page

Navigate to /security/register or click Registrarse from the login page. The registration form is publicly accessible.
2

Fill in your details

Complete all required fields:
FieldDescriptionValidation
First name (firstName)Your given nameRequired
Last name (lastName)Your family nameRequired
Location (location)Your city or regionRequired
Email (email)A valid email addressRequired, must be a valid email format
Password (password)Account passwordRequired, minimum 8 characters, must include uppercase, lowercase, a digit, and a special character (@$!%*?&)
Confirm password (confirmPassword)Repeat the passwordMust match password
3

Submit the form

Click Ingresar. On success, the API returns a JWT token and refresh token. The app stores these and signs you in automatically.
4

You are now logged in

You are redirected to the events listing. Your name and avatar appear in the sidebar.
Newly registered users receive the USER role. The ORGANIZER role is granted via a membership upgrade.

API reference

POST /api/auth/register
Content-Type: application/json

{
  "firstName": "Ana",
  "lastName": "García",
  "location": "Madrid",
  "email": "[email protected]",
  "password": "SecurePass1!",
  "confirmPassword": "SecurePass1!"
}
A successful response returns:
{
  "fullName": "Ana García",
  "email": "[email protected]",
  "token": "<jwt>",
  "tokenExpiration": "2026-03-23T12:00:00Z",
  "refreshToken": "<refresh-token>",
  "refreshTokenExpire": "2026-04-22T12:00:00Z"
}

Logging in

The login form is at /security/login and posts to POST /api/auth/login.
1

Navigate to the login page

Click Iniciar Sesión in the top navigation bar, or visit /security/login directly.
2

Enter your credentials

Enter your registered email address and password.
3

Submit

Click Ingresar. On success, the app stores your JWT token and redirects you to the events page. On failure, an error message is displayed below the form.

API reference

POST /api/auth/login
Content-Type: application/json

{
  "email": "[email protected]",
  "password": "SecurePass1!"
}

Editing your profile

Your profile is editable at /user/edit/{id}, reached by clicking Editar Cuenta on the profile page (/user). Changes are submitted to PUT /api/users/{id}.
You must be logged in to edit your profile. The PUT /api/users/{id} endpoint requires the USER or ADMIN role.
The edit form pre-fills all current values from your account. Change any of the following fields and click Actualizar Perfil to save:
FieldForm labelNotes
firstNamePrimer NombreRequired
lastNameSegundo NombreRequired
locationLocaciónRequired
emailCorreo ElectrónicoRequired, must be a valid email
passwordNueva ContraseñaLeave the current password if you do not want to change it
confirmPasswordConfirmar ContraseñaMust match password
On success, a confirmation dialog appears and you are redirected back to /user.

Deleting your account

Account deletion is available on the profile page (/user) by clicking Eliminar Cuenta. This calls DELETE /api/users/{id}.
Deleting your account is permanent. All your organized events, attendances, comments, and ratings are removed. This action cannot be undone.
The UI shows a confirmation dialog before proceeding:
  • Click Sí, eliminar to confirm deletion. The app calls the delete endpoint, logs you out, and redirects to /home.
  • Click No, cancelar to abort.

Membership upgrade

The sidebar displays a ¡Adquiere tu membresía! panel for users without an active membership. Premium members are identified by a gold badge next to their name throughout the app.

Monthly plan

$2.99/month. Paid via PayPal. Grants the Organizer role to create and manage events.

Annual plan

$29.99/year. Paid via PayPal. Same benefits as the monthly plan at a reduced rate.
For full details on purchasing a membership, see the Memberships page.

Build docs developers (and LLMs) love