Ir al contenido principal
Talleres

Crear un taller

Crea un taller en borrador. Las fechas y la zona horaria son obligatorias desde el inicio; los módulos con sesiones, lo que aprenderás, para quién es y las preguntas frecuentes se exigen al publicar.

POST
/workshops
curl -X POST https://hub.grou.com/api/ext/workshops \
  -H "Authorization: Bearer $GROU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "general": { "name": "Bootcamp de Ventas — Cohorte 1" },
    "content": {
      "start_date": "2026-03-01T00:00:00Z",
      "end_date": "2026-03-31T00:00:00Z",
      "timezone": "America/Bogota",
      "what_you_will_learn": ["Cerrar ventas por WhatsApp"],
      "target_audience": ["Emprendedores que venden online"],
      "faqs": [{ "question": "¿Quedan grabadas las sesiones?", "answer": "Sí." }],
      "modules": [
        {
          "name": "Semana 1",
          "sessions": [
            { "title": "Sesión en vivo 1", "date": "2026-03-01", "time": "18:00", "link": "https://meet.example.com/s1" }
          ]
        }
      ]
    },
    "commercial": { "base_currency": "USD", "pricing": [{ "currency": "USD", "value": 299 }] }
  }'
Authorizationstringheaderobligatorio

Tu API Key del Hub (Configuración → API Keys), que empieza por sk_. Solo se muestra una vez al generarla.

Cuerpo

application/json
commercialobject

Configuración comercial. Un producto vende o un pago único (precio y cuotas opcionales) o planes de suscripción, no ambos. La tasa de interés de las cuotas se configura en el Hub y se conserva al editar.

contentobjectobligatorio
coproductionobject[]

Reparto de la coproducción. Incluye tu propio owner_user_id (de GET /me); los porcentajes deben sumar 100.

external_refstring
Minimum string length: 1
generalobjectobligatorio

Datos generales. No acepta URLs de imagen: la miniatura se sube aparte. Un campo desconocido devuelve 400.

Respuesta

application/json

Borrador creado, con el id de cada módulo y sesión.

checkout_urlstring | nullobligatorio

Link de pago. Solo cuando el recurso está published.

contentobject

El contenido con el id de cada elemento, para enviarlo de vuelta al editar.

created_atstringobligatorio
external_refstring | null

Tu identificador, si lo enviaste al crear.

idstringobligatorio
stateenum<string>obligatorio

draft: borrador, no visible para compradores. published: a la venta, con checkout_url. unpublished: retirado de la venta, se puede volver a publicar.

Opciones disponibles: draft, published, unpublished
typeenum<string>obligatorio
Opciones disponibles: program, external, workshop, checkout
updated_atstringobligatorio
version_idstring | null

Versión actual. Siempre null en checkouts.