MudeyMudeyAPI documentation
    OpenAPIMy keysBack to Mudey

    Guide

    • Overview
    • Démarrer
    • Mettre une formation en ligne
    • Erreurs
    • Sécurité
    Compte
    • getCompte et droits de la clé
    • getCatégories du catalogue
    Formations
    • getLister mes formations
    • postCréer une formation
    • getLire une formation complète
    • patchModifier une formation
    • delSupprimer une formation
    • postMettre en ligne
    • postRetirer du catalogue
    Modules
    • postAjouter un module
    • putRéordonner les modules
    • patchModifier un module
    • delSupprimer un module
    Leçons
    • postAjouter une leçon
    • putRéordonner les leçons d'un module
    • getLire une leçon
    • patchModifier une leçon
    • delSupprimer une leçon
    Fichiers
    • postObtenir une adresse d'envoi
    Coupons
    • getLister mes coupons
    • postCréer un coupon
    • getLire un coupon
    • patchModifier un coupon
    • delSupprimer un coupon
    Élèves et revenus
    • getÉlèves d'une formation
    • getStatistiques d'une formation
    • getStatistiques de toutes mes formations
    • getRevenus d'un mois

    On this page

    POST /courses
    • Corps JSON
    • Réponses
    • Exemple

    Formations2 / 7

    • getLister mes formations
    • postCréer une formation
    • getLire une formation complète
    • patchModifier une formation
    • delSupprimer une formation
    • postMettre en ligne
    • postRetirer du catalogue
    1. Instructor API
    2. Formations
    3. Créer une formation

    Créer une formation

    posthttps://mudey.fr/api/v1/coursescourses:write

    Toujours créée en brouillon. Le programme complet (modules et leçons) peut être envoyé dans le même appel.

    Authorization: Bearer mudey_sk_… header required. Create and use a key

    Corps JSON

    Les champs marqués * sont obligatoires.

    ChampTypeDescription
    title*stringTitre (5 à 200 caractères).
    subtitlestring | nullSous-titre.
    shortDescriptionstring | nullAccroche du catalogue.
    descriptionstring | nullDescription complète (50 caractères au moins pour publier).
    languagestringLangue : fr, en, fr-BE…
    levelBEGINNER | INTERMEDIATE | ADVANCED | ALL_LEVELSNiveau, BEGINNER par défaut.
    categoryIdstring | nullCatégorie principale (GET /categories).
    subcategoryIdstring | nullSous-catégorie : une des `subcategories` de la catégorie dans GET /categories. Retirée si la catégorie change sans elle.
    primaryTopicstring | nullSujet principal enseigné (« Python ») : sert au référencement de la fiche.
    pricenumberPrix Standard en unités (49.99), 0 = gratuite. Ramené sur la grille tarifaire et dans la fourchette réglée par Mudey.
    originalPricenumber | nullPrix barré, purement affiché.
    offerTierSTANDARD | PRIME | BUSINESSOffre la plus haute déclarée. Prime se vend avec au moins 2 modules Prime publiés, Business avec 3 modules Business en plus.
    primePricenumber | nullPrix Prime ; null = prix par défaut de Mudey.
    businessPricenumber | nullPrix Business ; null = prix par défaut de Mudey.
    objectivesstring[]Ce que l'élève saura faire.
    requirementsstring[]Prérequis.
    targetAudiencestring[]Public visé.
    welcomeMessagestring | nullMessage d'accueil.
    congratulationsMessagestring | nullMessage de fin.
    metaTitlestring | nullTitre pour les moteurs de recherche.
    metaDescriptionstring | nullDescription pour les moteurs de recherche.
    thumbnailKeystring | nullCouverture : clé S3 (kind = thumbnail). Obligatoire pour publier.
    promoVideoKeystring | nullVidéo de présentation : clé S3 (kind = video).
    currencystringDevise, EUR par défaut. Ne change plus ensuite.
    sectionsSectionCreate[]Programme complet, dans l'ordre.

    Réponses

    • 201Formation créée, en brouillon.
    • 401Clé absente, invalide, révoquée ou expirée.
    • 403Droit manquant sur la clé, ou compte qui n'est plus formateur.
    • 404Ressource introuvable dans vos formations.
    • 422Données invalides (details liste les champs).
    • 429Quota dépassé (300 appels par minute et par clé). Voir l'en-tête Retry-After.

    Exemple

    export MUDEY_API_KEY="mudey_sk_..."
    
    curl -X POST "https://mudey.fr/api/v1/courses" \
      -H "Authorization: Bearer $MUDEY_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
      "title": "Apprendre TypeScript",
      "description": "Des bases aux types avancés, avec des exercices corrigés à chaque module.",
      "level": "BEGINNER",
      "price": 49.99,
      "objectives": [
        "Typer une application React",
        "Écrire des types génériques"
      ],
      "sections": [
        {
          "title": "Les bases",
          "lessons": [
            {
              "title": "Installer TypeScript",
              "isFree": true
            },
            {
              "title": "Types primitifs"
            }
          ]
        }
      ]
    }'
    PreviousLister mes formationsNextLire une formation complète

    © 2026 Mudey · API documentation

    openapi.jsonHelp centerContact