Recaudo Docs

Calendario

Eventos

Crea y administra desde tu sitio los eventos de Recaudo: webinars, talleres, cursos o reuniones. Cada evento publicado tiene su página de registro en recaudo.app/e/{tu-cuenta}/{evento}, con los mismos campos que ves en el panel.

GET /v1/events Lista tus eventos
POST /v1/events Crea un evento
GET /v1/events/{id} Consulta un evento
PATCH /v1/events/{id} Edita un evento
DELETE /v1/events/{id} Borra un evento
GET /v1/events/{id}/registrations Lista quién se registró

Crear un evento

Cuerpo
{
    "name": "Webinar: mantenimiento preventivo",
    "description": "Sesión en vivo con preguntas al final.",
    "location_type": "online",
    "format": "webinar",
    "frequency": "one_time",
    "date": "2026-11-18",
    "start_time": "19:00",
    "end_time": "20:30",
    "meeting_url": "https://meet.example.com/abc-defg-hij",
    "max_attendees": 150,
    "status": "published",
    "custom_fields": [
        {
            "label": "Puesto",
            "type": "select",
            "required": true,
            "options": [
                "Dirección",
                "Operación",
                "Ventas"
            ]
        },
        {
            "label": "Ciudad",
            "type": "text",
            "required": true
        }
    ]
}
Campo Tipo Requerido Descripción
name string Sí Nombre del evento. De aquí sale el slug de su página.
location_type string Sí online, presencial, hibrido u on_demand.
frequency string Sí one_time (una fecha), recurring (se repite) o evergreen (sin fecha, siempre disponible).
date date Según el caso Fecha (YYYY-MM-DD), de hoy en adelante. Obligatoria salvo en evergreen.
start_time string Según el caso Hora de inicio (HH:MM, 24 h). Obligatoria salvo en evergreen.
end_time string No Hora de fin (HH:MM), después del inicio.
format string No webinar, demo, taller, conferencia, reunion u otro.
description string No Texto de la página del evento (máximo 5,000 caracteres).
status string No draft (borrador, default) o published. Al editar también cancelled o completed.
location string No Dirección o lugar, para eventos presenciales.
latitude number No Latitud del lugar, para mostrar el mapa.
longitude number No Longitud del lugar, para mostrar el mapa.
meeting_url url No Liga de la sesión en vivo (Zoom, Meet, Teams).
content_url url No Liga a la grabación o material, para on_demand.
image_url url No Imagen de portada (URL pública).
max_attendees integer No Cupo máximo (1 a 10,000). Sin valor, cupo ilimitado.
requires_payment boolean No true si el registro se paga.
price number Según el caso Precio en decimales. Obligatorio si requires_payment es true.
currency string No Moneda ISO de 3 letras (default MXN).
is_invitation_only boolean No true para que el evento no aparezca en tu lista pública.
recurrence_rule object Según el caso Obligatorio en recurring: {"pattern": "weekly|biweekly|monthly", "end_date": "YYYY-MM-DD", "occurrences": 2-52}.
custom_fields array No Preguntas extra del formulario de registro (máximo 30).
  • custom_fields: lista de {label, type, required, options}. type puede ser text, email, tel, number, select o textarea. En select, options es una lista ["A", "B"] o un texto separado por comas.
  • La respuesta trae el evento con id, slug, public_url (la página de registro), registrations_count y available_spots.

Editar, borrar y listar

  • PATCH /v1/events/{id} cambia solo los campos que mandes. Si mandas custom_fields, reemplaza la lista completa.
  • DELETE /v1/events/{id} borra el evento y su página deja de estar disponible. Los registros se conservan.
  • GET /v1/events acepta status, search (por nombre), upcoming=true (de hoy en adelante), limit y page.

Registros de un evento

GET /v1/events/{id}/registrations regresa a cada persona registrada: attendee_name, attendee_email, attendee_phone, status (registered, paid, attended, cancelled, no_show), amount_paid, custom_data (las respuestas a tus preguntas, con su label) y url_params (UTM de donde llegó). Filtra con status, limit y page.

¿Te sirvió esta página? Gracias por avisarnos.
Esc