Skip to main content

Base URL

https://proyecto-ingenieria-software-6ccv.onrender.com

Forum Types

The platform supports six different forums with two routing patterns:

Dynamic Forums (1, 2, 4, 6)

These forums use dynamic routing with configurable question counts:
FOROS Configuration
array
Forum Configuration (from main.py:91-96):
FOROS = [
    {"id": 1, "nombre": "respuestas_foro1", "preguntas": 6, "ruta": "foro1"},
    {"id": 2, "nombre": "respuestas_foro2", "preguntas": 6, "ruta": "foro2"},
    {"id": 4, "nombre": "respuestas_foro4", "preguntas": 7, "ruta": "foro4"},
    {"id": 6, "nombre": "respuestas_foro6", "preguntas": 8, "ruta": "foro6"}
]

Special Forums

Forum 3 - Table-Based Responses

Forum 3 uses a specialized schema with complex table fields for question 6:
  • Regular questions: r1 through r5, r7, r8
  • Table question (6): 7 rows × 3 columns with format t6_r{row}_c{col}
  • Dedicated endpoints: /guardar_en_foro_3, /respuestas_en_foro_3

Forum 5 - Image Uploads

Forum 5 handles multipart form data with image uploads:
  • Text responses: r2, r3, r4, r5, r6
  • Image for question 3: Single file upload (imagen_pregunta_3)
  • Table images: Array of 3 images for table questions
  • Endpoint: /guardar_foro5/{email} (FormData)

Common Endpoints Pattern

All forums share these endpoint types:

Submit

POST endpoint to save forum responses

Retrieve

GET endpoint to fetch all responses with user data

Verify

GET endpoint to check if user already participated

Dynamic Routing

For forums 1, 2, 4, and 6, replace {foro_id} with the forum number:
# Forum 1 examples
POST /guardar_foro1
GET /respuestas_foro1
GET /verificar_foro1/{email}

# Forum 4 examples
POST /guardar_foro4
GET /respuestas_foro4
GET /verificar_foro4/{email}

Response Features

All GET endpoints for responses attempt to JOIN with the usuarios table to include nombre and apellidos fields. If the JOIN fails, only forum response data is returned.

Duplicate Prevention

All submission endpoints check for existing responses by email and return success without inserting duplicates:
{
  "mensaje": "Ya has participado",
  "exito": true
}

Next Steps

Submit Responses

Learn how to submit forum responses

Retrieve Data

Fetch and verify forum participation

Build docs developers (and LLMs) love